Page 1 of 1

Routing through restricted area

Posted: Mon May 15, 2017 12:53 pm
by biro.daniel
Hello guys,
Despite the below PTV_TruckAttributes and the AxleLoad 11500 (kg) in VehicleProfile settings ptv gives back a route across downtown Budapest by requesting the route between Székesfehérvár and Üröm.
Feature layer_PtvTruckAttributes.PNG
Route across the restricted area.PNG
Could you please help us how is it possible to get back the mentioned route considering the used truck vehicle profile and truck attributes?

Thank you in advance,
BR,
Daniel

Re: Routing through restricted area

Posted: Mon May 15, 2017 1:05 pm
by Bernd Welter
Hello Daniel,

please provide the XML request you used to us. Maybe the config is also relevant.
Which service do you use? Local installation or cloud?

Best regards Bernd

Re: Routing through restricted area

Posted: Mon May 15, 2017 2:53 pm
by biro.daniel
Dear Bernd,

The used service is xRoute 1.22.0.5, local installation.
Please find the xml request and configuration.

REQUEST:

Code: Select all

<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
  <s:Body xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <calculateExtendedRoute xmlns="http://types.xroute.xserver.ptvag.com">
      <ArrayOfWaypointDesc_1>
        <WaypointDesc fuzzyRadius="0" linkType="NEXT_SEGMENT" xmlns="http://xroute.xserver.ptvag.com">
          <wrappedCoords>
            <Point xmlns="http://common.xserver.ptvag.com">
              <kml xsi:nil="true"/>
              <point x="18.41035" y="47.19612"/>
            </Point>
          </wrappedCoords>
          <nodeID xsi:nil="true"/>
          <wrappedRoutingOptions xsi:nil="true"/>
          <wrappedSegmentID xsi:nil="true"/>
          <wrappedVehicleOptions xsi:nil="true"/>
          <viaType xsi:nil="true"/>
        </WaypointDesc>
        <WaypointDesc fuzzyRadius="0" linkType="NEXT_SEGMENT" xmlns="http://xroute.xserver.ptvag.com">
          <wrappedCoords>
            <Point xmlns="http://common.xserver.ptvag.com">
              <kml xsi:nil="true"/>
              <point x="19.01361" y="47.5993"/>
            </Point>
          </wrappedCoords>
          <nodeID xsi:nil="true"/>
          <wrappedRoutingOptions xsi:nil="true"/>
          <wrappedSegmentID xsi:nil="true"/>
          <wrappedVehicleOptions xsi:nil="true"/>
          <viaType xsi:nil="true"/>
        </WaypointDesc>
      </ArrayOfWaypointDesc_1>
      <ArrayOfRoutingOption_2>
        <RoutingOption parameter="IS_DESTTIME" value="false" xmlns="http://xroute.xserver.ptvag.com"/>
        <RoutingOption parameter="GENERATE_EXTWAYPOINTS" value="false" xmlns="http://xroute.xserver.ptvag.com"/>
        <RoutingOption parameter="ROUTE_LANGUAGE" value="GA" xmlns="http://xroute.xserver.ptvag.com"/>
        <RoutingOption parameter="REQUEST_VERSION" value="1.4.5" xmlns="http://xroute.xserver.ptvag.com"/>
        <RoutingOption parameter="ENABLE_ROADEDITOR" value="true" xmlns="http://xroute.xserver.ptvag.com"/>
        <RoutingOption parameter="ROADEDITOR_LAYERNAME" value="TruckAttributes_EUR" xmlns="http://xroute.xserver.ptvag.com"/>
        <RoutingOption parameter="ROADEDITOR_ADDITIONAL_OPTIONS" value="MAX_WEIGHT=40000,MAX_HEIGHT=400,MAX_WIDTH=250,MAX_LENGTH=1750,MAX_AXLE_LOAD=1150" xmlns="http://xroute.xserver.ptvag.com"/>
        <RoutingOption parameter="AVOID_FERRIES" value="500" xmlns="http://xroute.xserver.ptvag.com"/>
        <RoutingOption parameter="EXCLUDE_COUNTRIES" value="41" xmlns="http://xroute.xserver.ptvag.com"/>
      </ArrayOfRoutingOption_2>
      <ArrayOfExceptionPath_3 xsi:nil="true"/>
      <ResultListOptions_4 totalRectangle="true" tollManoeuvres="false" texts="false" segments="true" segmentAttributes="false" polygon="true" nodes="false" manoeuvreGroups="false" urbanManoeuvres="false" manoeuvreAttributes="false" dynamicInfo="false" detailLevel="STANDARD" brunnelManoeuvres="false" boundingRectanglesOffset="0" boundingRectanglesC="0" binaryPathDesc="false" manoeuvres="true">
        <cenEmissionConfiguration xsi:nil="true" xmlns="http://xroute.xserver.ptvag.com"/>
        <destDetail xsi:nil="true" xmlns="http://xroute.xserver.ptvag.com"/>
        <emissions xsi:nil="true" xmlns="http://xroute.xserver.ptvag.com"/>
        <hbefaType xsi:nil="true" xmlns="http://xroute.xserver.ptvag.com"/>
        <startDetail xsi:nil="true" xmlns="http://xroute.xserver.ptvag.com"/>
      </ResultListOptions_4>
      <CountryInfoOptions_5 xsi:type="q1:CountryInfoVehicleOptions" allEuro="true" calculatePartTollCosts="true" detailedTollCosts="false" xmlns:q1="http://xroute.xserver.ptvag.com">
        <q1:wrappedReductionIDs xsi:nil="true"/>
        <q1:wrappedTollScenarios xsi:nil="true"/>
        <q1:wrappedOptions>
          <q1:VehicleOption parameter="EMISSION_CLASS" value="EURO_6"/>
        </q1:wrappedOptions>
      </CountryInfoOptions_5>
      <CallerContext_6 log1="NEXOGEN" log2="" log3="">
        <wrappedProperties xmlns="http://baseservices.service.jabba.ptvag.com">
          <CallerContextProperty key="CoordFormat" value="OG_GEODECIMAL"/>
          <CallerContextProperty key="ResponseGeometry" value="PLAIN"/>
          <CallerContextProperty key="Profile" value="wmap_1.0.0.17744"/>
        </wrappedProperties>
      </CallerContext_6>
    </calculateExtendedRoute>
  </s:Body>
