Pi Tag 2018 - Pi Musik

in #de-stem7 years ago (edited)

Als ich heute morgen aufgewacht bin, wollte ich eigentlich diesen (hoffentlich) lustigen Post passend zum Pi Tag veröffentlichen. Dann habe ich jedoch von Stephen Hawkings Tod gelesen und war mir nicht mehr so sicher. Also hab ich einen Kaffee getrunken und etwas nachgedacht.

Berücksichtigt man das Leben, was Stephen Hawking gelebt hat, wie sehr er sich der Wissenschaft aufgeopfert hat und seinen Sinn für Humor, denke ich er hätte nicht gewollt, dass jemand wegen ihm sich nicht traut einen spaßigen Wissenschaftspost zu veröffentlichen. Ich möchte Euch also darum bitten Euch ein paar Momente Zeit zu nehmen an diesen unfassbar brillanten Wissenschaftler, diesen Kämpfer und diese Inspiration für viele andere Wissenschaftler zu denken und ein paar tiefe Atemzüge zu nehmen.


Jetzt da wir alle ruhig sind, versuchen wir nicht zu traurig zu sein. Schließlich kann Energie nicht zerstört, sondern nur umgewandelt werden. Ich bin mir sicher, dass egal in welcher Form und an welchem Ort die Energie von Stephen Hawking gerade Großartiges bewirkt.


Pi Tag

Heute, der 14te März, oder wenn Du das etwas seltsame Format der Amerikaner bevorzugst 03/14, ist internationaler Pi Tag. Unser Steemian @humanduck und ich habe für diesen Anlass ein kleines Projekt vorbereitet. Aber zuerst gibt es ein paar Pi-Fakten.


vintage-649760_640.jpg
Image Source

Was ist Pi?

Pi, oder wie es richtig geschrieben wird "π", ist der sechzehnte kleine Buchstabe des griechischen Alphabets. In der Mathematik repräsentiert er das Verhältnis zwischen dem Umfang und dem Durchmesser eines Kreises. Ein Kreis mit einem exakten Durchmesser von 1 cm hat einen Umfang von exakt π cm, or unefähr 3,14159 cm.1


durchmesserVumfang.png

Wieso nur ungefähr 3,14159? Weil π eine irrationale Zahl ist. Das bedeutet sie kann nicht als Bruch zweier ganzer Zahlen dargestellt werden. Egal welche zwei ganzen Zahlen man auswählt, man wird nie auf das Ergebnis von π kommen, wenn man die Eine durch die Andere teilt. Wenn man also π aufschreiben will, bekommt man eine Zahl die unendlich viele Nachkommastellen hat, die sich nie wiederholen.

Enthält π denn alles?

Oft hört man Aussagen wie "π ist irrational, es hat unendlich viele, sich nie wiederholende Nachkommastellen. Also enthält π jede Kombination von Ziffern" woraufhin meistens irgendeine mystische Idee kommt wie, dass π den Todeszeitpunkt eines jeden Menschen enthält. Ich habe jedoch noch keinen Beweis hierfür gesehen.

Die Aussage "es hat unendlich viele, sich nie wiederholende Ziffern" ist nicht ausreichend, um zu beweisen, dass π auch alle Zifferkombinationen enthält. Schauen wir uns doch mal folgende Ziffernreihe an: Schreibe eine 1, dann eine 2, dann zwei 1sen, dann wieder eine 2, dann drei 1sen und so weiter.


01.png

Diese Sequenz ist offensichtlich unendlich und wiederholt sich nie. Gleichzeitig enthält sie jedoch auch nicht alle Ziffernkombinationen, wir haben ja nur die Ziffern 1 und 2 benutzt. Ergo ist die Eigenschaft "es hat unendlich viele Ziffern und wiederholt sich nie" nicht ausreichend, um zu beweisen dass jede Kombination von Ziffern enthalten ist. Es mag wahrscheinlich sein, dass jede beliebige Kombination in π enthalten ist, aber es ist nicht bewiesen, dass π alle Kombinationen enthält.

Wenn Du eine Eigenschaft von π kennst, die tatsächlich beweist, dass π jede Ziffernkombination enthält, dann lass mir doch bitte ein Kommentar da. Ich würde wirklich gerne einen Beweis hierfür sehen!


pi-1453836_640.jpg
Image Source

