Softwareentwickler MATLAB/Simulink (w/m) Erarbeitung von Lösungen im Bereich der Schnittstelle zum Simulink-Modell und der Benutzeroberfläche von TargetLinkdSPACE GmbH - Paderborn
Verfasst am: 17.01.2012, 09:49
Titel: Global Optimization Toolbox: Genetische Algorithmen
Hey Leute,
ich habe ein Optimierungsproblem zu lösen, welches dem Traveling Salesman ähnlich ist. Es geht um die Optimierung einer Reihenfolge!
Matlab bietet mit der Global Optimization Toolbox so genannte Genetische Algorithmen an, die sich mit meinem Problem befassen. Ich habe mich jetzt mehrere Tage mit diesen Algorithmen beschäftigt um zu verstehen was diese machen --> Jetzt geht es an die Matlab Implementierung.
Ich habe eine Beispiel Datei angehängt, die sich mit dem Traveling Salesman beschäftigt. Hier wird die Optimale Rundreise durch eine Reihe von Städten gesucht. Ebenfalls wird hier in einem Plot eine Grafische Ausgabe für den Bedeiner gegeben.
Mein Problem: Ich muss NUR eine Reihenfolge optimieren in einem Spaltenvektor optimieren:
1
2
3
4
5
Hat die Kostenmatrix ( Wie lange dauerte es von einem Punkt zum nächsten zu gelangen)
Die Reihenfolge 1-2-3-4-5 hätte nun eine Durchlaufwert von: 20
Und ich möchte jetzt einfach nur die Reihenfolge optimiert haben, das heißt die Zahlen tauschen ihre Positionen in dem Reihenfolgenvektor. Dies kann ich mit Hilfe des Genetischen Algorithmus machen, der mir dann einen neune Spaltenvektor mit optimierten Reihenfolge ausgibt, z.b.:
3
4
2
1
5
Kann aber auch völlig anders sein. Ich habe jetzt ein Verständnis Problem mit der Implemtnierung dieses Genetischen Algorithmus, ganz besonders weil dieser beim Traveling Salesman auf eine Grafische Darstellung abzielt. Falls einer mir einen Tip geben kann, wie ich an die Sache herangehe bzw. wo ich mich noch etwas einlesen kann, o wäre ich sehr dankbar!
falls dies kein stark vereinfachtes Problem ist, wird es am effizientesten sein, in einer for-Schleife alle Kombinationen durchzuprobieren.
Falls du bei diesem Ansatz bleiben willst: wo genau liegt deine Frage? Was hast du bisher gemacht, um dein spezielles Problem zu lösen?
Insbesondere: hast du schon über Creation, Mutation und Crossover Function nachgedacht?
Ja habe ich, der Algorithmus beinhaltet diese Größen!
Hab das Problem gelöst, man muss einfach nur alle Plot Funktionen aus der GA-Optimierung löschen, danach funktioniert alles fast von alleine
Es wird zum Schluss ein Vektor X ausgegeben,der die optimierte Reihenfolge enthält --> Problem gelöst !
Options and Permissions
Du kannst Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum posten Du kannst Dateien in diesem Forum herunterladen
MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.