Typisches Problem und Ausführungsmethode
Betrachten Sie das Zuordnungsziel $ L = \ {L_1, L_2, \ Punkte, L_n \} $ des Objekts $ P = \ {P_1, P_2, \ Punkte, P_n \} $. Bei gegebenem Transportvolumen $ q_ {ij} $ zwischen dem Objekt $ P_i $ und $ P_j $ und der Entfernung $ d_ {kl} $ zwischen den Zuordnungszielen $ L_k $ und $ L_l $, dem Transportvolumen und Suchen Sie die Zuordnung, die die Summe der Entfernungsprodukte minimiert.
usage
Signature: quad_assign(quant, dist)
Docstring:
Sekundäres Zuordnungsproblem
Volle Suche
Eingang
quant:Transportvolumen zwischen Zielen
dist:Abstand zwischen den Teilnehmern
Ausgabe
Liste der Zuordnungszielnummern für jedes Ziel
python
from ortoolpy import quad_assign
quad_assign([[0, 2, 0], [0, 0, 1], [0, 0, 0]], [[0, 2, 4], [2, 0, 3], [4, 3, 0]])
Ergebnis
(0, 1, 2)
python
# pandas.DataFrame
from ortoolpy.optimization import QuadAssign
QuadAssign('data/quad_assign_quant.csv', 'data/quad_assign_dist.csv')[1]
target | pos | |
---|---|---|
0 | 0 | 0 |
1 | 1 | 1 |
2 | 2 | 2 |
Sie können sich verschiedene Probleme als sekundäre Zuordnungsprobleme vorstellen, z. B. das Patrol Salesman-Problem (TSP). Das sekundäre Zuordnungsproblem ist ein sehr abstraktes Problem. Es ist jedoch ein sehr schwer zu lösendes Problem. Obwohl es nützlich ist, sich auf ein sekundäres Zuordnungsproblem zu reduzieren, um die Struktur des Problems zu verstehen, wird nicht empfohlen, es so zu lösen, wie es ist. Es sollte gelöst werden, indem es als spezifischeres Problem betrachtet wird. Für TSP wäre es beispielsweise effizienter, eine TSP-spezifische Lösung zu verwenden.
Recommended Posts