Was enthält π denn dann?

Hier nur eine Handvoll Beispiele die ich mit Hilfe dieser wundervollen Webseite gefunden habe. Du willst wissen an welcher Stelle in π dein Geburtsdatum liegt? Das ist die Webseite um es herauszufinden.

  • 03142018 Der Tod eines legendären Wissenschaftlers an Position 150.741.354
  • 14032018 Der Tod eines legendären Wissenschaftlers in einem sinnvollen Format an Position 184.676.216
  • 12345678 an Position 186.557.266
  • 314159 Die ersten sechs Ziffern von π (ein zweites mal) an Position 176.451
  • 03101990 Tag der Deutschen Einheit an Position 44.532.000
  • 06041776 USA Independence Day in deren seltsamen Format an Position 10.417.763
  • 04061776 USA Independence Day in einem sinnvollen Format an Position 11.109.370

Schreib doch deine Lieblingssequenz und an welcher Position sie zu finden ist in die Kommentare.

Wie berechnet man π?

Üblicherweise wird π berechnet mit Hilfe von unendlichen Summen (oder wie wir sie nennen unendlichen Reihen). Nimmt man die Summe über unendlich viele Summanden mit bestimmten Eigenschaften, dann kann es sein dass diese Summe zu einem festen Wert konvergiert. Hier ein paar Beispiele mit was für Reihen π berechnet werden kann.

Die Leibniz-Reihe.2


02.png

Madhava von Sangamagramas Reihe.3


03.png

Diese Reihen sind unendlich, leider können wir aber natürlich nicht unendlich viele Summanden aufsummieren und so den exakten Wert von π berechnen. Stattdessen muss eine solche Reihe erst einmal mathematisch untersucht werden. Es muss bewiesen werden, dass sie konvergiert und berechnet werden, wie schnell sie konvergiert. Dann kann man ausrechnen, wie viele Summanden benötigt werden um π auf eine gewünschte Anzahl an Nachkommastellen genau auszurechnen.

Wie habe ich π berechnet?

Ich habe π auf 9.000.000.000 (ja, das sind 9 Milliarden) Stellen berechnet indem ich eine gut optimierte Implementierung von Chudnovskys Algorithmus gefunden und verwendet habe.4


04.png

Ja, das ist eine ganz schön komplexe Formel. Ich bin auch sehr froh, die nicht selbst implementiert haben zu müssen. Ich habe eine gut optimierte Implementierung von Hanhong Xue hier gefunden. Dieser Algorithmus ist zwar schwer effizient zu implementieren, aber hat man es geschafft (oder eine fertige gefunden), dann konvergiert der Algorithmus mit etwa 13 Ziffern pro Iteration. Das ist der am schnellsten konvergierende Algorithmus den ich finden konnte.

Das Projekt

Die Idee hatte @humanduck. Er dachte "Wär's nicht lustig Musik aus den Ziffern von π zu generieren?" und ich dachte "Aber sowas von, lass machen!". Also habe ich mich dran gegeben so viele Ziffern von π zu berechnen wie ich kann. Anschließend habe ich eine kleine RESTful API um diese Ziffern in einem maschinenlesbaren Format abzurufen geschrieben. Du kannst diese API sogar selbst benutzen, aber dazu kommt später noch ein gesonderter Post.

Während ich im Backend gearbeitet habe, hat @humanduck das JavaScript Frontend geschrieben das die Ziffern von π verwendet, um direkt im Browser Musik zu generieren.

Das Ergebnis kann du dir hier ansehen.

In der Zukunft werden wir noch ein wenig daran Feilen, mit mehr Modi zum generieren der Musik und vielleicht noch ein paar anderen Instrumenten.

Separator

@humanduck und ich werden weiter daran arbeiten und dafür sorgen, dass es besser klingt und mehr Variation enthält. Also Folge uns beiden doch und bleib gespannt auf mehr Ziffern und Töne.

Bleibt neugierig.


  1. Die Zahl Pi - https://de.wikipedia.org/wiki/Kreiszahl
  2. Die Leibniz-Reihe - https://de.wikipedia.org/wiki/Leibniz-Reihe
  3. Madhava von Sangamagrama - https://en.wikipedia.org/wiki/Madhava_of_Sangamagrama
  4. Chudnovsky Algorithmus - https://de.wikipedia.org/wiki/Chudnovsky-Algorithmus
