Module vrp_core::models::problem

source ·
Expand description

Problem domain models.

Structs

Represents an actor.
Represents an actor detail.
Specifies result of hard route constraint check.
Represents operating costs for driver and vehicle.
Represents a driver, person who drives Vehicle. Introduced to allow the following scenarios:
Represents driver detail (reserved for future use).
Provides way to calculate activity costs which might contain reserved time.
Provides way to calculate transport costs which might contain reserved time.
An individual feature which is used to build a specific VRP variant, e.g. capacity restriction, job values, etc. Each feature consists of three optional parts (but at least one should be defined):
Provides a way to build feature with some checks.
Specifies permutation generator which allows only fixed set of permutations.
Represents available resources to serve jobs.
Defines Vehicle Routing Problem variant by global and local objectives: A global objective defines the way two VRP solutions are compared in order to select better one: for example, given the same amount of assigned jobs, prefer less tours used instead of total solution cost.
Stores all jobs taking into account their neighborhood.
Contains matrix routing data for specific profile and, optionally, time.
Represents a job which consists of multiple sub jobs. All of these jobs must be performed or none of them. Order can be controlled via specific dimension value.
Represents a job place details where and/or when work has to be performed.
An actor independent activity costs.
Represents a job which should be performed once but actual place/time might vary.
Represents a vehicle.
Represents a vehicle detail (vehicle shift).
Specifies a vehicle place.

Enums

Represents a job variant.
Specifies travel time type.

Traits

Provides the way to get cost information for specific activities done by specific actor.
Defines feature constraint behavior.
Defines feature objective behavior.
Controls a cached state of the given feature.
Defines a trait to work with multi job’s permutations.
Provides the way to get routing information for specific locations and actor.

Functions

Creates time agnostic or time aware routing costs based on matrix data passed.
Returns job locations.

Type Definitions

A grouping function for collection of actors.
Specifies reserved time index type.
Specifies a type for state key.
Specifies a type for constraint violation code.