260 likes | 395 Views
PPS Projekt: Bauklötzchen für Profis. Frage:. Wie weit kann man mit n Bauklötzen über eine Tischkante hinausbauen? Modell: 2 dimensionale Türme Alles gleiche Klötze Klötze liegen flach Kein Klebstoff!. 1. Versuch. Schon besser. Es geht noch mehr. Problemstellung.
E N D
Frage: Wie weit kann man mit n Bauklötzen über eine Tischkante hinausbauen? Modell: 2 dimensionale Türme Alles gleiche Klötze Klötze liegen flach Kein Klebstoff!
Problemstellung Ziel: Baue Türme mit n Klötzchen und maximiere den Überhang Schwierigkeiten: Sehr viele Möglichkeiten Türme müssen stabil sein keine Konstruktionsvorschrift für optimale Türme >>> Ein Computerprogramm sucht Türme mit grossem Überhang
Optimierungsmethode Idee: Lösung mit Evolutionärem Algorithmus Vorbild: Natur Zyklischer Prozess Grosse Anzahl Lösungen Anpassung & Verbesserung laufen parallel ab
Rekombination Idee: Gute Eigenschaften von zwei Türmen kombinieren Oberer Teil Turm 1 auf unteren Teil Turm 2
Mutation Idee: Eigenschaften verbessern ohne Turm völlig zu verändern Mutationsweite mit Gauss-Verteilung Art 1: Einzelnen Klotz verschieben Art 2: Klotz und alle darauf liegenden Klötze verschieben.
Selektion Fitness berechnen Stabilität (Checker) * Überhang Wer überlebt? (Turnier-Modus) Auswahl von mehreren Türmen Bester gewinnt & kommt weiter Wer pflanzt sich fort? Lineare Wahrscheinlichkeit nach Rang
Wann ist ein Turm stabil? • Schwerpunkt auf dem Tisch • Alle Klötzchen müssen in Ruhe sein
4 0 5 2 4 7 9 1 8 6 3 6 3 G 2 G 7 G G 8 9 5 Freischneiden • Klötzchen auseinander nehmen • Gewichtskraft einfügen • Kräfte zwischen den Klötzchen einführen • Kraft von der Unterlage
Gleichgewichtsbedingungen • Resultierende in y–Richtung • Drehmoment • Mehr Unbekannte als Gleichungen
Stabil oder instabil Zu wenig Gleichungen für eine explizite Lösung Existiert eine beliebige Lösung mit nicht negativen Kräften? Lösung existiert >> Turm ist stabil Lösung existiert nicht >> instabil
Realisierung C++ EA Stabilität • MPI Cluster Matlab Visualisierung Multi-Thread SDL
50 Klötze / Überhang: 2,77 5 Eltern / 40.000 Evolutionszyklen Effektiv: 200’000
50 Klötze / Überhang: 2,62 200 Eltern / 7500 Evolutionszyklen Effektiv: 1’500’000
50 Klötze / Überhang: 3,06 1000 Eltern / 3000 Evolutionszyklen Effektiv: 110’000
Bauklötze für Zuhause http://www.tik.ee.ethz.ch/baukloetze