Diplomarbeit


Konstruktion und Inbetriebnahme einer Versuchsanlage

zur experimentellen Lösung des Brachystochronen-Problems

mit der Evolutionsstrategie

von

Giannino Patone

Wittstockerstr. 8

1000 Berlin 21

Fachbereich Konstruktion und Fertigung

Matrikel Nr.: 99770

angefertigt am

Institut für Meß- und Reglungstechnik

Fachgebiet Bionik und Evolutionsstrategie der Technische Universität Berlin

bei Prof. Dr.-Ing. I. Rechenberg

betreut von Dipl.-Ing. M. Herdy

Vorwort

Die vorliegende Arbeit entstand am Fachgebiet Bionik und Evolutionsstrategie der TU-Berlin. Ihr Reiz bestand darin, ein Gerät zu konstruieren und vor allem auch zu bauen, mit dem sich das Verhalten der Evolutionsstrategie an einem experimentellen Aufbau leicht nachvollziehen läßt. Auch die Tatsache, daß der Versuchsaufbau in das Evolutionsstrategie­Praktikum einbezogen werden sollte und nicht in einer Institutsecke verstauben würde, wirkte sehr motivierend.

Ich möchte Herrn H. Schwenk für die freundliche Unterstützung beim Bau der Anlage und Herrn M. Herdy für die gute Betreuung, insbesondere bei der Gestaltung des Programms, herzlich danken.


Einleitung

Besonders für hochdimensionale Optimierungsprobleme mit kontinuierlich verstellbaren Variablen bietet sich die Evolutionsstrategie als universeller Lösungsalgorithmus an. Aus diesem Grund wird zur Zeit sehr viel mit ihr zur Optimierung der Struktur künstlicher neuronaler Netze (KNN) und zur Optimierung von Parametern in diversen anderen Computersimulationen experimentiert.

All diese Problemstellungen haben gemeinsam, daß sie in einer Scheinwelt ablaufen. Die Welt der Computermodelle versucht zwar stets, der Wirklichkeit möglichst nahe zu kommen, kann aber immer nur eine beschränkte Zahl von Einflußgrößen beachten, da sie sonst schnell an ihre Kapazitätsgrenzen gerät. Auch wird die Nachbildung der Wirklichkeit sehr schnell so aufwendig, daß der/die Experimentierende gerne einige vernachlässigbare Größen außer acht läßt.

Die Evolutionsstrategie ist sehr fehlertolerant, daher bleiben bei praktischen Versuchen Meßwertschwankungen oder Störungen durch Umwelteinflüße für das Finden der Optimallösung meist ohne gravierende Folgen. Es ist sogar möglich, mit der Evolutionsstrategie Optima zu finden, wenn die Qualität eines "Individuums" nur subjektiv beurteilt werden kann.

Der Versuchsaufbau soll es ermöglichen, experimentelle und simulierte Optimierungen eines mehrdimensionalen Problems zu vergleichen. An der Versuchsanlage kann experimentell die Brachystochrone (Bahn kürzester Zeit) für bestimmte Start- Zielpunktkonfigurationen ermittelt werden.

So läßt sich anschaulich und mit geringem Aufwand die Funktionsweise einer Optimierungsstrategie erproben, die sich aus der Betrachtung der biologischen Evolutionsmechanismen entwickelt hat.

Aufgabenstellung

Pflichtenheft

Der Versuchsaufbau soll die folgenden Eigenschaften besitzen:

Ausführung:

Um die Anlage möglichst einfach und robust zu gestalten, wird das Grundgerüst für den Versuchsaufbau als Schweißkonstruktion aus Vierkantstahlrohr hergestellt. Der eigentliche Bahnkörper ist in einem großen Verstellbereich sehr gut elastisch verformbar. Er ist durch solide Linearführungen an fünf Stützstellen vertikal verstellbar befestigt. Die Anordnung der Verstelleinrichtungen sowie des Start- und Zielpunktes können innerhalb der vorgegebenen Abmessungen variiert werden. Als Versuchskörper werden Stahlkugeln mit 12 mm Durchmesser verwendet.

Die Zeit, die die Kugel benötigt, um von ihrem Startpunkt zu einem Zielpunkt zu gelangen, wird mit einem Zähler PM 6671 der Firma Philips elektronisch gemessen. Sie dient für die Optimierung als Qualitätsmaßstab. Die Kugel wird aus der Ruhelage mit einem elektromagnetisch betätigten Mechanismus gestartet, um sich dann, durch die Schwerkraft beschleunigt, auf der Bahn zu dem tiefer liegenden Zielpunkt zu bewegen.

Das Programm zur Steuerung des Versuchsablaufs läuft auf einem Olivetti M24 Rechner. Als Programmiersprache wird Turbo-Pascal verwendet.



Das Brachystochronen-Problem

Bereits im Juni 1696 veröffentlichte Johann Bernoulli (1667-1748) in den von Leibniz (1646-1716) gegründeten "Acta Eruditorum Lipsiae" eine "Einladung zur Mathematischen Lösung eines neuen Problems", welches er wie folgt beschrieb:

"Wenn in einer verticalen Ebene zwei Punkte A und B gegeben sind, soll man dem beweglichen Punkte M eine Bahn AMB anweisen, auf welcher er von A ausgehend vermöge seiner eigenen Schwere in kürzester Zeit nach B gelangt. Damit Liebhaber solcher Dinge Lust bekommen sich an die Lösung dieses Problems zu wagen, mögen sie wissen, dass es nicht, wie es scheinen könnte, blosse Speculation ist und keinen praktischen Nutzen hat. Vielmehr erweist es sich sogar, was man kaum glauben sollte, auch für andere Wissenszweige, als die Mechanik, sehr nützlich. Um einem voreiligen Urtheile entgegenzutreten, möge noch bemerkt werden, dass die gerade Linie AB zwar die kürzeste zwischen A und B ist, jedoch nicht in kürzester Zeit durchlaufen wird. Wohl aber ist die Curve AMB eine den Geometern sehr bekannte, die ich angeben werde, wenn sie nach Verlauf dieses Jahres kein anderer genannt hat." [4; Seite 3]

Bild 3.2 Problemdarstellung

Als die Jahresfrist abgelaufen war, hatte allein Leibniz eine Lösung für Bernoullis Problem parat. Leibniz bat Bernoulli, die Aufgabenstellung noch bis Ostern 1697 zu verlängern, um auch Gelehrten aus Frankreich und Italien die Chance zu geben, sich mit der Aufgabenlösung beschäftigen zu können. Bernoulli entsprach der Bitte von Leibniz und formulierte die Aufgabe erneut, wobei er zur Verdeutlichung die folgende Ergänzung ausführte:

"Der Sinn der Aufgabe ist der: unter den unendlich vielen Curven, welche die beiden Punkte verbinden, soll diejenige ausgewählt werden, längs welcher, wenn sie durch eine entsprechend gekrümmte sehr dünne Röhre ersetzt wird, ein hineingelegtes und freigelassenes Kügelchen seinen Weg von einem zum anderen Punkte in kürzester Zeit durchmisst." [4; Seite 5]

Dabei gab er auch die damals nicht von allen anerkannte Hypothese Galileis, daß sich "... die Geschwindigkeiten, welche ein fallender Körper erlangt, sich wie die Quadratwurzeln der durchmessenen Höhen verhalten" [4; Seite 5] nochmals an.

Anscheinend meldete sich einzig Johann Bernoullis Bruder Jakob Bernoulli, um eine weitere Lösung der Aufgabe anzubieten. Im Mai 1697 veröffentlichte wiederum Johann Bernoulli die Lösung der von ihm selbst gestellten Aufgabe in den Acta Eruditorum, Leipzig, Mai 1697. [4; Seite 6 ]

Seine Abhandlung überschreibt er folgendermaßen:

"Die Krümmung eines Lichtstrahls in ungleichförmigen Medien und die Lösung des Problems, die Brachistochrone zu finden, das heisst, die Curve, auf welcher ein schwerer Punkt von einer gegebenen Stelle zu einer anderen gegebenen Stelle in kürzester Zeit herabläuft, sowie über die Construction der Synchrone oder der Welle der Strahlen." [4; Seite 6]

Die Lösung Johann Bernoullis basiert auf dem "Schichtenmodell", sein Ergebnis ist die Zykloide. Diese wird im folgenden Kapitel dieser Arbeit erläutert.

Jakob Bernoulli veröffentlichte in der gleichen Ausgabe der Acta Eruditorum einige Seiten weiter [4; Seite 14ff] seine Lösung. Diese Lösung mit Hilfe der Differentialrechnung bildete eine der ersten Aufgaben, die mit der Variationsrechnung gelöst wurden. Auch sie soll im nächsten Kapitel näher erläutert werden.

Am Ende seines Artikels stellt Jakob Bernoulli seinem Bruder eine weitere Aufgabe, für deren Lösung er nicht nur die Ehre bietet, sondern: "... ein Honorar von fünfzig Dukaten unter der Bedingung zusichern, daß er binnen drei Monaten nach dieser Veröffentlichung verspricht es zu versuchen und bis Ende des Jahres die Lösungen mittelst Quadraturen, was möglich ist, vorlegt. Giebt sie niemand nach Ablauf dieses Jahres, so werde ich die meinigen vorlegen...". [4; Seite 20]

Dieser gelehrten Auseinandersetzung haben wir die einfache, anschauliche Aufgabenstellung zu verdanken. Gewiß haben sich auch andere Menschen, ohne von den Brüdern Bernoulli zu wissen, diese Aufgabe gestellt, aber der überlieferte öffentliche Briefwechsel ist wirklich sehr nett zu lesen und stellt die Aufgabenstellung deutlich dar.

Analytische Lösung der Aufgabe

Ansatz mit der Variationsrechnung

Jacob Bernoulli löste die Aufgabe allgemeingültiger als sein Bruder, der die Aufgabe formuliert hatte, und begründete damit die Variationsrechnung.

Bild 4.1 Ausgangsbahn und variierte Bahn

Dabei ist y eine Funktion; die sogenannte erste Variation [11;Seite 104]. Für unser Problem liefert der Energieerhaltungssatz die folgenden Beziehungen:

folgt

Die benötigte Zeit für den Weg von Punkt (yo,0) bis (xo,0) berechnet sich dann zu:

(4.1)

Das Variationsproblem, welches gelöst werden muß, um die Funktion der Kurve minimaler Zeit zu erhalten, sieht folgendermaßen aus:

Die zu diesem Variationsproblem zugehörige Eulersche Differentialgleichung erhält man, indem man die Variation zunächst in das Integral zieht. Variiert man nun das Funktional und integriert das Ergebnis partiell, so führt dies zu der Eulerschen Dgl.:

(4.2)

unter Berücksichtigung der totalen Ableitung ergibt sich:

(4.2a)

erhält man, da das Funktional F nicht von x abhängt, was bei der Bewegung im Potentialfeld der Schwerkraft gegeben ist und man 4.2a direkt integriert:

dann ist:

(4.3)

Bei dem Brachystochronen-Problem ist entsprechend Gleichung 4.1:

Die Gleichung 4.3 lautet, wenn man dies einsetzt :

(4.3a)

