Skip to content
Kharita Challenges

Problems

Real geospatial problems, graded automatically. Choose a track, a level and what you want to hand in.

14 of 59 problems

Pick one for me
  1. Not started, Build an earthquake contact reconnaissance queueProjectDecision support3 steps

    Screen strong shallow events, quantify airfield and settlement proximity, and hand over a traceable contact map.

    Spatial AnalysisadvancedDifficulty: advanced550 XP~95 min12 checks

    Worked in 3 steps, each checked before the next one opens.

    1. Select the event queue · SQL
    2. Measure contact gaps · Answers
    3. Hand over the access map · Python

    Datasets

    • Global M5.5+ earthquakes, Jan–Mar 2025 · Point · 86 features · EPSG:4326
    • World airports · Point · 893 features · EPSG:4326
    • Populated places · Point · 1,251 features · EPSG:4326

    What you’ll do

    • Select a reproducible event queue in SQL
    • Measure two independent global proximity indicators
    • Deliver an auditable access map with an explicit contact-gap distinction
    projectUSGSnearest neighbourlogisticsglobalAlso trains Python, Data Management, Cartography
    Open project
  2. Not started, Classify a map where most of the values are zeroCartographyAnswers

    Quantile breaks collapse on a distribution dominated by zeros. Measure how, on the river-kilometres-per-country table, and say what a map maker should do instead.

    CartographyadvancedDifficulty: advanced290 XP~45 min6 checks

    You hand in your answers as values.

    Datasets

    • Countries · MultiPolygon · 241 features · EPSG:4326
    • Rivers and lake centrelines · LineString · 461 features · EPSG:4326

    What you’ll do

    • Reproduce a derived per-country measure
    • Compute quantile and equal-interval breaks on a zero-heavy distribution
    • Quantify how each scheme distributes the countries
    choroplethclassificationquantileszero-inflatedhydrologyAlso trains Python, Spatial Analysis
    Open problem
  3. Not started, Defend a borough greening shortlistProjectDecision support3 steps

    Measure canopy and summer vegetation on their own grids, then add low-ground context and apply one transparent shortlist rule.

    Remote SensingadvancedDifficulty: advanced620 XP~110 min13 checks

    Worked in 3 steps, each checked before the next one opens.

    1. Audit the vegetation rasters · Answers
    2. Deliver the borough evidence table · Dataset file
    3. Add low-ground context and shortlist · GeoJSON

    Datasets

    • Greater London land cover 2021 (ESA WorldCover 10 m) · Raster · EPSG:4326
    • Greater London, Sentinel-2 red and NIR, 11 July 2025 · Raster · EPSG:32630
    • Greater London elevation (Copernicus DEM GLO-30) · Raster · EPSG:4326
    • London boroughs · Polygon · 33 features · EPSG:4326

    What you’ll do

    • Audit the two vegetation measures from observed raster pixels
    • Hand over a per-borough canopy and NDVI table as a GIS file
    • Add area-weighted low ground and an explicit shortlist flag
    zonal statisticsNDVIland coverDEMmulti-criteriaLondonAlso trains Spatial Analysis, Data Management
    Open project
  4. Not started, Deliver a field-ready public asset registerProjectData preparation4 steps

    Merge two open asset extracts into a quality-controlled GeoPackage for field inspection.

    Data ManagementadvancedDifficulty: advanced600 XP~105 min17 checks

    Worked in 4 steps, each checked before the next one opens.

    1. Audit both incoming sources · Answers
    2. Build the common asset model · Dataset file
    3. Verify and round coordinates · GeoJSON
    4. Package and verify the handover · Dataset file

    Datasets

    • Melbourne toilet source · Point · 7 features · EPSG:4326
    • Melbourne drinking-water source · Point · 21 features · EPSG:4326

    What you’ll do

    • Profile and reconcile two source layers without multiplying assets.
    • Normalise access without representing unknown status as public.
    • Deliver a reproducible, typed WGS 84 GeoPackage handover.
    data-preparationprojectgeopackagemelbournehandoverAlso trains Spatial Analysis, Cartography
    Open project
  5. Not started, Deliver an access-safe public toilet layerData preparationDataset file

    Classify access honestly and deliver a typed projected GeoPackage without null locations.

    Data ManagementadvancedDifficulty: advanced365 XP~55 min6 checks

    You hand in a prepared dataset file.

    Dataset

    • Amsterdam toilet access staging · Point · 14 features · EPSG:4326

    What you’ll do

    • Distinguish missing access from public access.
    • Preserve first-source precedence and drop null geometry.
    • Deliver a named GeoPackage in the receiving CRS.
    data-preparationamsterdamfileAlso trains Spatial Analysis
    Open problem
  6. Not started, How much of each state is built up?Spatial analysisPython

    Overlay the urban footprints on the states in an equal-area projection and credit each side of a state line only what lies on it.

    PythonadvancedDifficulty: advanced320 XP~55 min5 checks

    You hand in a Python script.

    Datasets

    • United States states · Polygon · 51 features · EPSG:4326
    • Urban areas · Polygon · 2,143 features · EPSG:4326

    What you’ll do

    • Reproject both layers to an equal-area CRS
    • Clip the urban footprints to the states with an overlay
    • Sum clipped area per state and express it as a share of the state's area
    GeoPandasoverlayequal-areaAlbersland useAlso trains Spatial Analysis, Data Management
    Open problem
  7. Not started, Mean NDVI per borough, across a projection boundaryRaster analysisGeoJSON

    Zonal statistics where the raster is in UTM and the polygons are in WGS 84: reproject the right layer, compute the index per borough, and hand back a map.

    Remote SensingadvancedDifficulty: advanced300 XP~50 min7 checks

    You hand in a GeoJSON result.

    Datasets

    • Greater London, Sentinel-2 red and NIR, 11 July 2025 · Raster · EPSG:32630
    • London boroughs · Polygon · 33 features · EPSG:4326

    What you’ll do

    • Recognise a CRS mismatch between a raster and a vector layer
    • Reproject the vector layer rather than resample the raster
    • Compute a per-zone mean of a derived index
    NDVIzonal statisticsCRSUTMSentinel-2LondonAlso trains Spatial Analysis, Data Management
    Open problem
  8. Not started, Plan a cycle redistribution shiftProjectDecision support3 steps

    Classify the dock snapshot, propose bounded bike moves, and size the resulting shift with its unserved stations visible.

    Spatial AnalysisadvancedDifficulty: advanced600 XP~100 min11 checks

    Worked in 3 steps, each checked before the next one opens.

    1. Classify the snapshot · SQL
    2. Map feasible transfers · GeoJSON
    3. Size the preliminary shift · Answers

    Dataset

    • Santander Cycles docking stations (live snapshot) · Point · 799 features · EPSG:4326

    What you’ll do

    • Classify full and empty active stations in SQL
    • Build a bounded nearest-source transfer map
    • Size a shift and report unserved empties from the same rules
    nearest neighbouroperationscapacityCRStransportLondonAlso trains Data Management, GIS Architecture
    Open project
  9. Not started, Screen capital access exceptionsDecision supportGeoJSON

    Use airport and port proximity to flag capitals that need direct logistics verification.

    Spatial AnalysisadvancedDifficulty: advanced580 XP~100 min6 checks

    You hand in a GeoJSON result.

    Datasets

    • Populated places · Point · 1,251 features · EPSG:4326
    • World airports · Point · 893 features · EPSG:4326
    • Ports · Point · 1,081 features · EPSG:4326

    What you’ll do

    • Compute nearest-neighbour distances from capitals to two facility layers, geodesically
    • Apply an ordered rule set to derive a category
    • Return the exceptions with the distances that justify them
    nearest neighbourgeodesicclassificationlogisticsglobalAlso trains Data Management
    Open problem
  10. Not started, Screen Newham’s greening gridProjectRaster analysis3 steps

    Audit a real land-cover chip, deliver a measured grid file, and identify cells for field verification.

    Remote SensingadvancedDifficulty: advanced600 XP~100 min10 checks

    Worked in 3 steps, each checked before the next one opens.

    1. Audit the class chip · Answers
    2. Hand over the measured grid · Dataset file
    3. Map field-verification cells · GeoJSON

    Datasets

    • Newham WorldCover 2021 class chip · Raster · EPSG:4326
    • London boroughs · Polygon · 33 features · EPSG:4326

    What you’ll do

    • Audit class counts in the clipped raster
    • Prepare a traceable borough grid as an uploaded GIS file
    • Return only cells that meet a stated greening screen
    NewhamWorldCoverurban greeningoffline rasterAlso trains Data Management, Spatial Analysis
    Open project
  11. Not started, Urban share of each state, in SQLSpatial analysisSQL

    ST_Intersection for the pieces and ST_Area on geography for the metres — the overlay-and-measure pattern inside the database.

    PostGIS / SQLadvancedDifficulty: advanced300 XP~45 min5 checks

    You hand in a spatial SQL query.

    Datasets

    • United States states · Polygon · 51 features · EPSG:4326
    • Urban areas · Polygon · 2,143 features · EPSG:4326

    What you’ll do

    • Overlay polygons with ST_Intersection
    • Measure the pieces on geography rather than in degrees
    • Aggregate per state, keeping the states with nothing
    ST_IntersectiongeographyoverlayGROUP BYland useAlso trains Spatial Analysis
    Open problem
  12. Not started, Which big cities does the gazetteer not know?Data qualityGeoJSON

    Test one layer's completeness against another: large urban footprints with no populated place inside them at all.

    Data ManagementadvancedDifficulty: advanced300 XP~45 min5 checks

    You hand in a GeoJSON result.

    Datasets

    • Urban areas · Polygon · 2,143 features · EPSG:4326
    • Populated places · Point · 1,251 features · EPSG:4326

    What you’ll do

    • Measure footprint area in an equal-area projection and apply a size floor
    • Test each footprint for containment of any point from a second layer
    • Return the uncovered footprints with the area that says how much they matter
    completenessspatial joinequal-areagazetteerglobalAlso trains Spatial Analysis
    Open problem
Show 2 more problems

12 of 14 problems shown