Declaration of Network-Based Mathematical Programs

The FlowCost variable

If your model contains arcs and nodes, the special variable FlowCost can be used in the definition of the objective of your mathematical program. During the model generation phase, AIMMS will generate an expression for this variable based on the associated unit cost for each of the arcs in your mathematical program.

Pure network models

AIMMS will mark your mathematical program as a pure network, if the following conditions are met:

  • your mathematical program consists of arcs and nodes only,

  • all arcs are continuous and do not have one of the SOS or the SemiContinuous properties,

  • the value of the Objective attribute equals the variable FlowCost, and

  • all Multiplier attributes assume the default value of one,

For pure network models you can specify network as its Type.

Network versus LP solver

If your mathematical program is a pure network model, AIMMS will pass the model to a special network solver. If your mathematical program is a generalized network or a mixed network-LP problem, AIMMS will generate the constraints associated with the nodes in your network as linear constraints and use an LP solver to solve the problem. AIMMS will also use an LP solver if you have specified its type to be lp. You may assert that your mathematical program is a pure network model by specifying network as its type.

Example

A pure network model containing the arc and node declarations of the previous sections, but without the additional term ProductImport(d,p) in the node DepotStockSupplyNode(d,p), is defined by the following declaration.

MathematicalProgram ProductFlowDecisionModel {
    Objective   : FlowCost;
    Direction   : minimize;
    Constraints : AllConstraints;
    Variables   : AllVariables;
    Type        : network;
}

If the arc Transport(i,j) declared in the previous section is the only arc, then the variable FlowCost can be represented by the expression

sum [(i,j,p), UnitTransportCost(i,j) * Transport(i,j,p)]

Note that the addition of the term ProductImport(i,p) in DepotStockSupplyNode(i,p) would result in a mixed network/linear program formulation, which requires an LP solver.