Sie sind auf Seite 1von 10

FromGPSTracestoaRoutableRoadMap

DepartmentofComputerScience UniversityofCalifornia SantaBarbara,CaliforniaUSA +18058933417

LiliCao

MicrosoftResearch MicrosoftCorporation Redmond,WashingtonUSA +14257038283

JohnKrumm

lilocao@cs.ucsb.edu ABSTRACT
This paper presents a method for automatically converting raw GPStraces fromeverydayvehiclesintoaroutableroadnetwork. The method begins by smoothing raw GPS traces using a novel aggregation technique. This technique pulls together traces that belongonthesameroadinresponsetosimulatedpotentialenergy wells created around each trace. After the traces are moved in responsetothepotentialfields,theytendtocoalesceintosmooth paths. To help adjust the parameters of the constituent potential fields, we present a theoretical analysis of the behavior of our algorithm on a few different road configurations. With the resultingsmoothtraces,weapplyacustomclusteringalgorithmto createagraphofnodesandedgesrepresentingtheroadnetwork. Weshowhowthisnetworkcanbeusedtoplanreasonabledriving routes, much like consumer-oriented mapping Web sites. We demonstrate our algorithms using real GPS data collected on publicroads,andweevaluatetheeffectivenessofourapproachby comparing the routeplanning results suggested by our generated graphtoacommercialrouteplanner.

jckrumm@microsoft.com

CategoriesandSubjectDescriptors
I.5.3[PatternRecognition]:Clusteringalgorithms

Figure1:WeusedGPSdataloggedfromshuttle vehicles driving around the Microsoft corporate headquarters campusinRedmond,WA,USA. planningdrivingroutes. Traditionally, digital representations of the road network have been derived from data that comes from specialized vehicles roamingtheroadnetwork,operatedbyskilleddatagathers.This isexpensiveandlimitedbythenumberofspecializedvehicles.A more recent approach to building a representation of the road network is exemplified by OpenStreetMap [4], which uses a combination of GPS traces and satellite images as input to a manually edited road map. While this has more scalability potential than the traditional method, it still depends on manual editing. Inthispaper,weexplorethefeasibilityofcreatingaroadnetwork representation automatically using GPS traces from nonspecializedvehicles,likedeliverytrucksorregularcars,drivenby peoplegoingabouttheirregularbusiness.Thishastheadvantage ofeasyscalability,asitisrelativelyinexpensivetoequiparegular vehiclewithaGPSlogger.

GeneralTerms Algorithms,Measurement,Experimentation,Theory. Keywords GPS,roadmap. 1. INTRODUCTION


Vehicle route planning depends on a representation of the road network. The representation must be accurate in terms of the connectivity and directionality of the road segments in order to apply basic route planning algorithms. It must also be geometrically accurate in order to display routes and give clear instructions about how far to drive between turns. This paper describes our method for creating an accurate representation of theroadnetworkstarting with GPStraces fromregularvehicles. Our method begins by smoothing the raw traces into a coherent set of paths. From these paths, we derive a graph of nodes and edges representing the road network. This graph is suitable for
Permission to make digital or hard copies of all or part of this work for personalorclassroomuseisgrantedwithoutfeeprovidedthatcopiesare not made or distributed for profit or commercial advantage, and that copies bear this notice and the full citation on the first page. To copy otherwise, to republish, to post on servers or to redistribute to lists, requirespriorspecificpermissionand/orafee.ACMGIS'09,November 4-6, 2009. Seattle, WA, USA (c) 2009 ACM ISBN 978-1-60558-6496/09/11...$10.00.

2. PROBLEMSTATEMENT

Inthissection,wedescribeourcollectedGPSdata,formalizethe problem of road network generation, and outline our proposed approach.

2.1 RawGPSData

For our experiments, we collected trace data by deploying GPS loggers on 55 Microsoft Shuttles, as shown in Figure 1. Our loggerswereRoyalTekRBT-2300GPSloggerswithaSiRFStar III chipset and WASS enabled. The shuttles roam around the Microsoft campus in Redmond, Washington, USA, continuously

(a)RawGPStraces (b)Idealresult Figure3:(a)Aclose-upoftheGPStracesfromthe rectangleshowninFigure2(b).(b)Thecorresponding idealoutputasadirectedgraph.

(a)Testarea (b)RawGPStraces Figure2:(a)Acommercialmapofourtestarea.(b)The rawGPStracesfromourexperiment.