(4.3b)

Diese Differentialgleichung läßt sich durch geschickte Substitution lösen. Weiß man aber bereits, daß eine mögliche Lösung die gewöhnliche (gespitzte) Zykloide ist, so kann man diese auch einfach probieren. Die Herleitung mittels Substitution ist in dem Buch "Mechanik" von W. Greiner [8] ausführlich dargestellt.

Die Parameterdarstellung einer Zykloiden lautet:

(4.4a)

(4.4b)

Dabei ist a, der Radius des abrollenden Kreises, eine Konstante die sich aus c und g zusammensetzt:

Bild 4.2 Konstruktion einer Zykloiden die um yo=2a verschoben ist.

Der größte Wert von , 0 wird durch die Punkte xo und yo bestimmt. Weiß man, wie weit der Kreis abrollt ( 0 ) und wie groß sein Radius ( a ) ist, so ist die gesuchte Bahnkurve vollständig beschrieben. Aus den Gleichungen 4.4a und 4.4b erhält man für den Zielpunkt (xo, 0):

(4.5)

Mit dieser Gleichung läßt sich nun o berechnen. Leider läßt sie sich bis auf einige Sonderfälle nur numerisch lösen. Die folgende Tabelle zeigt die Lösungen für drei dieser Spezialfälle:

xo/yo

0

/2

o

0

2

Ist 0 bekannt, so läßt sich a aus Gleichung 4.4b leicht ermitteln, für y=0 gilt:

(4.6)

Es ergeben sich daraus drei prinzipiell unterschiedliche Bahnformen.

Ist das Verhältnis xo/yo genau /2, dann endet die Bahn mit einer horizontalen Tangente im Zielpunkt, ist das Verhältnis kleiner, so geht die Kurve von oben in den Endpunkt der Bahn. Im letzten Fall unterschreitet die Bahnkurve sogar das Niveau der x-Achse und gelangt von unten in ihren Bestimmungsort. Die folgenden Bilder zeigen den Bahnverlauf für die drei Fälle:

Bild 4.3: Fall 1 xo<yo/2

Bild 4.4: Fall 2 xo=yo/2

Bild 4.5: Fall 3 xo>yo/2

Mit den Gleichungen 4.1 und 4.3a läßt sich nun die Gleitzeit zwischen dem Startpunkt (0,yo) und dem Zielpunkt (xo,0) berechnen:

mit Integral Nr.146 aus der Tabelle im Bronstein [13]:

Für den Fall läßt sich die Zeit einfach berechnen. Aus 4.5 und 4.6 folgt:

(4.7)

Für andere Verhältnisse von xo zu yo muß die Gleichung 5 gelöst werden, um den Faktor c ermitteln zu können.

Lösung mittels des Schichtenmodells

Eine Möglichkeit die Aufgabe zu lösen, ist die, welche Johann Bernoulli 1697 vorschlug.

Dabei benutzt er das Fermatsche Prinzip, welches besagt, daß ein Lichtstrahl bei Spiegelung und Brechung stets den schnellsten Weg benutzt.

Stellt man sich vor, daß ein Körper zwei Medien, in denen er unterschiedliche Fortbewegungsgeschwindigkeiten besitzt, möglichst schnell durchqueren soll, so wird dieser sich genauso wie ein Lichtstrahl bewegen. Man kann dann annehmen, daß das Brechungsgesetz von Snellius (Bild 4.6) gilt.

Bild 4.6 Brechungsgesetz

Der Quotient bleibt also beim Übergang zwischen den beiden Medien konstant. Dies gilt natürlich auch für den Übergang zwischen beliebig vielen Medien.

Läßt man den Körper nun durch beliebig viele Schichten fallen, in denen die Geschwindigkeit um so größer ist, je tiefer die Schicht liegt, so erhält man den in Bild 4.7. gezeigten Streckenzug.

Er wird durch die Beziehungen v/cos = konstant = c und v1 < v2 < v3 < ... <vn beschrieben. Dabei ist c eine Konstante, die vom Einfallswinkel, bzw. wenn man von einem bestimmten Punkt A zu einem vorgegebenen Punkt B will, von dem Verhältnis Höhe y zu horizontaler Zielentfernung x, abhängt.

Bild 4.7 Strahlverlauf

Läßt man nun die Zahl der Schichten gegen unendlich gehen und v kontinuierlich wachsen, so erhält man aus dem Streckenzug eine Kurve (Bild 4.8). Diese Kurve entspricht der Gleichung:

(4.8)

Bild 4.8 Grenzübergang

Die Geschwindigkeit eines fallenden Körpers läßt sich im Schwerefeld der Erde mit der folgenden Formel beschreiben:

h ist die durchfallene Höhe, g die Gravitationskonstante. (4.9)

Mit (4.8) und (4.9) erhält man für vo= 0

Man erhält also für die Brachystochrone eine Differentialgleichung der Form:

(4.10)

Diese Differentialgleichung ist typisch für eine bekannte Kurve, die Zykloide. Bis auf das unterschiedlich gewählte Koordinatensystem entspricht die Gleichung 4.10 der Gleichung 4.3b.

Deren Parameterdarstellung lautete mit den gegebenen Konstanten:

(4.11)

Ein Körper wird sich also am schnellsten von Punkt A zu Punkt B bewegen, wenn er sich auf einer Bahn bewegt, deren Form der einer Zykloide entspricht.

Leider läßt sich die Bahn nun immer noch nicht einfach darstellen, da die Konstante c nur schwierig zu bestimmen ist.

Um nun auch den Zykloidenabschnitt zu finden, der für die jeweilige Lage von Start und Zielpunkt richtig ist, geht man wie im vorigen Kapitel beschrieben vor (Gleichung 4.5). Anschaulicher ist es, ebenfalls eine Idee von Johann Bernoulli zu benutzen. So läßt sich das Problem sehr einfach graphisch lösen.

Bild 4.9 Graphische Lösung

Man zeichnet eine Gerade AB und zeichnet unter der horizontalen Linie AL irgendeine Zykloide, die lediglich in A ihren Anfang haben muß. Der Durchmesser des Kreises, der die gesuchte Zykloide erzeugt, verhält sich nun zum Durchmesser des Kreises, mit dem die erste Zykloide ARS erzeugt wurde, wie die Strecke AB zu AR.

Reales "Modell"

Beide Herleitungen der Kurvenform gehen davon aus, daß der Körper sich als Massepunkt vom Startpunkt zum Zielpunkt bewegt. Es tritt dabei lediglich die Masse des Körpers in Erscheinung, die entlang der Bahnkurve beschleunigt werden muß.

Bei der gebauten Bahn ist es jedoch so, daß ein volumenbehafteter Körper den "Massepunkt" darstellen soll. Dieser Körper gleitet nicht reibungsfrei vom Anfangs- zum Endpunkt der Bahn, sondern gleitet teilweise reibungsbehaftet und rollt einigermaßen reibungsfrei auf der Bahn ab.

In der Lösungsvariante des Schichtenmodells läßt sich dies kaum berücksichtigen. Bei Lösung des Problems mit der Variationsrechnung, muß der Ansatz folgendermaßen lauten:

hierbei ist das Massenträgheitsmoment der abrollenden Kugel und ist die Winkelgeschwindigkeit derselben.

Für reines Rollen läßt sich das Massenträgheitsmoment also recht einfach berücksichtigen, da von v abhängt. Zu Beginn ihrer Bewegung wird die Kugel jedoch nicht gleich rollen, sondern ein mehr oder weniger großes Stück auf der Bahn gleiten. Dies liegt daran, daß der Reibungskoeffizient schwerlich so groß sein kann, daß eine Kugel auf einer fast senkrecht abfallenden Bahn sofort anfängt zu rotieren.

Für eine nicht genau bestimmbare Zeit ist also unabhängig von der Geschwindigkeit v. Zusätzlich tritt in dieser Zeit auch noch Gleitreibung zwischen der Kugel und der Bahn auf, was zu einem zusätzlichen Term in der Energiebilanz führt.

Die Ergebnisse, die man bei den vereinfachten mechanischen Modellen erhält, sind also nicht genau auf die gebaute Bahn zu übertragen. Als Bahnform wird sich aber, wenn man sie am Modell mit der Evolutionsstrategie optimiert, zumindest eine sehr ähnliche ergeben.




Die Evolutionsstrategie

Die Evolutionsstrategie stellt ein universelles Optimierungsverfahren dar, welches von I. Rechenberg formuliert wurde, und mit welchem von ihm 1964 an der TU­Berlin erstmalig experimentiert wurde.

Dabei handelt es sich um eine Nachahmung der biologischen Evolutionsmechanismen Mutation, Selektion und Vererbung. Seit ihrer Einführung wurde die Evolutionsstrategie von Rechenberg und seinen Mitarbeitern immer weiter perfektioniert. Sie entwickelte sich von der einfachen zweigliedrigen Strategie bis zu einer mehrgliedrigen Optimierungsmethode mit Rekombination der Eltern und mutativer Schrittweitenregelung.[1]

In mehr als 200 bekanntgewordenen Anwendungen im technischen Bereich und in der Mathematik wurde die Evolutionsstrategie bereits als universelle Optimierungsmethode eingesetzt.[3]

Wichtig für die Anwendbarkeit der Evolutionsstrategie ist, daß kleine Änderungen an den zu optimierenden Parametern zu kleinen Änderungen der Qualität führen. Dieser Zusammenhang wird als starke Kausalität bezeichnet. Bei Optimierungsproblemen, bei denen kontinuierlich existierende Variablen zu verbessern sind, ist diese Bedingung meist gegeben, so daß eine Optimierung gut möglich ist.

Kleine Nomenklatur der Evolutionsstrategie

Um mit der Versuchsanlage experimentieren zu können, möchte ich kurz einige der bekanntesten Evolutionsstrategiealgorithmen vorstellen.

Um die verschiedenen Strategien leichter benennen zu können, sind einige Variablenbezeichnungen nötig:

: Nachkommenzahl: Zahl der in einer Generation erzeugten Nachkommen.

: Elternzahl: so viele Eltern erzeugen die neuen Nachkommen

: Mischungszahl: Zahl der Eltern, die an der Generierung eines Nachkommen

jeweils beteiligt sind.

+ : Die neuen Eltern werden aus den Nachkommen und deren Eltern ausgewählt.

, : Die neuen Eltern werden nur aus den Nachkommen ausgewählt.

Ni : i-ter Nachkomme

Eine Strategie kann dann in der Form (/)-ES bezeichnet werden.

Beispiel: ( 3/2 , 7 )-Evolutionsstrategie

Bei der (3/2,7)-ES zeugen drei Elter sieben Nachkommen. Dabei werden für jeden Nachkommen die Datensätze von je zwei Eltern benutzt. Die Verknüpfung der Datensätze erfolgt entweder dominant, indem jeder einzelne Parameter zufällig von einem der beiden Eltern stammt, oder intermediär, wobei die einzelnen Parameterwerte aller an einem Nachkommen beteiligten Eltern gemittelt werden. Bei der Selektion werden die Eltern nicht mitberücksichtigt ( "," Strategie).

Prinzipiell läuft die Evolutionsstrategie nach folgendem Schema ab:

Bild 5.1

Man geht von einem Urzustand aus und durchläuft die Nachkommenschleife so lange, bis die Zielvorgabe erreicht ist.

Inzwischen gibt es noch sehr viel komplexere Varianten der Evolutionsstrategie, welche schon in der Veröffentlichung von I. Rechenberg [2] sehr anschaulich dargestellt sind.

Für das Problem der Brachystochrone ist auch eine Evolutionsstrategie, wie sie von A. Ostermeier in [5] beschrieben wird, sehr günstig. Dabei handelt es sich um eine Strategie mit adaptiver Momentenanpassung der Zufallszahlen. Der Schwerpunkt der Zufallszahlenverteilung wird dabei in die Richtung verschoben, in der zuvor die erfolgreichen Mutationen lagen.

Software Entwurf

Die in dieser Arbeit realisierte Strategieform

Für diese Arbeit wurde ein Programm realisiert mit dem möglichst viele verschiedene Strategien zur Lösung des Problems getestet werden können.

Die programmtechnische Verwirklichung der Evolutionsstrategie gestaltet sich meist recht kurz, lediglich die Verwirklichung einer geeigneten Ein/Ausgabe-Möglichkeit erfordert einen mehr oder weniger umfangreichen Programmcode. Zur Evolutionsstrategischen Optimierung wurden Prozeduren aus einem Programmmodul von M. Herdy übernommen. Das Versuchsprogramm ist so gestaltet, daß die Werte der Strategieparameter sich in einem festen Bereich verstellen lassen. Eine Nachkommenschaft von 1 ist nur bei einer "+" Strategie sinnvoll, da bei der "," Strategie keine Selektion mehr möglich wäre. Eine blinde Zufallssuche wäre die Folge. Die Schrittweite wird mutativ geregelt, d.h. sie wird von Generation zu Generation mit vererbt und ebenfalls mutiert. Bei etwa einem Drittel der Nachkommen wird sie vergrößert und bei einem Drittel verkleinert das restliche Drittel behält die unveränderte Schrittweite. Für die Schrittweitenregelung wurde explizit angegeben, bei welchen Nachkommen Ni sie vergrößert und bei welchen sie verkleinert wird (Tabelle 5.1).

Tabelle 5.1 Nachkommenschrittweiten

Dies ist abhängig von der Nachkommenzahl . Die mittlere Schrittweite kann jedoch jederzeit manuell verändert werden. Es handelt sich also um eine ( / , )­ES mit mutativer Schrittweitenregelung.

Für die Regelung der Schrittweite ist ein Schrittweitenfaktor S von 1.0 bis 2.0 einstellbar. Das heißt, bei den Nachkommen, deren Schrittweite kleiner werden soll, errechnet sich die neue Schrittweite aus der Elterschrittweite E geteilt durch den Schrittweitenfaktor S, bleibt sie gleich, so ist N = E und soll sie größer werden, so wird N = E S .

Die Rekombination der Eltern erfolgt dominant oder intermediär, d.h. die einzelnen Werte der Nachkommenparameter werden zufällig von einem der beteiligten Eltern genommen (dominant), oder aus den Elternwerten gemittelt (intermediär).

Die normalverteilten Zufallszahlen zum mutieren der Parameter, der Treibstoff der Evolutionsstrategie, werden mit der Box­Muller Formel erzeugt:

Dabei sind z1 und z2 [0,1)-gleichverteilte Zufallszahlen, die vom Rechner mit dem Turbo-Pascal internen Zufallszahlengenerator erzeugt werden.

Es wird ein Zufallszahlenvektor erzeugt, der aus so vielen Komponenten besteht, wie das Optimierungsproblem variable Parameter besitzt, zur Zeit sind dies die fünf Stützstellen. Dieser Vektor wird auf den Betrag 1 normiert.

Damit erhält man Kugelrandverteilte Zufallszahlen. Es wurde Wert darauf gelegt möglichst viele Strategieparameter variabel zu gestalten, um für den Einsatz im Praktikum die Wahl der Strategieform noch offen zu halten.

Programm für den experimentellen Versuchslauf

Es wurde ein Programm zur Steuerung des Versuchsablaufs geschrieben. Ein Olivetti M 24 Rechner sollte zur interaktiven Optimierungssteuerung dienen. Das Programm stellt verschiedene Bildschirmmasken für den Benutzerdialog zur Verfügung, errechnet mit der eingestellten Evolutionsstrategie die neuen Einstellungen für die Bahn und protokolliert den Versuchsablauf. Das Versuchsprotokoll wird in eine Datei geschrieben. Für einen korrekten Programmablauf müssen sich die folgenden zwei Dateien im Programmverzeichnis befinden:

brachy.exe

brachy.ini

Das Programm wird durch die Eingabe des Namens Brachy aufgerufen. Es erscheint dann der in Bild 6.1 gezeigte Bildschirm.

              Programm zur experimentellen Lösung des
                     Brachystochronen - Problem
               mit verschiedenen Evolutionsstrategien

 Strategieparameter:

 Strategie:  Lambda  ( 1(!)..12 )  <      5  >:
             Mu     ( 1..Lambda )  <      1  >:
             Rho        ( 1..Mu )  <      1  >:
                     ( , oder + )  <     ,   >:
 Startschrittweite     ( 1..100 )  <   30.0  >:
 Startwert P1      ( 100 ..1000 )  <  200.0  >:
 Startwert P2      ( 100 ..1000 )  <  300.0  >:
 Startwert P3      ( 100 ..1000 )  <  400.0  >:
 Startwert P4      ( 100 ..1000 )  <  500.0  >:
 Startwert P5      ( 100 ..1000 )  <  600.0  >:
 Startgeneration    ( 1 .. 1000 )  <      1  >:

 Sonstiges:
 Dateinamen für Protokoll      < proto.dat   >:


 Einstellungen akzeptieren (j/n)              :

Bild 6.1 Startbildschirm Brachy

Die Voreinstellungen der Strategie und Variablenwerte sind in der Datei brachy.ini gespeichert. Wird die Vorgabe akzeptiert, so gelangt man in die eigentliche Programmaske für den Versuchslauf. Wird <n> eingegeben, so kann man die Voreinstellungen innerhalb der angegebenen Grenzen verändern.

Alle Programm-Parameter, die sich ändern lassen, aber nicht oft geändert werden müssen, befinden sich ebenfalls in der Datei brachy.ini (Bild 6.2). Sollen sie verändert werden, so lassen sich diese Werte mit einem Texteditor leicht modifizieren. Allerdings muß dies vor dem Aufruf des Programmes Brachy erfolgen, da aus dem laufenden Programm keine Veränderung möglich ist. Die Datei brachy.ini wird nur gelesen, wenn Brachy neu gestartet wird.

Beim Ändern der Werte ist darauf zu achten, daß die Grenzen eingehalten werden, beziehungsweise die Worte entsprechend der Vorgaben eingegeben werden. Das Programm überprüft beim Lesen der INI-Datei nicht, ob die Wertebereiche eingehalten werden. Wird kein Name für die Protokolldatei angegeben, so wird im Programm auch keine Datei als Vorgabe angelegt.

Diese Datei enthält die Voreinstellungen für das Programm Brachy.
Sie kann mit jedem Texteditor verändert werden, darf aber nur als 
reine ASCII-Datei gespeichert werden. Es dürfen keine zusätzlichen 
Zeilen eingefügt werden. Eine Überprüfung der eingetragenen Werte 
wird im Programm nicht vorgenommen.
-Lambda, Nachkommenzahl (1-12)
5
-Mu, Elternzahl (1-12)
1
-Rho, Mischungszahl (1-Mu)
1
-Strategie (, oder +)
,
-Vererbungsart (dominant oder intermediär)
dominant
-Startschrittweite (1-100)
30
-Schrittweitenfaktor (1.0 - 2.0)
1.3
-Zielhöhe (70-1000)
100
-Einstellhöhe P1 (70-1000)
200
-Einstellhöhe P2 (70-1000)
300
-Einstellhöhe P3 (70-1000)
400
-Einstellhöhe P4 (70-1000)
500
-Einstellhöhe P5 (70-1000)
600
-Starthöhe (70-1000)
700
-untere Verstellgrenze (70-1000)
100
-obere Verstellgrenze (70-1000)
1000
-Dateinamen für Protokolldatei (nichts eintragen für Keine)
proto.dat

Bild 6.2 Datei Brachy.ini. Bereich der von Brachy gelesen wird.

Der Hauptbildschirm des Programmes ist in dem folgenden Bild 6.3 zu sehen. Er zeigt den aktuell besten Elter, eine Liste der Nachkommen, eine Eingabezeile, ein kleines Menü unten links und die momentan benutzte Strategie in der unteren rechten Ecke an. Durch Eingabe von <z> gelangt man in den Zeiteingabemodus. Der Nachkomme, dessen Zeit (Qualität) ermittelt werden soll, ist dann hervorgehoben und man kann die gemessene Zeit eingeben. Ist diese mit <Enter> bestätigt worden, so ist der nächste Nachkomme, dessen Qualität bestimmt werden soll, hervorgehoben. Wird keine neue Zeit eingegeben, so behält der Nachkomme den vorgegebenen Wert. Als Vorgabe dient eine sehr lange Zeit, so daß bei Nachkommen, die nicht realisiert werden können, einfach die Vorgabe beibehalten werden kann. Nach Eingabe der Qualität des letzten Nachkommen gelangt man automatisch wieder zum Ersten. Dadurch ist eine Korrektur der eingegebenen Zeiten möglich. Sind alle Messungen erfolgt, kann durch Eingabe von <e> die Zeiteingabe beendet werden. Man befindet sich dann wieder im Hauptmenü. Eingabe von <g> veranlaßt den Rechner, die nächste Generation von Nachkommen zu erzeugen. Durch Eingabe von <s> kann, wenn dieser Menuepunkt angezeigt wird, die Schrittweite verändert werden.

Bild 6.3 Hauptmenü Hier erfolgt die Zeiteingabe.

Nach jeder neu erzeugten Generation werden die Daten der vorigen Generation in das Datenfile geschrieben. Diese Datei enthält am Anfang einen Eintrag mit dem Versuchsdatum und dann für jede Generation einen der Bildschirmausgabe entsprechenden Datenblock. Besteht die als Protokolldatei angegebene Datei bereits, so werden die neuen Daten am Ende angefügt. Es wird dadurch ermöglicht, eine Versuchsreihe zu unterbrechen und sie dann zu einem anderen Zeitpunkt in der entsprechenden Generation fortzusetzen. Bei Strategien mit mehreren Eltern kann allerdings für die erste Generation nach Wiederaufnahme des Laufs nur ein Elter eingegeben werden. Dieser Datensatz wird dann, entsprechend der Elternzahl, auf alle Eltern kopiert.

Die Eingabe von <ESC> beendet den Programmlauf. Es kann dann noch gewählt werden, ob ein neuer Lauf gestartet werden soll (dann erscheint wieder der Programmbildschirm), oder ob das Programm beendet werden soll.

