Frage

habe ich eine Klasse auf „Intelligent Decision Making“ (die meist ein Problem Optimierung Klasse war). In der Klasse haben wir gelernt, über AMPL und wie die Solver zu verlängern. Ich habe nicht viel davon gehört in letzter Zeit, noch habe ich Job-Angebote für gesehen.

Meine Frage ist: Ist AMPL noch im Gebrauch mehr? Wenn ja, was es für verwendet?

Ja, ich verstehe, dass AMPL mit Matlab ersetzt werden, jedoch AMPL ist kostenlos und Matlab ist nicht einmal in der Nähe.

War es hilfreich?

Lösung

Ein Matlab Toolbox namens YALMIP ermöglicht Ihnen Formulierung innerhalb Matlab zu tun. Dies wiederum macht es sehr einfach mit anderer Vorbearbeitung oder Nachbearbeitung Anforderungen zu integrieren.

Ich war ein AMPL Benutzer zuvor jedoch nach YALMIP finden viel ich nicht mehr AMPL verwenden. Da dies spart mir Zeit Code in dem Schreiben die Daten vorzubereiten, die in AMPL-Feeds und die Ausgabe zu verarbeiten.

Andere Tipps

Sie sind sehr verwirrt.

AMPL und Matlab sind zwei völlig verschiedene Dinge, sie in einigen Anwendungsbereichen schneiden können, aber sie sind für die Lösung ganz verschiedene Arten von Problemen gedacht.

AMPL ist eine Sprache, Optimierungsprobleme zu beschreiben. Es tut nichts für sich: es gibt nur Mittel für einen Benutzer mit einem Solver zu interagieren. Die Solver für lineare Programmierung sein kann (CPLEX), nicht-lineare Programmierung (Ipopt) oder andere, exotischere Sorten.

Matlab ist eine Sprache für technische Berechnungen: Lineare Algebra, Differentialgleichungen, Statistiken und -sure- einige Optimierungen - Matlab Optimierungsfunktionen neben AMPL Zwerg

.

AMPL genaue erste und zweite Ableitung über automatische Unterscheidung bietet, ist dies ein wesentliches Merkmal, dass nur GAMS messen kann, können Sie nicht wissen, wie wichtig und schwierig das ist, aber -believe me- es ist.

Niemand würde einen Job für einen „AMPL Coder“ bieten, weil es nicht so etwas ist. Der Auftrag wird an einer Person angeboten, der weiß, was Optimierung ist und welche Werkzeuge stehen im Vordergrund. Ebenso niemand bietet einen Job für einen „Matlab-Coder“, sie den Job an einen Techniker bieten die Matlab kennt.

Schließlich AMPL ist nicht frei. Sie können zu Lernzwecken nur kostenlos die Studentenversion nutzen. Eine solche Version beschränkt Sie auf 100 Variablen und Constraints (ich nehme an, Sie wissen, was das bedeutet). Wenn Sie ein vollwertiges AMPL wollen, müssen Sie für die Lizenz und die Lizenzen der Solver zahlen, die jeweils einer von ihnen! Ipopt ist Open Source, aber Cplex ist recht teuer.

Ja, AMPL wird noch verwendet und sehr. Ich benutze es zur Berechnung optimaler Raumschiff Flugbahnen und glauben Sie mir, kommt nichts auch nur annähernd. Ich liebe Matlab, aber Matlab für ernsthafte Optimierung verwendet, ist wie mit einem Löffel eine Dose Nahrung zu öffnen - Sie können erfolgreich sein, aber es wird Blut und Tränen sein

.

AMPL und Matlab haben eines gemeinsam: sie beide von brillanten Wissenschaftlern erstellt wurden (Moler-> Matlab, schwul-> AMPL) an der Spitze ihrer Felder

.

Während GAMS und AMPL domänenspezifische Sprachen ist, würde ich heute Optimierung Bibliotheken innerhalb Allzweck- Sprachen bevorzugen.

Sie erhalten Stand der Technik Programmiersprache Funktionen, Editoren, Debugger, große Stützbasis, die einfache Integration mit anderen Bibliotheken (z IO oder visualisieren Daten) und einfache Einbettung des spezifischen Optimierungsmodell in größeren Modellen.

Pyomo (für Python) und

scroll top