way.Tosupportsuchaquery,thefollowingcharacteristicsofthe roadscanbeuseful: Obviously,amongtheabovecharacteristics,themostfundamental andessentialoneistheconnectivityandgeometry,whichcanbe described as a directed graph, consisting of a set of vertices and directionaledges.Forexample,fortheselectedrectangularareain Figure 2(b), which is shown in detail in Figure 3(a), the ideal output as a directed graph is shown in Figure 3(b). Each vertex has an associated latitude/longitude, and connecting edges each have an associated length in meters. The fact that the graph is directed means that the resulting routes can respect one-way streets. In this paper, we will focus on inferring this most important characteristic (i.e. connectivity and geometry). As we will show later, inferring solely this characteristic is already sufficiently challengingandinteresting. From Figure 3, we identify the biggest challenge of solving this problem.SinceGPStraceshaveerrorsduetotheinherentnoisein GPS, it is nontrivial to decide whether two closely located segmentsofGPStripsaresampledfromthesameroadsegmentor from two nearby road segments. Furthermore, for individual traces,thenoiseeffectinthediscretepointsmixeswiththeeffect of a vehicles varying speed and direction, makingthenoisehard toseparateandeliminate. Besides the GPS noise, there are other challenges caused by the diversity and complexity of the road/city structure. For instance, ataparkinglot,theGPStraceslooklikeasetof chaoticpoints, whichshouldnotbemistakenasbeingfromregularroads. Becauseoftheabovechallenges,generatingtheroadnetworkfor route planning purposes still requires careful editing by humans. In the OpenStreetMap [4] community, users upload their GPS traces from casual trips to the website. There are specialized members of the community who gather all the traces for a particular area, analyze them manually, and create or edit the mapsbyhand.On thecontrary, inthispaperwetrytoautomate thewholeprocess,withminimumhumanintervention. Theconnectivityandgeometryoftheroads; Theaveragespeedsandspeedlimits; Thetypeoftheroads(e.g.highway); Thenumberoflanesforeachroad.

during the day. They service both fixed and on-demand routes between buildings. The GPS loggers record time-stamped latitude/longitude coordinates with an interval of 1 second. We collected the recorded data over approximately 3 weeks. From each shuttle vehicle, we retrieved an average of about 360,000 time stamped latitude/longitude pairs. This corresponds to about 100 hours of data from each shuttle. While most of the loggers shut off automatically while the shuttles were parked, some did not, giving us some data overnight while the vehicles were idle. We can parse the data into a set of individual tripsbylookingat gapsinthetimestampswhenthevehicleswereturnedoffandalso extended periods of near-zero speed. Specifically, we split the data into discrete trips whenever we found a gap of at least 10 secondsor100metersbetweentemporallyadjacentGPSsamples. Wepreprocessedthetripdatatoreducethenumber ofpointsfor more efficient processing. In particular, we only retained points thatwereeitheratleast30metersawayfromthepreviouspointor at least 10 meters away if the change in direction over the last three points was greater than 10 degrees. This last condition helpedpreservemorepointswhenthevehiclemadeaturn. Figure2(b)showsanoverviewofourcollecteddata,withalltrips plotted together. Each trip is plotted by connecting every two consecutivepointswithastraightline.BycomparingFigure2(b) with Figure 2(a) which is the corresponding area map clipped from Microsoft Bing Maps, we observe that the data roughly characterizes the road structure. However, even though the picturesareinapproximateagreement,ouraimistocomputean accurate symbolic representation of the underlying road network fromtherawGPSdata.

2.2 TheRoadNetworkGenerationProblem

GiventherawGPSdata,ourgoalistoinferaroadnetworkwhich cananswerrouteplanningqueries.Arouteplanningquerytakesa start/endpairasinputand resultsinaroutefromthestarttothe enddestination.Therouteshouldbeoptimizedintermsofcertain metricssuchaslengthortraveltime.Theresultingrouteisoften describedinfriendlyterms,includingthenamesofroads,howfar todrivebetweenturns,andsometimesevenlandmarksalongthe

2.3 RelatedApproaches

There are several existing collaborative map editing efforts. One of the most successful is TomToms MapShare[7]featurewhich allows users to edit map characteristics from the companys portable navigation devices. Users can block or unblock streets, reverse traffic directions, change turn restrictions, edit speed limits, edit street names, and add/edit points of interest. Google Maps [3] allows users to reposition the locations of street addresses. Both the TomTom and Google edits are eventually madeavailableforotherusersoftherespectivemaps. The relatively well-known OpenStreetMap (OSM) [4] project uses GPS traces, satellite images, out-of-copyright maps, and manual editing to create road maps freely available on the Web. Thousands of volunteers have contributed data and editing, and about 40 volunteer to create and improve the systems infrastructure. In addition to the connectivity and geometry that we try to infer, OSM volunteers add and edit street names and other geographic features. Our effort is aimed at automating at leastpartofthemapcreationprocess withoutrelyingonmanual intervention. Another approach to our problem is to extract the road network from aerial images, such as in the pioneering work of Tavakoli andRosenfeldin[6].Suchtechniquescouldcomplimentours,but ourefforthereisaimedatextractingasmuchaswecanfromGPS data. Researcheffortsmostcloselyrelatedtooursincludetheworkof Edelkamp and Schrdl [2], Schredl et al. [5], and Worral and Nebot[9]who,likeus,startwithrawGPStracesandcreateroad maps. Our work differs in that we present a simple, intuitive method to clarify the GPS traces to account for the inevitable noise in location measurement. We note, however, that the first twoofthepreviousthreereferencesgobeyondourworkandinfer lanestructure,whichwedonotattempt.