Das Programm ist aus funktional getrennten Prozeduren zusammengesetzt, daher sollten Änderungen daran recht gut durchführbar sein. Die für die Evolutionsstrategie entscheidenden Prozeduren sind am Anfang zusammengefaßt. Das vollständige Listing des Programms befindet sich im Anhang. Es wurde mit Turbo­Pascal 7.0. übersetzt.

Programm zur Computersimulation

Um das Verhalten der verschiedenen Strategien an einem mathematischen Modell der Bahn testen zu können, wurde ein weiteres Programm, "Brachsim" erstellt. Die Idee war, einen direkten Vergleich zwischen einer Simulation mit einem recht einfach gestalteten Modell und einem experimentellen Versuch zu ermöglichen. Dabei sollten die folgenden Bedingungen erfüllt werden.

Es sollten die gleichen Optimierungsstrategien verwendbar sein wie bei "Brachy".

Mit den verschiedenen Strategien sollten Vorversuche gemacht werden können, um einen Überblick über die Konvergenzgeschwindigkeit zu bekommen.

Die wichtigsten Daten sollten protokolliert werden, um sie leicht mit einem realen Versuchslauf vergleichen zu können.

Der Verlauf der Optimierung sollte auf dem Bildschirm verfolgt werden können.

Aufbau des Programms

Zur Bestimmung der Qualität der jeweiligen Bahnform wird die Bahn in n Abschnitte unterteilt, welche jeweils zwei Stützstellen verbinden. Dabei werden auch Start- und Zielpunkt wie Stützstellen behandelt, ihre Position bleibt jedoch unverändert. Daher enthält der Datensatz für jede Bahnform auch n+1 Bahnparameter, von denen nur die mittleren n-1 modifiziert werden.

Die Bestimmung der Qualität erfolgt wie bereits in [12] von J. Pöpplau beschrieben über einen Finite Elemente Ansatz, auch A. Ostermeier [5] benutzte in seiner Arbeit diese Qualitätsfunktion. Die Gesamtzeit für das Durchlaufen der Bahn berechnet sich dabei aus der Summe der Zeiten für die n Teilstücke.

Die Zeit für das Durchfallen einer Teilstrecke ti ergibt sich aus der folgenden Formel:

Die Berechnung geht dabei von einem Koordinatensystem aus, das im Startpunkt seinen Ursprung hat. Koordinaten, die tiefer liegen, besitzen einen negativen Wert. Da bei der realen Bahn das Koordinatensystem leider genau umgedreht ist, werden die Werte für Start und Zielpunkt im Programm umgerechnet, d.h. wenn eine Starthöhe von 1000 mm und eine Zielhöhe von 0 mm eingegeben wird, so wird mit den Werten 0 mm für Starthöhe und -1000 mm für die Zielhöhe gerechnet.

Für die Konstante wurde der Wert 0,0142784 verwendet. Für eine Bahn mit der Fallhöhe 1000 mm und einer horizontalen Entfernung zwischen Start und Zielpunkt von 1570 mm ergibt sich mit 5 Stützstellen ein Qualitätswert von 716,72 ms nach 119 Generationen mit einer (1,5)­ES. Mit 15 Stützstellen ergibt sich nach 9999 Generationen ein Wert von 712,45 ms. Die rechnerisch ermittelte Zeit beträgt nach Formel 7 in Abschnitt 4:

Die Evolutionsstrategie entspricht der auch in Brachy verwendeten Form. Es wurde für die (1+1)­Strategie noch eine Erfolgsregel zur Anpassung der Schrittweite implementiert. Die Schrittweite wird dabei bei Erfolg mit dem Schrittweitenänderungsfaktor multipliziert und bei Mißerfolg durch die 4.Wurzel aus dem Schrittweitenänderungsfaktor geteilt.

Die Darstellung der Bahn erfolgt anschaulich in den dem realen Aufbau entsprechenden Proportionen auf dem Bildschirm. Dazu wird eine graphische Oberfläche benutzt, was allerdings die Berechnung der Bahn und deren Darstellung etwas aufwendiger gestaltet. Um verschiedene Strategien schnell testen zu können, sollte mindestens ein PC mit einem 80286 Prozessor und einem mathematischen Co­Prozessor benutzt werden. Die graphische Ausgabe erfolgt für eine Standard­VGA Auflösung.

Programmaufteilung:

Das Programm Brachsim benutzt fünf spezielle Units:

Typen, Utils, Evo, Simu und Eingabe

Typen enthält die verwendeten Variablentypen, Konstanten, etc.

In Utils sind alle Prozeduren und Funktionen vereint, die für den Benutzerdialog, z.B. Auswahl der Strategie oder Aus- und Eingabe der Versuchsparameter, Graphikinitialisierungen, usw. nötig sind.

Evo enthält die Evolutionsstrategie-Module, wobei die im vorigen Kapitel beschriebenen Varianten realisiert wurden.

Simu enthält die für die Versuchssimulation nötigen Programmteile, die zum Aufbau des Bildschirms nötigen Funktionen und die Statistikerfassung.

Das Hauptprogramm Brachsim enthält nur noch den Aufruf der entsprechenden Prozeduren.

Programmbedienung:

Die Benutzung des Programms erfolgt ähnlich wie die von Brachy. Nach dem Aufruf des Prgramms Brachsim erscheint zunächst wieder ein Startbildschirm, wie bei Brachy. Hier lassen sich allerdings die Startwerte nicht explizit eingeben. Als zusätzliche Menüpunkte können die Lage des Zielpunktes, der Abstand der Stützstellen, die Anzahl der zu berechnenden Generationen und eine zu erreichende Grenzqualität eingegeben werden.

Die Eingabe neuer Werte erfolgt, nachdem man in der letzten Bildschirmzeile <n> eingegeben hat. Es kann immer der Wert verändert werden an dem sich der Cursor gerade befindet. Mit <Enter> gelangt man zum nächsten Wert, wird nichts eingegeben, so ändert sich der Wert nicht. Bei einer Fehleingabe muß zunächst <w> für "weiter" gedrückt werden, dann muß ein korrekter Wert eingegeben werden.

Der Zielpunkt ist im Bereich von 0­1000 mm in vertikaler Richtung frei verstellbar. Die Lage der Optimierungsparameter kann durch ihren Abstand in horizontaler Richtung bestimmt werden. Soll der Abstand der Stützstellen nicht äquidistant sein, so läßt sich in der Datei brachsim.ini auch explizit ihre Lage angeben. In dieser Datei können auch noch weitere Programmparameter verändert werden. Ein Ausdruck dieser Datei befindet sich im Anhang. Sind keine Änderungen mehr zu machen, so kann das Programm durch Eingabe von <j> in der letzten Bildschirmzeile, gestartet werden.

Der Grafikbildschirm wird nun aufgebaut. Man kann entsprechend dem Menü in der unteren rechten Bildschirmecke den Optimierungslauf starten. Dieser läßt sich jederzeit mit <h> anhalten und mit <w> wieder weiterführen. Gibt man ein <m> ein, so gelangt man wieder in das Startmenü. Das Menü enthält die folgenden Wahlmöglichkeiten:

Nach Erreichen der vorgegebenen Generationenzahl wird die Protokolldatei geschrieben und der Programmablauf gestoppt. Zur Beurteilung der einzelnen Strategien kann ein Qualitätswert vorgegeben werden, die Anzahl der Generationen zum Erreichen dieser Vorgabe wird protokolliert. Für statistische Zwecke kann auch eine, in der Datei brachsim.ini festgelegte, Anzahl von Läufen mit einer Strategie automatisch wiederholt werden.

Bild 6.4 zeigt den Programmbildschirm. In der Mitte wird die jeweilige Bahnform angezeigt, im dem Fenster in der unteren linken Ecke wird das Menü oder die Daten des Versuchslaufs angezeigt. Alle Wahlmöglichkeiten, die das Menü bietet, stehen auch zur Verfügung, wenn es nicht sichtbar ist.

Bild 6.4 Programmbildschirm

Im unteren rechten Fenster wird die Qualität über der Generationenzahl dargestellt. Dabei ist in blauer Farbe eine horizontale Linie eingezeichnet, welche der Grenzqualität entspricht. Die Skalierung der Qualitätsachse erfolgt durch den Wert für die Grenzqualität der im Startmenü eingestellt werden kann, und die beiden Parameter Qualoffset und Anzeigebereich, die in der INI­Datei festgelegt sind.

Die schlechteste dargestellte Qualität ist, Anzeigebereich Grenzqualität­Qualoffset die Beste ist Qualoffset. Wird die Bahnkonfiguration geändert, so muß durch einen Testlauf die erreichbare Grenzqualität neu festgelegt werden, da das Qualitätsdiagramm sonst möglicherweise nicht in der gewünschten Form dargestellt wird.

Zubehör

Convert

Das Programm Brachy erzeugt, wenn gewünscht, eine ausführliche Protokolldatei. Diese Datei enthält alle durchgeführten Einstellungen und die dazugehörigen Meßwerte. Da zur graphischen Aufbereitung der Daten oft nur der beste Nachkomme einer Generation und die dazugehörigen Werte benötigt werden, wurde ein kleines Konvertierungsprogramm Convert geschrieben. Dieses Programm erzeugt ein neues Datenfile, welches nur aus den Daten des besten Nachkommen besteht. Diese Daten werden getrennt durch Leerzeichen in eine Zeile geschrieben, und die Zeilen werden in der ersten Zeile numeriert.

Eine Zeile enthält dann die folgenden Angaben:

Nr. Schrittweite Einstellwerte P1 P2 P3 P4 P5 Qualität

Die erzeugte Datei läßt sich dann z.B. mit dem Programm Axum sehr gut graphisch auswerten.

Convertsim

Die Protokolldatei von Brachsim enthält die Daten des letzten Elters und die Zahl der Generationen bis zum Erreichen einer vorgegebenen Grenzqualität. Da diese Daten leicht lesbar sein sollen enthält die Protokolldatei wieder einigen Text. Das Programm Convertsim erzeugt aus dieser Datei eine neue, welche eine Spalte mit der fortlaufenden Numerierung und eine, mit der Generationenzahl bis zum Erreichen der Grenzqualität enthält. Die Datei läßt sich dann wieder mit einem entsprechenden Programm weiter auswerten.

Konstruktiver Aufbau

Der Versuchsaufbau kann unterteilt werden in einen überwiegend mechanischen Teil, bestehend aus den folgenden Komponenten:

Die Ausführung dieser Punkte wird in den folgenden Kapiteln beschrieben.

Als Option sollte die Möglichkeit einer selbsttätigen Versuchssteuerung gegeben sein; dieses wird in einem weiteren Abschnitt erörtert.

Bild 7.1 Komplettansicht der Bahn

Gestell

Das Rückgrat der Bahn bildet eine Schweisskonstruktion aus Vierkantrohr 30x30x2 mm, zwei Flacheisen dienen als Befestigung für die Verschiebe-einrichtungen.(Bild 7.2)

Bild 7.2 Gestell