</s:Envelope>
CONFIG:

Code: Select all

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Profile xmlns:ns2="http://www.ptv.de/com/ptvag/xserver/engines/xpoidbaccess">
    <Common language="de" majorVersion="1" minorVersion="0"/>
    <Routing majorVersion="2" minorVersion="0">
        <Waypoint maximumDistanceToSegment="50000">
            <LinkTypeConfiguration>
                <Road headingTolerance="45.0"/>			
            </LinkTypeConfiguration>
        </Waypoint>
        <Algorithm aStarAggressiveness="1.3">
            <LevellingScopeByNetworkClass searchSpace="-1"/>
            <LevellingScopeByNetworkClass searchSpace="-1"/>
            <LevellingScopeByNetworkClass searchSpace="-1"/>
            <LevellingScopeByNetworkClass searchSpace="200"/>
            <LevellingScopeByNetworkClass searchSpace="100"/>
            <LevellingScopeByNetworkClass searchSpace="100"/>
            <LevellingScopeByNetworkClass searchSpace="10"/>
            <LevellingScopeByNetworkClass searchSpace="10"/>
        </Algorithm>
        <Course distanceTimeWeighting="70">
            <BasicDataRules>
                <VehicleSpecific>
                    <EmergencyVehicles segmentMalus="2501"/>
                    <ProjectSpecificVehicles blockedSegmentMalus="2501"/>
                </VehicleSpecific>
                <Network rampMalus="10">
                    <MalusByNetworkClass malus="-40"/>
                    <MalusByNetworkClass malus="0"/>
                    <MalusByNetworkClass malus="0"/>
                    <MalusByNetworkClass malus="0"/>
                    <MalusByNetworkClass malus="60"/>
                    <MalusByNetworkClass malus="82"/>
                    <MalusByNetworkClass malus="100"/>
                    <MalusByNetworkClass malus="100"/>
                </Network>
				<Toll tollMalus="55" vignetteMalus="55"></Toll>
                <SpecialAreas residentialMalus="255" urbanMalus="50"/>
                <CombinedTransport ferryMalus="500" piggybackMalus="500"/>
            </BasicDataRules>
            <AdditionalDataRules>
				<Legacy>
                    <KeyValue key="MaxHeight" enabled="true" threshold="400"/>
                    <KeyValue key="MaxWeight" enabled="true" threshold="40000"/>
                    <KeyValue key="MaxWidth" enabled="true" threshold="250"/>
                    <KeyValue key="MaxLength" enabled="true" threshold="17500"/>
                    <KeyValue key="MaxAxleLoad" enabled="true" threshold="11500"/>
                    <!-- KeyValue key="MaxHeightDir" enabled="true" threshold="40"/>
                    <KeyValue key="MaxWeightDir" enabled="true" threshold="400"/>
                    <KeyValue key="MaxWidthDir" enabled="true" threshold="25,5"/>
                    <KeyValue key="MaxLengthDir" enabled="true" threshold="165"/>
                    <KeyValue key="MaxAxleLoadDir" enabled="true" threshold="80"/ -->
                    <KeyValue key="DirOptCondMalus1" enabled="true" malus="2501" threshold="400"/>
                    <KeyValue key="DirOptCondMalus2" enabled="true" malus="2501" threshold="400"/>
                    <KeyValue key="DirOptCondMalus3" enabled="true" malus="2501" threshold="400"/>
                    <KeyValue key="DirOptCondMalus4" enabled="true" malus="2501" threshold="400"/>
                    <KeyValue key="DirOptCondMalus5" enabled="true" malus="255" threshold="400"/>
                    <KeyValue key="DirOptCondMalus6" enabled="true" malus="300" threshold="400"/>
                    <KeyValue key="DirOptCondMalus7" enabled="true" malus="2500" threshold="400"/>
                    <KeyValue key="DirOptCondMalus8" enabled="true" malus="-99" threshold="400"/>
                    <KeyValue key="DirOptCondMalus9" enabled="true" malus="-99" threshold="400"/>
                    <KeyValue key="Trailer" enabled="false" malus="2501"/>
                    <KeyValue key="ResidentialTrucks" enabled="true" malus="2500"/>
                    <KeyValue key="DeliveryTrucks" enabled="true" malus="200"/>
                    <KeyValue key="PublicTrucks" enabled="true" malus="2501"/>
                    <KeyValue key="PreferredTrucks" enabled="true" malus="-99"/>
                    <KeyValue key="PreferredHazardousTrucks" enabled="true" malus="-99"/>
                </Legacy>
                <SegmentSpecific useSegmentLength="true" useFerryLength="true" useFerryDuration="true" useUrbanAttribute="true" useRampAttribute="true" useSpeed="true" useBlockedForCarsAttribute="true" useBlockedForTrucksAttribute="true" useTollForCarsAttribute="true" useTollForTrucksAttribute="true"/>
            </AdditionalDataRules>
            <DynamicRouting>
                <SpeedMapping baseSpeed="1" mappedSpeed="1"/>
                <SpeedMapping baseSpeed="10" mappedSpeed="10"/>
                <SpeedMapping baseSpeed="20" mappedSpeed="20"/>
                <SpeedMapping baseSpeed="30" mappedSpeed="30"/>
                <SpeedMapping baseSpeed="40" mappedSpeed="40"/>
                <SpeedMapping baseSpeed="50" mappedSpeed="50"/>
                <SpeedMapping baseSpeed="60" mappedSpeed="56"/>
                <SpeedMapping baseSpeed="70" mappedSpeed="61"/>
                <SpeedMapping baseSpeed="80" mappedSpeed="66"/>
                <SpeedMapping baseSpeed="90" mappedSpeed="69"/>
                <SpeedMapping baseSpeed="100" mappedSpeed="72"/>
                <SpeedMapping baseSpeed="110" mappedSpeed="73"/>
                <SpeedMapping baseSpeed="120" mappedSpeed="74"/>
                <SpeedMapping baseSpeed="130" mappedSpeed="75"/>
                <SpeedMapping baseSpeed="140" mappedSpeed="75"/>
                <DynamicTimeStep size="900"/>
            </DynamicRouting>
        </Course>
        <Vehicle>
            <Physical>
                <Drive>
                    <Emissions emissionTechnology="EXHAUST_GAS_RECIRCULATION"/>
                    <Engine cylinderCapacity="12000" fuelConsumption="30.0"/>
                </Drive>
                <Weight emptyWeight="15000" totalPermittedWeight="40000" loadWeight="25000"/>
                <Axle axleLoad="11500" numberOfAxles="5"/>
                <Trailer emptyWeight="15000"/>
                <Passenger maximumPermittedNumberOfPassengers="1"/>
                <Dimension height="400" length="1800" width="254"/>
            </Physical>
            <Legal>
                <LegalCondition isAuthorized="true" isDelivery="true"/>
            </Legal>
            <Load loadType="GOODS"/>
            <Speed>
                <SpeedRangeByNetworkClass minimumSpeed="55" maximumSpeed="80"/>
                <SpeedRangeByNetworkClass minimumSpeed="30" maximumSpeed="65"/>
                <SpeedRangeByNetworkClass minimumSpeed="23" maximumSpeed="55"/>
                <SpeedRangeByNetworkClass minimumSpeed="20" maximumSpeed="45"/>
                <SpeedRangeByNetworkClass minimumSpeed="18" maximumSpeed="40"/>
                <SpeedRangeByNetworkClass minimumSpeed="15" maximumSpeed="30"/>
                <SpeedRangeByNetworkClass minimumSpeed="15" maximumSpeed="30"/>
                <SpeedRangeByNetworkClass minimumSpeed="15" maximumSpeed="30"/>
            </Speed>
        </Vehicle>
        <Isochrone>
            <NodeBasedPolygon filterMode="WEAK" firstSmoothingAngle="3.0" secondSmoothingAngle="0.0"/>
        </Isochrone>
        <RouteList>
            <Maneuvers>
                <Bridges maneuvers="true" minimumLength="1000" maximumDistanceBehind="1000"/>
                <Tunnels maneuvers="true" minimumLength="1000" maximumDistanceBehind="1000"/>
                <Urban information="true" minimumNetworkClassForInformation="2" minimumDistanceForManeuvers="1000"/>
            </Maneuvers>
            <ManeuverGroups maximumDistanceBetweenManeuvers="500">
                <BoundingBox offset="1443"/>
            </ManeuverGroups>
        </RouteList>
        <AdditionalRules maximumAirLineDistance="4294967295">
            <ExceptionPaths>
                <Binary validate="true"/>
            </ExceptionPaths>
        </AdditionalRules>
    </Routing>
