Was evolutionäre Algorithmen überhaupt sind und wie sie funktionieren, haben wir in den letzten beiden Artikeln besprochen. Das Problem mit der bisherigen Erklärung von evolutionären Algorithmen ist jedoch, dass sie sehr problemgebunden sind; für jedes zu lösende Problem muss ein neues Programm geschrieben werden, da insbesondere die Mutation und Rekombination von den jeweiligen Eigenschaften der…
Im letzten Artikel gab es eine Einführung in die evolutionären Algorithmen, was man mit ihnen machen kann und wie sie generell funktionieren. Wir erinnern uns: Evolutionäre Algorithmen ermöglichen das Lösen selbst komplexer Optimierungsprobleme, indem immer neue Lösungskandidaten erstellt und modifiziert werden, wobei sich die neuen Kandidaten durch einen vorgegebenen Selektionsdruck langsam dem gewünschten Ziel –…
Bei der Erforschung der Evolution hat man das Problem, dass sie relativ langsam abläuft und daher nur in kleinem Ausmaß und über längere Zeiträume betrachtet werden kann. Einfacher ist es da natürlich, die Auswirkungen der Evolution zu untersuchen, so wie es zum Beispiel Charles Darwin unter anderem bei den berühmten Darwinfinken (Bild links) tat und…
Heute soll es einmal um ein ganz anderes Thema gehen, nämlich darum, wie die Theorien der Genetik und Memetik auf die Welt der Computerprogramme angewandt werden können. Aber Achtung – der folgende Text entspricht meiner persönlichen Meinung, stellt gewissermaßen eine (unbewiesene) Theorie dar – es sollte sich also niemand mit Sicherheit darauf berufen. Eine Diskussion…
Im letzten Artikel habe ich eine kurze Einführung darüber gegeben, wie mit Hilfe der Auszeichnungssprache HTML auf einfache Weise Websites im Internet beschrieben werden können. Gleichzeitig hatte ich jedoch auch angemerkt, dass HTML vor allem dazu geeignet ist, die Struktur der Inhalte zu definieren, nicht aber unbedingt deren optisches Erscheinungsbild (sprich die Textformatierung). Zu diesem…
Heute soll es einmal um ein Thema gehen, mit dem ein Großteil der Bevölkerung (und 100% der Leser dieses Blogs) regelmäßig zu tun haben, über das sich vermutlich aber nur wenige Gedanken machen. Tatsächlich ist es jetzt gerade beim Lesen dieses Beitrags von Bedeutung, nämlich die Frage, wie Inhalte im Internet überhaupt dargestellt werden können.…
Vor kurzem habe ich zwei grundlegende Algorithmen beschrieben, die benutzt werden können, um eine Menge von Daten zu sortieren. Betrachtet wurden Bubblesort und Selectionsort, wobei für beide Algorithmen festgestellt wurde, dass sie relativ ineffizient sind, was ihr Sortierverhalten angeht. Für den Einsatz in Programmen, wo Geschwindigkeit wichtig ist und große Datenmengen sortiert werden müssen, können…
Der letzte Artikel mit spannenden Neuigkeiten liegt schon etwas zurück – damals ging es um die vielfältigen Nutzungsmöglichkeiten von Microsofts Eingabemedium Kinect,bei dem die Eingabe lediglich über eine Kamera und einen Tiefensensor stattfindet. Chris Harrison von Microsoft Research hat den bisherigen (teilweise beeindruckenden) Anwendungsszenarien ein weiteres hinzugefügt: arbiträre Touch-Oberflächen. Bisherige Systeme mit Touchbedienung bedienen sich…
Bisher habe ich Themen aus den Gebieten der Grundlagen-Informatik, der technischen Informatik, der (hardwarenahen) Programmierung und der Algorithmen besprochen; nicht erwähnt wurde aber (unter anderem) die theoretische Informatik; diesen Missstand möchte ich heute beseitigen und das Wunschthema von Leser Michael beantworten: er hat eine kurze Abhandlung über die Turing-Vollständigkeit erbeten. Nun denn, auf geht’s.
In den letzten Artikeln habe ich versucht, das grundlegende Vorgehen beim Programmieren darzulegen – einerseits natürlich, um die Idee des Programmierens selbst zu erläutern, andererseits aber natürlich auch, um die Grundlagen für die Erklärung der eigentlichen Aufgabe der Informatik zu schaffen: der Problemlösung. Der durchschnittliche Informatiker hat im Arbeitsalltag nämlich in der Regel relativ wenig…
Letzte Kommentare