approach. Given the clarified GPS traces with minimized noise effects, it is significantly easier to infer the structure of the road network. Moreover, we believe that the clarification technique used in Step 1 has general applicability to the automatic inferencesofroadandtrafficcharacteristics,suchasspeedlimits, roadtypes,andlanestructures. WedescribeindetailStep1andStep2inSection3andSection 4,respectively.

3. CLARIFYINGTHEGPSTRACES

We clarify our GPS traces in order to mitigate the effect of measurement noise in GPS. Our goal is to group together traces andpointsthatbelongtothesameroad.Furthermore,wewantto separate traces that belong to different directions on the same road. This step is aimed at simplifying the process of creating a traditionalgraphrepresentationoftheroadnetwork.

3.1 AlgorithmOverview

ToclarifytheGPStraces,wesimulatephysicalattractionbetween differentGPStraces,suchthattracescomingfromthesameroad are grouped together. Figure 4 illustrates the main idea. We simulate two types of attraction forces, described next. In the following, our terminology is that a trace node is a measured latitude/longitude point from our GPS logger. For both types of forces, each trace node is temporarily unfrozen from its original positionandallowedtomoveinresponsetoforcesgeneratedon it.Afterthepointismoved,thepointisrefrozen,anotherpointis unfrozen,andsoonforallthepoints. Type 1: For each trace node A, we simulate an attraction force fromeachoftheothertracesegments(e.g.segmentBCinFigure 4). Specifically, we first find the direction orthogonal to the vehicles movement at position A, i.e.thedirectionorthogonalto DEinFigure4.WethendrawalinethroughAinthisdirection. AllGPStracesegmentsintersectingwiththelinewillgeneratean attractionforceactingonA. What are the strengths of the forces from nearby traces? Intuitively, trace segments that are close to A should generate strongerattractionsthantracesegmentsthatarefarfromA.This isbecauseourgoalistogrouptogethertracesfromthesameroad, and nearby traces are more likely to be from the same road. A simulated gravitational force has the correct characteristics, becauseitsforcedecreaseswithdistance.Thus,eachnearbytrace pulls trace node A toward it. This tends to pull together trace nodesthatareslightlyseparatedintoatightbundleoftraces. Intermsofenergypotential,thisattractiveforcecorrespondstoa potentialenergywellshowninFigure4(middle),wheretheforce pulls toward the direction of minimum energy. Suppose the

2.4 OurApproach

Asmentionedintheprevioussubsection,thebiggestchallengein solvingtheroadnetworkgenerationproblemistoaccountforthe noiseintheGPStraces.Inspiredbythisobservation,wepropose ourapproachwhichrunsintwosteps. Step1:ClarifytheGPStracestominimizetheeffectoftheGPS errors.Specifically,wegroupnearbyGPStraces(whicharelikely from the same road) together by simulating physical attraction betweenthem. Step2:BasedontheresultsfromStep1,weuseasimplegraph generationalgorithmtoinferthestructureoftheroadnetwork. It is important to note that Step1 is the most crucialpart of our

A D B
Attractionfrom othertraces

A C

Attractionfrom originalplace

Trace points originalplace

d1 Potentialwell for

d2 Potentialwell for

Figure4:Theattractionforcessimulatedintheclarificationalgorithm.Foreachtracenode(e.g.A),therearetwotypesof attractions: attractions from other traces (e.g. segment BC), and attractions from the nodes original position. The potential wellforthesecondtypeisaparabola.