Es wurde Wert darauf gelegt, die Halterung so zu gestalten, daß unterschiedliche Linearmodule angebracht werden können. Auch sollte ihre Lage in x-Richtung zumindest stufenweise verändert werden können. Bei dem ausgeführten Gestell sind die Befestigungsleisten mit Bohrungen im Abstand von 25 mm versehen, so daß die Position in dieser Koordinate entsprechend verändert werden kann. Es läßt sich z.B. eine logarithmische Einteilung der Linearmodule in x-Richtung vornehmen. (Bild 7.3)

Bild 7.3 Variationsmöglichkeit der Stützstellenbefestigung

Da an den Linearmodulen statt Befestigungsbohrungen eine Befestigungsnut vorhanden ist, lassen sie sich auch schiefwinklig anbringen.

Diese Variationsmöglichkeit ermöglicht eine Art Koordinatentransformation, die eventuell für die Optimierung günstig sein könnte. Ob es bei diesem Optimierungsproblem Vorteile bietet, muß noch untersucht werden, zumindest sollte die Möglichkeit gegeben werden.

Bahnkörper

Der Bahnkörper muß vier Forderungen erfüllen:

1. Er muß in einer Ebene sehr biegeweich sein,

2. in der um 90° versetzten Ebene hingegen biegesteif,

3. eine Kugel führen können

4. und in einem möglichst großen Bereich eine elastische Verformung zulassen.

Das Problem bei der Anwendung der Evolutionsstrategie zur Ermittlung der Optimalform war, daß bei der Bahn ein sehr großer Einstellbereich erlaubt sein sollte, um die Strategie nicht schon von Anfang an stark einzuschränken.

Bild 7.4 Mögliche Bahnkörperform

Der Bahnkörper sollte zwischen den Stützstellen möglichst eine kontinuierlich gekrümmte Bahn bilden. Dazu muß die Länge des Bahnkörpers zwischen den Punkten A und B variabel und der Bahnkörper selbst elastisch verformbar sein. Gleichzeitig sollte die Bahnform möglichst gut reproduzierbar sein, d.h. bei gleicher Stellung der Stützstellen sollte sich immer die gleich Bahnform ergeben.

Um eine geeignete Konstruktion zu finden, wurden einige Vorversuche durchgeführt.

Das Vierdrahtmodell

Der erste Bahnkörper bestand aus vier parallelen Stahldrähten, die in einem Abstand von 500 mm durch Drahtstege verbunden waren.

Dabei dienten die beiden äußeren Drähte der Bahnführung und die beiden inneren der Führung der Kugel.

Bild 7.5 Vierdrahtmodell

Diese Bahn zeigte einige recht positive Eigenschaften. Sie ließ sich recht gut verstellen und die Kugel wurde sicher geführt. Außerdem war der Bau sehr einfach: Die Verbindungsstege brauchten nur weich gelötet zu werden, da hier keine großen Kräfte auftraten. Erste Versuche ergaben bereits eine sehr gute Optimierbarkeit der Form.

Leider hatte sie einen entscheidenden Nachteil: Bedingt durch die Verbindungsstellen war ihre maximale Längenänderung auf 500 mm beschränkt. Dies ließ bei den verwendeten Hauptabmessungen von 1x2 m nur eine geringe Formvariation zu. Auch war der kleinste zulässige Krümmungsradius, bei dem keine plastische Verformung der Bahn auftrat, sehr groß, was die Zahl der realisierbaren Bahnformen stark einschränkte.

Bild 7.6 Beschränkung der Längenänderung beim Vierdrahtmodell

Das Schlauchmodell

Es wurde auch die Verwendung eines Kunststoffschlauches als Bahnkörper überprüft. Er besaß den nicht zu unterschätzenden Vorzug, daß die Kugel ihn, außer am Ende, nicht verlassen konnte. Leider hatte er jedoch den Nachteil, daß er keine Verformungsebene besaß, in der er biegesteif war. Auch war er sehr schwer verformbar und sein Querschnitt veränderte sich bei der Verformung.

Bild 7.7 Schlauchmodell

Dies hätte bewirkt, daß die Führung ziemlich aufwendig geworden wäre; er hätte zwischen zwei Platten, z.B. aus Plexiglas, geführt werden müssen. Die Zeitmessung hätte sich ebenfalls kompliziert gestaltet, da sie nur schwer mit Lichtschranken möglich gewesen wäre. Dieses Bahnmodell schied also ziemlich schnell aus.

Das Federbandmodell

Ausgehend von der Überlegung, daß ein federhartes Metallband die Forderungen 1, 2 und 4 sehr gut erfüllt, d.h. sich in einer Ebene sehr gut elastisch verformen läßt, wurde eine Bahn gebaut, die aus drei miteinander verklebten Neusilberbändern bestand. Die Kugel wurde von den Kanten der Führungsbänder geführt und durfte das Trägerband nicht berühren. (siehe auch Zeichnung Bahnkörper im Anhang)

Bild 7.8 Federbandmodell

Mit dieser Bahn wurden die ersten befriedigenden Ergebnisse erzielt. Allerdings war die Herstellung der Bahn sehr aufwendig. Die Gesamtlänge sollte etwa 4 m betragen und der Abstand zwischen den beiden aufzuklebenden Führungsbändern sollte 2/10 mm genau sein.

Beim ersten Herstellungsversuch wurden Stahlbänder mit Epoxidharz-Klebstoff verbunden. Da sie jedoch während des Aushärtens nicht zusammengepreßt wurden, um die Gefahr einer Lageveränderung zu minimieren, löste sich die Verbindung der Bänder nach einigem Gebrauch an einer Stelle, so daß die Bahn unbrauchbar wurde.

Für den zweiten Versuch sollten die Bänder der Bahn mit Weichlot verbunden werden. Hier erhöhte sich jedoch schon bei den Probelötungen die Steifigkeit der Bahn derart, daß die Idee wieder verworfen wurde.

Erst die Verwendung von Kunststoff für die beiden Führungsbänder erbrachte eine gut brauchbare Bahn. Dabei wurden die Kunststoffbänder aus Melamin mit Heißkleber auf dem Trägerband befestigt, so daß sie genau ausgerichtet werden konnten. Da die Kunststoffbänder nur in 0,6 mm Höhe im Handel erhältlich waren, wurden zwei Bänder aufeinandergeklebt, um die zur Führung der Kugel nötige Höhe zu erhalten. Die Zeichnung Bahnkörper im Anhang zeigt nochmals deutlich den Aufbau.

Diese Bahn läßt sich leicht verformen und paßt sich gut den Stützstellen an. Dabei sollte der horizontale Abstand zwischen den Stützstellen jedoch nicht mehr als 350 mm betragen, da die Bahn sonst durch ihr Eigengewicht durchhängt.

Verstelleinrichtungen

Um ein Verstellen der Bahnform zu ermöglichen, ist diese an fünf beweglichen Stützstellen befestigt. Diese Stützstellen bestehen aus einer Linearführung, an der ein Feststellmechanismus und eine Bahnführung befestigt sind. Die Verstelleinrichtung muß folgenden Anforderungen gerecht werden:

Der Verstellbereich soll etwa 800 mm betragen.

Die Verstelleinrichtungen müssen einfach manuell variierbar sein.

Die Linearführungen müssen präzise sein, um ein Verkanten der Bahn zu verhindern.

Die Bahnführung soll ein axiales Verschieben des Bahnkörpers erlauben, aber gleichzeitig die Bahn möglichst spielfrei führen.

Die einzelnen Komponenten sollen im weiteren zunächst getrennt betrachtet werden.

Die Linearführung

Nachdem Angebote der Firmen FAG, INA, Isel, Mädler, HEPCO und DUA-L-VEE eingeholt worden waren, wurde eine Linearführung der Firma Isel ausgewählt.

Bei der Bahn war nicht höchste Präzision wichtig, sondern ein günstiger Preis und eine solide Ausführung. Die Firma Isel hat in Ihrem Lieferprogramm lediglich eine Führung, auf der ihre gesamte Produktpalette aufbaut. Die Maße der Führung entsprachen den Anforderungen, es gab sie ab 1000 mm Länge und sie machte einen sehr robusten Eindruck.

Bild 7.9 Linearführung

Für diese Führungen gibt es auch passende Kugelgewindespindeln, die für die Realisierung einer automatischen Verstelleinrichtung sehr gut geeignet sind.

Die entsprechende Konstruktionszeichnung B14 befindet sich im Anhang bei den Zeichnungen.

Die Linearführung besteht, wie Bild 7.9 zeigt, aus einem Linearlager und einer Führung. Die Führung ist ein Aluminiumprofil mit zwei eingepressten Stahlwellen. Auf der Rückseite befindet sich eine Befestigungsnut, mit der sich die Führungen durch M6 Schrauben mit Sechskantkopf leicht befestigen lassen.

Das Linearlager besteht aus einer Aluminiumplatte mit vier Befestigungsbohrungen, die ein M6 Gewinde besitzen und zwei Lagerkörpern, die sich spielfrei einstellen lassen. Um die Linearführung horizontal manuell verstellen zu können, wurde ein Bremsmechanismus gebaut, mit dem sich das Linearlager feststellen läßt. Diese Bremse entspricht einer Schwimmsattelbremse:

Bild 7.10 Bremse

Ein U-förmiger Aluminiumblock umschließt die Führung und ist mit dem Linearlager so verbunden, daß er seitlich etwas Spiel besitzt. Wird nun die Feststellschraube angezogen, so sitzt der Bremsblock fest auf der Führung und das Linearlager ist festgelegt, da der Bremsblock in axialer Richtung kein Spiel besitzt. Konstruktionszeichnung Bremse, im Anhang.

Die Bahnführung

Um den Bahnkörper zu führen, wurden Bahnführungsblöcke entsprechend Bild 7.11 entworfen. Die Bahn wird von vier Stahlkugeln und den Rändern des Führungskörpers geführt. Das seitliche Spiel ist nicht sehr problematisch und darf bis zu 1 mm betragen, daher ist es nicht justierbar. Das Spiel nach oben und unten sollte jedoch möglichst klein sein, um die Einstellhysterese gering zu halten.

Bild 7.11 Bahnführung

Für dieses Spiel wurden daher Einstellschrauben vorgesehen, mit denen die Führungskugeln sehr genau eingestellt werden können. Die Einstellschrauben müssen dann durch Kontermuttern oder durch Lack fixiert werden. Da die Bahn keine ganz konstante Dicke besitzt, ist es jedoch nötig die Einstellungen so vorzunehmen, daß an der dicksten Stelle noch ein Spiel von etwa 0,05 mm vorhanden ist, um ein Klemmen der Bahn auszuschließen.

Diese Bahnführungsblöcke sind, wie in Bild 7.12 gezeigt, drehbar in einem Kugellagerblock befestigt, um sich der jeweiligen Bahnneigung anzupassen. Dieser Block wird mit zwei Innensechskantschrauben auf der Linearlagereinheit befestigt.

Bild 7.12 Verstelleinrichtung

Startvorrichtung

Dem Bau der Startvorrichtung gingen einige Versuche mit verschiedenen anderen Startprinzipien voraus. Als erstes wurde die Möglichkeit erprobt, die Kugel durch einen Elektromagneten zu halten und sie durch Abschalten des Stromes freizugeben.

Bild 7.13 Elektromagnet

