πŸ›°οΈ Autonomous Spatial Agents

Autonomous Spatial Intelligence for GIS & Remote Sensing

Named after Alexander von Humboldt, father of modern physical geography. Humboldt orchestrates natural language reasoning, spatial tool registries, geodesic geodesy, and Earth Observation data into autonomous cartographic workflows.

Live GeoAI Agent Playground

Interact with the Humboldt agent right here in your browser. Issue natural language instructions to execute geocoding, geodesic calculations, and interactive map cartography.

πŸ€– Humboldt Engine
Quick Geospatial Presets:
00:00:00 READY Humboldt agent initialized with 8 tools. Awaiting spatial query...
No tool results yet. Select a preset or type a location query above.
{}
Active tools: geocode_locations, reverse_geocode_coordinates, convert_dd_to_dms, calculate_distance, fetch_geo_boundaries, load_geojson.
Lat: 0.0000Β° | Lon: 0.0000Β° | Zoom: 3

Centralized Geospatial Tool Suite

Each capability in Humboldt is encapsulated as a distinct, JSON-schema tool compliant with OpenAI function calling, MCP, and CLI pipelines.

πŸ—ΊοΈ

Intelligent Geocoding

Converts freeform addresses and toponyms into high-precision WGS84 coordinates using OpenStreetMap Nominatim with rate limiting and boundary constraints.

geocode_locations(locations: str)
πŸ“

Haversine Geodesic Distance

Computes accurate great-circle distances across the terrestrial geoid from coordinate pairs, outputting distance in kilometers, statute miles, and nautical miles.

calculate_distance(coordinates: str)
πŸ”„

DD ⇄ DMS Transformation

Converts between Decimal Degrees and Degrees/Minutes/Seconds notation with strict latitude [-90, +90] and longitude [-180, +180] validity validation.

convert_dd_to_dms(coordinates: str)
🌐

Boundary Centroid Harvester

Queries the geoBoundaries API by ISO 3166-1 alpha-3 country code to retrieve verified administrative boundary centroids and boundary polygon geometries.

fetch_geo_boundaries(iso: str, adm: str)
πŸ“

Multi-Format Spatial I/O

Parses and standardizes GeoJSON FeatureCollections, KML placemarks, and latitude/longitude delimited CSV files into unified map layers.

load_geojson(geojson_str: str)
πŸ”Œ

Open Plugin Architecture

Dynamically load custom Python tools via GEOAI_PLUGIN_MODULES or client-side JavaScript extensions with zero agent modifications.

registry.register_tool(name, handler)

Unified GeoAI Terminal App

Run Humboldt interactively in your shell, integrate tools into Unix pipes, or launch the browser interface.

# Install dependencies
pip install -r requirements.txt

# Geocode multiple locations into markdown table
python geoai_cli.py geocode "Gainesville, FL; Paris, France; Tokyo, Japan"

# Compute haversine great-circle distance between coordinates
python geoai_cli.py distance "29.6516,-82.3248,48.8566,2.3522"

# Fetch international boundaries from geoBoundaries
python geoai_cli.py boundaries USA --adm ADM1

Research Leadership & Contributors

Humboldt GeoAI is developed at the intersection of Space Science, Geographic Information Science, and Artificial Intelligence.

🐊

Dr. Moulay Anwar Sounny-Slitine

Project Architect & Lead Developer
International Space University (ISU Strasbourg) β€’ University of Wisconsin-Madison β€’ Texas State University β€’ University of Florida
πŸŽ“

Mashoukur Rahaman

GIS Specialist & Contributor
Department of Geography, University of Florida