distanceofAtosegmentBCisd1.Thentheattractionforceisthe derivativeofthepotentialwellatdistanced1fromthecenter.This potential well is an inverted Gaussian distribution, and we give the equation governing this force in section 3.3 on parameter selection. Type 2: While the attraction force Type 1 clearly mitigates the noiseeffectofGPStraces,onlysimulatingType1isnotsufficient for our algorithm. With only attraction forces among traces, all traces will finally be grouped together, no matter how far apart they originally are. Thus it is natural to prevent the traces from significantlydeviatingfromtheiroriginalpositions. Inspiredbythisobservation,wesimulateanattractionforcefrom each nodes original position. This force, however, should not be a gravitation force. Intuitively, the farther the node is from its original position, the stronger the force should be. Therefore, force Type 2 is a spring force, which corresponds to a potential well shown in Figure 4 (right). Suppose the distance of A to its originalpositionisd2,theattractionforceisthederivativeofthe potentialwellatdistanced2fromthecenter.As withtheType 1 force,wegivetheequationgoverningthisforceinsection3.3on parameterselection. Foreachtracenode,wecalculatetheresultantoftheforcesthatit receives. We then move each node towards the direction of the resultant with a small step. We iterate the whole system until it stabilizes,i.e.allnodesexperienceresultantforcessmallerthana predefinedsmallconstant.

cos , is the cosine of the angle between the two directions. Thus when and have opposite directions, cos , < 0, and the force is a repelling force; when and have common directions, cos , > 0, and the force is an attraction force. When and are orthogonal, the force equals 0, which is desired, especially at intersections where traces cross perpendicularly. However, instead of giving us the expected output as in Figure 5(e), the revised algorithm actually outputs the result in Figure 5(d). We observe that there is a twist effect, i.e.thetracenodes inonedirection are repelled todifferent sides of the trace in the other direction. This is because when the traces from two directions are close to each other, they are randomly repelled to eithersidedependingontheoriginalpositions. One possible fix for the twist effect could be to introduce anothertypeofforce,namelyatensionforce,whichpreventsthe traces from being twisted by keeping each trip smooth. This solution, however, adds more complexity to the algorithm and generatesmoreparametersthatweshouldpotentiallytune. We adopt a simple patch to fix this twist effect. Notice that whenevertwolanesofoppositedirectionsareonthesameroad,it is always the case that the opposite direction lanes are on each others left side, at least in the United States where we took our data.Therefore,itisadvisabletolimittherepellingforcetoonly affecta traces leftside.Formally, If cos , < 0, andontherightsideof, then 0. TherevisedalgorithmproducestheresultinFigure5(e),whichis exactlywhatwewant.

3.2 Differentiatinglanesofoppositedirections
The basic algorithm in the previous subsection groups nearby GPS traces together, regardless of their directions of travel. For theGPStracesinFigure5(b),theresultisshownin Figure5(c). Clearly, lanes of opposite directions are not differentiated. It is beneficial, however, to differentiate lanes of opposite travel directions,andoutputadesiredresultasinFigure5(e).

Intuitively,thisideacouldberealizedbysimplyusingarepelling force instead of an attraction force between two trace segments withoppositedirections.Formally,wecanmultiplythe(Type1) forcegeneratedbyasegmentwithadirectionfactor: cos , where is the direction of the vehicles movement at the node(e.g.direction inFigure4), isthedirectionofthe trace segment (e.g. direction in Figure 4), and

3.3 ParameterChoices

Thetwoattractionforcesusedinouralgorithmcarryanumberof parameters. The potential well of a gravitation force (Type 1) is decided by two parameters and 1 ; The potential well of a springforce(Type2)isdecidedbyaparameter.Obviously,we have to judiciously choose these parameters such that the algorithm groups GPS traces correctly. Instead of guessing and testingalargesetofparameters, weperformtheoreticalanalysis ontypicalroadscenariostogaininsightsonthereasonablevalues oftheparameters.

(a)Areamap (b)GPSdata

(c)Norepellingforce

(d)Withrepelling force

(e)Withimproved repellingforce

Figure5:(a)Theareamap.(b)TheoriginalGPStraces.(c)Theresultwithoutrepellingforcesbetweentracesofopposite directions.(d)Theresultwithrepellingforcesbetweentracesofoppositedirections.(e)Theimprovedresultwithrepelling forcesbetweentracesofoppositedirections,onlytowardstheirleftsides.

y
L

dist

(b)Roadsplit,tracesshould notmergebeyondsplit

(a)adjacentlanes

(b)roadsplit

(a)Adjacentlanesinsame direction,tracesshould merge

Figure6:(a)Ascenariowheretwoadjacentlanesarein thesamedirection.(b)Asenariowheretworoadsmerge.

Figure7:(a)AmodelforanalyzingthescenarioinFigure 6(a).Theprobingtrace(bold)isoriginallyatadistancex fromthecenterofallthetraces,andisattractedandstops (dashedbold)atadistanceofyfromthecenter.(b)A modelforanalyzingthescenarioinFigure6(b).Solid linesrepresenttheoriginaltracesanddashedlines representthetracesafterclarification. In this equation, t 0 is the lateral position of the attracting trace withrespecttotheunfrozenGPSpointthatisbeingsubjectedto theforcesofallthenearbytraces.Thispotentialenergywellhas its minimum at t 0 , which means it is trying to attract the GPS pointtothisposition.Weassumethattracesalongthissegmentof roadaredistributedrandomlyaccordingtoaGaussiandistribution centered on the center of the road at a lateral position of zero. Thustheprobabilitydensityfunctionofthenearbytracesis f(t 0 ) = 1 2 2 exp t0 2 22 2 (2)

