public class TspDefaultMatrix extends java.lang.Object implements TspMatrix, OverlayAware
Modifier and Type | Field and Description |
---|---|
protected float[][] |
matrixCosts |
protected int[][][] |
matrixPaths |
Constructor and Description |
---|
TspDefaultMatrix() |
TspDefaultMatrix(Graph graph,
int[] vertexIds,
float maxCost,
Log log,
java.util.Properties params) |
TspDefaultMatrix(OverlayGraph overlayGraph,
int[] vertexIds,
float maxCost,
Log log,
java.util.Properties params) |
Modifier and Type | Method and Description |
---|---|
void |
build(Graph graph,
int[] vertexIds,
float maxCost,
Log log,
java.util.Properties params) |
void |
build(OverlayGraph overlayGraph,
int[] vertexIds,
float maxCost,
Log log,
java.util.Properties params) |
static float |
calcMaxGeoDistance(Graph graph,
int[] vertexIds)
Berechnet die laengste geografische Distanz zwischen allen
uebergebenen Vertices.
|
float |
calcTourCosts(int[] tour,
int x,
int y,
float costLimit)
Berechnet die Kosten einer SubTour (Besuchsreihenfolge),
bricht allerdings bereits mit
Float.NaN
ab, sobald ein Kosten-Limit erreicht wird und somit keine
Verbesserung eintritt. |
int[] |
createFullMatrixTour(boolean asRing)
Erstellt eine Anfangskonfiguration fuer eine Tour
auf der kompletten Matrix.
|
float[][] |
getCosts()
Liefert alle Kosten der Matrix.
|
int[][][] |
getPaths()
Liefert den Kosten zugrundeliegenden Pfade.
|
int[][] |
getTourPaths(int[] tour)
Generiert aus einer Besuchsreihenfolge
die entsprechenden Pfade.
|
java.lang.String |
prettyPrintCsv() |
java.lang.String |
toString() |
protected float[][] matrixCosts
protected int[][][] matrixPaths
public TspDefaultMatrix()
public TspDefaultMatrix(OverlayGraph overlayGraph, int[] vertexIds, float maxCost, Log log, java.util.Properties params) throws java.lang.Exception
java.lang.Exception
public void build(Graph graph, int[] vertexIds, float maxCost, Log log, java.util.Properties params) throws java.lang.Exception
java.lang.Exception
public void build(OverlayGraph overlayGraph, int[] vertexIds, float maxCost, Log log, java.util.Properties params) throws java.lang.Exception
java.lang.Exception
public static float calcMaxGeoDistance(Graph graph, int[] vertexIds)
graph
- Graph
vertexIds
- int[] Ids von Verticespublic final float[][] getCosts()
TspMatrix
public final int[][][] getPaths()
public final int[] createFullMatrixTour(boolean asRing)
TspMatrix
createFullMatrixTour
in interface TspMatrix
asRing
- boolean true: Start = Ziel (TSP)public final int[][] getTourPaths(int[] tour)
tour
- int[] Besuchsreihenfolge.public final float calcTourCosts(int[] tour, int x, int y, float costLimit)
Float.NaN
ab, sobald ein Kosten-Limit erreicht wird und somit keine
Verbesserung eintritt.calcTourCosts
in interface TspMatrix
tour
- int[] Besuchsreihenfolge.x
- StartIndex innerhalb der Toury
- EndIndex der TourcostLimit
- float Maximale Kosten, Abbruchkriterium.Float.NaN
public java.lang.String toString()
toString
in class java.lang.Object
public java.lang.String prettyPrintCsv()