Configuration

Parametrize your optimization

Smartlane offers a lot of parameters that help to adapt the services to the required needs of our customers and improve the result of the optimization.
Some parameters will be set by our customer success team during the onboarding process, many can be set using the API or the Smartlane UI.

In order to help you with some basic orientation, we split the configuration parameters into categories:

  • General settings
  • Optimization settings
  • Time based settings

We will also describe settings that are related to the Excel upload in a separate paragraph.

All settings define how the optimization works for your specific requirements. In many cases you will provide more specific data during the planning while the settings from the configuration build the default and fallback values.

General settings

Parameter

Description

Type

Default

Unit

ROUNDTRIP_TOUR

A route is finished when the vehicle has returned to the depot

boolean

False

n/a

EXCLUDE_WEEKDAYS

Exclude single (working) days from the planning. 1=Monday, 5=Friday. E.g.: In order to exclude Tuesday and Thursday set the value to [2,4]

list

[]

n/a

LOAD_DIMENSIONS

Dimensions and units of loads. E.g. weight/kg or volume/loading meters or ADR points

[{'unit': 'kg', 'dimension': 'Gewicht'}]

n/a

PRIORITY_VALUES

Value and label for prioritized shipments

maplist

[{"low": 1, "medium": 1, "high": 1}]

n/a

SYSTEM_LANGUAGE

System language: {0: 'de', 1: 'en'}

select

0

n/a

REST_BREAKS_ENABLED

Enable rest breaks

boolean

False

n/a

REST_BREAKS_POSTPROCESSING_ENABLED

Add breaks in the postprocessing, not within the solver. Only works if REST_BREAKS_ENABLED is false.

boolean

False

n/a

REST_BREAKS_POSTPROCESSING_SAT_ENABLED

Add breaks in the postprocessing, not within the solver. Only works if REST_BREAKS_ENABLED is false.

boolean

False

n/a

Optimization settings

Parameter

Description

Type

Default

Unit

VRP_SPAN_COST_COEFFICIENT

The cost of the tour is multiplied by this factor in order to minimize its total duration and waiting times during the tour

int

1

DEPOT_RELOAD

Can a vehicle reload at the depot after a first route?

boolean

True

FOLD_DELIVERIES_AT_SAME_LOCATION

Fold shipments (deliveries or pickups) that share the same address or location and bundle the fixed and variable load times.

boolean

False

PICKUP_DELIVERY_SUBSEQUENT

Pickups should always follow deliveries immediately

boolean

false

EXACT_VEHICLE_NUMBER_AS_CLUSTERS

Number of clusters corresponds with the number of available vehicles

boolean

false

Time based settings

They represent a huge block of configuration. Let us split them int smaller groups so that you can better grasp the meaning and impact of the settings.

Global time settings

General settings that have a time reference.

Parameter

Description

Type

Default

Unit

RELAX_TIMEFRAME_ON_REPLANNING

Time in minutes by which the planned time window may be extended to enable tour planning that would fail without an extended time window

int

number of minutes

RELAX_AFTER_TIME

relax time windows only after this given fixed time. Is only used if RELAX_TIMEFRAME_ON_REPLANNING > 0. Always provide time zone information

time

0:00:00+00:00 (hh:mm:ss-mm:hh)

minutes

WARN_IF_TOUR_NOT_WITHIN_DAYS

Create a warning if the route is not finished during x days.

int

1

number of days

TRAFFIC_DATE

Point in time for which of traffic information should be fetched during the optimization. Only applies if USE_TRAFFIC_DATE is enabled

datetime

YYYY-MM-DDThh:mm:ss-mm:hh

USE_TRAFFIC_DATE

Consider traffic information during the optimization

boolean

n/a

Depot, stops and breaks related time settings

These are global settings that define the basic time skeleton and default values of the end-to-end planning process.

Parameter

Description

Type

Default/Format

Unit

DEPOT_RELOAD_TIME

Time in seconds needed for reload operations at the depot

int

seconds

DEFAULT_TOUR_START_DAY

Earliest start day of a route
Tag, an dem die Tour frühestens beginnen soll

date

/YYYY-MM-DD

DEFAULT_DAY_START

Earliest default start time for shipments

datetime

/YYYY-MM-DDT hh:mm:ss-mm:hh

DEFAULT_DAY_END

Latest default end time for shipments

datetime

/YYYY-MM-DDT hh:mm:ss-mm:hh

DEFAULT_DAY_END_BUFFER

Buffer in minutes that extends the DEFAULT_DAY_END