Dabei ergab sich jedoch das Problem, daß durch das starke Magnetfeld, das zum Halten der Kugel bei starkem Gefälle erforderlich war, die Kugel so stark magnetisiert wurde, daß sie bei schwachem Gefälle, wenn sie mit der gleichen Feldstärke gehalten wurde, gar nicht erst startete.

Dieses Problem ließ sich zwar dadurch beheben, daß zwischen Kugel und Magnetkern noch eine Zwischenschicht aus nicht magnetisierbarem Material gebracht wurde, aber die Startvorichtung erschien trotzdem nicht sehr zuverlässig, da das Magnetfeld bzw. die Magnetisierung der Kugel wahrscheinlich doch das Abrollverhalten mit beeinflußte. Zudem wurde der Einsatz von Kugeln aus nicht magnetisierbarem Material ausgeschlossen.

Als zuverlässige einfache Lösung erwies sich ein klassischer Schieber, der elektromagnetisch betätigt wird und die Kugel freigibt.

Bild 7.14 Schieber

Ein Problem dabei war, daß der Schieber, der durch eine Feder nach unten gedrückt und mittels eines Elektromagneten aktiv geöffnet wurde, der Kugel beim Schließen einen zusätzlichen "Schubs" verpassen konnte (siehe Bild 7.15).

Bild 7.15 Startimpuls

Eine kleine Verzögerungsschaltung, die bewirkt, daß der Schieber eine bestimmte Zeit geöffnet bliebt, nachdem der Start-Taster S1 betätigt wurde, beseitigt diesen Mangel. Um den Magneten aber nicht allzusehr zu belasten, wurde die Verzögerungszeit relativ kurz gewählt. Sollte, was unwahrscheinlich ist, eine längere Zeit nötig sein, so muß lediglich der Kondensator C1 in der Schaltung (siehe Bild) durch einen entsprechend größeren ersetzt werden.

Bild 7.16 Starterschaltung

Als Stromversorgung dient ein Netzteil der Firma Norris. Es hat sich als günstig erwiesen, ein leistungsstarkes Gerät zu benutzen, um Impulse beim Einschalten des Magneten möglichst gering zu halten.

Zusätzlich sind an dem Relais und am Startmagneten noch Freilaufdioden D1, D2 angebracht, damit die Zeitmessung nicht durch Störimpulse beeinflußt wird. Der Kondensator C2 dient ebenfalls der Entstörung.

Bauteile:

D1,D2 =1N4001 M =Elektromagnet

LED =5 mm rot RE =Relais 10V 5A

C1 =2200 F

C2 =0.1 F

R =6.8 K

Zeitmessung

Zur Zeitmessung werden zwei Lichtschranken benutzt, die über eine Signalaufbereitungs-Schaltung einen Zähler ansteuern (Bild 7.17). Die Kugel liegt beim Start in der ersten Lichtschranke (Punkt A). Sobald sie freigegeben wird und die Lichtschranke verlassen hat, startet beim Abfall der Signalflanke der Zähler. Dieser läuft dann solange, bis die Kugel die zweite Lichtschranke (Punkt B) passiert und somit den Stop-Impuls ausgelöst hat.

Bild 7.17 Schematischer Aufbau

Um die Lichtschranken für die Studenten und Studentinnen möglichst anschaulich zu gestalten, wurden als Lichtquellen helle rote Led´s mit einem engen Lichtaustrittswinkel (20°) benutzt. Diese Leuchtdioden besitzen den Nachteil, daß dadurch die Lichtschranken für Störlicht anfällig werden. Im Gegensatz zu Infrarotlichtschranken sind sie jedoch wesentlich anschaulicher. Durch die Anordnung der Fotodioden hinter einer etwa 4 mm langen Röhre mit 1 mm Durchmesser arbeiten die Lichtschranken zuverlässig, sofern sie nicht in der prallen Sonne stehen (Bild 7.18).

Bild 7.18 Lichtschranke

Die Ausgangsspannung der Fotodioden wird durch eine kleine elektronische Schaltung so aufbereitet, daß ein Rechteckimpuls mit steilen Flanken zur Ansteuerung eines Zählers entsteht. Dazu wurde das Eingangssignal mittels eines Operationsverstärkers soweit verstärkt, daß es zur Ansteuerung eines Schmitt-Triggers ausreicht, der dann das Ausgangssignal für den Zähler liefert.

Bild 7.19 Schaltplan

Auf der gleichen Platine ist die Strombegrenzung für die Leuchtdioden realisiert. Zwei weitere Led´s, die an den beiden Ausgängen angeschlossen sind, zeigen an, ob diese gerade Null-Potential haben, oder ob Spannung anliegt.

Die eigentliche Zeitmessung übernimmt der Frequenzzähler PM 6671 der Firma Philips. Dabei wird die Zeit zwischen abfallender Flanke am Punkt A und abfallender Flanke am Punkt B gemessen.

Dies erscheint günstig, da die Kugel vor dem Start im Startblock A in der Lichtschranke liegt, so daß deren Ausgangssignal Null ist. Es wird jedoch durch den OP invertiert, so daß am Zählereingang die Spannung auf High steht. Hat der Rollkörper die Startvorrichtung verlassen, wird also der Zähler angeschaltet. Nun wird die Zeit gemessen, die vergeht bis an Punkt B erstmalig die abfallende Signalflanke entsteht.

Bauteile:

R1 =6.8 K D =Fotodiode

R2 =100 K LED1 =5 mm gelb

R3 =1 M LED2 =5 mm gelb

R4 =39 K OP =A741

R5 =6.8 K ST =CD4010BE

Automatisierung

Die Verstellung der Stützstellen, das Starten der Kugel und das Erfassen der Zeit lassen sich, von einem PC gesteuert, automatisch durchführen. Der Versuchsaufbau ist also prinzipiell gut geeignet, um später automatisiert zu werden.

Realisierungsvorschlag:

Für die Verstellung der Stützstellen ist es erforderlich, die Verstelleinrichtungen noch durch einen geeigneten Antriebsmotor zu ergänzen. Dieser kann dann von einem Rechner aus angesteuert werden. Entsprechende Zusatzgeräte für PC's gibt es komplett zu kaufen. Sie arbeiten mit Schrittmotoren oder mit Gleichstrommotoren und Wegaufnehmern. Meist ist die Verwendung von Schrittmotoren preislich am günstigsten. Dabei ist allerdings darauf zu achten, daß bei der Auslegung der erforderlichen Antriebsleistung die Schrittmotoren nicht unterdimensioniert werden, da sonst die Gefahr besteht, daß sie Schritte auslassen und ihre Position somit nicht mehr bestimmbar ist.

Für die Umsetzung der Drehbewegung in eine Linearbewegung kann man eine Spindel verwenden. Günstig sind Kugelumlaufspindeln, da sie leicht spielfrei einstellbar sind und einen hohen Wirkungsgrad besitzen. Dementsprechend ist auch die erforderliche Antriebsleistung kleiner. Leider sind sie jedoch nicht selbsthemmend, weswegen das Ruhehaltemoment durch den Antriebsmotor aufgebracht werden muß. Da eine geringe Verstellgeschwindigkeit für den Versuchsablauf ausreicht, kann man durch ein zwischengeschaltetes Schneckenradgetriebe die erforderliche Antriebsleistung stark reduzieren. Ein solches Getriebe wirkt, entsprechend dimensioniert, selbsthemmend. Allerdings entsteht dadurch wiederum eine Einbuße im Gesamtwirkungsgrad. Eine entsprechende Konstruktionszeichnung befindet sich im Anhang.

Für die Ansteuerung wird eine Fünf-Achsen-Steuerung benötigt, da alle fünf Verstelleinrichtungen unabhängig voneinander bewegt werden müssen. Für die automatische Erfassung der Meßzeit kann der verwendete Zähler weiter benutzt werden. Er besitzt einen Ausgang, mit dem das angezeigte Ergebnis an einen Rechner weitergegeben werden kann. Nähere Informationen hierzu sind von M. Glander zu erhalten, der am Institut beschäftigt ist. Er hatte den Zähler bereits so genutzt und ihn entsprechend modifiziert.

Für die Kugelführung gibt es prinzipiell zwei Möglichkeiten. Man kann eine Kugel benutzen, und diese immer wieder zum Startpunkt zurückführen, oder man kann einen dem jeweiligen Versuch angepaßten Kugelvorrat bereitstellen. Die Benutzung nur einer Kugel und der Bau einer Kugelrückführung erscheint für die Anlage sinnvoller, da recht viele Läufe zur Optimierung der Bahnform nötig sein können. Bei einer Kugelrückführung ist jedoch darauf zu achten, daß ein ausreichend großer Puffer eingebaut wird, da bei der Optimierung auch Kugeln herabfallen können.

Für das Auslösen des Startmechanismus ist ein recht hoher kurzzeitiger Strom notwendig, um den Zeitverzögerungskondensator C1 aufzuladen. Daher muß die Auslösung über einen mit mindestens 5 A belastbaren Rechnerausgang durchgeführt werden.

Für einen unbeaufsichtigten Betrieb erscheint die Anlage jedoch ungeeignet, da es je nach verwendeter Strategie mehr oder weniger "unmögliche" Einstellungen geben kann. Bleibt eine Kugel auf der Bahn liegen, so können die Messungen erst fortgesetzt werden, wenn sie beseitigt wurde. Auch dies noch zu automatisieren, würde einen unverhältnismäßig hohen Aufwand bedeuten.

Meßgenauigkeit

Reproduzierbarkeit

An der Anlage wurden nach der Fertigstellung Messungen gemacht, um die Reproduzierbarkeit der Zeitwerte für eine unveränderte Bahnform zu ermitteln. Dazu wurden bei fester Bahnform, entsprechend Bild 8.1, mit drei verschiedenen Kugeln jeweils 15 Messungen durchgeführt, da die verwendeten Kugeln einer recht groben Toleranzklasse entstammen. Die Ergebnisse sind Tabelle 8.1 zu entnehmen.

Tabelle 8.1 Drei verschiedenen Kugeln (K1, K2, K3).

Zur Überprüfung einer eventuellen Abhängigkeit der Reproduzierbarkeit von der eingestellten Bahnform, wurden weitere drei Meßreihen mit unterschiedlichen Formen durchgeführt. Tabelle 8.2 zeigt diese Ergebnisse.

Bild 8.1 Messkonfiguration

Die Stützstellen 1 bis 7 hatten dabei die Einstellwerte 245, 320, 410, 500, 590, 670 und 755 (Bild 8.1).

Als nächstes wurde die Reproduzierbarkeit der Ergebnisse bei Verstellen der Bahnparameter (Stützstellen) getestet. Dazu wurde zunächst, ausgehend von der Bahn in Bild 8.1, jede Stützstelle um 100 mm nach oben bewegt und dann wieder in der Ursprungslage festgelegt. Nach jedem Verstellen wurde die Zeit gemessen. Es wurde hierbei immer dieselbe Kugel verwendet und es wurden vier Läufe L1-L4 durchgeführt. Die Ergebnisse sind der Tabelle 8.3 zu entnehmen.

Zur Beurteilung der Versuchsläufe wurde der mittlere absolute und relative Fehler, sowie der größte absolute Fehler ermittelt. Dazu wurden die im Dubbel [9] angegebenen Gleichungen benutzt.

