mascoptCplex.algos.digraph
Class TubesLP

java.lang.Object
  |
  +--mascoptCplex.algos.digraph.TubesLP

public class TubesLP
extends Object

Constructs a Linear Program for Traffic grooming in a network. This assumes that the demands have already been routed. The grooming phase then packs the wavelengths in multiple layers. It should be noted that the paths are provided as an input.

Version:
18/06/2002
Author:
srai@sophia.inria.fr
See Also:
constructLP

Constructor Summary
TubesLP(DiGraph g, Vector pathSet, int num, int[] capLayer, int[][] costLayer)
          The Default Constructor
 
Method Summary
 void constructLP()
          The main function - constructs an LP for the traffic grooming, solves it and sets the costOfPipes field of the class.
 double getCostOfPipes()
          The function returns the cost of the pipes in the solution
 TubeSet getTubes()
          Returns an iterator over the Tubes found by the LP
 void writeTubesLP(boolean choice, String filename)
          Allow to write the linear program solved by cplex representing the tube problem
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

TubesLP

public TubesLP(DiGraph g,
               Vector pathSet,
               int num,
               int[] capLayer,
               int[][] costLayer)
The Default Constructor

Parameters:
g - the Graph of the network
pathSet - the paths found by the routing
num - the number of layers for multiple layer grooming
capLayer - capacity of layer k pipe in terms of layer k-1 pipes
costLayer - for cost parameters alpha and beta of each layer
Method Detail

constructLP

public void constructLP()
The main function - constructs an LP for the traffic grooming, solves it and sets the costOfPipes field of the class.


getCostOfPipes

public double getCostOfPipes()
The function returns the cost of the pipes in the solution

Returns:
the cost of pipes found by cples, 0 if the solution has not been found out

getTubes

public TubeSet getTubes()
Returns an iterator over the Tubes found by the LP


writeTubesLP

public void writeTubesLP(boolean choice,
                         String filename)
Allow to write the linear program solved by cplex representing the tube problem

Parameters:
choice - true for writting otherwise false
filename - the name of the file to write