VRt.Universal [UV] (7.13.2613)

Veeroute Support Team: servicedesk@veeroute.com License: Proprietary Terms of Service

Description

Software interface for universal trip planning.

Features

  • Ability to pick up cargo from any location
  • Possibility of unloading in any location
  • Pair orders of several types: PICKUP (loading), DROP (unloading)
  • Single requests of several types: DROP_FROM_BOX (unloading cargo that is already in the body), PICKUP_TO_BOX (cargo pickup into the body without subsequent unloading), WORK (working at the location without moving the cargo)
  • A complex order can consist of any number of orders of any type
  • Transport and performers are divided into different entities, when planning, the optimal assignment of the performer to the transport occurs
  • The transport has several boxes - each of which can accommodate cargo and has its own characteristics
  • Accounting for the compatibility of cargo with transport in terms of cargo dimensions (length, width, height, additional capacity parameters)
  • Taking into account the compatibility of the cargo-box of transport (the ability to take into account the features of the box: refrigerator, thermal bag, fasteners, etc.)
  • Substitute applications, i.e. the ability to execute one of the substitute applications, the choice of which is based on its geographic location and time window

Restrictions support

Performer restrictions:

  • Start/finish location
  • Accounting for the performer's way to the transport location
  • Performer's availability schedule is a list of time windows when the performer can move and work on locations
  • The maximum duration of the performer's work during the specified time period

Transport restrictions:

  • Start/finish location
  • Transport availability schedule is a list of time windows when the transport is available
  • The maximum route distance
  • Several boxes in the transport, each with its own parameters
  • Capacity upper limit (weight, volume, number of orders, number of demands)

Order restrictions:

  • Strict time windows
  • Ability to specify different valid time windows for a location and time windows to fulfil the desired demand
  • Accounting for the requests fulfillment order within the route
  • A list of desired time windows with different associated costs

Compatibilities

Entities are compatible if the capabilities list of one entity corresponds to the list of restrictions of another entity (example: fleet parameters corresponds to cargo parameters to be delivered).

Supported compatibilities:

Name Restrictions Features
Order - Performer order.performer_restrictions performer.performer_features
Order - Not a performer order.performer_blacklist performer.performer_features
Cargo - Box order.cargo.box_restrictions transport.box.box_features
Location - Transport location.transport_restrictions transport.transport_features
Transport - Performer transport.performer_restrictions performer.performer_features
Performer - Transport performer.transport_restrictions transport.transport_features
Order - Order order.order_restrictions order.order_features

Business rule examples:

Name Business rule example
Order - Performer The driver must have a special license to fulfil the order
Order - Not a performer The driver is in the blacklist
Cargo - Box For transportation of frozen products, a box with a special temperature profile is required
Location - Transport Restrictions on the transport height
Transport - Performer The truck driver must have the class C driving license
Performer - Transport The driver is allowed to work on a specific transport
Order - Order It is not allowed to transport fish and fruits in the same box

Cargo placement

List of possibilities of a object rotations (90 degree step):

  • ALL - can rotate by any axis
  • YAW - can yaw
  • PITCH - can pitch
  • ROLL - can roll

rotation

Trip model

A trip is described by a list of states of the performer, while at the same time the performer can be in several states (for example, being inside the working time window of a location and fulfilling an order at the same location).

The meanings of the flags responsible for the geographical location:

  • AROUND_LOCATION - the performer is located near the location - in the process of parking or leaving it.
  • INSIDE_LOCATION - the performer is located at the location.

The values ​​of the flags responsible for being in time windows:

  • INSIDE_WORKING_WINDOW - the performer is inside the working time window.
  • INSIDE_LOCATION_WINDOW - the performer is located inside the location's operating time.
  • INSIDE_EVENT_HARD_WINDOW - the performer is inside a hard time window.
  • INSIDE_EVENT_SOFT_WINDOW - the performer is inside a soft time window.

The values ​​of the flags responsible for the actions:

  • ON_DEMAND - the performer is working on the request.
  • WAITING - the performer is in standby mode.
  • RELOCATING - the performer moves to the next stop.
  • BREAK - the performer is on a break.
  • REST - the performer is on a long vacation.

Flag values ​​responsible for the logical state:

  • DURING_ROUNDTRIP - the executor is performing a roundtrip.

An example of a route with multiple states at each point in time

time set of active flags location / order / application / event comment
10:00 INSIDE_LOCATION
AROUND_LOCATION
2 / - / - / - starting location
10:10 RELOCATING - / - / - / - we go to the first order
10:20 AROUND_LOCATION 2 / - / - / - arrived at the first order
10:40 AROUND_LOCATION
INSIDE_LOCATION
WAITING
2 / - / - / - parked
11:00 AROUND_LOCATION
INSIDE_LOCATION
INSIDE_LOCATION_WINDOW
WAITING
INSIDE_EVENT_HARD_WINDOW
2 / - / - / - waited for the start of the location window and at the same time the availability of the order
11:25 AROUND_LOCATION
INSIDE_LOCATION
INSIDE_LOCATION_WINDOW
ON_DEMAND
INSIDE_WORKING_WINDOW
INSIDE_EVENT_HARD_WINDOW
2 / 1 / 2 / 3 waited for the change of artist
11:30 AROUND_LOCATION
INSIDE_LOCATION
INSIDE_LOCATION_WINDOW
ON_DEMAND
INSIDE_WORKING_WINDOW
INSIDE_EVENT_HARD_WINDOW
INSIDE_EVENT_SOFT_WINDOW
2 / 1 / 2 / 3 while working - a soft window happened
11:40 AROUND_LOCATION
INSIDE_LOCATION
INSIDE_LOCATION_WINDOW
INSIDE_WORKING_WINDOW
2 / - / - / - finished working
11:45 AROUND_LOCATION
INSIDE_WORKING_WINDOW
2 / - / - / - drove out of the parking lot
11:45 RELOCATING
INSIDE_WORKING_WINDOW
- / - / - / - we go to the next order

Roundtrips

A trip consists of one or more round trips.

The flag of the presence of a round trip DURING_ROUNDTRIP is set when the work on the request starts and is removed in one of three cases:

  • the executor arrived at the next location to stop using transport
  • the executor arrived at the location separating round trips
  • the executor stopped using transport (in a location not separating round trips, after performing some other action)

Between the end of one round trip and the beginning of another round trip, a change of location RELOCATING cannot occur, but the following can occur: waiting WAITING, a break for the executor BREAK, a rest for the executor REST.

Locations dividing a trip into round trips are defined as follows:

  • if the location has a capacity limitation timetable.limits (in this case, there may be more than one location dividing the trip)
  • if the location is simultaneously the starting and ending location of all performers and transports, as well as all requests with the PICKUP type (in this case, there will be only one location dividing the trip)

Examples of such locations, depending on the task formulation, can be:

  • distribution centers when delivering goods to stores or warehouses in long-haul transportation tasks
  • stores or warehouses when delivering goods to customers in last-mile tasks
  • landfills in garbage collection tasks

Planning configuration