PuLP, ein Modellierer für mathematische Planungsprobleme, verwendet CBC-COIN als Standardlöser. Da CBC-COIN jedoch auf ein Problem stieß, dessen Berechnung etwa 15 Stunden dauerte, zahlte IBM den Löser. Ich möchte CPLEX verwenden. Ich bin dankbar, dass Software, die für Studenten (oder in einem akademischen Umfeld) ungefähr 27.000 Yen pro Monat kostet, kostenlos verwendet werden kann ... Selbst wenn ich mir einige Sites angesehen habe, auf denen das Installationsverfahren geschrieben wurde, hat die Installation lange gedauert, da die Informationen auf der Site alt waren. Daher möchte ich dieses Mal das Installationsverfahren zusammenfassen. (Vielleicht wird dieser Artikel im nächsten Jahr von Junioren im Seminar gesehen, also werde ich ihn so sorgfältig wie möglich schreiben.) Die Umgebung ist Windows 10 Home (64-Bit-Version), Python-Version 3.7.1 (hier hinzugefügt) und IBM ILOG CPLEX 12.10.0 ist installiert.
Gehen Sie zunächst zu hier. Klicken Sie dann kostenlos auf Get Student / Teacher Edition (englische Version). Anschließend wird ILOG CPLEX Optimization Studio unten rechts auf der Seite mit der Aufschrift Data Science angezeigt. Klicken Sie also auf Registrieren oder melden Sie sich an, um auf diese Ressource darunter zuzugreifen. Anschließend werden Sie aufgefordert, ein Konto zu erstellen. Erstellen Sie daher ein Konto unter Verwendung der von der Universität angegebenen E-Mail-Adresse. Nach dem Anmelden ändert sich der Registar ... Teil der vorherigen Seite in "Download v12.10". Klicken Sie also darauf. Dann gehe ich zu der Seite mit dem Namen Ergebnisse nach Teilenummer suchen, aber ich verstehe den oberen Teil nicht, also gebe ich nichts ein und scrolle zum Ende der Seite. Sind Sie auf die Seite im Bild oben gekommen? Wählen Sie hier Alle aus, ist nicht ausgewählt, und die für Ihre PC-Umgebung geeignete wird von unten installiert. Diesmal ist es die 64-Bit-Version von Windows 10, also die zweite von oben. Wenn Sie weiter nach unten gehen, werden Sie um Ihre Zustimmung gebeten, daher stimme ich zu. Klicken Sie dann auf Jetzt herunterladen und Sie sollten den folgenden Bildschirm sehen. Klicken Sie auf Download Director installieren / erneut installieren Ein Bildschirm wie dieser wird angezeigt. Klicken Sie auf Download Director installieren. IBM in der Welt kann den Computer nicht beschädigen! Klicken Sie mit starkem Willen auf Speichern. (Bitte übernehmen Sie die Verantwortung für Ihre Handlungen ...!) Der Bildschirm sieht nicht wie in Schritt 3 aus, wird jedoch zu ???. Wenn Sie jedoch auf das Fenster zum Schließen klicken, wird die Installation gestartet (aus irgendeinem Grund).
Folgen Sie danach den Anweisungen auf dem Bildschirm. Schließlich werden Sie aufgefordert, die neueste Version von Visual Studio zu installieren. Laden Sie sie herunter. Es scheint, dass die neueste Version von Java irgendwann auch installiert wurde ... Wenn vor der Installation der neuesten Version eine alte Version vorhanden ist, ist ein Deinstallationsprogramm erforderlich. "Ich möchte CPLEX bald verwenden !!" Warten wir, ohne ungeduldig zu sein ...
Geben Sie abschließend an der Eingabeaufforderung cplex ein (an der Eingabeaufforderung geben Sie Befehle direkt in Ihren PC ein, drücken gleichzeitig die Tasten Win + R und geben dann cmd ein).
cmd.exe
Welcome to IBM(R) ILOG(R) CPLEX(R) Interactive Optimizer 12.10.0.0
with Simplex, Mixed Integer & Barrier Optimizers
Copyright IBM Corp. 1988, 2019. All Rights Reserved.
Type 'help' for a list of available commands.
Type 'help' followed by a command name for more
information on commands.
CPLEX>
Wenn es wird, ist es ein Erfolg. Gelegentlich ist der PFAD nicht in Ordnung (ich habe meinen PC heruntergefahren, ihn dann wieder eingeschaltet und cplex eingegeben, wobei 'cplex' ein interner oder externer Befehl, ein bedienbares Programm oder eine Batchdatei ist. Es wird nicht erkannt als.), Und es wird ???.), Bearbeiten Sie die Systemumgebungsvariable und fügen Sie sie in den Pfad ein. Im Standardfall sollte es sich in C: \ Programme \ IBM \ ILOG \ CPLEX_Studio1210 \ cplex \ bin \ x64_win64 befinden.
Oh, an der Eingabeaufforderung Typ Python,
>python
>>>import pulp
>>>pulp.pulpTestAll()
Bitte eingeben.
>>> pulp.pulpTestAll()
Testing zero subtraction
Testing inconsistant lp solution
Testing continuous LP solution
Testing maximize continuous LP solution
Testing unbounded continuous LP solution
Testing Long Names
Testing repeated Names
Testing zero constraint
Testing zero objective
Testing LpVariable (not LpAffineExpression) objective
Testing Long lines in LP
Testing LpAffineExpression divide
Testing MIP solution
Testing MIP solution with floats in objective
Testing MIP relaxation
Testing feasibility problem (no objective)
Testing an infeasible problem
Testing an integer infeasible problem
Testing column based modelling
Testing dual variables and slacks reporting
Testing fractional constraints
Testing elastic constraints (no change)
Testing elastic constraints (freebound)
Testing elastic constraints (penalty unchanged)
Testing elastic constraints (penalty unbounded)
* Solver <class 'pulp.solvers.PULP_CBC_CMD'> passed.
Solver <class 'pulp.solvers.CPLEX_DLL'> unavailable
Testing zero subtraction
Testing inconsistant lp solution
Testing continuous LP solution
Testing maximize continuous LP solution
Testing unbounded continuous LP solution
Testing Long Names
Testing repeated Names
Testing zero constraint
Testing zero objective
Testing LpVariable (not LpAffineExpression) objective
Testing LpAffineExpression divide
Testing MIP solution
Testing MIP solution with floats in objective
Testing MIP relaxation
Testing feasibility problem (no objective)
Testing an infeasible problem
Testing an integer infeasible problem
Testing column based modelling
Testing column based modelling with empty constraints
Testing dual variables and slacks reporting
Testing fractional constraints
Testing elastic constraints (no change)
Testing elastic constraints (freebound)
Testing elastic constraints (penalty unchanged)
Testing elastic constraints (penalty unbounded)
* Solver <class 'pulp.solvers.CPLEX_CMD'> passed.
Solver <class 'pulp.solvers.CPLEX_PY'> unavailable
Solver <class 'pulp.solvers.COIN_CMD'> unavailable
Solver <class 'pulp.solvers.COINMP_DLL'> unavailable
Solver <class 'pulp.solvers.GLPK_CMD'> unavailable
Solver <class 'pulp.solvers.XPRESS'> unavailable
Solver <class 'pulp.solvers.GUROBI'> unavailable
Solver <class 'pulp.solvers.GUROBI_CMD'> unavailable
Solver <class 'pulp.solvers.PYGLPK'> unavailable
Solver <class 'pulp.solvers.YAPOSIB'> unavailable
>>>
Wenn jedoch die Solver-Klasse 'pulp.solvers.CPLEX_CMD' übergeben wird, kann CPLEX als Solver in Pulp ausgewählt werden. Weitere Informationen zum Umschalten des Solvers finden Sie in diesem Dokument.
Unter der Annahme, dass die Junioren des Seminars es später sehen werden, werde ich einen Referenzartikel darüber verfassen, was "Bestehen des Pfades" ist. Der Artikel dieser Person war sehr leicht zu verstehen! https://qiita.com/sta/items/63e1048025d1830d12fd
Es tut mir leid, wenn es bereits aufgetreten ist. Ich war überrascht, dass CPLEX das Problem gelöst hat, dessen Berechnung mit COIN in weniger als 1 Stunde 15 Stunden dauerte. Lass uns ein lustiges CPLEX-Leben haben!
Recommended Posts