3.3.1 AdjacentLanesinSameDirection

As shown in Figure 6(a), we consider a simple case where two adjacent lanes from the same road are in the same direction. Ideally,weshouldchoosetheparameterssuchthatouralgorithm willgroupthetracesonthetwolanestogether.Ontheotherhand, however,ifthetracesarefromtwoparallelroadsthatarecloseto each other, our algorithm should group the traces into two separatesets. We formalize this case into a simple theoretical problem as in Figure 7(a).Assumethereare setofNparalleltracesdistributed across the same road. Also assume, due to the GPS noise, the positionofanytraceadmitsa Gaussiandistributionwith mean0 (i.e.thecenteroftheroad)andvariance 2 (causedbythenoise of the GPS signals). A Gaussian has been advocated as a reasonabledistributionforGPSerror[8] Now let us consider what happens when a probe trace (the bold line)isplacedatposition.Accordingtothealgorithm,itwillbe attracted by both the set of traces and its original position. Supposeitfinallystopsatposition(thedashedboldline). Weareinterestedintherelationshipbetween and.Theideal relationshipisshowninFigure8(a).Specifically,whenissmall, especially when it is smaller than the maximum width of a onewayroad,itismostlikelythattheprobetraceisalsodrawnfrom thesameroad.Thus,ideallyweshouldhave = 0,i.e.thetrace is drawn tothe centerof the road. On the otherhand, when is large, especially when it is larger than the minimum distance between two different parallel roads, it is most likely that the probetracewastakenfromadriveonanotherroad.Thus,ideally weshouldhave = tokeepitfrombeinggroupedtothewrong road. Our goal is to choose the parameters such that the relationshipbetweenandisclosetothisidealcase. The relationshipbetween anddepends on the parameters M, 1 andk,asfollows.WeconcentrateonanimaginaryGPSpoint located on the road. Each trace intersected along a line laterally acrosstheroadfromthispointproducesType1potentialwell: (t t 0 )2 p(t) = exp 21 2 1 2 M (1)

It is easy to see that the expected potential well that one trace generatesistheconvolutionofp(t)andf(t).GivenNtraces,we canapproximatetheresultantpotentialwellas W1 (t) = (p f)(t) N MN t2 = exp 2(1 2 + 2 2 ) 2(1 2 + 2 2 ) (3)

Sincetheattractiveforceisthederivativeofthepotentialenergy function,W1 (t)resultsinanattractionforceof d (4) W (t) dt 1 Next,wecancalculatetheType2attractionforcefromtheprobe traces original position (i.e. position ) as a spring with spring constantk: F1 (t) = F2 (t) = k(x t) (5) Notethatyisthepositionwheretheunfrozenpointstopsmoving, sothislateralpointisgivenby
Ideal
Maxwidthof one-wayroad

Actual

Mindistanceoftworoads

(b)actualyvs.x

(a)idealyvs.x

Figure8:(a)Theidealyasafunctionofx.(b)Theactual yasafunctionofxwhenwechooseselectedparameters.

