private java.util.Map<java.lang.Integer,SpanningTreeAlgorithm.SpanningTree<E>> |
AhujaOrlinSharmaCapacitatedMinimumSpanningTree.calculateSpanningTrees(AbstractCapacitatedMinimumSpanningTree.CapacitatedSpanningTreeSolutionRepresentation currentSolution,
java.util.Map<java.lang.Integer,SpanningTreeAlgorithm.SpanningTree<E>> partitionSpanningTrees,
java.util.Set<java.lang.Integer> affectedLabels) |
Updates the map containing the MSTs for every subset of the partition.
|
private java.util.Map<V,Pair<java.util.Set<V>,java.lang.Double>> |
AhujaOrlinSharmaCapacitatedMinimumSpanningTree.calculateSubtreesOfVertices(AbstractCapacitatedMinimumSpanningTree.CapacitatedSpanningTreeSolutionRepresentation currentSolution,
java.util.Map<V,Pair<java.util.Set<V>,java.lang.Double>> subtrees,
java.util.Map<java.lang.Integer,SpanningTreeAlgorithm.SpanningTree<E>> partitionSpanningTree,
java.util.Set<java.lang.Integer> affectedLabels) |
Updates the map containing the subtrees of all vertices in the graph with respect to the MST
in the partition and returns them in map.
|
private Pair<java.util.Set<java.lang.Integer>,java.util.Set<V>> |
AhujaOrlinSharmaCapacitatedMinimumSpanningTree.executeNeighborhoodOperation(AbstractCapacitatedMinimumSpanningTree.CapacitatedSpanningTreeSolutionRepresentation currentSolution,
java.util.Map<java.lang.Integer,V> improvementGraphVertexMapping,
java.util.Map<Pair<java.lang.Integer,AhujaOrlinSharmaCapacitatedMinimumSpanningTree.ImprovementGraphVertexType>,java.lang.Integer> pathExchangeVertexMapping,
java.util.Map<V,Pair<java.util.Set<V>,java.lang.Double>> subtrees,
GraphWalk<Pair<java.lang.Integer,AhujaOrlinSharmaCapacitatedMinimumSpanningTree.ImprovementGraphVertexType>,DefaultWeightedEdge> cycle) |
Executes the move operations induced by the calculated cycle in the improvement graph.
|
private Pair<java.util.Set<V>,java.lang.Double> |
AhujaOrlinSharmaCapacitatedMinimumSpanningTree.subtree(AbstractCapacitatedMinimumSpanningTree.CapacitatedSpanningTreeSolutionRepresentation currentSolution,
java.util.Set<V> modifiableSet,
V v,
java.util.Map<java.lang.Integer,SpanningTreeAlgorithm.SpanningTree<E>> partitionSpanningTree) |
Calculates the subtree of v with respect to the MST given in
partitionSpanningTree .
|
void |
AhujaOrlinSharmaCapacitatedMinimumSpanningTree.ImprovementGraph.updateImprovementGraph(AbstractCapacitatedMinimumSpanningTree.CapacitatedSpanningTreeSolutionRepresentation currentSolution,
java.util.Map<V,Pair<java.util.Set<V>,java.lang.Double>> subtrees,
java.util.Map<java.lang.Integer,SpanningTreeAlgorithm.SpanningTree<E>> partitionSpanningTrees,
java.util.Set<java.lang.Integer> labelsToUpdate,
java.util.Set<V> tabuList) |
Updates the improvement graph.
|
private void |
AhujaOrlinSharmaCapacitatedMinimumSpanningTree.ImprovementGraph.updateOriginNodeConnections(AbstractCapacitatedMinimumSpanningTree.CapacitatedSpanningTreeSolutionRepresentation currentSolution,
java.util.Map<V,Pair<java.util.Set<V>,java.lang.Double>> subtrees,
java.util.Map<java.lang.Integer,SpanningTreeAlgorithm.SpanningTree<E>> partitionSpanningTrees,
java.util.Set<java.lang.Integer> labelsToUpdate,
V v1,
Pair<java.lang.Integer,AhujaOrlinSharmaCapacitatedMinimumSpanningTree.ImprovementGraphVertexType> vertexOfV1Single,
Pair<java.lang.Integer,AhujaOrlinSharmaCapacitatedMinimumSpanningTree.ImprovementGraphVertexType> vertexOfV1Subtree) |
Updates the edges to the origin vertex.
|
private void |
AhujaOrlinSharmaCapacitatedMinimumSpanningTree.ImprovementGraph.updatePseudoNodesOfNewLabels(AbstractCapacitatedMinimumSpanningTree.CapacitatedSpanningTreeSolutionRepresentation currentSolution) |
Updates the pseudo nodes corresponding to new subsets in the partition.
|
private void |
AhujaOrlinSharmaCapacitatedMinimumSpanningTree.ImprovementGraph.updateSingleNode(AbstractCapacitatedMinimumSpanningTree.CapacitatedSpanningTreeSolutionRepresentation currentSolution,
java.util.Map<V,Pair<java.util.Set<V>,java.lang.Double>> subtrees,
java.util.Set<V> tabuList,
int label,
double oldWeight,
java.util.Set<V> modifiableSet,
Pair<java.lang.Integer,AhujaOrlinSharmaCapacitatedMinimumSpanningTree.ImprovementGraphVertexType> pseudoVertex,
V v1,
Pair<java.lang.Integer,AhujaOrlinSharmaCapacitatedMinimumSpanningTree.ImprovementGraphVertexType> vertexOfV1Single) |
Updates all edges from vertexOfV1Single to nodes in the subset represented
by label .
|
private void |
AhujaOrlinSharmaCapacitatedMinimumSpanningTree.ImprovementGraph.updateSubtreeNode(AbstractCapacitatedMinimumSpanningTree.CapacitatedSpanningTreeSolutionRepresentation currentSolution,
java.util.Map<V,Pair<java.util.Set<V>,java.lang.Double>> subtrees,
java.util.Set<V> tabuList,
int label,
double oldWeight,
java.util.Set<V> modifiableSet,
Pair<java.lang.Integer,AhujaOrlinSharmaCapacitatedMinimumSpanningTree.ImprovementGraphVertexType> pseudoVertex,
V v1,
Pair<java.lang.Integer,AhujaOrlinSharmaCapacitatedMinimumSpanningTree.ImprovementGraphVertexType> vertexOfV1Subtree) |
Updates all edges from vertexOfV1Single to nodes in the subset represented
by label .
|