{"id":36,"date":"2010-02-05T23:46:11","date_gmt":"2010-02-05T22:46:11","guid":{"rendered":"http:\/\/www.neunbeere.de\/blog\/?p=36"},"modified":"2010-02-06T01:09:38","modified_gmt":"2010-02-06T00:09:38","slug":"wieselevolution","status":"publish","type":"post","link":"https:\/\/www.neunbeere.de\/blog\/2010\/02\/wieselevolution\/","title":{"rendered":"Wieselevolution"},"content":{"rendered":"<p>Richard Dawkins hat f\u00fcr sein Buch <a title=\"The Blind Watchmaker auf Wikipedia\" href=\"http:\/\/en.wikipedia.org\/wiki\/Blind_watchmaker\">&#8220;The Blind Watchmaker&#8221;<\/a> eine kleine Software-Anwendung geschrieben, die <a title=\"Ausschnitt aus &quot;The Blind Watchmaker&quot; auf Youtube\" href=\"http:\/\/www.youtube.com\/watch?v=5sUQIpFajsg#t=4m40s\">veranschaulichen<\/a> sollte, wie in der Evolution Zufall und Selektion zusammenarbeiten, um den Anschein von &#8220;Design&#8221; zu geben.<\/p>\n<p>Auf <a title=\"Diskussion im Richard Dawkins Forum\" href=\"http:\/\/forum.richarddawkins.net\/viewtopic.php?p=2418619#p2418619\">Anfrage eines Bekannten aus dem Richard Dawkins Forum<\/a> habe ich das Programm in etwas ver\u00e4nderter Form nachprogrammiert. In einem Video auf Youtube kann man es <a title=\"Video auf Youtube\" href=\"http:\/\/www.youtube.com\/watch?v=AXxCsHGIxww\">in Aktion sehen<\/a>.<\/p>\n<p>Den Quellcode \u00fcbergebe ich der Public Domain. Man kann das fertige Projekt mit ausf\u00fchrbarer Datei (f\u00fcr Windows) und allen Quelltexten <a title=\"Herunterladen\" href=\"http:\/\/www.neunbeere.de\/ExtRef\/Weasel.zip\">von meinem Webserver herunterladen<\/a>. Der eigentliche Algorithmus befindet sich in <a title=\"Wichtigste Teil des Quellcodes\" href=\"http:\/\/www.neunbeere.de\/ExtRef\/WeaselCode.html\">WeaselCode.pas<\/a>. Die Unit dlgMainWindow.pas k\u00fcmmert sich um die Benutzeroberfl\u00e4che.<\/p>\n<p>Programmiert habe ich das ganze mit der Open Source Entwicklungsumgebung <a title=\"Entwicklungsumgebung Lazarus\" href=\"http:\/\/www.lazarus.freepascal.org\/\">Lazarus<\/a>. Diese verwendet als Sprache Delphi (Object Pascal) und l\u00e4uft auf vielen verschiedenen Plattformen. Man kann so mit demselben Quelltext sehr effizient GUI-Anwendungen f\u00fcr Windows, Linux und Mac OS X erzeugen.<\/p>\n<p>Was bei diesem Projekt nat\u00fcrlich nicht der tats\u00e4chlichen biologischen Evolution mittels nat\u00fcrlicher Auslese entspricht, ist dass wir hier als Anwender das Ziel (einen Satz) vorgeben. In der tats\u00e4chlichen Evolution wird das &#8220;Ziel&#8221; der Auslese jeweils durch die Umgebung bestimmt, die entscheidet, welche Genvarianten in dieser Umgebung die erfolgreicheren sind.<\/p>\n<p>Es gibt inzwischen eine ganze Reihe von Software-Projekten (sog. Artifical Life Anwendungen), die diesen Sachverhalt korrekt abbilden, indem sie selbst kein Ziel vorgeben, sondern virtuellen sich entwickelnden Lebewesen nur eine bestimmte Umgebung anbieten und dann den Evolutionsprozess selbst entscheiden lassen, in welche Richtung sich die Lebewesen entwickeln.<\/p>\n<p>Eines dieser Projekte ist <a title=\"Polyworld\" href=\"http:\/\/en.wikipedia.org\/wiki\/Polyworld\">Polyworld<\/a>. Eine beeindruckende Vorf\u00fchrung dieses Projekts findet man auf Youtube in einem <a title=\"Google Techtalk: Polyworld\" href=\"http:\/\/www.youtube.com\/watch?v=_m97_kL4ox0\">Google Techtalk<\/a>. Leider ist der Vortragende etwas nervig, es lohnt sich meiner Meinung nach aber unbedingt, sich das ganze Video anzuschauen.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Richard Dawkins hat f\u00fcr sein Buch &#8220;The Blind Watchmaker&#8221; eine kleine Software-Anwendung geschrieben, die veranschaulichen sollte, wie in der Evolution Zufall und Selektion zusammenarbeiten, um den Anschein von &#8220;Design&#8221; zu geben. Auf Anfrage eines Bekannten aus dem Richard Dawkins Forum &hellip; <a href=\"https:\/\/www.neunbeere.de\/blog\/2010\/02\/wieselevolution\/\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[17,18],"tags":[24,22,19,23,21,25],"class_list":["post-36","post","type-post","status-publish","format-standard","hentry","category-programmierung","category-wissenschaft","tag-artificial-life","tag-delphi","tag-evolution","tag-lazarus","tag-richard-dawkins","tag-weasel"],"_links":{"self":[{"href":"https:\/\/www.neunbeere.de\/blog\/wp-json\/wp\/v2\/posts\/36","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.neunbeere.de\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.neunbeere.de\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.neunbeere.de\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.neunbeere.de\/blog\/wp-json\/wp\/v2\/comments?post=36"}],"version-history":[{"count":3,"href":"https:\/\/www.neunbeere.de\/blog\/wp-json\/wp\/v2\/posts\/36\/revisions"}],"predecessor-version":[{"id":39,"href":"https:\/\/www.neunbeere.de\/blog\/wp-json\/wp\/v2\/posts\/36\/revisions\/39"}],"wp:attachment":[{"href":"https:\/\/www.neunbeere.de\/blog\/wp-json\/wp\/v2\/media?parent=36"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.neunbeere.de\/blog\/wp-json\/wp\/v2\/categories?post=36"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.neunbeere.de\/blog\/wp-json\/wp\/v2\/tags?post=36"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}