Sort:  
Loading...

Die Musik klingt gut, aber wie genau werden die Töne denn aus den Zahlen generiert?

Grob zusammengefasst hat @humanduck 10 Töne aufgenommen und in Dateien gespeichert. Die Töne werden dann nach einem Vorgelegten Mapping (Ziffer 0 ist Ton 1, usw.) abgespielt.

Ok, danke. Also ganz einfach gestrickt :D

Auch alles gute zum Pi-Tag :) Pi ist eine faszinierende Zahl und vlt ist es auch kein Zufall, dass Stephen Hawking heute von uns gegangen ist ;)

Sehr schöne Idee, das so zu machen. Ich hab mal auf Rechtsklick -> Untersuchen gedrückt, da mich interessiert hat, ob ihr die Töne generiert oder nur Dateien abspielt, aber siehe da, es sind Sounddateien, die zu den passenden Ziffern (anscheinend sogar zu Kombinationen, denn es sind weitaus mehr als zehn ID-Zuweisungen zu den zehn Sounddateien) abgespielt werden.

Mich würde interessieren, ob man nicht auch über einen Tonwellengenerator etwas ähnliches gestalten könnte. Wenn man da mit Sinuswellen arbeitet, hat man noch eine weitere Ebene, die den Song mit Pi verbindet.

Und, falls ihr sehen wollt, wie sich jemand damit abquält, den Chudnovsky-Algorithmus per Hand auszurechnen, hier noch ein heute veröffentlichtes Video von Matt Parker.

Das geht sicherlich mit einem Tonwellengenerator, aber leider nicht so ohne weiteres im Browser. Wir wollten etwas, was im Browser generiert wird und haben leider keine sauber funktionierende Möglichkeit gefunden im Browser Töne anhand von Frequenzen zu generieren. Aber vielleicht versuchen wir das in Zukunft nochmal.

Wir wollen auf jeden Fall noch mehr Variation in die Musik bringen indem wir das Tempo der Noten variieren und uns noch andere Dinge einfallen lassen. ;)

Ja, das ist ein herrliches Video und Matt Parker ist einer der Mathematiker, denen man getrost auf YouTube folgen kann. Da kommt immer was interessantes und lustiges bei rum.

Ja, sowas dachte ich mir bereits. ^^ Ich wollte eben anfangen zu suchen, aber wenn ihr nichts diesbezüglich gefunden habt werde ich jetzt auch nix so auf die schnelle finden. Wobei ich mir nicht vorstellen kann, dass man in JavaScript keine Möglichkeit hat, eine Tondatei zu verändern. Dann könnte man einen "Standard"-Sinus mit einer definierten Frequenz verwenden und diesen nach belieben anpassen. Aber sowas ist ja immer leichter gesagt als getan. ^^

Haltet uns auf jeden Fall auf dem Laufenden, wenn ihr weiter an dem Projekt arbeitet. :D

Okay. Es geht.

Aber ich finde nicht genau, wie das umgesetzt wird. Der Player auf der Seite ist in nem <canvas>-Tag eingebunden, wie darauf aber zugegriffen wird blicke ich gerade nicht. Auf jeden Fall geht das "irgendwie" auch im Browser. Wenn nicht die BWL-Klausur anstehen würden würde ich mich ja damit befassen. ^^

Edit: Es ist spät und ich sollte schlafen gehen, ich habe nicht bemerkt, dass die Seite beschreibt, wie das geht, weil ich nur auf den Player geachtet habe. Oh mann.

Geiler Sound!^^

Schön dass du wieder aktiv bist! Sehr kreative Idee, finde ich gut! Der Sound ist überraschend entspannend. Cheers!

Guter Artikel.
Aber bei einem deutschsprachigen Artikel dürft Ihr gern auch deutschsprachige Tags verwenden ... ;)

Ha, klingt fast wie etwas was man aus dem Weltall empfangen könnte :-)

Congratulations @targodan! You have completed some achievement on Steemit and have been rewarded with new badge(s) :

Award for the number of upvotes

Click on any badge to view your own Board of Honor on SteemitBoard.
For more information about SteemitBoard, click here

If you no longer want to receive notifications, reply to this comment with the word STOP

Upvote this notification to help all Steemit users. Learn why here!