Habt ihr schonmal mit genetischen Algorithmen professionell gearbeitet?



  • 28+216+224+232 = 81+82+83+84

    Das sollte wohl 256 sein, als Basis auf der rechten Seite.

    Außerdem haste falsch verlinkt. Die Formel die wir suchen habe ich im Übrigen vor einem Monat in der Schule durchgenommen (bei Geometric Progressions):
    sn=qn+11q1s_n = \frac{q^{n+1}-1}{q-1}
    In diesem Fall ist qq nämlich 2sizeof(int)CHAR_BIT2^{sizeof(int)*CHAR\_BIT}, und wenn ich mich nun nicht böse irre, hatte ich also die richtige Formel.



  • Arcoth schrieb:

    28+216+224+232 = 81+82+83+84

    Das sollte wohl 256 sein, als Basis auf der rechten Seite.

    Ups, klar.

    Arcoth schrieb:

    Außerdem haste falsch verlinkt. Die Formel die wir suchen habe ich im Übrigen vor einem Monat in der Schule durchgenommen (bei Geometric Progressions):
    sn=qn+11q1s_n = \frac{q^{n+1}-1}{q-1}

    Nicht mein Tag.

    Arcoth schrieb:

    In diesem Fall ist qq nämlich 2sizeof(int)CHAR_BIT2^{sizeof(int)*CHAR\_BIT}, und wenn ich mich nun nicht böse irre, hatte ich also die richtige Formel.

    Das glaube ich gerne. So Formeln "beweise" ich, indem ich 4 oder 5 Messwerte teste und so wie die aussieht, hat sie nicht mehr Kraft zum Komischsein, um den Test fälschlicherweise zu bestehen.



  • volkard schrieb:

    (1) https://www.google.de/#q=cray+endlosschleifen

    Warum eigentlich? Ich finde nur "Beispiele", aber keine Origin Story für den Witz.



  • @Volkard: Wau, danke für den Busy Beever Link. Das ist genau was ich meinte. Spezifisch die von Radó definierte S-Funktion trifft es (die leider nicht entscheidbar ist).



  • @Mechanics
    Ich vermute der Ursprung davon ist nicht mehr nachvollziehbar. Cray hat halt lange Zeit sehr sehr schnelle Rechner hergestellt. Ich will mich mal nicht zu weit aus dem Fenster lehnen indem ich sage "die schnellsten", aber sie waren auf jeden Fall ganz vorne mit dabei.
    Und für Normalsterbliche unleistbar.

    Cray war daher ne Zeitlang einfach DIE Marke an die man dachte wenn es um sauschnelle Rechner ging. Das unverwechselbare Äussere einiger Modelle hat wohl auch zur Bekanntheit der Marke beigetragen:
    http://perso.telecom-paristech.fr/~blanchet/SIP_UE_INF227/histoire/images/0062.cray.xmp.lg.jpg
    Bzw. hier eine wohl recht gut bekannte Szene aus einem Film (Sneakers (1992)):
    http://disruptdecentralisedisintermediate.files.wordpress.com/2011/12/sneakers_cray_y-mp.jpg



  • hustbaer schrieb:

    Ich will mich mal nicht zu weit aus dem Fenster lehnen indem ich sage "die schnellsten", aber sie waren auf jeden Fall ganz vorne mit dabei.
    Und für Normalsterbliche unleistbar.

    Ganz genau.

    Wikipedia meint http://en.wikipedia.org/wiki/Cray-2

    The Cray-2 was a supercomputer with four vector processors built with emitter-coupled logic and made by Cray Research starting in 1985. At 1.9 GFLOPS peak performance, it was the fastest machine in the world when it was released, replacing the Cray X-MP in that spot. The Cray-2 was replaced as the world's fastest computer by the ETA-10G in 1990.[citation needed]

    Die Dinger waren irreal schnell. Herausgehoben aus dieser Welt. Soo weit vorne, daß man an seiner Logik zweifeln mag, die sagt, daß das gar nicht sein kann. Und das macht den Witz mit den Endlosschleifen so gut.

    Inhaltsverzeichnis von http://en.wikipedia.org/wiki/History_of_supercomputing

    1 Beginnings: 1950s and 1960s
    2 The Cray era: mid-1970s and 1980s
    3 Massive processing: the 1990s
    4 Petaflop computing in the 21st century



  • Hehe, warum leiden wir Menschen eigentlich nicht an Endlosschleifen? 😃



  • Thilo87 schrieb:

    Hehe, warum leiden wir Menschen eigentlich nicht an Endlosschleifen? 😃

    Weil wir vorher aufgeben.



  • Eine intelligente Maschine bräuchte also auch die Fähigkeit, aufgeben zu können, um nicht in Endlosschleifen zu landen. Ihre Intelligenz erkennt man dann daran, inwiefern sie beurteilen kann, ob ein Algorithmus wahrscheinlich funktionieren wird.



  • Thilo87 schrieb:

    Eine intelligente Maschine bräuchte also auch die Fähigkeit, aufgeben zu können, um nicht in Endlosschleifen zu landen.

    Nein. Eine Maschine tut exakt das was der Programmcode vorgibt. Der Programmierer braucht die Fähigkeit, richtigen Code zu schreiben und falschen zu erkennen. Wenn die Maschine schon falschen Code selber erkennen muss, läuft irgendwas schief.



  • Thilo87 schrieb:

    Eine intelligente Maschine bräuchte also auch die Fähigkeit, aufgeben zu können, um nicht in Endlosschleifen zu landen.

    Was unterscheidet Endlosschleifen von sehr sehr langsamen Algorithmen?

    Edit:
    Das war ein wenig unglücklich formuliert. Für langsame aber definitiv lösbare / entscheidbare Probleme lässt sich oft eine obere Schranke angeben. Gemeint war eher so etwas was gleich einen Post weiter unten erwähnt wurde:

    intelligenterpost schrieb:

    Beweis mal, ob das Programm richtig ist, das die Riemannvermutung wiederlegt, d.h. ob es terminiert oder nicht.

    Eine bessere Artikulation wäre demnach zu fragen, was Endlosschleifen von semi-entscheidbaren Algorithmen (ein Algorithmus selbst kann nicht semi-entscheidbar sein, oder? Lediglich die Definitionsmenge...) unterscheidet (so beispielsweise der Miller-Rabin-Primzahltest).



  • Arcoth schrieb:

    Thilo87 schrieb:

    Eine intelligente Maschine bräuchte also auch die Fähigkeit, aufgeben zu können, um nicht in Endlosschleifen zu landen.

    Nein.

    Ich würde eine solche Maschine durchaus als intelligent bezeichnen, wenn sie es gut macht.

    Arcoth schrieb:

    Eine Maschine tut exakt das was der Programmcode vorgibt.

    Vielleicht bei klassischen Programmen. Es gibt auch Programmcode, der sich verändern kann. Technisch lässt sich nicht ausschliessen, dass ein Programm nicht auch so flexibel ist, wie das menschliche Gehirn.

    Der Programmierer braucht die Fähigkeit, richtigen Code zu schreiben und falschen zu erkennen.

    Beweis mal, ob das Programm richtig ist, das die Riemannvermutung wiederlegt, d.h. ob es terminiert oder nicht.

    Wenn die Maschine schon falschen Code selber erkennen muss, läuft irgendwas schief.

    Wer sagt, dass sie es muss?

    Seltsamer Post von dir.


  • Mod

    asfdlol schrieb:

    Thilo87 schrieb:

    Eine intelligente Maschine bräuchte also auch die Fähigkeit, aufgeben zu können, um nicht in Endlosschleifen zu landen.

    Was unterscheidet Endlosschleifen von sehr sehr langsamen Algorithmen?

    Gewisse Typen von Endlosschleifen kann man durchaus erkennen. Wenn ein interner Zustand sich exakt wiederholt, ist man in einer Endlosschleife gefangen.

    intelligenterpost schrieb:

    Arcoth schrieb:

    Eine Maschine tut exakt das was der Programmcode vorgibt.

    Vielleicht bei klassischen Programmen. Es gibt auch Programmcode, der sich verändern kann. Technisch lässt sich nicht ausschliessen, dass ein Programm nicht auch so flexibel ist, wie das menschliche Gehirn.

    Wer sagt, dass das Gehirn sich nicht auch im Rahmen eines sehr komplexen Programms beschreiben ließe? Das muss ja sogar so sein, wenn du nicht metaphysisch argumentieren willst. Bloß kommen bei der Beschreibung des Programms, wie du schon selber feststellst, eben häufiger Konstrukte vor, die sich verändern können. Aber das ist doch immer noch Teil des Gesamtprogramms. Das "Programm" ist dann das Gesamtpaket, inklusive dem Teil der beschreibt, wie diese Änderungen des Teilprogramms passieren.



  • Ich würde eine solche Maschine durchaus als intelligent bezeichnen, wenn sie es gut macht.

    Gut, aber sie bräuchte es nicht. Schließlich ist es nicht Teil der Definition von intelligenten Maschinen (falls diese überhaupt eindeutig existiert) dass diese ihren eigenen Programmcode missachtet.
    Falls der Programmierer das Überprüfen des Programmcodes aber (bewusst) einprogrammiert hat, dann macht es doch nicht die Maschine, sondern dann macht es das Programm, und die Maschine ist wiederum nur Medium der Programmausführung.

    Wer sagt, dass sie es muss?

    Niemand. 🙂

    Es gibt auch Programmcode, der sich verändern kann.

    Ja, aber wie? So wie es anderer Programmcode vorgibt. Am Ende tanzt doch alles nach der Pfeife des Programm(ierer)s?

    Edit:

    Das "Programm" ist dann das Gesamtpaket, inklusive dem Teil der beschreibt, wie diese Änderungen des Teilprogramms passieren.

    👍



  • Arcoth schrieb:

    Niemand. 🙂

    Es gibt auch Programmcode, der sich verändern kann.

    Ja, aber wie? So wie es anderer Programmcode vorgibt. Am Ende tanzt doch alles nach der Pfeife des Programm(ierer)s?

    Was ist, wenn der Veränderungscode auf echtem Zufall beruht?



  • Was ist, wenn der Veränderungscode auf echtem Zufall beruht?

    Dann wird er in vielen Fällen zu einem Absturz führen, weil ein nicht erkannter Opcode o.ä. gelesen wird. Daran ist doch nichts intelligent, aber vielleicht übersehe ich etwas?

    Oder meinst du, es werden zufällige Opcodes und Operanden ausgewählt? Inwiefern ist der Code zufällig?


  • Mod

    otze schrieb:

    Arcoth schrieb:

    Niemand. 🙂

    Es gibt auch Programmcode, der sich verändern kann.

    Ja, aber wie? So wie es anderer Programmcode vorgibt. Am Ende tanzt doch alles nach der Pfeife des Programm(ierer)s?

    Was ist, wenn der Veränderungscode auf echtem Zufall beruht?

    Und? Das ändert doch nichts. Es ist kein deterministisches Programm mehr, aber das ändert doch nichts da dran, dass das Gesamtprogramm vorgegebenen Regeln gehorcht. Diese sind dann eben statistischer Natur.



  • SeppJ schrieb:

    Was ist, wenn der Veränderungscode auf echtem Zufall beruht?

    Und? Das ändert doch nichts. Es ist kein deterministisches Programm mehr, aber das ändert doch nichts da dran, dass das Gesamtprogramm vorgegebenen Regeln gehorcht. Diese sind dann eben statistischer Natur.[/quote]

    Klar ändert das was. Überleg dir mal folgendes Programm:

    Input: Q : A problem to solve
    forever{
        P=createRandomProgram;
        if(P is better strategy to solve Q){
            run(P);
            exit;
        }
    }
    

    Zur Vereinfachung können wir erstmal annehmen, dass wir ein Problem haben, für welches die if-Bedingung entscheidbar ist.



  • Edit: Ich les' mir nochmal in Ruhe was durch.

    Was unterscheidet Endlosschleifen von sehr sehr langsamen Algorithmen?

    Mittlerweile kann ich ja ganz entspannt auf den beschäftigen Bieber verweisen.



  • Arcoth schrieb:

    Mittlerweile kann ich ja ganz entspannt auf den beschäftigen Bieber verweisen.

    Dich wird Herkules mit der Schlange auch unterhalten.


Anmelden zum Antworten