F1 (y) = F2 (y) Given(3),(4),and(5),wecanwrite(6)as d y2 exp 2 2 + 2 ) dy 2(1 + 2 2 ) 2(1 2 = k(x y) MN

(6)

700 600 500

L(meter)

(7)

400 300 200 100 0 0 10 20 30 40 50 60 70 80 90 (degree)

Equation ( 7 ) is a transcendental equation that can be solved numerically.Inpractice,weshouldchooseparameters M,1 and ksuchthatthesolutionof(7)isclosetotheidealcaseinFigure 8(a). Forinstance,withsystemparameters2 = 5and = 20,wecan choose 1 = 5, = 0.005, and = 1 to make the solution of Equation (7)closetoideal,asshownin Figure8(b).Theseare theparametersthatweusedfortheremainderofourprocessing.

Figure10:ForaroadsplitasinFigure6(b),wecomputed thisrelationshipbetweentheangleofthemergeandhow farafterthesplittracesaremistakenlygroupedtogether. givestherelationshipbetweenandL. SimilartotheanalysisinSection3.3.1(b),given,aswellasthe parameters 2 ,,1 ,and,wecannumericallycalculatethe maximum D such that traces from two roads with distance D betweenthemaregroupedtogether.AsshowninFigure7(b),Lis uniquelydecidedbyDas (8) = 2 2 For example, with the same parameters as in Section 3.3.1: 2 = 5, = 20,1 = 5, = 0.005,and = 1,therelationship betweenandLisshowninFigure10. Theadvantageofthetwoanalysesaboveisthatwecancompute

3.3.2 TworoadsSplit

AsshowninFigure6(b),thesecondcasethatweanalyzeiswhen tworoadssplit.Forsimplicity,supposethetworoadsarestraight with angle between them before they split, and traces are collected from both roads. Our clarification algorithm will make partofthetwotracesattractandsticktogether.Weshouldchoose parameterssuchthatthenumberoftracesthatsticktogetherprior tothesplitisreasonablysmall. WeformalizetheproblemasinFigure7(b).Solidlinesrepresent the original traces and dashed lines represent the traces after clarification. L is the distance prior tothe merge that traces start sticking together, so we seek to minimize the value of L so the location of the merge is not misrepresented. The analysis below

(a)OriginalGPSdata (b)ClarifiedGPSdata

(c)Routablegraph

Figure9:Anoverviewoftheresultsoftheclarificationandthegraphgeneration.(a)TheoriginalGPStraces.(b)TheGPS tracesafterclarification.(c)Thegeneratedroutableroadnetwork.

reasonable parameters for our clarification algorithm from first principles,avoidingtheneedforextensiveexperimentation. Theclarificationalgorithm,whenimplementednaively,couldbe computationallyexpensive:Foreachtracenode,weneedtoscan andcalculatethepotential(Type1)attractionfromallotherGPS trace segments. This yields an immediate complexity of (2 ) periteration,whereisthenumberofnodesintheGPSdataset. Onourdataset,ittakes20minutestocompleteasingleiteration. Thisnumberwillscalepoorlywhenthemapsizeincreases. Toimprovetheefficiencyandscalability,weadoptthefollowing optimization. For each node, instead of scanning all other GPS trace segments, we only scan the GPS segments within a small square (100m x 100m) centered at this node, and ignore all segments outside the square. The rationale behind this design is thatthesegmentsfarfromthenodegeneratenegligibleamountof (Type 1) attraction, so we can safely ignore them. To efficiently find all segments within a small square, we use a kD-tree [1] to Satelliteimage RawGPStraces

indexalltheGPSnodes. After the optimization, it takes 15 seconds on our data set to complete a single iteration, compared to the 20 minutes without optimization.

3.4 OptimizationforEfficiency

3.5.Results

Figure9(b)showsanoverviewoftheresultofclarificationonthe rawGPSdatainFigure9(a).Tobetterunderstandtheresults,we also select four typical areas and show the results in Figure 11 (third column). Compared to the raw GPS traces, it is clear that ouralgorithmsignificantlysuppressesthenoiseintherawtraces. Whilethenoiseisnotcompletelyeliminatedinallareas(e.g.the third row in Figure 11), we believe that this level of clarity is sufficient for further processing such as the road network generationinthenextsection.

4. ROUTABLEGRAPHGENERATION
Afterclarification Aftergraphgeneration

Inthissection,wepresentStep2ofourapproach.Namely,based on the results of the last section, we design a simple graph

Figure11:Adetailedviewofselectedareasofourresults.Inthegraphgenerationresults(lastrow),everygraphedgeis drawnwithweightproportionaltoitsvolume,i.e.thenumberofGPStripsthatgothroughthisedge.
9

generation algorithm to generate a directed graph describing the connectivity and geometry of the road network. We then show that the resulting graph is able to answer route planning queries satisfactorily.

Trip1 Trip2 Trip3

GraphNode

4.1 TheGraphGenerationAlgorithm

Overview: The graph generation algorithm works in an incremental way. Initially the graph is empty. Given the set of clarified GPS traces, we process the trips sequentially and build up the graph incrementally. For each trip, we process the trace nodes in time order. For each trace node, we search the graph (which is under construction) and decide whether it should be merged withanexistinggraphnode(calledatargetnode).Ifso, we merge the trace node with the target node; otherwise, we createanewgraphnode.Amoreformaldescriptionisshownin Algorithm1below. Algorithm 1: The Graph Generation Algorithm. (Input: the clarified GPS traces, in the form of a set of trips T. Output: the graph G characterizing the connectivity and geometry of theroadnetwork.) 1: = ; 2:foreachtriptinTdo 3:prevNode=null; 4:foreachnodenintriptdo 5:ifnshouldbemergedtographnode then 6: if prevNode null and there is no path in G from prevNode to v within less than5 hops, then add edge(prevNode v)toG; 7:prevNode=v; 8:else 9:addnodentoG; 10:ifprevNode null,thenadd edge(prevNode n) toG; 11:prevNode=n; 12:endif 13:endfor 14:endfor When to merge: We now specify the criteria used in Line 5 of Algorithm 1 for merging a trace node n to a target node v. Intuitively,atracenode nismergedtoatargetnode vwhenthe algorithm infers that the two nodes come from the same road segment. Specifically, we merge them when there is an edge = or = in the graph and the following three conditionsareallsatisfied:a)thedistancefromntoeissmaller thanaparameterdm;b)thedifferenceofthedirectionsofnande issmallerthanaparameterrm(Recallthatthedirectionofatrace node A is defined by the vector if D, A, E are subsequent nodesinthetrace,seeFigure4.)c)nisclosertovthantov. Howtomerge:Bymergingatracenodentoatargetgraphnode v,wedonotcreatenewnodesinthegraph.However,wehaveto makesuretheconnectivityinformationinthetraceisrecordedby the graph G (Line 6 of Algorithm 1). To do so, we maintain a variableprevNode,whichisthegraphnodethattheprevioustrace node of n maps to. To record the connectivity information, we require that v is reachable from prevNode in a small number of hops.IfthecurrentgraphGdoesnotreflectthisinformation,we addanewedgefromprevNodetov.

