A method comprising: receiving , by a processor, a plurality of mobile device data points comprising data indicating positions of vehicles having travelled on a roadway of a geographic area and data indicating a heading direction of said vehicles, the roadway involving a convergence or divergence of a plurality of road branches for the roadway; connecting , by the processor, subsets of the plurality of mobile device data points with trajectory lines, each of the subsets associated with a particular vehicle, wherein the trajectory lines connect adjacent mobile device data points determined by a sequence in which the individual mobile device data points of subsets were acquired; determining , by the processor, at least two trajectory angles for a particular mobile device data point of the plurality of mobile device data points using the heading direction of the particular vehicle, a first trajectory line connecting the particular mobile device data point to an adjacent, subsequent, mobile device data point and a second trajectory line connecting the particular mobile device data point to an additional adjacent, previous, mobile device data point , wherein the particular mobile device data point is positioned between the adjacent mobile device data point and the additional adjacent mobile data point, wherein a first of the at least two trajectory angles is between the heading direction and the first trajectory line and a second of the at least two trajectory angles is between the heading direction and the second trajectory line; and assigning , by the processor, the particular mobile device data point to a particular road branch of the plurality of road branches based on the determined at least two trajectory angles. receiving , by a processor, a plurality of mobile device data points comprising data indicating positions of vehicles having travelled on a roadway of a geographic area and data indicating a heading direction of said vehicles, the roadway involving a convergence or divergence of a plurality of road branches for the roadway; connecting , by the processor, subsets of the plurality of mobile device data points with trajectory lines, each of the subsets associated with a particular vehicle, wherein the trajectory lines connect adjacent mobile device data points determined by a sequence in which the individual mobile device data points of subsets were acquired; determining , by the processor, at least two trajectory angles for a particular mobile device data point of the plurality of mobile device data points using the heading direction of the particular vehicle, a first trajectory line connecting the particular mobile device data point to an adjacent, subsequent, mobile device data point and a second trajectory line connecting the particular mobile device data point to an additional adjacent, previous, mobile device data point , wherein the particular mobile device data point is positioned between the adjacent mobile device data point and the additional adjacent mobile data point, wherein a first of the at least two trajectory angles is between the heading direction and the first trajectory line and a second of the at least two trajectory angles is between the heading direction and the second trajectory line; and assigning , by the processor, the particular mobile device data point to a particular road branch of the plurality of road branches based on the determined at least two trajectory angles. <EOS>