Seite 3 von 3

Re: mutierende Software

Verfasst: 01.08.2010 21:03
von kswb73
Ich denke nicht das es möglich ist zufällig ein top Programm entstehen zu lassen. Es ist allerdings doch möglich durch zufällige (besser wären eigentlich systematische) Veränderungen ein Ziel schneller zu erreichen als mit einer bekannten Lösung.
Wollen wir zum Beispiel eine schnelle Routine finden um den Kosinus zu berechnen, so können wir die uns bekannte PureBasic Funktion nehmen und einfach zehnbillionen zufällige Programme generieren, die einen Wert ausgeben. Diese vergleichen wir dann mit den Ergebnissen aus PureBasic. Von den Programmen, wo das Ergebniss stimmt, nehmen wir dann das schnellste und schon haben wir eine schnelle Routine zum Berechnen von Kosinus.
Wirklich lohnen würde sich das ganze aber nur mit einem Supercomputer weil nur extrem wenige Programme wirklich funktionieren und noch weniger wirklich schnell sind.

Re: mutierende Software

Verfasst: 01.08.2010 23:11
von 7x7
DrFalo hat geschrieben:Lass mich raten...
:bounce:
Falsch, aber lustig :mrgreen:

Re: mutierende Software

Verfasst: 02.08.2010 14:53
von Thorium
kswb73 hat geschrieben: Wollen wir zum Beispiel eine schnelle Routine finden um den Kosinus zu berechnen, so können wir die uns bekannte PureBasic Funktion nehmen und einfach zehnbillionen zufällige Programme generieren, die einen Wert ausgeben. Diese vergleichen wir dann mit den Ergebnissen aus PureBasic. Von den Programmen, wo das Ergebniss stimmt, nehmen wir dann das schnellste und schon haben wir eine schnelle Routine zum Berechnen von Kosinus.
Wirklich lohnen würde sich das ganze aber nur mit einem Supercomputer weil nur extrem wenige Programme wirklich funktionieren und noch weniger wirklich schnell sind.
Das funktioniert nicht wirklich. Mit dem Kosinus wofür man nur ein paar FPU Instruktionen braucht gehts vieleicht noch, geht aber auch mit weniger Aufwand und ohne Supercomputer, wenn man sein Köpfchen ein bisschen anstrengt.
Für einen richtigen Algo wären 10 Billionen generierter Datenschrott nicht annähernd genug. Bei nur 4 Byte Länge haben wir ja schon 4 Milliarden Mögliche Kombinationen. Jetzt generiere mal nen Algo der 1KB lang ist. Wobei man da natürlich optimieren könnte indem man nur gültige Instruktionen generieren lässt. Aber dann reden wir immernoch von unvorstellbaren Größenordnungen.

Zu guter letzt hat das mit Evolution wenig zutun, das ist ne Bruteforce Attacke. ^^