mascoptCplex.algos.networks
Class ProtectionRoutingFullPathSum

java.lang.Object
  |
  +--mascoptCplex.algos.networks.ProtectionRoutingGlobal
        |
        +--mascoptCplex.algos.networks.ProtectionRoutingFullPath
              |
              +--mascoptCplex.algos.networks.ProtectionRoutingFullPathSum

public class ProtectionRoutingFullPathSum
extends ProtectionRoutingFullPath

The ProtectionRoutingFullPathSum class provides an algorithm to compute and solve the problem of WDM network with two levels, a cable graph and a request graph. The problem is based on the technology of WDM, so it use a WDMNetwork object. In first, the algorithm solve the main network, then the breakdown of network is simulated and the protection network is solved. The protection network is built with the same graph of cables that the main network less a cable (the failure). The protection of the network is static. Only one arc is broken down at the time, the protection solve as much of problems than there are cables in the network. For all protection networks, the request is calculated, according to the type of protection, the request is different. Here, the protection is the PATH protection ; ie the request graph of protection is all request which aren't respected with the failure. Moreover, the main system and the protection system are solved with the same objective : Minimize the the sum of the flow of network. If you use an other type of protection and/or an other objective, see the Subclasses : ProtectionRoutingLocal, ProtectionRoutingGlobal, ProtectionRoutingGlobalSum, ProtectionRoutingFullPath, ProtectionRoutingLocalSum.


Field Summary
 
Fields inherited from class mascoptCplex.algos.networks.ProtectionRoutingGlobal
AVERAGE_FLOW, CAPACITY_STRING_VALUE, MAX_FLOW, MIN_FLOW, SUM_FLOW, SUM_LENGTH_PATH, W
 
Constructor Summary
ProtectionRoutingFullPathSum(WDMNetwork n, boolean integerCompute)
          Constructor, initialize the network and the flow system by recopy.
 
Method Summary
 RoutingCplexFlowCapacityMax computeNetwork(NetworkCplexFlow network)
          compute the NetworkCplexFlow with a RoutingCplexFlowCapacityMax.
 void objectiveType()
          specify the type of objective in the WDMNetwork object.
 
Methods inherited from class mascoptCplex.algos.networks.ProtectionRoutingFullPath
capacityProtection, protectionType, requestProtection
 
Methods inherited from class mascoptCplex.algos.networks.ProtectionRoutingGlobal
dumpMainCplex, dumpProtectionCplex, solve
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ProtectionRoutingFullPathSum

public ProtectionRoutingFullPathSum(WDMNetwork n,
                                    boolean integerCompute)
Constructor, initialize the network and the flow system by recopy.

Method Detail

computeNetwork

public RoutingCplexFlowCapacityMax computeNetwork(NetworkCplexFlow network)
compute the NetworkCplexFlow with a RoutingCplexFlowCapacityMax. So, specify the objective of the problem. The objective minimize the sum of the flow.

Parameters:
network - representing the problem to compute.
Returns:
a RoutingCplexFlowCapacitySum which is the solution of problem.

objectiveType

public void objectiveType()
specify the type of objective in the WDMNetwork object.

Overrides:
objectiveType in class ProtectionRoutingGlobal