|
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectuk.ac.ic.doc.automed.p2p.qproc.optimise.CapacitatedNetworkFlowOptimiser
public class CapacitatedNetworkFlowOptimiser
Field Summary | |
---|---|
private Jama.Matrix |
A
|
private Jama.Matrix |
b
|
private static java.lang.String |
BANNER0
|
private static java.lang.String |
BANNER1
|
private Jama.Matrix |
cprime
|
private Jama.Matrix |
d
|
private Jama.Matrix |
f
|
private FlowResultSet |
fd
|
private GraphI |
G
|
private java.util.logging.Logger |
logger
|
private int |
m
|
private int |
n
|
private static int |
SLEEP_TIME
|
private Jama.Matrix |
u
|
Constructor Summary | |
---|---|
CapacitatedNetworkFlowOptimiser(GraphI G,
Jama.Matrix cprime,
Jama.Matrix A,
Jama.Matrix b,
Jama.Matrix u,
Jama.Matrix d,
Jama.Matrix f)
Create a new instance of the optimiser object with the specified parameters |
Method Summary | |
---|---|
private void |
analyseFlowCycle(LevelledGTree T,
java.util.List F,
java.util.List B,
Edge ire,
boolean edgeInU)
Analyse the tree T after being added with an extra reduced cost edge to form a cycle. |
void |
dfs(Node n,
LevelledGTree t,
int nodeCount,
int level)
Depth first search of the flow graph to construct a tree that has a specified number of nodes |
FlowResultSet |
getResult()
|
private Jama.Matrix |
initBFS(LevelledGTree T,
java.util.Set U,
java.util.Set D)
Construct an initial tree T from G and partition the remaining arcs into an upper bound sets (U) and a lower bound set (D). |
void |
optimiseFlow()
|
private Jama.Matrix |
p(GTree T)
Calculate the vector p based on the equality constraints of the cost differences of the basic flows |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
private GraphI G
private Jama.Matrix cprime
private Jama.Matrix A
private Jama.Matrix b
private Jama.Matrix u
private Jama.Matrix d
private Jama.Matrix f
private int n
private int m
private FlowResultSet fd
private java.util.logging.Logger logger
private static final java.lang.String BANNER0
private static final java.lang.String BANNER1
private static final int SLEEP_TIME
Constructor Detail |
---|
public CapacitatedNetworkFlowOptimiser(GraphI G, Jama.Matrix cprime, Jama.Matrix A, Jama.Matrix b, Jama.Matrix u, Jama.Matrix d, Jama.Matrix f)
G
- the directed network flow graph with n nodes and m edgescprime
- the cost vector (1xm)A
- the (initial) node-arc incident matrix (nxm)b
- the RHS vector (1xn) of the flow constraints of nodesu
- the vector (1xm) of upper bound constraintsd
- the vector (1xm) of lower bound constraintsf
- the vector (1xm) of the flow variables (one for an edge)Method Detail |
---|
public void optimiseFlow() throws OptimisationException
OptimisationException
private void analyseFlowCycle(LevelledGTree T, java.util.List F, java.util.List B, Edge ire, boolean edgeInU)
T
- the tree with one cycleF
- set of forward arcsB
- set of backward arcsire
- the newly added edge (which causes a cycle)edgeInU
- whether or not the tree is in the upperbound or lower bound edge
setprivate Jama.Matrix p(GTree T)
private Jama.Matrix initBFS(LevelledGTree T, java.util.Set U, java.util.Set D)
T
- the feasible tree to be constructedU
- the set of edges corresponding to the upper bound constraintsD
- the set of edges corresponding to the lower bound constraints
public void dfs(Node n, LevelledGTree t, int nodeCount, int level)
n
- t
- nodeCount
- level
- public FlowResultSet getResult()
|
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |