Klaus: Die Zahl Pi

Hallo,
Pi ist doch eine Zahl, mit einer endlosen Anzahl von Nachkommastellen, wobei bei den Ziffern keine Regelmäßigkeit vorhanden ist (so zumindest weiß ich es aus dem Mathe-Unterricht). Das bedeutet doch, dass jede beliebige Ziffernkette irgendwo in Pi vorkommen muss. Warum ist die "Normalität von Pi" aber trotzdem nicht bewiesen (siehe http://www.heise.de/newsticker/data/as-01.08.01-000/)? Ist Pi vielleicht doch regelmäßig?
Auf Erleuchtung hoffend
Klaus

  1. Hallo,

    Pi ist doch eine Zahl, mit einer endlosen Anzahl von Nachkommastellen, wobei bei den Ziffern keine Regelmäßigkeit vorhanden ist (so zumindest weiß ich es aus dem Mathe-Unterricht). Das bedeutet doch, dass jede beliebige Ziffernkette irgendwo in Pi vorkommen muss. Warum ist die "Normalität von Pi" aber trotzdem nicht bewiesen (siehe http://www.heise.de/newsticker/data/as-01.08.01-000/)? Ist Pi vielleicht doch regelmäßig?

    man hat nun schon etliche Millionen Nachkommastellen berechnet, aber es ist noch kein gegenteiliger Nachweis gefunden worden.
    In der Mathematik darf man aber den Umkehrschluß nicht zulassen, d.h. Du darfst nicht annehmen, daß etwas so ist, nur weil Du mit noch soviel Stellen arbeitest. Das müßte formell nachgewiesen werden und das ist anscheinend sehr schwer.

    Reiner

  2. use Mosche;

    Pi ist doch eine Zahl, mit einer endlosen Anzahl von Nachkommastellen, wobei bei den Ziffern keine Regelmäßigkeit vorhanden ist (so zumindest weiß ich es aus dem Mathe-Unterricht).

    Das müsste so richtig sein.

    Das bedeutet doch, dass jede beliebige Ziffernkette irgendwo in Pi vorkommen muss.

    Dieser Schluss ist IMHO falsch. Denn "jede beliebige Ziffernkette" kann ja auch unendlich lang sein, und die sind auf keinen Fall in PI enthalten (ausser deine "unendliche lange Ziffernkette" ist PI).

    use Tschoe qw(Matti);

    1. hi!

      Das bedeutet doch, dass jede beliebige Ziffernkette irgendwo in
      Pi vorkommen muss.
      Dieser Schluss ist IMHO falsch. Denn "jede beliebige Ziffernkette"
      kann ja auch unendlich lang sein, und die sind auf keinen Fall in PI
      enthalten (ausser deine "unendliche lange Ziffernkette" ist PI).

      Nein, der Schluss ist richtig. Denn in einer unendlich langen Ziffern-
      folge gibt es beliebig viele unendliche Teil-Ziffernfolgen. Wenn die
      Nachkommastellen von Pi also nicht regelmäßig aufgebaut sind, muss jede
      beliebige endliche oder unendliche Ziffernfolge darin vorkommen.

      bye, Frank!

      1. Hallo,

        Nein, der Schluss ist richtig. Denn in einer unendlich langen Ziffern-
        folge gibt es beliebig viele unendliche Teil-Ziffernfolgen. Wenn die
        Nachkommastellen von Pi also nicht regelmäßig aufgebaut sind, muss jede
        beliebige endliche oder unendliche Ziffernfolge darin vorkommen.

        Das ist so ein Punkt, an dem mir die Mathematik dann zu abgehoben vorkommt. Mir kommt diese Vorstellung einfach nicht mehr richtig vor, da  sie ja bedeuten würde, daß PI ebenfalls eine Teilmenge von PI sein würde. Und das erscheint mir nicht mehr in Ordnung, Axiome hin und Ableitungen bzw. Beweisführungen her.
        Aber wie sagte Puh einmal so trefflich: "Irgendwann machte es ja Sinn, aber dann muß ihm unterwegs etwas zugestoßen sein." [1]

        Grüße
          Klaus

        [1] zugegebnermaßen etwas frei wiedergegeben:-(

      2. Hallo liebe Freizeit Mathematiker,

        Das bedeutet doch, dass jede beliebige Ziffernkette irgendwo in
        Pi vorkommen muss.
        Dieser Schluss ist IMHO falsch. Denn "jede beliebige Ziffernkette"
        kann ja auch unendlich lang sein, und die sind auf keinen Fall in PI
        enthalten (ausser deine "unendliche lange Ziffernkette" ist PI).

        Nein, der Schluss ist richtig. Denn in einer unendlich langen Ziffern-
        folge gibt es beliebig viele unendliche Teil-Ziffernfolgen. Wenn die
        Nachkommastellen von Pi also nicht regelmäßig aufgebaut sind, muss jede
        beliebige endliche oder unendliche Ziffernfolge darin vorkommen.

        Nein, jede endliche Zeichenkette ist in PI enthalten vorausgesetzt PI ist normal. Eine Aussage zu einer unendlich langen Zeichenkette kannst du aber nicht machen! Das führt sofort zu einem Widerspruch (wie bereits gepostet):
        Angenommen in einer normalen Zahl (A) ist jede belibiege undendlich lange Zahl  enthalten, dann ist insbesondere auch jede unendliche lange normale Zahl (B) in (A) enthalten.
        Analog kann man weiter folgern das (A) in (B) enthalten ist, da (B) ja nach Voraussetzung unendlich lang und normal ist.
        Also ist dann (A) in (B) und (B) in (A) enthalten. Die einzige Möglichkeit ist also, daß (A) und (B) identisch sind. -> klassischer Widerspruch -> Die Hypothese war falsch!

        Mit Unendlichkeiten zu rechnen geht eben fast nie gut. Aber für die Praktiker ist das ja kein Beinbruch: Wer hat schon eine (sinvolle) unendlich lange Zeichenkette parat?

        Grüße,
        Peter

        1. hi!

          Angenommen in einer normalen Zahl (A) ist jede belibiege undendlich
          lange Zahl  enthalten, dann ist insbesondere auch jede unendliche
          lange normale Zahl (B) in (A) enthalten.
          Analog kann man weiter folgern das (A) in (B) enthalten ist, da (B)
          ja nach Voraussetzung unendlich lang und normal ist.
          Also ist dann (A) in (B) und (B) in (A) enthalten. Die einzige
          Möglichkeit ist also, daß (A) und (B) identisch sind. -> klassischer
          Widerspruch -> Die Hypothese war falsch!

          Hm, das überzeugt mich noch nicht ganz. Bei endlichen Zahlenfolgen
          gilt das natürlich, dass die beiden dann identisch sind. Aber bei
          unendlichen Folgen habe ich da meine Zweifel.

          Also müsstest du erst beweisen, dass deine Aussage auch für unendliche
          Zahlenfolgen gilt.

          bye, Frank!

          1. Hi hi!

            Also müsstest du erst beweisen, dass deine Aussage auch für unendliche
            Zahlenfolgen gilt.

            Meine laienhafte Ueberlegung: Wenn A letztlich wieder in A enthalten ist, muesste A dann nicht ab eben der Stelle periodisch sein?

            Aber andererseits: Wenn A normal ist, muesste dann nicht jede in A enthaltene unendliche Zahl B auch normal sein? Denn sie hat ja dieselben Ziffern abzueglich der endlich vielen vom Anfang von A, die vor B stehen.

            So long

            --
            If Microsoft is ever going to produce something that does not suck, it is very likely a vacuum cleaner.

          2. use Mosche;

            Angenommen in einer normalen Zahl (A) ist jede belibiege undendlich
            lange Zahl  enthalten, dann ist insbesondere auch jede unendliche
            lange normale Zahl (B) in (A) enthalten.
            Analog kann man weiter folgern das (A) in (B) enthalten ist, da (B)
            ja nach Voraussetzung unendlich lang und normal ist.
            Also ist dann (A) in (B) und (B) in (A) enthalten. Die einzige
            Möglichkeit ist also, daß (A) und (B) identisch sind. -> klassischer
            Widerspruch -> Die Hypothese war falsch!

            Hm, das überzeugt mich noch nicht ganz. Bei endlichen Zahlenfolgen
            gilt das natürlich, dass die beiden dann identisch sind. Aber bei
            unendlichen Folgen habe ich da meine Zweifel.

            Nehmen wir das genannte Beispiel:
            1,234567891011121314151617181920...
            unendlich weiter

            Als nächstes bleibt es festzuhalten, dass eine unendlich lange Zahl nicht länger sein kann als eine andere unendlich lange Zahl. Dass heisst, dass für zwei unendlich lange Zahlen A und B gilt, dass B Teil von A ist, wenn B = A ist, weil A nicht länger sein kann als B ( weil beide unendlich lang sind).

            So, das war das Statement des Hobbymathematikers.

            use Tschoe qw(Matti);

            1. hi!

              Als nächstes bleibt es festzuhalten, dass eine unendlich lange Zahl
              nicht länger sein kann als eine andere unendlich lange Zahl. Dass
              heisst, dass für zwei unendlich lange Zahlen A und B gilt, dass B
              Teil von A ist, wenn B = A ist, weil A nicht länger sein kann als B
              ( weil beide unendlich lang sind).

              Nein, das ist falsch. Sei B eine unendliche Ziffernfolge und A eine
              endliche Ziffernfolge X gefolgt von der Ziffernfolge B. Dann ist B
              zwar ein Teil von A (per definitionem), aber die beiden sind nicht
              identisch.

              Wenn zwei Folgen unendlich sind, kannst du eben nicht mehr mit der
              Länge argumentieren. Denn die ist ja unendlich, und damit kann man
              nicht rechnen.

              Das einzige Argument, das mich bis jetzt einigermaßen überzeugen
              könnte, ist das von Calocybe.

              bye, Frank!

              1. Moin!

                Als nächstes bleibt es festzuhalten, dass eine unendlich lange Zahl
                nicht länger sein kann als eine andere unendlich lange Zahl.

                Wenn zwei Folgen unendlich sind, kannst du eben nicht mehr mit der
                Länge argumentieren. Denn die ist ja unendlich, und damit kann man
                nicht rechnen.

                Yupp, unendlich minus 10^38 ist halt immer noch unendlich.
                Ein schoenes Beispiel sind auch natuerliche vs. rationale Zahlen. Waehrend intuitiv klar scheint, dass die rationalen Zahlen "viel mehr" sind, sind die beiden Mengen tatsaechlich abzaehlbar unendlich und damit gleich maechtig. "Abzaehlbar unendlich" bedeutet dabei, dass man die Elemente durchnumerieren (also abzaehlen) kann, nicht etwa, dass man die Anzahl der Elemente feststellen kann. Das kann man fuer die rationalen Zahlen tatsaechlich (Cantorsches Diagonalverfahren). Im Gegensatz dazu sind die reellen Zahlen ueberabzaehlbar unendlich; den Beweis dazu hab ich aber nie kapiert. *g*

                So long

                --
                Nach allem was wir wissen ist das Leben nicht sinnlos sondern zweckfrei.

                1. hi!

                  Im Gegensatz dazu sind die reellen Zahlen ueberabzaehlbar unendlich;
                  den Beweis dazu hab ich aber nie kapiert. *g*

                  Beweist man das nicht gerade mit diesem Diagonalverfahren von Cantor?
                  Man zeigt, dass man für jede Menge von reellen Zahlen eine weitere
                  Zahl finden kann, die noch nicht in der Menge enthalten ist.

                  bye, Frank!

              2. Nein, das ist falsch. Sei B eine unendliche Ziffernfolge und A eine
                endliche Ziffernfolge X gefolgt von der Ziffernfolge B. Dann ist B
                zwar ein Teil von A (per definitionem), aber die beiden sind nicht
                identisch.

                Hallo Frank,

                Matti behauptet genau den Umkehrschluss, von dem was Du da widerlegst:

                "A=B => B Teilmenge von A" (Matti) statt "B Teilmenge von A => A=B".

                Ich denke, dass unser Problem darauf zurückgeführt werden kann, ob die Beweismethode der vollständigen Induktion nach n nicht nur für natürliche n, sondern auch für n=unendlich gilt. Das die vollständige Induktion dann auch gilt bezweifle ich, denn z.B.:
                (Summe von i gleich 1 bis n über (9*0.1^i)) < 1 für n endlich (das lässt sich mit vollständiger Induktion zeigen), aber:
                (Summe von i gleich 1 bis n über (9*0.1^i)) = 1 für n unendlich.

                Ich will damit nicht behaupten, dass das Enthaltensein einer unendlichen Ziffernkette in einer anderen so wie oben beschrieben falsch ist, allerdings laufen wohl alle oben angeführten Beweisideen auf vollständige Induktion hinaus und die gilt wie gerade gezeigt nicht für n=unendlich.

                1. Hi!

                  Ich denke, dass unser Problem darauf zurückgeführt werden kann, ob die Beweismethode der vollständigen Induktion nach n nicht nur für natürliche n, sondern auch für n=unendlich gilt.

                  Habe ich irgendwas verpasst? Wo wurde denn hier ein Induktionsbeweis angefuehrt?

                  So long

                  --
                  An expert is someone who knows some of the worst mistakes that can be made in his subject and how to avoid them.
                      -- Werner Heisenberg (1901-1976)

          3. Hy Frank,

            Angenommen in einer normalen Zahl (A) ist jede belibiege undendlich
            lange Zahl  enthalten, dann ist insbesondere auch jede unendliche
            lange normale Zahl (B) in (A) enthalten.
            Analog kann man weiter folgern das (A) in (B) enthalten ist, da (B)
            ja nach Voraussetzung unendlich lang und normal ist.
            Also ist dann (A) in (B) und (B) in (A) enthalten. Die einzige
            Möglichkeit ist also, daß (A) und (B) identisch sind. -> klassischer
            Widerspruch -> Die Hypothese war falsch!

            Hm, das überzeugt mich noch nicht ganz. Bei endlichen Zahlenfolgen
            gilt das natürlich, dass die beiden dann identisch sind. Aber bei
            unendlichen Folgen habe ich da meine Zweifel.

            Also müsstest du erst beweisen, dass deine Aussage auch für unendliche
            Zahlenfolgen gilt.

            Stimmt. Leider habe ich keine Ahnung wie ich das Beweisen soll. Schlimmer noch: Mir ist eben das Gedankenexperiment von Hilbert ("Hilberts Hotel") eingefallen. Es macht vielleicht wirklich keinen Sinn unendlich lange Zahlen auf Gleichheit hin zu überprüfen. Mein "Beweis" ist also zumindest fragwürdig :-(

            Grüße,
            Peter

  3. Hi!

    Pi ist doch eine Zahl, mit einer endlosen Anzahl von Nachkommastellen, wobei bei den Ziffern keine Regelmäßigkeit vorhanden ist (so zumindest weiß ich es aus dem Mathe-Unterricht).

    Das mit "keine Regelmaeszigkeit" ist imho das, was eben nicht so sicher ist. Aber ich hab auch keine Ahnung davon. ;-)

    So long

    --
    Invest in America - Buy a Congressman!
        -- a slogan from http://www.evolvefish.com/

  4. Hallo,
    Pi ist doch eine Zahl, mit einer endlosen Anzahl von Nachkommastellen, wobei bei den Ziffern keine Regelmäßigkeit vorhanden ist (so zumindest weiß ich es aus dem Mathe-Unterricht). Das bedeutet doch, dass jede beliebige Ziffernkette irgendwo in Pi vorkommen muss. Warum ist die "Normalität von Pi" aber trotzdem nicht bewiesen (siehe http://www.heise.de/newsticker/data/as-01.08.01-000/)? Ist Pi vielleicht doch regelmäßig?
    Auf Erleuchtung hoffend
    Klaus

    Mal ne dumme Frage als dummer Mensch: Was nützt es mir, wenn ich weiß, dass Pi regelmäßig ist??? Und wieso kann Pi nach diesem heise.de Bericht nur unregelmäßig sein, wenn jede beliebige Zeichenfolge dort hineinpasst? Hab ich da irgendwas falsch verstanden, oder ist das etwas schwachsinnig kompliziert.

    1. Moin moin!

      Mal ne dumme Frage als dummer Mensch: Was nützt es mir, wenn ich weiß, dass Pi regelmäßig ist???

      Dir persoenlich? Vermutlich nichts. Und den Mathematikern? Keine Ahnung, aber gewoehnlich ist es so, dass der Nutzen mathematischer Erkenntnisse oftmals erst viele Jahrhunderte nach deren Entdeckung erkannt wird.

      Und wieso kann Pi nach diesem heise.de Bericht nur unregelmäßig sein, wenn jede beliebige Zeichenfolge dort hineinpasst?

      Nein, andersrum. *Wenn* Pi "normal" ist, wie es die Maths ausdruecken, kann man in deren Ziffernfolge jede beliebige Zahl finden. Und da jede Datei, jeder Text usw im Grunde genommen auch nur eine grosse Zahl ist, wird man eine beliebige Datei dann immer irgendwo in Pi finden koennen. Aber nur, wenn Pi wirklich normal ist, was offenbar nicht ganz einfach zu beweisen ist.

      Man kann so eine normale Zahl uebrigens ganz einfach konstruieren, indem man einfach alle natuerlichan Zahlen aneinander haengt:
        0.0123456789101112131415161718192021222324252627282930332333435...
      und so immer weiter ins Unendliche.

      So long

      --
      Invest in America - Buy a Congressman!
          -- a slogan from http://www.evolvefish.com/

  5. Halihallo

    ich hab mir auch mal was ausgedacht...

    Warum mache ich mir die Arbeit nicht leicht und lasse den Computer für mich programmieren?

    eine Endlosschlaufe, welche irgendwelchen Code erstellt (oder eben einige Stellen von PI ausschneidet und diese dann in einen ASCII Text abbildet) und auswertet ob der Sinn mancht... Irgendwann wird erwohl eine funktionierende Webapplikation ausspucken... Oder gar eine Software, welche die Welt revolutioniert, z. B. eine richtige KI oder so...

    Man muss nur Gedult haben... Aber wisst ihr was: Ich programmiere das gleichmal und beschäftige meinen Computer Tag und Nacht. Vielleicht schafft mein Computer ein einfaches Hello World bevor ich sterbe ;)
    Oder er schickt einen format c: an die Shell... Oder schreibt eine TP-Datei, welche er automatisch durch den Compiler schickt und mir dann die zwei FAT-Tabellen überschreibt...
    Oder er fängt plötzlich mit mir an zu kommunizieren (Halihallo Philipp - Hä, Computer, bist du das???)... fein, fein, fein...

    Viele Grüsse

    Philipp

    1. Halihallo

      man, da kommt nur Schwachsinn auf'm Bildschirm...

      Ja, aber halt!!! - Er hat einen print generiert!!! - ARGHHH, mein Computer lernt dazu!!! - KI, KI, KI... Juhuiii, ich muss nie mehr programmieren... Oh, oh, jetzt bin ich arbeitslos... Neinn!!!

      Viele Grüsse

      Philipp

    2. Moin,

      Warum mache ich mir die Arbeit nicht leicht und lasse den Computer für mich programmieren?

      Das ist das Grundkonzept von genetischer Programmierung.

      eine Endlosschlaufe, welche irgendwelchen Code erstellt (oder eben einige Stellen von PI ausschneidet und diese dann in einen ASCII Text abbildet) und auswertet ob der Sinn mancht... Irgendwann wird erwohl eine funktionierende Webapplikation ausspucken... Oder gar eine Software, welche die Welt revolutioniert, z. B. eine richtige KI oder so...

      Das ist extrem ineffektiv. Mit genetischer Programmierung kannst du mit nur wenig mehr Aufwand für dein Steuerprogramm in wesentlich kürzerer Zeit wesentlich bessere Programme entwickeln. Ich habe hier leider nur ein kleines Beispiel aus [1] parat, aber das zeigt die Tendenz:
      Manuell (also von einem Programmierer in rund 1h Handarbeit) erstelltes Programm: 26 Treffer (von 46); automatisch vom genetischen Algorithmus erstelltes Programm: 43 Treffer; automatisch aus Zufallszahlen erstelltes Programm (das beste von 50.000 Versuchen): 15 Treffer. Wobei die Anzahl der zufällig erstellten Programme so gewählt wurde, das sie in etwa der Anzahl der Programme entspricht, die der Genetische Algorithmus bearbeitet hat.

      Da die Zahlen in Pi bekanntermaßen keiner Regelmäßigkeit folgen, sind sie genausogut wie Zufallszahlen und das Ergebnis damit dürfte im Erwartungswert nicht besser sein als das mit den Pseudozufallszahlen aus o.g. Experiment.

      Für mehr Infos frage einfach mal Google nach: genetic algorithms, genetic programming oder evolutionary programming.

      [1] "Evolving Visual Routines" by Michael Patrick Johnson, Massachusetts Institute of Technology, September 1995; ich hab' keinen Link parat aber es müsste irgendwo im Netz als PDF rumfliegen

      --
      Henryk Plötz
      Grüße aus Berlin

      1. Moin moin!

        Da die Zahlen in Pi bekanntermaßen keiner Regelmäßigkeit folgen, sind sie genausogut wie Zufallszahlen und das Ergebnis damit dürfte im Erwartungswert nicht besser sein als das mit den Pseudozufallszahlen aus o.g. Experiment.

        Koennte man nicht einfach ein Programm, dass fortlaufend die Ziffern von Pi ausspuckt, als Quelle "echter" Zufallszahlen verwenden, sobald die Normalitaet von Pi bewiesen ist?

        So long

        --
        Discovering the usefulness of the "command.com" shell on Windows 9x is left as an exercise to the reader :)
             -- from Perl's README.win32 file

        1. hi!

          Koennte man nicht einfach ein Programm, das fortlaufend die Ziffern
          von Pi ausspuckt, als Quelle "echter" Zufallszahlen verwenden,
          sobald die Normalitaet von Pi bewiesen ist?

          Da Pi konstant ist, müsstest du, um Zufallszahlen zu kriegen, ja
          irgendeine Stelle in Pi bestimmen, ab der du eine Zahl ausliest.
          Damit reduzierst du das Problem wieder auf sich selbst, weil du diese
          Stelle zufällig auswählen musst.

          bye, Frank!

          1. Monne!

            Da Pi konstant ist, müsstest du, um Zufallszahlen zu kriegen, ja
            irgendeine Stelle in Pi bestimmen, ab der du eine Zahl ausliest.
            Damit reduzierst du das Problem wieder auf sich selbst, weil du diese
            Stelle zufällig auswählen musst.

            Noe, man macht bei jedem Systemstart einfach da weiter, wo man vorher aufgehoert hat (ich meine jetzt, wenn man das als /dev/urandom oder so implementiert). So geht man immer weiter voran in Pi, und nebenbei wird Pi auch noch beliebig genau dabei berechnet.

            So long

            --
            The differences between theory and practice are smaller in theory than they are in practice.

            1. Halihalo Calo

              Da Pi konstant ist, müsstest du, um Zufallszahlen zu kriegen, ja
              irgendeine Stelle in Pi bestimmen, ab der du eine Zahl ausliest.
              Damit reduzierst du das Problem wieder auf sich selbst, weil du diese
              Stelle zufällig auswählen musst.

              Noe, man macht bei jedem Systemstart einfach da weiter, wo man vorher aufgehoert hat (ich meine jetzt, wenn man das als /dev/urandom oder so implementiert). So geht man immer weiter voran in Pi, und nebenbei wird Pi auch noch beliebig genau dabei berechnet.

              Yo, nur leider auf Kosten der Performance ;)
              Wer will den 50 min. warten, bis der Computer eine Zufallszahl ausspuckt? - Je genauer die Zahl berechnet werden soll, desto länger geht es... Aber theoretisch hast ja recht... Nur praktisch ist bis heute jeder Computer zu langsam dafür...

              Viele Grüsse

              Philipp

              1. Hi hi!

                Yo, nur leider auf Kosten der Performance ;)
                Wer will den 50 min. warten, bis der Computer eine Zufallszahl ausspuckt? - Je genauer die Zahl berechnet werden soll, desto länger geht es... Aber theoretisch hast ja recht... Nur praktisch ist bis heute jeder Computer zu langsam dafür...

                Es wird sich ja sicher ein Verfahren finden lassen, dass nicht immer wieder ganz von vorne anfangen muss, sondern weiss, bei welcher Genauigkeit es bereits ist (also wieviele Stellen sich bei weiterer, genauerer Berechnung nicht mehr aendern werden), die berechneten Stellen eben nach und nach ausspuckt und fuer die weitere Rechnung den vorderen Teil weglaesst und nur bei den noch unsicheren Stellen weiterrechnet. Ausserdem muss das ja nicht on demand erfolgen, sondern kann als low-prio Prozess schon ein paar Mio. Stellen im Voraus berechnen; machen die heutigen urandom-Devices ja auch so. Aber lassen wir die Maths erstmal die Sache beweisen. *g*

                So long

                --
                "Sardinen wissen, daß Gleichmachen mit Kopfabschneiden beginnt."
                    -- Jeannine Luczak

      2. Halihallo Henryk

        eine Endlosschlaufe, welche irgendwelchen Code erstellt (oder eben einige Stellen von PI ausschneidet und diese dann in einen ASCII Text abbildet) und auswertet ob der Sinn mancht... Irgendwann wird erwohl eine funktionierende Webapplikation ausspucken... Oder gar eine Software, welche die Welt revolutioniert, z. B. eine richtige KI oder so...

        Das ist extrem ineffektiv.

        Ich hab den Algorithmus bereits verbessert ;)

        Mit genetischer Programmierung kannst du mit nur wenig mehr Aufwand für dein Steuerprogramm in wesentlich kürzerer Zeit wesentlich bessere Programme entwickeln. Ich habe hier leider nur ein kleines Beispiel aus [1] parat, aber das zeigt die Tendenz:
        Manuell (also von einem Programmierer in rund 1h Handarbeit) erstelltes Programm: 26 Treffer (von 46); automatisch vom genetischen Algorithmus erstelltes Programm: 43 Treffer; automatisch aus Zufallszahlen erstelltes Programm (das beste von 50.000 Versuchen): 15 Treffer. Wobei die Anzahl der zufällig erstellten Programme so gewählt wurde, das sie in etwa der Anzahl der Programme entspricht, die der Genetische Algorithmus bearbeitet hat.

        Da die Zahlen in Pi bekanntermaßen keiner Regelmäßigkeit folgen, sind sie genausogut wie Zufallszahlen und das Ergebnis damit dürfte im Erwartungswert nicht besser sein als das mit den Pseudozufallszahlen aus o.g. Experiment.

        Also:
        Die zu verwendende Sprache wird über EBMF definiert und eingelesen. EBMF beitet eine syntaktische Beschreibung der Sprache. Darauf basierend wird nun ein _in jedem Fall_ syntaktisch korrektes Programm generiert aufgrund zufälligen Werten aus PI. Natürlich muss der Algorithmus dahingehend verbessert werden, dass generierte Funktionsnamen auch irgendwo mit sub definiert werden müssen (o. ä.). Somit generieren wir mit _jedem_ Schritt ein vollkommen syntaktisch korrektes Programm (mit einigen algo. Verbesserungen, bringen wir's sogar lauffähig)...
        Aber die genetic programming brachte mich gleich auf eine Idee: Der output des Programmes oder andere Eigenschaften ist/sind vorgegeben. Durch die genetic programming wird nun immer eine neue "Evolution" geschaffen. Überlebt die Evolution, d. h. ist der Output des Programmes besser, als die Parentalgeneration, wird diese Evolution zur Parentalgeneration der nächsten Kinder... Somit wird das ganze "Projekt" sogar Problemorientiert (ist ja auch der Zweck von genetic programming)...

        Für mehr Infos frage einfach mal Google nach: genetic algorithms, genetic programming oder evolutionary programming.

        sehr interessant!

        Viele Grüsse vom Bodensee

        Philipp

        PS: Danke für die spannende Lektüre und Input

        1. hi!

          Die zu verwendende Sprache wird über EBMF definiert und
          eingelesen.

          Es heißt EBNF (Extended Backus Naur Form). Nur so als Anmerkung... ;)

          bye, Frank!

          1. Halihallo Frank

            Die zu verwendende Sprache wird über EBMF definiert und
            eingelesen.

            Es heißt EBNF (Extended Backus Naur Form). Nur so als Anmerkung... ;)

            Nur so als Anmerkung: Ich bin wenigstens Gott sei Dank kein Wiederholungstäter: </archiv/2002/6/13375/#m74033> ff. :-))

            Musste ich gleich mal nachprüfen.

            THX ;)

            Viele Grüsse

            Philipp

        2. Moin,

          Also:
          Die zu verwendende Sprache wird über EBMF definiert und eingelesen. EBMF beitet eine syntaktische Beschreibung der Sprache. Darauf basierend wird nun ein _in jedem Fall_ syntaktisch korrektes Programm generiert aufgrund zufälligen Werten aus PI.

          Nun bin ich aber gespannt welche Sprache du benutzen willst, um aufgrund einer EBNF (also in jedem Fall eine kontextfreie Grammatik) nur korrekte Programme zu erstellen. Denn üblicherweise fängst du dir so sehr schnell Probleme ein (Bezeichner müssen in vielen Sprachen vor der Benutzung deklariert werden, Funktionen mit einer falschen Anzahl von Paramtern aufzurufen macht den allermeisten Sprachen auch keinen Spaß, etc.)

          Natürlich muss der Algorithmus dahingehend verbessert werden, dass generierte Funktionsnamen auch irgendwo mit sub definiert werden müssen (o. ä.). Somit generieren wir mit _jedem_ Schritt ein vollkommen syntaktisch korrektes Programm (mit einigen algo. Verbesserungen, bringen wir's sogar lauffähig)...

          Ahh, da ist der eben erwähnte Pferdepfuß hin. Und dafür fand ich das vorhin schon erwähnte Paper sehr aufschlußreich (hab's mittlerweile wiedergefunden: http://citeseer.nj.nec.com/johnson94evolving.html, der Download ist rechts oben), weil dort eben solche Tricks angewendet wurden, damit nur sinnvolle Programme rauskommen, und noch dazu welche ohne Endlosschleifen (ja, die fängt man sich sehr leicht ein).

          sehr interessant!

          Vielleicht noch ein paar Links: http://www.ki.informatik.hu-berlin.de/lehre/ss02/EvTechSem.shtml (da sind die meisten Vortragsfolien aus dem Proseminar das ich grade besuche), http://www.demo.cs.brandeis.edu/golem/ (Projekt GOLEM ist ebenfalls sehr interessant, auch wenn es weniger Programmierung ist), http://citeseer.nj.nec.com/nolfi94how.html (Da geht es ums programmieren von Robotern, um all die Probleme mit normaler Programmierung zu umgehen, nimmt man hier einfach neuronale Netzwerke, das klappt prima)

          --
          Henryk Plötz
          Grüße aus Berlin

          1. Halihallo Henryk

            Also:
            Die zu verwendende Sprache wird über EBMF definiert und eingelesen. EBMF beitet eine syntaktische Beschreibung der Sprache. Darauf basierend wird nun ein _in jedem Fall_ syntaktisch korrektes Programm generiert aufgrund zufälligen Werten aus PI.

            Nun bin ich aber gespannt welche Sprache du benutzen willst, um aufgrund einer EBNF (also in jedem Fall eine kontextfreie Grammatik) nur korrekte Programme zu erstellen. Denn üblicherweise fängst du dir so sehr schnell Probleme ein (Bezeichner müssen in vielen Sprachen vor der Benutzung deklariert werden, Funktionen mit einer falschen Anzahl von Paramtern aufzurufen macht den allermeisten Sprachen auch keinen Spaß, etc.)

            Problem erkannt ;)

            Natürlich muss der Algorithmus dahingehend verbessert werden, dass generierte Funktionsnamen auch irgendwo mit sub definiert werden müssen (o. ä.). Somit generieren wir mit _jedem_ Schritt ein vollkommen syntaktisch korrektes Programm (mit einigen algo. Verbesserungen, bringen wir's sogar lauffähig)...

            Ahh, da ist der eben erwähnte Pferdepfuß hin.

            Yo...

            Vielleicht noch ein paar Links: http://www.ki.informatik.hu-berlin.de/lehre/ss02/EvTechSem.shtml (da sind die meisten Vortragsfolien aus dem Proseminar das ich grade besuche), http://www.demo.cs.brandeis.edu/golem/ (Projekt GOLEM ist ebenfalls sehr interessant, auch wenn es weniger Programmierung ist), http://citeseer.nj.nec.com/nolfi94how.html (Da geht es ums programmieren von Robotern, um all die Probleme mit normaler Programmierung zu umgehen, nimmt man hier einfach neuronale Netzwerke, das klappt prima)

            Bin grad am herunterladen (56kbit Modem, puhhh)... Aber was ich bisher gelesen hab, ist sehr gut.
            Aber bisher bin ich noch auf keine "befriedigende" Variante gestossen, wo ein Algorithmus basierend auf genetic programming vorgestellt wird, dem man Kriterien für ein programm eingeben kann und der dann ein wirkliches Programm generiert, welches auch die entsprechenden Kriterien erfüllt... Wär auch zu schön um wahr zu sein:

            Computer, erschaffe mir eine Webapplikation basierend auf perl.ebnf und perl.config, welche mir einen Warenkorb für Auto-artikel zusammenbastelt mit dem Datenwarehousing in auto-artikel.xml... Die generierten Pages sollen natürlich XHTML 1.1 validiert sein ;-)

            ach, ich träum noch etwas weiter und bin froh, dass ich noch einen Job habe ;)

            Viele Grüsse vom Bodensee

            Philipp

  6. Hallo Klaus,

    Ich bin mir nicht sicher, was Du mit Regelmäßigkeit meinst. Wenn Du damit Periodizität meinst, kann Pi nicht regelmäßig sein, da von Lindemann bewiesen wurde, dass Pi nicht Lösung einer algebraischen Gleichung (Unmöglichkeit der Quadratur des Kreises), damit insbesondere nicht rational ist und deshalb keine periodische Dezimalentwicklung besitzt. Meinst Du dagegen Normalität, dann ist ja die Normalität von Pi trivialerweise gezeigt.

    [...] wobei bei den Ziffern keine Regelmäßigkeit [als Periodizität interpretiert] vorhanden ist [...] Das bedeutet doch, dass jede beliebige Ziffernkette irgendwo in Pi vorkommen muss.

    Dieser Schluss gilt auch für endliche Ziffernketten nicht. Stell Dir zum Beispiel mal vor, in einer irrationalen, d.h. sich nicht periodisch entwickelnden Zahl käme an keiner Stelle die Ziffer 8 vor. Damit kann keine Ziffernkette, die die 8 enthält, in der Notation dieser Zahl vorhanden sein.

    1. Hi Oliver,

      Mit "nicht regelmäßig" meinte ich, dass jede Stelle eine zufällige Zahl zwischen 0 und 9 ist.

  7. Hei,

    zur Zahl Pi einige Links:

    http://www.joyofpi.com/
    Eine weit verzweigte Website, eigentlich zu einem Buch, das auch auf deutsch erschienen ist:
    http://www.amazon.de/exec/obidos/ASIN/3499611767/qid=1025552585/sr=8-1/ref=sr_aps_prod_1_1/302-6657671-0937626

    http://pi314.at/
    Ebenfalls Ausgangspunkt vieler Wege ins Thema Pi.

    Ciao
    Trüffelhund