Configuration Parameters
Configuration Parameters class in Fleet Management SDK define key settings that influence the behavior of the route optimization process. These settings determine aspects such as optimization goals, search time limits, and flexibility in handling orders. Proper configuration ensures that the algorithm meets the operational constraints of the routing problem.
Configuration Parameters Structure
Each Configuration Parameter consists of:
| Name | Type | Description |
|---|---|---|
| Name | String | The name of the optimization/route configuration. |
| IgnoreTimeWindow | bool | Specifies whether time-windows are ignored during optimization. Default is false. |
| AllowDroppingOrders | bool | Specifies whether the algorithm is allowed to drop orders if no solution is found by visiting all of them. Default is false. |
| GroupingOrders | bool | Specify if the orders will be grouped. If the distance between any two orders is less than 10 meters, those orders will be considered part of the same group. Default is false. |
| BalancedRoutes | EBalanceRoutesOption | Specifies the option to balance routes of an optimization. |
| OptimizationCriterion | EOptimizationCriterion | Specifies the optimization criterion. |
| ArrangeCriterion | EArrangeCriterion | Specifies the arrangement criterion for optimizing time. |
| OptimizationQuality | EOptimizationQuality | Specifies the optimization quality (solution accuracy). |
| MaxSearchTime | unsigned int | Maximum time (in seconds) the algorithm can search for a solution. This parameter is considered only when the Optimization Quality is set to OQ_Best. Default is 300 seconds. |
| MaxWaitTime | unsigned int | Maximum time (in seconds) that vehicles can wait at an order to align with the next order's time window. Default is INT_MAX. |
| RouteType | ERouteType | Specifies the route type. |
| Restrictions | ERoadRestrictions | Specifies road restrictions for distance and time matrix calculations. |
| DistanceUnit | EDistanceUnit | Specifies the unit of distance used in optimization and routing calculations. |
| OrderSequenceOptions | OrdersSequenceMap | Specifies the association between different orders that should be visited in a certain order. |
Example Usage
Explanation
This setup configures an optimization with the following characteristics:
- "Test Optimization" as the instance name – Helps in identifying the optimization session.
- Time windows are considered (
IgnoreTimeWindow = false) – Ensures delivery times are respected. - Orders can be dropped if necessary (
AllowDroppingOrders = true) – If an order is impossible to fulfill, it can be left out. - Algorithm runs for a maximum of 600 seconds (
MaxSearchTime = 600) – Limits the computation time. - Minimization of travel distance as the primary goal (
OptimizationCriterion = OC_Distance) – The algorithm will prioritize shorter routes. - Every route of the optimization will be circular (
RouteType = RT_RoundRoute) - The routes will start and end at the same location.