Street hint not working for exact match

Hi,

We’re seeing an issue with the street_hint field where we’re seemingly providing an exact match for what’s in the mapping data but it seems to be ignoring it and matching a different, but similar sounding street instead.

Here is the full request:

{
  "configuration": {
    "routing": {
      "calc_points": true,
      "consider_traffic": false,
      "return_snapped_waypoints": true,
      "network_data_provider": "openstreetmap",
      "snap_preventions": [
        "motorway",
        "tunnel",
        "ferry"
      ],
      "fail_fast": true
    },
    "optimization": {
      "free_insertion": false
    }
  },
  "vehicle_types": [
    {
      "type_id": "vhc_hNTNQpYZPAM9fVkpeqr38iy2NQo1",
      "profile": "car_delivery",
      "capacity": [
        2147483647
      ],
      "speed_factor": 1,
      "service_time_factor": 1
    }
  ],
  "vehicles": [
    {
      "type_id": "vhc_hNTNQpYZPAM9fVkpeqr38iy2NQo1",
      "vehicle_id": "hNTNQpYZPAM9fVkpeqr38iy2NQo1",
      "start_address": {
        "location_id": "qVWPITgX",
        "lat": 53.545132,
        "lon": 10.276982,
        "curbside": "any"
      },
      "return_to_depot": false,
      "earliest_start": 1783393355
    }
  ],
  "objectives": [
    {
      "type": "min",
      "value": "completion_time"
    }
  ],
  "services": [
    {
      "id": "uPiuXvmkXCqtxKbD9u7n",
      "name": "Am Röhbrook 22",
      "address": {
        "location_id": "uPiuXvmkXCqtxKbD9u7n",
        "lat": 53.5456765,
        "lon": 10.2848122,
        "street_hint": "Am Röhbrook",
        "curbside": "any",
        "name": "Am Röhbrook 22"
      },
      "duration": 60,
      "time_windows": [],
      "size": [
        1
      ],
      "priority": 2,
      "type": "delivery"
    }
  ],
  "shipments": [],
  "relations": []
}

And a screenshot showing the issue:

We’re passing in “Am Röhbrook” as the street name but it isn’t using that street. As far as I can tll there isn’t anything on the “Am Röhbrook” street that would prevent it from using it.

Interesting, thanks.

I think I understand the problem without debugging it. Let me explain … the matching is a tricky process which cannot be exact because the street hint can also come from other data sources (like HERE Maps or Google) and so we normalize the hint before we match it to the OSM road name. Which means in this case that a short word like “Am” is removed and so the matching to “Röhbrookring” is probably (jarowinkler) identical to the matching to “(Am )Röhbrook”.

And the problem is now that the filter we currently use is just on or off and we do not weight (e.g. full match vs. partial match).

We can add “am” to an allow list avoiding the removal as a simple fix.

1 Like