Die Standardabweichung wurde nach der folgenden Formel ermittelt:

Sie entspricht dem absoluten mittleren Fehler eines Meßwertes. Der relative Fehler ist einfach die Standardabweichung, bezogen auf den Meßwert.

Die mittlere Standardabweichung oder besser der mittlere Fehler liegt also bei 0.4ms. Dabei ist es fast gleichgültig, ob die Bahn verstellt wurde oder ob eine andere Kugel benutzt wurde. ein mittlerer Fehler von 0.4 ms bedeutet, daß etwa 70% der Messungen innerhalb eines Bereiches von + 0.4 ms um den Mittelwert der jeweiligen Laufzeit liegen.

Dies entspricht einem mittleren relativen Fehler von 0.03% oder 0,4 ms, wenn man eine mittlere Laufzeit von 1200 ms für die durchgeführten Messungen annimmt. Die größten aufgetretenen Fehler lagen in einem Bereich von 1 ms.

Diese Meßungenauigkeiten sind bei der Optimierung der Bahnform zu berücksichtigen. Ab einem gewissen Optimierungsgrad wird die Qualität zunehmend verrauschter sein.

Tabelle 8.3 Jede Stütz-stelle (P1, P2, P3, P4 und P5) 100 mm verstellt und zurückgesetzt

Tabelle 8.2 Drei verschiedenen Bahnformen mit Kugel K1

Praktische Versuche

Praktische Versuchsläufe mit verschiedenen Strategien

An der fertigen Anlage wurden von Studenten als Praktikums-Protokoll-Ersatzaufgabe verschiedene Strategieformen getestet. Dabei ließ sich die Bahnform stets gut optimieren. Ein großer Unterschied bestand jedoch in der Konvergenzgeschwindigkeit der Strategien.

Die ersten Versuchsläufe wurden mit der folgenden Anfangskonfiguration durchgeführt (Bild 9.1). Es war eine dominante Vererbung benutzt worden.

Bild 9.1 Ausgangsform

Dabei war absehbar, daß die optimale Bahnform, ausgehend von der Lage des Start- und Zielpunktes, eine Zykloide ergeben mußte, die jedoch an ihrer tiefsten Stelle unter dem Niveau des Zielpunktes liegen würde.

Da jedoch die Verstelleinrichtungen nicht beliebig weit nach unten verstellt werden konnten, ließ das Programm alle Einstellwerte, die unter 100 mm Höhe lagen, nicht zu. Dadurch wurde die Optimierung der Bahn zusätzlich eingeschränkt. Als Optimalform ergab sich die im Bild 9.2 gezeigte Form.

Bild 9.2 Endform

Die folgenden Strategien wurden getestet: (1+1)-ES ; (1,7)-ES ; (1,5)-ES

Die folgenden Bilder zeigen den Verlauf von Qualität und Schrittweite über der Generationenzahl.


Qualität [ms] Schrittweite [mm]

Generationen


(1+1)-ES Schrittweite von Hand geregelt

Qualität [ms] Schrittweite [mm]

Generationen


(1,5)-ES Schrittweite von Hand geregelt

Qualität [ms] Schrittweite [mm]

Generationen Generationen

(1,7)-ES mutative Schrittweitenregelung

Bild 9.3 Darstellung der Ergebnisse der bisher mit Bahnkonfiguration 1 realisierten Strategien.

Da es sich jeweils nur um einen einzigen Versuchslauf handelt, dürfen die erhaltenen Daten nicht als statistisch relevant bewertet werden. Sie bieten jedoch einen groben Anhalt für die Konvergenzgeschwindigkeit der einzelnen Strategien.

Das Problem der Brachystochrone soll im praktischen Experiment mit möglichst wenigen Einstellungen und nicht mit möglichst wenigen Generationen gelöst werden. Deshalb wurde für die drei getesteten Strategien die benötigte Zahl der Einstellungen zum Erreichen einer Qualitätsvorgabe von 1000 ms ermittelt. Das Ergebnis zeigt die folgende Tabelle:


Tabelle 9.1

Diskussion der Ergebnisse

Von den getesteten drei Strategien schneidet die (1+1)-ES am besten ab. Sie erreicht bereits nach etwa 100 Einstellungen ein Ergebnis, das die beiden anderen Strategien erst nach mehr als doppelt sovielen Einstellungen erreichen.

Für diese Aufgabenstellung, die von einer geraden Verbindung zwischen Start- und Zielpunkt als Starteinstellung ausgeht, ist es sicherlich günstig, eine "+"Strategie zu verwenden, da keine lokalen Minima zu erwarten sind.

Allerdings können bei einer "+"Strategie größere Meßfehler leicht zu einem "Steckenbleiben" führen, da die eingegebene "zu gute" Zeit ja von den Nachkommen nur schwer zu unterbieten ist.

Bei der Anwendung von Komma­Strategien kann sich die Qualität auch verschlechtern, da der Elter nicht in die Selektion miteinbezogen wird. Die Optimierungsdauer kann dadurch deutlich verlängert werden.

Da nur drei Läufe mit verschiedenen Strategien durchgeführt wurden, darf dies Ergebnis allerdings nicht überbewertet werden.


Simulierte Versuchsläufe mit verschiedenen Strategien

Leider war das Simulationsprogramm vor der Durchführung der praktischen Versuche noch nicht fertiggestellt, deshalb konnten erst später Tests damit gemacht werden.

Für die simulierten Versuchsläufe wurde eine Starthöhe von 1000 mm und eine horizontale Entfernung des Zielpunktes von 1572 mm gewählt. Diese Proportionen entsprechen dem Fall, für den in 4.1 auch die Zeit berechnet wurde. Als Grenzqualität wurde ein Wert von 717 ms gewählt, da die Bahn auch später im praktischen Experiment mit relativ wenigen Einstellungen optimiert werden sollte.

Es wurden mit jeder Strategie 100 Läufe durchgeführt und die Zahl der Generationen bis zum Erreichen der Grenzqualität bestimmt. Aus den Ergebnissen der Läufe wurde dann der Mittelwert und die Standardabweichung berechnet. Die Ergebnisse zeigt Tabelle 9.2.

Tabelle 9.2 Dauer der Optimierung mit verschiedenen Strategien.

G steht für Generationen, E für Einstellungen und s für Standardabweichung

Diskussion der Ergebnisse

Am besten schnitt dabei die (1+1)­ES ab. Die Regelung der Schrittweite kann dabei jedoch noch optimiert werden. Bisher wird die Schrittweite bei Erfolgen um den Schrittweitenfaktor vergrößert, und bei Mißerfolgen durch die 4.Wurzel aus dem SW­Faktor geteilt. Bei den praktischen Versuchen muß die Einstellung der Schrittweite bei dieser Strategie bisher noch von Hand erfolgen.

Die optimale Nachkommenzahl lag bei einer ","-Strategie bei fünf. Bei dieser Strategieform ist die Standardabweichung kleiner als bei der (1+1)­ES. Die (1+1)­ES ist aber selbst im ungünstigsten Fall noch schneller als die (1,5)­Strategie im Durchschnitt.

Bedienungsanleitung

1 Bahn

2 Netzteil Norris 3-30V

4A

3 Zähler Philips PM

6671

4 Meßelektronik

5 PC Olivetti M24

Bild 10.1 Schematischer Versuchsaufbau

Der Versuchsaufbau besteht aus den im Bild 10.1 gezeigten Komponenten. Die eigentliche Bahn besteht aus einem Haltegestell, an dem fünf Linearführungen befestigt sind, die von Hand verstellt werden können. Der Startpunkt und der Endpunkt der Bahn liegen fest. An ihnen befindet sich jeweils eine Lichtschranke zur Zeitmessung. Am Startpunkt befindet sich auch ein Vorrichtung zum Auslösen der Kugel. Die Einstellwerte liefert ein Rechnerprogramm, bei dem sich verschiedene Evolutionsstrategien einstellen lassen.

Versuchsablauf

Um die Anlage in Betrieb zu nehmen, müssen zunächst die elektrischen Geräte eingeschaltet werden. Auf dem Rechner ist das Programm "Brachy" zu starten. Am Netzteil ist eine Spannung von 8 V einzustellen. Der Zähler ist so einzustellen, daß er die Zeit zwischen einem Startimpuls am Eingang A und dem Stopimpuls am Eingang B mißt. Bei dem verwendeten Zähler PM 6671 von Philips sind folgende Einstellungen, entsprechend Bild 10.2, vorzunehmen bzw. zu überprüfen

Bild 10.2 Zählereinstellungen

Die Meßelektronik ist einzuschalten und es ist zu überprüfen, ob alle Verbindungskabel korrekt montiert sind (siehe Bild 10.3).

Bild 10.3 Meßelektronik

Nun sind im Startmenü des Programms die Einstellungen für die Evolutionsstrategie vorzunehmen und der Name des Datenfiles einzugeben.

Ist dies erfolgt, kann das Hauptmenü gestartet werden. Aus diesem gelangt man durch Wahl von "z" in den Zeiteingabemodus. Auf dem Bildschirm ist nun der beste Elter und die Nachkommen zu sehen. Der Nachkomme, für den die Zeit gemessen werden soll, ist hervorgehoben.

Der Experimentator legt eine Kugel des Versuchssatzes in den Startblock, nachdem er sie mit einem sauberen, fettfreien Tuch abgewischt hat. Nun wird der Zähler auf Null gesetzt und durch Drücken des Startknopfes die Kugel freigegeben.

Die vom Zähler angezeigte Zeit wird in den Rechner eingegeben, woraufhin der nächste Versuchslauf erwartet wird. Ist die Kugel nicht an Punkt B angelangt (heruntergefallen, liegengeblieben...), so ist eine sehr schlechte Zeit einzugeben (Vorgabe: 99999).

Sind alle Nachkommen getestet worden, so wird die Zeiteingabe durch die Eingabe von "e" beendet.

Es sollte immer dieselbe Kugel für eine Versuchsgeneration verwendet werden, da auch die Eigenschaften der Kugeln leicht schwanken.

Die Einstellung der Stützpunkte erfolgt durch Lösen der Klemmschrauben und Verschieben des Führungswagens.

Der eingestellte Wert kann an der Oberkante des Wagens abgelesen werden.

Die Einstellung sollte möglichst "gefühlvoll" erfolgen, um den Bahnkörper bzw. die Führungen nicht zu stark zu belasten.

Da der Bahnkörper beim Verstellen durch sämtliche Führungen gezogen oder gedrückt wird, besteht natürlich eine Hysterese, die die Versuchsergebnisse verfälscht. Deshalb ist es vorteilhaft, die Meßeinstellungen immer so einzustellen, daß die gesamte Bahn gestreckt wird.

Verstellbereich

Um den Bahnkörper nicht zu stark zu belasten, sollte beim Verstellen darauf geachtet werden, daß der Krümmungsradius der Bahn immer größer als 150 mm ist, da es sonst zu einer Ablösung der Kunststofführungen kommen kann (Bild 10.5).

Bild 10.5 Maximaler Biegeradius

Vorsichtsmaßnahmen