</Profile>
BR
Daniel

Re: Routing through restricted area

Posted: Tue May 16, 2017 12:08 pm
by Bernd Welter
Hello Daniel,

I made some tests with your profile and I get almost the same polygon structure when your constraints are activated.
The &quot;shortest&quot; route in the western part of Budapest uses segments where certain restrictions apply. I can see them after enabling VIOLATIONS with COST=0.
The "shortest" route in the western part of Budapest uses segments where certain restrictions apply. I can see them after enabling VIOLATIONS with COST=0.
By activating both additional datasources (binary TruckAttributes + FeatureLayers) a large detour occurs.
By activating both additional datasources (binary TruckAttributes + FeatureLayers) a large detour occurs.
Only binary truckattributes activated: straight through the city.
Only binary truckattributes activated: straight through the city.
So the next thing I did was to compare the datasources.
Looks like the FEATURE layers contain more data than the BINARY TRUCK ATTRIBUTES:
Both FeatureLayer plus Binary...
Both FeatureLayer plus Binary...
TruckAttributes only
TruckAttributes only
FeatureLayer only
FeatureLayer only
If you want to consider the feature layers, too, you have to add this to the profile:

Code: Select all

<FeatureLayer majorVersion='1' minorVersion='0'>
	<GlobalSettings enableTimeDependency='True'/>
	<Themes>
		<Theme id='PTV_TruckAttributes' enabled='True' priorityLevel='0'/>
		<Theme id='PTV_RestrictionZones' enabled='True' priorityLevel='0'/>
	</Themes>
</FeatureLayer>
Does this help?
I can add further statistic reports to the testclient if needed.

Best regards
Bernd

Re: Routing through restricted area

Posted: Tue May 16, 2017 2:05 pm
by Bernd Welter
Just spoke to a data department expert. The legal conditions of most of these additional attributes are time dependent.

The traditional binary road editor files contain only attributes which are enabled EVERYtime while feature layer based attributes contain both permanent and time dependent restrictions.

This is probably the cause for the behaviour experienced above.