(a)Threetripstomerge (b)Trip1merged

(c)Trip2merged (d)Alltripsmerged

Figure12:AnillustrationofAlgorithm1.(a)Theinput,in termsof3trips.(b)ThegraphGafterprocessingTrip1. (c)ThegraphGafterprocessingTrip2.(d)ThegraphG afterprocessingTrip3. Example:Figure12illustratestheexecutionofAlgorithm1ona set of 3 trips (Figure 12 (a)). Trip 1 is completely copied to G sincetherearenoexistinggraphnodestomergewith(Figure12 (b)). For Trip2 (Figure 12(c)), the 2nd, 3rd, 4th and 5th nodes are mergedtoexistinggraphnodes,andthe1st,6th,and7thnodesare copied to G. The edges are created in a way to record the connectivity described by the trips. For Trip 3 (Figure 12(d)), noneofthenodesaremerged,soallthetracenodesaremappedto newgraphnodes. Recordingtraffic volume: Along withgeneratingthegraph,we also record the traffic volume of each edge, i.e. the number of trips that go through the edge. The volume is calculated as follows. Whenever a new edge is created (Line 6 and 10), the volume is set to one. Whenever we merge a node n to a target node v and there is a path in G from prevNode to v within less than five hops (Line 6), we increase the volumes of the edges alongthepathby1. Cleanup: From the GPS traces (Figure 9(a)), we observe that there are random outliers due to GPS signal errors. These segments usually map to graph edges with volume of one. Also, road segments that are travelled a very few times are mapped to graph edges with a low volume number. We regard these road segments as unreliable road segments since theymaybeclosed orunreliable.Therefore,after wegeneratethegraph,weremove any edge with volume less than three to obtain a more reliable graph.

4.2 Results

Figure 9(c)showsanoverviewoftheresultofgraphgeneration. Figure 11(fourthcolumn)showstheresultsforselectedareasin detail. In Figure 11, every graph edge is drawn with weight proportional to its volume. It is clear that the generated graph capturesthemostimportantconnectivityandgeometryproperties oftheroadnetworkintheexperimentalarea. To examine the capability of the produced graph in answering routeplanningqueries,weselectsource-destinationpairsanduse Dijkstras algorithm to find the shortest paths between the pairs. The results for 3 different source-destination pairs are shown in Figure13(upperrow),wherethegraphisdrawninyellowandthe

10

Route1 Route2

Route3

Figure13:Upperrow:Therouteplanningresultsofthegeneratedmapgraph.Thegraphisdrawninyellowandtheroutes aredrawninred.Thebackgroundisthesatelliteimagematchedtothegraph.Lowerrow:Thecorrespondingrouteplanning resultsgivenbyMicrosoftBingMaps[10]. computed routes are drawn in red. The backgrounds are satellite imagesmatchedtothegraph. WealsocomparetheresultswiththosegivenbyMicrosoft Bing Maps [10] shown in Figure 13 (lower row). We found that the routes closely match in most cases. There are, however, some caseswhentheroutesdonotmatch.Weanalyzedthesecasesand foundtheycanbeclassifiedintotwotypes: The generated graph provides more up-to-date information. This includes the cases when a road has recently finished construction while the Bing map was not updated to reflect thisinformation(Figure14).Also,wefoundaroadthathas recently been closed for road work is not part of our generatedgraph,butisincludedintheBingmap. The generated graph is limited by the trace datas coverage. Forinstance,sinceMicrosoftShuttlesseldomtravelonsome freeway segments, those segments are identified as unreliable segments and are not included in the graph.

