Hier werden die Unterschiede zwischen zwei Versionen gezeigt.
Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
ws1516:logistische_probleme:2ercode [2016/02/23 16:31] jakobfaustus angelegt |
ws1516:logistische_probleme:2ercode [2016/05/10 14:46] (aktuell) |
||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
+ | Der komplette code der Tauschheuristik. Für die 2er-Tauschheuristik muss nichts angegeben werden, für die 3er-Tauschheuristik muss für modus "3" angegeben werden. | ||
+ | |||
<code python> | <code python> | ||
def tauschalgorithmus(zuege, streckendaten, anschlussdaten, tauschzahl=500, modus=2): | def tauschalgorithmus(zuege, streckendaten, anschlussdaten, tauschzahl=500, modus=2): | ||
Zeile 8: | Zeile 10: | ||
n = 1 # Zaehlindex fuer Tausche | n = 1 # Zaehlindex fuer Tausche | ||
if modus == 2: | if modus == 2: | ||
- | #print("Tausche Paare...") | + | |
for i in range(0, tauschzahl): # Bis wo es evtl noch schneller ist als die bruteforcemethode | for i in range(0, tauschzahl): # Bis wo es evtl noch schneller ist als die bruteforcemethode | ||
k += 1 | k += 1 | ||
- | # print(k) | ||
neuereihe = tauschen(zuege, random.randint(0, len(zuege) - 1), | neuereihe = tauschen(zuege, random.randint(0, len(zuege) - 1), | ||
random.randint(0, len(zuege) - 1)) # zufaelliges tauschen zweier Zuege | random.randint(0, len(zuege) - 1)) # zufaelliges tauschen zweier Zuege |