int

minutes

DEFAULT_DEPARTURE_TIME_FROM

Earliest default standard departure time at the depot

time

/hh:mm:ss-mm:hh

DEFAULT_DEPARTURE_TIME_TO

Latest default standard departure time at the depot

time

/hh:mm:ss-mm:hh

DEFAULT_RETURN_TIME_TO

Default return time to the depot

time

/hh:mm:ss-mm:hh

DEFAULT_DEPARTURE_TIME_FROM_DT

Earliest default standard departure time at the depot

datetime

/YYYY-MM-DDT hh:mm:ss-mm:hh

DEFAULT_DEPARTURE_TIME_TO_DT

Latest default standard departure time at the depot

datetime

/YYYY-MM-DDT hh:mm:ss-mm:hh

DEFAULT_MAX_TOUR_DURATION

Default maximal route duration in minutes

int

minutes

FIX_TIME_TOUR_START

Fold all shipments after this time to one route

datetime

/YYYY-MM-DDT hh:mm:ss-mm:hh

FIX_TIME_TOUR_END

Fold all shipments before this time to one route

datetime

/YYYY-MM-DDT hh:mm:ss-mm:hh

Break time settings

You can define sets of breaks defined by four parameters, three of which are always relative to the planned start time of the vehicle:

  • The time range in which the break should start
    • The earliest start of the break, e.g. 3 hours after the start of the vehicle
    • The latest start of the break, e.g. 4 hours after the start of the vehicle
  • The duration of a break, e.g. 30 Minutes

Example:

  • REST_BREAKS_EARLIEST_START_TIME = [10800]
  • REST_BREAKS_LATEST_START_TIME = [14400]
  • REST_BREAKS_DURATION =[3600]
  • REST_BREAKS_THRESHOLD [13000]

and a calculated start time of 7:30 am at the depot would open a corridor for the break start from 10:30 to 11:30 and a break duration of one hour. The REST_BREAKS_THRESHOLD has to be set to a value that is between the REST_BREAKS_EARLIEST_START_TIME and the REST_BREAKS_LATEST_START_TIME.

You can also define multiple breaks. In this case you enter the second set at the next index position in the list:

  • REST_BREAKS_EARLIEST_START_TIME = [10800, 21600]
  • REST_BREAKS_LATEST_START_TIME = [14400, 25200]
  • REST_BREAKS_DURATION =[1800, 1800]
  • REST_BREAKS_THRESHOLD [13000, 23000]

With a departure at 7:30 this would create a first break start between 10:30 and 11:30 and second break start between 13:30 and 14:30.

You can also use the list to define breaks for day and night shifts.

REST_BREAKS_THRESHOLD defines a threshold relative to the start time of the vehicle that would make the optimization ignore breaks if a route duration is less than the threshold value:
E.g.
REST_BREAKS_THRESHOLD = 11400
REST_BREAKS_EARLIEST_START_TIME = 10400
REST_BREAKS_DURATION = 1800
and (three hours after the start)and the planned start is 7:30 am and the route returns to the depot at 10 am. In this case the threshold is passed by REST_BREAKS_EARLIEST_START_TIME + REST_BREAKS_DURATION and no break is required.

All breaks settings in an overview:

Parameter

Description

Type

Default

Unit

REST_BREAKS_DURATION

Length of a break in seconds

list of integers

[]

seconds

REST_BREAKS_EARLIEST_START_TIME

Earliest start time of a break in seconds relative to the vehicle's start time (at the depot)

list of integers

[]

seconds

REST_BREAKS_LATEST_START_TIME

Latest start time of a break in seconds relative to the vehicle's start time (at the depot)

list of integers

[]

seconds

REST_BREAKS_THRESHOLD

Only routes with a duration greater than the threshold will be considered for break calculation

list of integers

[]

seconds

Shipment related time settings

In order to always consider els (estimated length of stay) for loading and unloading actions.

Parameter

Description

Type

Default

Unit

DEFAULT_ELS

Default value for length of stay of a vehicle at one stop. Only considered, if no vehicle or shipment specific data has been provided.

int

2

minutes

Excel import related settings

If master data is not stored but provided on a per Excel upload strategy, you can define behavior with the following parameters.

Parameter

Description

Type

Default

Unit

IMPORTED_DEPOT_ADDRESS_IS_DEFAULT_START

Is the first address in an excel upload the depot address

boolean

False

n/a

NOTIFY_EMAIL_TOUR_RESULT

The logged in dispatcher get's a notification per email after each planning run

boolean

True

n/a