Forum: PC-Programmierung Praxisbuch über Genetische Algorithmen


von Max T. (tate)


Lesenswert?

Liebe Leute,
wir hatten neulich im Studium eine kurze Einführung zu Genetischen 
Algorithmen und Machine Learning. Ich finde das Thema sehr spannend und 
würde gerne tiefer in die Praxis einsteigen, obwohl es bei uns nur kurz 
angerissen wurde. Der Dozent sagt leider, er kennt nur die Grundlagen 
und hat keine Praxiserfahrung in dem Bereich.

Kennt ihr Bücher, die die Anwendung Genetischer Algorithmen in der 
Praxis anhand nachvollziehbarer Beispiele beschreiben? Im Netz finde ich 
viele "toy examples" mit sehr unterschiedlicher Codierung der 
Chromosomen, die eine Vielzahl verschiedener Crossover-Operationen 
einsetzen. Da werden mal kontinuierliche Parameter als Bitfolgen 
gespeichert, mal als Floats, ganze verschachtelte mathematische 
Funktionen als Graph usw. Mir würde ein zusammenhängendes Werk helfen, 
das erklärt, wie man für ein bestimmtes Problem eine sinnvolle 
Repräsentation der Chromosomen, ein sinnvolles Crossover, eine 
Abschätzung der Populationsgröße usw. findet.

Ein ebenso praxisnahes Buch über Neuronale Netze (Multilayer 
Perceptrons) oder Machine Learning im Allgemeinen interessiert mich 
ebenfalls.

Danke
Max

von Kaj (Gast)


Lesenswert?

Du kannst mal gucken, ob du dieses Buch (deutsch) auftreiben kannst:

Genetische Algorithmen und Evolutionstrategien - Scientific Computing: 
Eine Einführung in Theorie und Praxis der Simulierten Evolution – 1. 
Januar 1994
https://www.amazon.de/Genetische-Algorithmen-Evolutionstrategien-Scientific-Simulierten/dp/3893194932
Den Code von der Diskette koennte ich zur verfuegung stellen, falls du 
das Buch ohne Diskette bekommst (falls du es denn kaufst).

Das Buch faengt ganz unten an:
Was ist Zellteilung, wie funktioniert das, etc. Der Anfang ist also 
erstmal ein Bio-Crashkurs in Genetik und Evolution. Und geht dann ueber 
zum Codierungsproblem, unterschied zwischen Evolutionsstrategien und 
Genetischen Algorithmen, etc.

Kapitel:
1. Einleitung (Seite 15 - 31)
2. Evolution und Genetik (Seite 31 - 141)
3. Evolutionsstrategien (Seite 141 - 185)
4. Genetische Algorithmen (Seite 185 - 219)
5. Evolutionsstrategien kontra Genetische Algorithmen (Seite 219 - 237)
6. Parallele Algorithmen (Seite 237 - 257)
7. Anwendungen (Seite 257 - 387)
1
  Klassische Anwendungen
2
    Das Problem des Handelsreisenden
3
    Produktionsleitstaende
4
    Auftragsreihenfolge-Optimierung
5
    Automatische Formelgenerierung und genetische Prognose
6
    Automatische Erzeugung von Programmen
7
    Struktur-Evolution Neuronaler Netzwerke
8
    Weitere Anwendungen
9
      Optimale Form von Linsen
10
      Verkehrsleittechnik
11
      Lagerplatzoptimierung
12
      etc.
8. Programmierung Genetischer Algorithmen (Seite 387 - 417)
9. Der Genetic Optimizer (Seite 417 - 443)
Nachwort, Literatur, etc.


Und hier sind noch ein paar quellen:

Geneva Optimierungsumgebung
https://de.wikipedia.org/wiki/Geneva_Optimierungsumgebung

Kurs:Genetische Algorithmen
https://de.wikiversity.org/wiki/Kurs:Genetische_Algorithmen

Genetic Algorithms for Automated Source Code Evolution: a C++11 tutorial
https://vimeo.com/52539994

Ich wuensche viel Spass. :)

von Kaj (Gast)


Lesenswert?

Ein weiteres Praxis Beispiel: Geldspielgeraete.

Die Geraete (und auch die Software) unterliegen bestimmten gesetzlichen 
Regeln. Dazu zaehlt auch, dass es in Deutschland (und auch in anderen 
Laendern) eine gesetzlich Vorgeschriebene Auszahlqoute gibt.

In Spanien ist die Vorgabe, das die Auszahlquote nach 40.000 Spielen 
(+-1%) 70% betragen muss.
Das heisst, dass es im Hintergrund eine Mathematik gibt, die das Regelt.
Jetzt ist es natuerlich doof, wenn der Spieler immer verliert, die 
Mathematik merkt das sie gegen steuern muss (weil die Auszahlquote sonst 
zu niedrig ist), und der Spieler die naechsten 1000 Spiele nur noch 
gewinnt. Dann stellt die Regelung fest, das sie wieder hart nach unten 
regeln muss (weil die Auszahlquote sonst zu hoch wird), usw.

Die Kunst hinter einer guten regelung ist es, dem Spieler das Gefuel zu 
geben, dass er staendig gewinnt. Und das ist sau schwierig. Da haben 
viele Mathematiker schon graue Haare bei bekommen.
Und jetzt hat so eine Regelung aber auch mehr als nur 2, 3 oder 4 
Stellschrauben...

Mit einem Genetischen Algorithmus kann man die richtigen (oder besser 
gesagt: die guten) Parameter relativ schnell finden. Zumindestens 
schneller als viele Mathematiker mit ihrer Matlabsimulation...

von Max T. (tate)


Lesenswert?

Kaj schrieb:
> Genetische Algorithmen und Evolutionstrategien - Scientific Computing:
> Eine Einführung in Theorie und Praxis der Simulierten Evolution – 1.

Vielen Dank, das werde ich mal versuchen, zu bekommen. Die sehr 
unterschiedlichen Anwendungen im Kapitel 7 sehen sehr nach dem aus, was 
ich suche.
Ich weiß nicht, was es seit 1994 für Fortschritte in dem Bereich gab, 
aber wenn noch jemand ein Buch aus dem aktuellen Jahrzehnt empfehlen 
kann, freue ich mich.

Kaj schrieb:
> Mit einem Genetischen Algorithmus kann man die richtigen (oder besser
> gesagt: die guten) Parameter relativ schnell finden. Zumindestens
> schneller als viele Mathematiker mit ihrer Matlabsimulation...

Mag sein, aber vielleicht habe ich mich unklar ausgedrückt, ich suche 
nicht einfach Beispiele, die zur Lösung mit GAs geeignet sind, sondern 
strukturierte Erklärungen, wie GAs konkret für möglichst 
unterschiedliche Anwendungen zu implementieren sind.

von Kaj (Gast)


Angehängte Dateien:

Lesenswert?

Hier mal die Diskette im Anhang. Vielleicht hilft dir das ja noch etwas.
Der Inhalt der PRJ Dateien legen nahe, dass das ganze in Borland Turbo C 
geschrieben wurde. Out of the box compilieren ist also leider nicht :D
Die Kommentare im Code sind... so wie ich sie fuer Anfang der 90er 
erwarten wuerde. Aber immerhin auf deutsch. Auch dass das Buch auf 
deutsch ist hilft bei diesem komplexen Thema wirklich sehr.

von A. S. (rava)


Lesenswert?

mein Vorschlag wäre, das nicht zu mischen. Genetische algorithmen und ML 
sind (derzeit jedenfalls noch) zwei völlig verschiedene Sachen, auch 
wenn es vielleicht ein paar Berührungspunkte gibt.

Zu ML findest du viel Stoff, da empfehle ich idealerweise einen gratis 
onlinekurs, z.B. den von Stanford. Aber ich bin auch echt kein Fan von 
Büchern.

Genetische Algorithmen haben sich noch nicht soo durchgesetzt und lohnen 
sich nur da, wo die Leute eine gute Repräsentation gefunden haben und 
brauchbare Operatoren. Schade.

Notfalls bietet dieses Buch ein Kapitel über evolutionary computing
https://books.google.de/books?id=MpKqCAAAQBAJ
und viele Kapitel über Repräsentation. Wirklich gut finde ich's aber 
nicht. Ist halt ein Buch ;)

: Bearbeitet durch User
von C. A. Rotwang (Gast)


Lesenswert?

Max T. schrieb:
> Kennt ihr Bücher, die die Anwendung Genetischer Algorithmen in der
> Praxis anhand nachvollziehbarer Beispiele beschreiben?

Da war mal was:
Beitrag "Geniale Antenne oder verbogene Büroklammer?"
Irgenwo anders als bei den Antennen sind mir Genetische Algorithmen noch 
nicht untergekommen - ist wohl ne akademische Sackgasse.

von vorticon (Gast)


Lesenswert?

A. S. schrieb:
> Genetische Algorithmen haben sich noch nicht soo durchgesetzt

C. A. Rotwang schrieb:
> Irgenwo anders als bei den Antennen sind mir Genetische Algorithmen noch
> nicht untergekommen - ist wohl ne akademische Sackgasse.

Kann ich absolut nicht bestaetigen. Genetische Algorithmen, PSO und 
andere Verfahren werden sehr haeufig eingesetzt, wo Optimierungsprobleme 
mit vielen Nebenminima auftreten, weil sie bei diesen Problemen die 
einzigen erfolgversprechenden Ansaetze sind. Typisches Beispiel 
Parameteridentifikation. Allein die Haeufigkeit, mit der aktuell 
Veroeffentlichungen neuer Algorithmen erscheinen, zeigt die Aktualitaet 
(wenn auch tw. etwas gehyped).

von C. A. Rotwang (Gast)


Lesenswert?

vorticon schrieb:
> Kann ich absolut nicht bestaetigen. Genetische Algorithmen, PSO und
> andere Verfahren werden sehr haeufig eingesetzt, wo Optimierungsprobleme
> mit vielen Nebenminima auftreten, weil sie bei diesen Problemen die
> einzigen erfolgversprechenden Ansaetze sind. Typisches Beispiel
> Parameteridentifikation.

Nenn doch bitte mal ein paar praktische Beispiele für Optimierung per 
genetische Algorithmus, am besten verlinkt.

von Kaj (Gast)


Lesenswert?

C. A. Rotwang schrieb:
> Nenn doch bitte mal ein paar praktische Beispiele für Optimierung per
> genetische Algorithmus, am besten verlinkt.

Optimierung mit Genetischen Algorithmenund eine Anwendung zur 
Modellreduktion
https://www.rt.mw.tum.de/fileadmin/w00bhf/www/publikationen/2004_Buttelmann_at.pdf

Optimierung von Wärmeübertragernetzwerken mit genetischem Algorithmus
https://www.ift.uni-hannover.de/fileadmin/ift/Bachelor-_oder_Masterarbeit_Optimierung_von_Waermeuebertragernetzwerken_mit_genetischem_Algorithmus.pdf

Genetischer Algorithmus zur kombinatorischen Optimierung von 
Gebäudehülle und Anlagentechnik - Optimale Sanierungspakete für Ein- und 
Zweifamilienhäuser
https://www.gebaeude-energiewende.de/data/gebEner/user_upload/Dateien/GEW_Arbeitspapier_7_Optimierungsalgorithmus.pdf

Implementierung eines genetischen Algorithmus zurOptimierung eines 
Mikrowellenbauteils
https://www.tet.tu-berlin.de/fileadmin/fg277/Projektarbeiten/Paper_DomkeKlages.pdf

Optimieren durch SelektionDie Evolution im Algorithmus – Teil 1: 
Grundlagen
https://www.buschmais.de/wp-content/uploads/2018/02/Die-Evolution-im-Algorithmus_JS_01_18.pdf

Die Evolution im Algorithmus – Teil 2:Multikriterielle Optimierung und 
Architekturerkennung
https://www.buschmais.de/wp-content/uploads/2018/06/Die-Evolution-im-Algorithmus_Teil2_JS_03_18.pdf

Automatische Offline-Optimierung der lichtsignaltechnischen 
Koordinierung des mIV im städtischen Netz unter Verwendung genetischer 
Algorithmen
https://mediatum.ub.tum.de/doc/1100353/file.pdf

Produktionspraxis. Maschinenbelegung optimieren mittels genetischem 
Algorithmus (Buch, Leseprobe)
https://www.grin.com/document/27465

Optimierung der Instandhaltungsplanung mit genetischen Algorithmen unter 
Beruecksichtigung des Speicherverhaltens bei der Verfuegbarkeitsprognose 
von Kraftwerksanlagen
https://opus4.kobv.de/opus4-btu/frontdoor/deliver/index/docId/463/file/Diss_Warnecke.pdf

Übung zu Organic Computing - „Survival of the Fittest“ - Optimierung 
mittels Genetischer Algorithmen
https://www12.informatik.uni-erlangen.de/edu/OC/SS16/vortragEA.pdf

Noch mehr genetische Algorithmen zum Ausprobieren
http://scienceblogs.de/hier-wohnen-drachen/2011/02/05/noch-mehr-genetische-algorithmen-zum-ausprobieren/

von глупний форентроль (Gast)


Lesenswert?

Nachdem man die Theorie zu genetischen Algorithmen gehoert und 
verstanden hat, sollte man in der Lage sein, sowas mal zu probieren..

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.