4.3 Discussions

In this section, we use a simple algorithm to generate the graph fromtheclarifiedGPStraces.Whilethegeneratedgraphanswers route planning queries satisfactorily, it could still be refined by applyingmoreelaboratetechniques.Inthefollowing,wediscuss twopossibleimprovements. Intersectionclarification:Fromthegeneratedgraphswecansee thattheroadintersectionsarenotelegantlyclarified.Asshownin Figure15(a),whiletheconnectivityiscorrectlyrepresentedbythe graph,therearesomeredundantedgesthatshouldberemoved. Apossibletechniquetoclarifytheintersectionsisthefollowing. First, we identify the intersection using pattern recognition, locating the square area in Figure 15(b). Next, we analyze the traces that enter the square and exit the square and identify

(a)Generatedgraph (b)Missingroadsfound Figure14:(a)Thegeneratedmapgraph.(b)Themap fromMicrosoftBingMaps.Thedottedlinesrepresent newly-constructedroadsthatwerenotupdatedatBing Maps,butarepresentinthegeneratedmapgraph. (a)Graphatintersection (b)Possiblerefinement Figure15:(a)Anintersectioninthegeneratedmap graph.(b)Apossibletechniquetorefinethegraph.First identifythisintersection(thesquare),thenidentify entrancesandexits,andconnectthembylookingatthe traces.

11

entrances and exits of this intersection. Finally, we connect entrances to exits by looking at the traces ifthereisatrace that enters from an entrance and exits from an exit, we connect the entrance and the exit. Parkinglotrecognition:Ourproposedalgorithmwillgeneratea set of messy edges in parking lots. To improve the graph, particular procedures are needed to recognize and process the traces at a parking lot. We could use pattern recognition or computer vision techniques to identify these these areas. Also, notethatthebehaviorsofvehiclesatparkinglotsaresignificantly different from those at regular roads. For instance, the speedsof vehicles are usually much slower, and the traces from a parking lot are usually at the beginning or end of a single trip. Thus we mayusethetimestampsofthetracestohelpidentifyparkinglots.

REFERENCES

1. Berg, M.d., et al., Computational Geometry: Algorithms and Applications.Seconded.2000:Springer-Verlag. 2. Edelkamp, S. and S. Schrdl, Route Planning and Map InferenceWithGlobalPositioningTraces,inComputerSciencein Perspective: Essays Dedicated to Thomas Ottmann. 2003, Springer-Verlag:NewYork.p.128-151. 3. Google. Google Maps. [cited 2009]; Available from: http://maps.google.com/. 4. Haklay, M. and P. Weber, OpenStreetMap: User-Generated StreetMaps.IEEEPervasiveComputing,2008.7(4). 5. Schoredl,S.,etal., MiningGPSTracesforMapRefinement. DataMiningandKnowledgeDiscovery,2004.9(1):p.59-87. 6. Tavakoli,M.andA.Rosenfeld,BuildingandRoadExtraction From Aerial Photographs IEEE Transactions on Systems, Man, andCybernetics,1982.SMC-12:p.84-91. 7. TomTom. TomTom Map Share Technology. [cited 2009]; Availablefrom:http://www.tomtom.com/page/mapshare. 8. vanDiggelen, F., GNNS Accuracy: Lies, Damn Lies, and Statistics,inGPSWorld.2007.p.26-32. 9. Worrall,S.andE.Nebot,AutomatedProcessforGenerating Digitised Maps Through GPS Data Compression, in 2007 Australasian Conference on Robotics & Automation. 2007: Brisbane,Australia. 10. Microsoft. Microsoft Bing Maps. [cited 2009]; Available from:http://maps.bing.com/.

5. CONCLUSION

Thispaperhasdemonstratedanewmethodforcreatingaroutable road map from GPS traces of everyday drivers. This is an alternative to the expensive process of creating a map using dedicated drivers and vehicles. To deal with the inevitable noise in GPS data, we presented an innovative approach to clarifying the GPS traces using simulations of physical forces among the traces. This process groups together traces going in the same directiononthesameroad.Thephysicalsimulationlendsitselfto theoreticalanalysis,whichhelpsuspicktheparametersgoverning the simulated forces. We presented a simple algorithm for merging the clarified traces into a representation of the road networkintermsofnodesandedges.Weshowedhowthisgraph representationcanbeusedtoplanreasonabledrivingroutes. We identified future work including the clarification of intersectionsandtherecognitionofparkinglots.Otherproblems still left to be addressed include finding street names, address ranges, speed limits, and traffic controls like stoplights. We also plan to test the robustness of the proposed approach using other publicGPStracesonline.

12

Das könnte Ihnen auch gefallen