NS3 Lane RateLane Rate
Overview
Lane rates are used to connect nodes in the network. A lane rate typically represents the cost and capacity to move a certain product between two points. The costing can be a function of the distance, time, quantity or some mix of these. Lane rates may also be restricted to specific products, product groups, or the intersection of product and product groups.
The amount of a product which may be assigned to a particular lane may also be limited to not exceed a certain amount. This is useful when modelling a limited capacity of a cheap lane rate before a more expensive lane is required.
Applicable models
- NS3
ns3-tbfvuwtge2iq
Lane Rate
A lane rate specifies a connection between two nodes and the products which may flow along the lane. The lane rate also uses the common unit dimensional costs and flow constraints.
Schema definition
message LaneRate {
required string id = 1;
required string source = 3;
required string destination = 4;
repeated string productIds = 5;
repeated string productGroupIds = 6;
repeated UnitDimensionCost unitDimensionCosts = 7;
repeated FlowDimensionalConstraint flowConstraints = 8;
}
Fields
- id
- A unique identifier for this lane rate. Should be unique across a particular model.
- source
- The source node for the lane. The node should be defined in the model.
- destination
- The destination node for the lane. The node should be defined in the model.
- productIds
- A list of allowable product identifiers which are permitted to use this lane. When the list is empty, it is assumed that all products are permissible on this particular lane.
- productGroupIds
- A list of allowable product group identifiers which are permitted to use this lane. When the list is empty, it is assumed that all product groups are permissible on this particular lane. When both
productIds
andproductGroupIds
and specified, the intersection of the two sets is used as the permissible set of products that may be assigned to this lane. - unitDimensionCosts
- A list of unit dimensional costs which should be applied when this particular lane is used in the model. This enables modelling a cost which is distance or time based or a cost per unit dimension or a mix of these.
- flowConstraints
- A list of flow constraints which should be applied to this particular lane. These are hard constraints which enforce a restriction on the amount of a particular dimension that may be assigned to this lane.
Examples
This lane rate demonstrates a connection between the Guiness Storehouse
and the Galway Warehouse
where the cost of moving products between the source and destination is proportional to the distance between these locations and independent of the volume. The lane rate shown below also restricts the total weight
which may be assigned to this connection to be less than 5000 units.
id: "lr:Guiness Storehouse->Galway Warehouse"
source: "Guiness Storehouse"
destination: "Galway Warehouse"
unitDimensionCosts {
dimensionIds: "distance"
dimensionCoefficients: 1
costPerUnit: 0.1
}
flowConstraints {
dimensionIds: "weight"
dimensionCoefficients: 1
flowMin: 0
flowMax: 5000
}
This next example illustrates a connection between the Guiness Storehouse
and the Limerick Warehouse
where two unitDimensionCosts
are provided, one which adds a cost proportional to the distance between the nodes, and the other a cost per unit moved between the source and destination nodes. This lane rate is also restricted to only permit products which belong to the product group Liquids
.
id: "lr:Guiness Storehouse->Limerick Warehouse"
source: "Guiness Storehouse"
destination: "Limerick Warehouse"
productGroupIds: "Liquids"
unitDimensionCosts {
dimensionIds: "distance"
dimensionCoefficients: 1
costPerUnit: 0.1
}
unitDimensionCosts {
dimensionIds: "weight"
dimensionCoefficients: 1
costPerUnit: 1
}