2016-04-14 4 views
0

Ich verwende Optaplanner VRP-Tool, um einige VRP-Instanzen zu lösen. Gibt es eine Möglichkeit, die Anzahl der Fahrzeuge in Echtzeit zu sehen? Welchen Algorithmus setzt Optaplanner auch zur Lösung von VRP ein?Anzahl der Fahrzeuge in Echtzeit

Danke, Mayank

Antwort

0

Wenn Sie in Echtzeit (Solver.addSolverListener), um neue beste Lösung Ereignisse hören, ist es einfach, die Anzahl von Fahrzeugen verwendet wird, um zu bestimmen, indem sie alle Vehicle Instanzen und prüfen, ob nextVisit isn Iterieren‘ t null.

Beachten Sie, wenn Sie die Anzahl der Fahrzeug verwendet minimieren wollen, werden Sie eine harte oder softt Einschränkung für das hinzufügen müssen, die einfach, gebrauchte when Vehicle(nextVisit != null) then addHard(-1); end

Wie für den Algorithmus VRP zu lösen: Check das Solver Config XML. Wir unterstützen viele Algo's, in der vrp Benchmark Config XML lassen wir sie gegeneinander antreten, um den besten Algo für die Produktion zu ermitteln.

+0

Vielen Dank, Geoff. Ich frage mich nur, ob der Algorithmus auch heterogene Kapazitäten für Fahrzeuge unterstützt, d. H. Fahrzeug 1 hat Kapazität 200 und Fahrzeug 2 hat Kapazität 100 ... und so weiter. Danke nochmal !! – user2876943

+0

Ich bin sehr neu zu Optaplanner. Ich habe gerade die runExampls.bat ausgeführt, um einige Instanzen von VRP auszuprobieren. Nach Ihrem Vorschlag habe ich Änderungen an der Datei "vehicleRoutingScoreRules.drl" vorgenommen, die sich unter "optaplanner-distribution-6.3.0.Final \ examples \ sources \ src \ main \ resources \ org \ optaplanner \ examples \ vehiclerouting \ solver" befindet. Ist das überhaupt richtig? Ich fügte hinzu, die Einschränkung: Regel "minVehicles" \t wenn \t \t $ Fahrzeug: Fahrzeug (! NextVisit = null) \t dann \t \t scoreHolder.addHardConstraintMatch (kcontext, -1); Ende Allerdings sehe ich keine Auswirkungen bei der Verwendung der runExamples.bat Datei. Gibt es einen Link, auf den ich mich beziehen kann? Danke – user2876943

+0

siehe docs "run examples from source" (die .bat und .sh führen sie aus den jar binaries) –