Da die Bahn aus einer Sandwichkonstruktion besteht, die mit Heißkleber verbunden ist, sollte sie im Ruhestand möglichst unverformt stehen, da der Klebstoff ein Kriechverhalten zeigt, was sich besonders bei hohen Umgebungstemperaturen (z.B. Sonneneinstrahlung) bemerkbar macht.

Beim Aufbau der elektrischen Signalaufbereitung wurde darauf geachtet, daß keine Netzspannung an berührbare Teile gelangen kann. Zusätzlich besitzt das Gerät noch einen Masseanschluß, an dem das Bahngestell geerdet werden kann. Für den Einsatz im Praktikum wäre es jedoch wünschenswert, einen Fehlerstromschutzschalter zwischen Netz und Versuchsanlage zu schalten, um das Risiko zu verringern.

Aufbau/Umbau

Der Versuchsaufbau läßt sich leicht modifizieren. Die Verstelleinrichtungen können in Stufen von 25 mm horizontal verschoben werden. Der Startpunkt läßt sich ebenfalls in dieser Abstufung nach oben und nach unten verstellen. Der Zielpunkt läßt sich bisher nur horizontal verschieben. Eine vertikale Verstellmöglichkeit entsprechend der des Startpunktes ist bereits in Auftrag.

Bahn entfernen (oben am Startblock öffnen und nach unten durchziehen).

Linearblöcke abnehmen (Anschläge oben entfernen und nach oben herausziehen).

Linearführungen einzeln abnehmen und an der neuen Position wieder anbringen. Dazu untere Befestigung und obere Befestigung lösen, die obere Schraube festhalten und an neuer Position anbringen, die Mutter nicht ganz fest anziehen, dann die untere Schraube in die Befestigungsnut einführen und am Gestell anbringen. Höhe festlegen und beide Schrauben anziehen.

Kontrolle der Bahnführungen: Distanzblech (Bahn 1,3 mm) zwischen die Führungskugeln schieben. Es darf kein merkliches Spiel vorhanden sein. Gegebenenfalls Kontermutter lösen und Zustellschraube soweit nachjustieren, bis der Abstand 1 mm ist. (da die Bahn 1,2 mm hoch ist , ist 0,1 mm Spiel !). Kontermutter anziehen.

Bahn von unten vorsichtig einfädeln und am Startblock befestigen. Dabei die Schrauben nicht zu fest "anknallen".

Bild 10.6 Einstellen der Bahnführung

Zusammenfassung

Der realisierte Bahnaufbau ist robust und einfach zu bedienen. Somit dürfte seinem Einsatz zur Veranschaulichung der Evolutionsstrategie prinzipiell nichts im Wege stehen. Die Anlage sollte noch etwas getestet werden, um eine optimale Konfiguration für das Praktikum zu ermitteln.

Am realisierten Aufbau läßt sich auf einer vertikalen Ebene mit den Maßen 0,9x 2,5m der Startpunkt in Stufen von 25 mm horizontal und vertikal verstellen. Der Zielpunkt läßt sich bisher nur vertikal verstellen. Die Führung der Bahn erfolgt durch fünf Stützstellen, die sich in einem Bereich von 70-1000 mm vertikal stufenlos verstellen lassen. Ihre horizontale Lage ist in einer Abstufung von jeweils 25 mm ebenfalls vorgebbar. Es lassen sich leicht noch weitere Stützstellen einfügen, was ab einem horizontalen Abstand von 1,5m zwischen Start- und Zielpunkt auch nötig wäre. Die Stützstellen sind so modifizierbar, daß eine Automatisierung möglich ist.

Die Zeit, das Gütekriterium der Bahnform, wird über zwei Lichtschranken gemessen.

Ein Programm zur Steuerung des Versuchslaufs ermöglicht den Einsatz verschiedener Evolutionsstrategien zur Optimierung der Bahn. Der Variationsbereich liegt dabei zwischen einer (1+1)-ES und einer (/+,)-ES. Die wichtigsten Parameter ,,+,, und können dabei im Programm geändert werden, einige weitere lassen sich in einer Initialisierungsdatei vorgeben. Der Versuchsablauf wird automatisch protokolliert.

Da die experimentelle Erprobung einer Strategie sehr zeitaufwendig ist, wurde ein Simulationsprogramm geschrieben, das eine Variation der Bahnkonfiguration im Bereich von 1x2m zuläßt. Die Optimierung kann dabei mit den gleichen Strategien wie beim Experiment erfolgen. Das Qualitätskriterium "Zeit" ist dabei allerdings nur recht grob bestimmt. Zum Vergleich einzelner Strategien kann eine zu erreichende Qualität vorgegeben werden. Dabei werden die Generationen gezählt, die zum Erreichen dieser Qualität nötig sind. Ihre Zahl kann ein Kriterium zur Beurteilung der Strategien darstellen. Der Optimierungsprozess wird graphisch dargestellt und die Ergebnisse der Läufe werden protokolliert.

Zum Einsatz der Anlage im Praktikum ist es noch erforderlich, eine optimale Strategie zu ermitteln. Bei den bisher durchgeführten Tests schnitt die (1+1)-ES am besten ab. Es wurden jedoch noch nicht sämtliche möglichen Strategieformen untersucht.

Literaturverzeichnis

[1] I.Rechenberg, Evolutionsstrategie - Optimierung technischer Systeme nach Prinzipien der

biologischen Evolution, Reihe problemata, Band 15

Frommann-Holzboog-Verlag, Stuttgart - Bad Cannstatt (1973)

[2] I.Rechenberg, Evolutionsstrategien , In: B. Schneider, U. Ranft (Hg.), Simulationsmethoden in der Medizin und Biologie. Workshop, Hannover, 29.Sept.-1.Okt.1977, Springer-Verlag, Berlin/ Heidelberg/ New York (1978)

[3] M. Herdy, Die Evolutionsstrategie - ein universelles Optimierungswerkzeug,

In: Grundlagen der Modellierungs und Simulationstechnik, Rostock, 18.-20. Dezember 1990, Universität Rostock, (1990)

[4] Joh. Bernoulli, Einladung zur Lösung eines neuen Problems, In: P. Stäckel (Hg.) Abhandlungen über Variations-Rechnung, Reihe Oswalds Klassiker der Exakten Wissenschaften Nr.46, Verlag von Wilhelm Engelmann, Leipzig (1894)

[5] A.Ostermeier, Entwicklung und Test eines Evolutionsalgorithmus mit adaptiver Momenten-

anpassung der Zufallszahlenverteilung, Studienarbeit am Fachgebiet Bionik und Evolutionstechnik, Fachbereich 10, Technische Universität Berlin (1991)

[6] U.Tietze, Ch.Schenk, Halbleiter-Schaltungstechnik, 3. Auflage

Springer-Verlag Berlin/ Heidelberg/ New York (1976)

[7] F. Böhm, Übungsbuch zur Vorlesung Mechanik 3,

1.Institut für Mechanik, Technische Universität Berlin (1986)

[8] W. Greiner, Mechanik, Teil 2 Ein Lehr- und Übungsbuch, 5.Auflage,

Verlag Harri Deutsch, Thun/ Frankfurt a. M. (1989)

[9] W. Beitz, K.-H. Küttner, Dubbel, Taschenbuch für den Maschinenbau, 14.Auflage

Springer-Verlag Berlin/ Heidelberg/ New York (1981)

[10] H.-J. Bartsch, Taschenbuch Mathematischer Formeln

Verlag Harri Deutsch, Thun/ Frankfurt a. M. (1973)

[11] I. Szabo, Höhere technische Mechanik, 4. Auflage

Springer-Verlag, Berlin/ Göttingen/ Heidelberg (1964)

[12] J. Pöpplau, Die Anwendung einer (/,)-ES zur direkten Mininierung eines nichtlinearen

Funktionals unter Verwendung von FE-Ansatzfunktionen am Beispiel des Brachysto-

chronenproblems, In: ZAMM, Zeitschrift für Angewandte Mathematik und Mechanik,

Ausgabe 61, (1981)

[13] I.N. Bronstein, K.A. Semendjajew, Taschenbuch der Mathematik, 19.Auflage

Verlag Harri Deutsch, Thun und Frankfurt/Main (1980)

[14] H. Schupp, Optimieren: Extremwertbestimmung im Mathematikunterricht,

BI­Wiss­Verlag (1992)

Anhang

Anschlußbelegungen

Innenaufbau der Messelektronik

Belegung der Anschlüsse






Brachsim.ini

Kommentartexte, fangen mit - an und stehen in der INI-Datei nur in einer Zeile!!

-Diese Datei enthält die Voreinstellungen für das Programm brachy.
-
-Sie kann mit jedem Texteditor verändert werden, darf aber nur als reine
-ASCI-Datei gespeichert werden. Es dürfen keine zusätzlichen Zeilen eingefügt
-werden. Eine Überprüfung der eingetragenen Werte wird im Programm nicht vor-
-genommen. Der erste zu lesende Wert steht in Zeile 9.
-
-Anzahl der Parameter, die optimiert werden sollen (5-20)
5
-Lambda, Nachkommenzahl (1-12)
5
-Mu, Elternzahl (1-12)
1
-Rho, Mischungszahl (1-Mu)
1
-Strategie (, oder +)
,
-Vererbungsart (dominant oder intermediaer)
dominant
-Startschrittweite (1-100)
30
-Schrittweitenfaktor (1.0 - 2.0)
1.2
-Zielhöhe (0-1000)
0
-Starthöhe hier muß 1000 stehen!
1000
-untere Verstellgrenze (0-1000)
0
-Abstand der Stützstellen in x-Richtung (1-333)
261.7994
-Dateinamen für Protokolldatei (nichts eintragen für Keine)
proto.dat
-Geradenstart oder Zufallsstart (g oder z)
g
-Anzahl der Generationen für einen Strategie-Lauf (1-10000)
500
-Zahl der Generationen zwischen der Graphischen Bahndarstellung (1-100)
1
-Grenzqualität (0-10000)
0.717
-Anzeigebereich für Qualitätsverlauf (1-10000) (dargestellt wird der Bereich 0- (Grenzqualität*Anzeigebereich-Qualoffset))
7
-Qualitäts-Offset (0..< Grenzqualität) dieser Wert wird von der darzustellenden Qualität abgezogen
0.705
-Anzahl der Läufe mit einer Strategie
1
-x-Koordinaten äqidistant oder explizit (a oder e) (Die folgenden Werte werden nur benutzt wenn 'e'xplizit gewählt wurde!!!)
a
-Zielpunkt x-Koordinate (0-2000)   ( Wenn die Parameterzahl erhöht wird        )
1000
-P1 x-Koordinate (0-2000)          ( müssen bei expliziter Eingabe entsprechend)  
1000
-P2 x-Koordinate (0-2000)          ( viele Koordinaaten eingegeben werden !!!  )
1200
-P3 x-Koordinate (0-2000)
1400
-P4 x-Koordinate (0-2000)
1600
-P5 x-Koordinate (0-2000)
1800
-Startpunkt x-Koordinate (0-2000)
2000

Bei Fragen patone@fb10.tu-berlin.de



Homepage: Bionics & Evolution Strategy.