mathematik - physik - informatik Seite zurück   Seite vor  

Das Rundreiseproblem

Das Rundreiseproblem, auch Problem eines Handlungsreisenden, ist eine sehr bekannte Aufgabe. Betrachten wir n+1 Städte mit den Entfernungen cij zwischen je zwei Städten i und j. Ein Handlungsreisender soll von einer Ausgangsstadt 0 aus n andere Städte besuchen, dabei jede genau einmal, und anschließend wieder zu 0 zurückkehren.
Das Rundreiseproblem sucht nach der Reihenfolge, in der der Reisende die Städte ansteuern muss, damit der zu durchlaufene Gesamtweg minimal wird.

Das Rundreiseproblem kann aufgefasst werden als eine Art von Zuordnungsproblem, aufgrund des geforderten Zyklus der Reise ist es jedoch viel komplexer und schwieriger. Das Rundreiseproblem ist auch als ein kombinatorisches Problem bekannt, d.h. Modelle der Kombinatorik können auf diese Sorte von Aufgaben übertragen werden.

Es gibt verschiedene Modellierungen des Rundreiseproblems, betrachten wir es hier als ganzahliges lineares Optimierungsproblem. Die sich damit ergebenden Formeln der Zielfunktion und der Nebenbedingungen weisen eine große Ähnlichkeit zum Transportproblem auf. Es zeigt sich aber, dass trotz fast analoger Formulierung ein total verschiedenes Lösungsverhalten auftritt.

Es seien die Variablen xij mit i=0,,n und j=0,,n folgendermaßen definiert:

xij = 1wenn der Reisende von der Stadt   i   direkt in die Stadt   j   fährt, 0sonst.

Das Rundreiseproblem lässt sich dann beschreiben mit der Zielfunktion (11) und den Nebenbedingungen (12), (13) und (14).

Rundreiseproblem: Gesucht sind die Werte xij so, dass gilt:

i=0 n j=0 n cij xij = Min! (11)
i=1 n xij = 1         j=1,,n (12)
j=1 n xij = 1         i=1,,n (13)
ui - uj + nxij n-1 i=1,,n j=1,,n     ij     (14)

Die Bedingungen besitzen die folgende Bedeutung: (12) besagt, dass der Reisende jede Stadt j, abgesehen von der Ausgangsstadt, genau einmal anläuft. (13) besagt, dass der Reisende jede Stadt i, abgesehen von der Ausgangsstadt, genau einmal verlässt. (11) kennzeichnet die Zielfunktion: der Gesamtweg, den der Reisende zurücklegt, soll so klein wie möglich sein. In der Doppelsumme werden dabei nur die xij berücksichtigt, deren Wert 1 ist, d.h. die beschreiben, dass der Reisende von i nach j fährt.

Die Bedingungen (12) und (13) entwickeln gemeinsam mit der Zielfunktion (11) ein Optimierungsproblem, das aufgrund der Wertbelegung der xij auch 0-1-Zuordnungsproblem genannt wird. Dieses Problem enthält jedoch einen Sachverhalt, der nach unserer Definition nicht im Rundreiseproblem zulässig ist. Es ist dem Reisenden möglich, seinen Weg in Teilzyklen zu zerlegen, die voneinander unabhängig sind. Mit anderen Worten: er kann in 0 starten, von dort aus 9 Städte hintereinander besuchen und dann zu 0 zurückkehren. Anschließend fährt er von der elften Stadt in die zwölfte usw. um irgendwann wieder in die elfte zurückzukehren. Dieses paradoxe Verhalten (wie gelangt der Reisende von der Anfangsstadt 0 in die elfte Stadt?) wird durch das Bedingungsgefüge (11), (12) und (13) nicht ausgeschlossen. Dann liegt aber eben keine Rundreise vor, die den gestellten Anforderungen entspricht.

Die Bedingung (14) verhindert derartige Teilzyklen. Angenommen, es gibt als Lösung des Rundreiseproblems zwei unabhängige Zyklen. Dann ist einer der beiden Zyklen ein Teilzyklus T mit k<n Gliedern, der die Stadt 0 nicht enthält.
Alle xij längs des Weges T sind dann gleich 1. Addiert man nun alle Ungleichungen (14) mit xij=1 längs des Zyklus T, so erhält man die Ungleichung nkn-1k, da sich alle Differenzen ui-uj gegenseitig wegheben. Diese Ungleichung ist falsch. Die Annahme ist widerlegt.
Die Bedingung (14) sorgt demzufolge dafür, dass eine beliebige Route für den Reisenden aus genau einem Zyklus besteht, der die Stadt 0 beinhaltet.

Es bleibt noch für eine beliebige Rundreise, ausgehend von der Stadt 0, ein ui anzugeben, so dass (14) erfüllt wird. Aus diesem Grund setzen wir ui=p, wenn die Stadt i vom Reisenden im p-ten Schritt seiner Reise besucht wird. Es ist sicher p=1,,n. Mit dieser Definition folgt wegen ui-ujn-1 für alle xij=0 die Gültigkeit der Bedingung (14).
Bei xij=1 folgt dann aufgrund der Definition von xij mit ui=p auch uj=p+1.
Dann gilt ui-uj + nxij = p-p+1+n = n-1. Damit wäre (14) mit der Definition der ui für alle xij gültig.

Die Zielfunktion (11) und die Bedingungen (12)…(14) beschreiben das Rundreiseproblem äquivalent. Die Verwandschaft zum Transportproblem wird offenbar bei Betrachtung des Transportproblems mit m=n und vi=bj=1 für alle i und j.

Es zeigt sich, dass das Rundreiseproblem NP-vollständig ist, d.h. es gibt keinen Algorithmus, der das Problem in polynomialer Zeit löst.



  Bert Xylander - 30. Dezember 2015
  'Optimierung in der Schule'
Seite zurück   Seite vor