Upload
mercedes-archey
View
216
Download
1
Tags:
Embed Size (px)
Citation preview
Geocoding Web Service
Example
Nancy Read
Metropolitan MosquitoControl District
What is Geocoding?
Address string Location coordinates
2099 University Ave. W 44.959665 °
St. Paul, MN 55104 -93.187222 °
Coordinates used to put point on map:
How we started . . .
MMCD web map site
Address look-up
• Searches Parcels• Gives Choices
Problems
Engine, method – Spelling or order errors (“West 5th” vs “5th West”)
Data – Some parcels not addressed
Maintenance – Load and process updates of parcel layer
Identified Need
Robust geocoding engine Usable with web site (service) Cascading data sets
– address points (when available)– parcels– streets (interpolation)
Host for service, data Data maintenance plan
Internal resources available?
MMCD’s IT Department(note ½ people!)
Need to contract out
Who else has need? solution?
Who needs a Geocoder?
Web map applications– Map Quest– Local Government– King Maps
Other applications– Public Safety
Batch– State Government– Businesses
Find others with need, skills, interest
Dave Bitner (MAC) Jim Maxwell (TLG) Mark Kotz (Met.Co.) Gordy Chinander (MESB) Bob Basquez (St. Paul) Chris Cialek & Jim Dickerson (LMIC) Kent Treichel (MN Dept. of Revenue) Nancy Read (MMCD)- Project Manager
Find resources
Data– Managers of streets, parcels involved
Hosting– MN Land Management Info. Center (LMIC)
Engine, web service– Possible MetroGIS project funding
MetroGIS Geocoder Project
Identified need Applied for MetroGIS project funding,
received $14,000 Defined requirements RFP
Existing Geocoding Services
Proprietary ($$)– ESRI – Envinsa– PxPoint Online
Open Source– Geocoder.us – uses Tiger data
http://geocoder.us/demo.cgi?address=2099+University+Ave.+W.%2C+St.+Paul%2C+MN+55104
PAGC Geocoder engine
Used on large research tasks (e.g, geocoding all fast food retailers in Canada)
Matching routines very good, better than others commonly available “Handles the tough ones others can’t, doesn’t
cascade too quickly to general layers like postal code”
Can handle problems with street ranges
PAGC geocoding engine
Address Matching Algorithms
Match addresses with reference address-ranged street network shapefile
Starts with a rule-based Aho-Corasick driven standardization of both data sources.
Reference data indexed using – BerkeleyDB b-trees for exact key lookups and soundex lookups– pointerless trie indexing scheme for edit distance lookups, adapted
from ideas of Shang and Merrett. Match data records using standard Fellegi-Sunter method with
modifications to permit similarity measures.
PAGC Geocoding engine
Written in ANSI C Open Source, freely distributable
(LGPL – Lesser General Public License) Has supporting web site, documentation and
community, see www.pagcgeo.org Can be used on different resource data files
(not just Tiger or proprietary)
MetroGIS Geocoder Project
Rework PAGC from command line to Service– Pre-process resource street or other
data files to build index files with standardized addresses, location data
– Handle concurrent requests– Run under Apache, on Linux or Windows– Input – Urlencode – Output - XML, JSON, CSV
MetroGIS Geocoder Project
Use applicable standards for parameter names, structures– OGC’s OpenLS Location Utility Service
specification, supported by ArcWeb and Oracle (XML-based)
– FGDC Street Address Data Standard for structuring data (note: “splits” more than OpenLS)
MetroGIS Geocoder Project
Geocoder engine returns location:– Latitude / Longitude– Decimal Degrees
Conversion to UTM or state plane etc. to be done by downstream utility
Capabilities
Cascading (points, parcels, streets)
Geocode to Intersections – will be part of this project– e.g., “University&Snelling”
Not included, to be added later: Landmarks Reverse Geocoding (Location Address)
MetroGIS Geocoder Project
Set up service with Metro data– TLG Streets– 7-county Parcel Layer (centroids)– Address Points (as available)
Host – LMIC – TLG– Can also install locally – need to pre-process data
Expect demo by April 1
Testing planned
Engine– Accuracy and hit rate– Performance and speed– Reliability as web service
Hosting– Ease of set-up
Data– Maintenance
Challenges
Legal agreements – funding– licensing (engine, data)
Code maintenance – Open Source may help Possible hosting issues if service is popular