Optimizing a tour takes very long

This forum deals with any kind of trip optimization based on xTour1, xTour2 and the Developer APIs "RouteOptimization" and "SequenceOptimization". No matter whether it is automatic planning or manual dispatching, refering to transport orders or service planning.
Attention: this does not refer to PTV Optiflow SaaS and PTV Developer RouteOptimization Optiflow.
Post Reply
m.jagemann
Posts: 2
Joined: Fri Oct 28, 2016 1:17 pm

Optimizing a tour takes very long

Post by m.jagemann »

Hi All,

I'd like to optimize a tour with a few loadingpoints.
Optimization should calculate the shortest route by reordering the loadingpoints to the correct position.

Currently I am using "planBasicTours" to do so, but this is very slow ... it takes between 20 and 30 seconds to deliver a result. I doubt this is a normal response time, is it?
Here you can see one of these requests performing bad, do you have a clue what is going wrong or what could be done better? Eventually I missunderstood what "planBasicTours" is doing and there is another possibility to achieve my goal?

Thanks in advance!

Code: Select all

<?xml version="1.0" encoding="utf-8"?><soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <soap:Body>
    <ns2:planBasicTours xmlns="http://common.xserver.ptvag.com" xmlns:ns2="http://types.xtour.xserver.ptvag.com" xmlns:ns3="http://wrappertypes.service.jabba.ptvag.com" xmlns:ns4="http://exception.core.jabba.ptvag.com" xmlns:ns5="http://baseservices.service.jabba.ptvag.com" xmlns:ns6="http://xtour.xserver.ptvag.com">
      <ns2:ArrayOfTransportOrder_1> <ns6:TransportOrder xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns6:TransportDepot" trailerLoadingForbidden="false" id="1">
          <ns6:deliveryQuantities>
            <ns6:wrappedQuantities>
              <ns3:Int>0</ns3:Int>
            </ns6:wrappedQuantities>
          </ns6:deliveryQuantities>
          <ns6:transportPoint coDriverRequired="false" openingIntervalConstraint="START_OF_SERVICE" allowServiceSplit="true" useServicePeriodForRecreation="false" servicePeriod="0" tourSection="0" id="1" description="DAIMLWOERT767">
            <ns6:location>
              <point y="49.05186" x="8.27874"/>
            </ns6:location>
          </ns6:transportPoint>
        </ns6:TransportOrder> <ns6:TransportOrder xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns6:TransportDepot" trailerLoadingForbidden="false" id="2">
          <ns6:deliveryQuantities>
            <ns6:wrappedQuantities>
              <ns3:Int>0</ns3:Int>
            </ns6:wrappedQuantities>
          </ns6:deliveryQuantities>
          <ns6:transportPoint coDriverRequired="false" openingIntervalConstraint="START_OF_SERVICE" allowServiceSplit="true" useServicePeriodForRecreation="false" servicePeriod="0" tourSection="0" id="2" description="HDARMS642">
            <ns6:location>
              <point y="49.88275" x="8.62595"/>
            </ns6:location>
          </ns6:transportPoint>
        </ns6:TransportOrder> <ns6:TransportOrder xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns6:TransportDepot" trailerLoadingForbidden="false" id="3">
          <ns6:deliveryQuantities>
            <ns6:wrappedQuantities>
              <ns3:Int>0</ns3:Int>
            </ns6:wrappedQuantities>
          </ns6:deliveryQuantities>
          <ns6:transportPoint coDriverRequired="false" openingIntervalConstraint="START_OF_SERVICE" allowServiceSplit="true" useServicePeriodForRecreation="false" servicePeriod="0" tourSection="0" id="3" description="MOSOLILLIN75411">
            <ns6:location>
              <point y="48.95487" x="8.94174"/>
            </ns6:location>
          </ns6:transportPoint>
        </ns6:TransportOrder> <ns6:TransportOrder xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns6:TransportDepot" trailerLoadingForbidden="false" id="4">
          <ns6:deliveryQuantities>
            <ns6:wrappedQuantities>
              <ns3:Int>0</ns3:Int>
            </ns6:wrappedQuantities>
          </ns6:deliveryQuantities>
          <ns6:transportPoint coDriverRequired="false" openingIntervalConstraint="START_OF_SERVICE" allowServiceSplit="true" useServicePeriodForRecreation="false" servicePeriod="0" tourSection="0" id="4" description="MITZEEBR838">
            <ns6:location>
              <point y="51.3265" x="3.22011"/>
            </ns6:location>
          </ns6:transportPoint>
        </ns6:TransportOrder> <ns6:TransportOrder xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns6:TransportDepot" trailerLoadingForbidden="false" id="5">
          <ns6:deliveryQuantities>
            <ns6:wrappedQuantities>
              <ns3:Int>0</ns3:Int>
            </ns6:wrappedQuantities>
          </ns6:deliveryQuantities>
          <ns6:transportPoint coDriverRequired="false" openingIntervalConstraint="START_OF_SERVICE" allowServiceSplit="true" useServicePeriodForRecreation="false" servicePeriod="0" tourSection="0" id="5" description="TERMIZEEBR838">
            <ns6:location>
              <point y="51.31417" x="3.23854"/>
            </ns6:location>
          </ns6:transportPoint>
        </ns6:TransportOrder> </ns2:ArrayOfTransportOrder_1><ns2:ArrayOfDepot_2> <ns6:Depot id="1" description="AGDÜSSE4041">
            <ns6:location>
              <point y="51.26017" x="6.79475"/>
            </ns6:location>
          </ns6:Depot><ns6:Depot id="2" description="ICOZEEBR838">
          <ns6:location>
            <point y="51.29413" x="3.22829"/>
          </ns6:location>
        </ns6:Depot></ns2:ArrayOfDepot_2>
      <ns2:Fleet_3>
        <ns6:wrappedVehicles>
          <ns6:Vehicle ignoreIntermediatePeriodBeforeFirstTour="false" id="301" toursMustFitIntoSingleOperatingInterval="false" coDriverStatus="NEVER" ignoreTransportPointServicePeriod="false" dimaId="1" isPreloaded="false" depotIdStart="1"  depotIdEnd="2" >
            <ns6:capacities>
              <ns6:wrappedCapacities>
                <ns6:Quantities>
                  <ns6:wrappedQuantities>
                    <ns3:Int>0</ns3:Int>
                  </ns6:wrappedQuantities>
                </ns6:Quantities>
              </ns6:wrappedCapacities>
            </ns6:capacities>
            <ns6:restrictions maxTourCountPerChain="1"/>
          </ns6:Vehicle>
        </ns6:wrappedVehicles>
      </ns2:Fleet_3>
      <ns2:PlanningParams_4 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns6:StandardParams" availableMachineTime="30">
        <ns6:wrappedDistanceMatrixCalculation>
          <ns6:DistanceMatrixCalculation xsi:type="ns6:DistanceMatrixByRoad" profileName="truckfast" deleteAfterUsage="true" deleteBeforeUsage="true" dimaId="1"/>
        </ns6:wrappedDistanceMatrixCalculation>
      </ns2:PlanningParams_4>
      <ns2:CallerContext_6>
        <ns5:wrappedProperties>
          <ns5:CallerContextProperty value="Test-Request" key="TransactionId"/>
          <ns5:CallerContextProperty value="OG_GEODECIMAL" key="CoordFormat"/>
        </ns5:wrappedProperties>
      </ns2:CallerContext_6>
    </ns2:planBasicTours>
  </soap:Body>
</soap:Envelope>
Regards,
Marcel
Joost
Posts: 310
Joined: Fri Apr 25, 2014 1:46 pm

Re: Optimizing a tour takes very long

Post by Joost »

Your coordinates are very far apart. This means that the dima that needs be calculated internally will take some time. I would suggest that you look into our high performance routing option:

http://xserver.ptvgroup.com/fileadmin/f ... outing.htm
Joost Claessen
Senior Technical Consultant
PTV Benelux
Post Reply