Tools
Mathematik: das Spiel Flip
Released by matroid on So. 26. März 2023 10:15:32 [Statistics] [Comments]
Written by Delastelle - 331 x read [Outline] Printable version Printer-friendly version -  Choose language   
Spiele+Rätsel

\(\begingroup\) David H.Ahl stellte in seinen 2 Bänden "Basic Computer Spiele" (erschienen kurz vor 1980) das Spiel Flip vor. Dabei geht es darum 50 mal ja oder nein zu tippen. Der Computer wählt auch 50 mal ja oder nein. Nach jedem Tipp wird verglichen: hat man den Tipp des Computers korrekt? Ziel ist es bei 50 mal 25 mal oder mehr korrekte Züge des Computers vorherzusagen. Hier wird das Basic-Programm von Ahl übersetzt als Octave File mit den Antworten 0 und 1 wiedergegeben. Es folgen ein paar Testläufe.

1.Basic Quelltext von Ahl

Beschreibung, Testlauf bei Ahl, Basic-Quelltext

2.Octave Quelltext

\sourceon Octave % Flip nach Ahl % Anzeige '*' bei richtig geraten % bei 50 Versuchen ist eine Anzahl von 25 oder besser gut b1 = 50; s1 = 0; s2 = 0; eps = 0.0000001; erg = ' '; p = zeros(16,1); x = zeros(4,1); for i = 1:16 p(i) = 0.5; end for i = 1:4 x(i) = 0; if (rand < 0.5) x(i) = 1; end end f1 = 0.8; f2 = 0.3; s1 = 0; s2 = 0; ende = 0; erg = ' '; while (ende == 0) i9 = 8*x(4)+4*x(3)+2*x(2)+x(1)+1; z1 = p(i9); z2 = z1; z5 = 0; if (abs(z2-0.5) < eps) z2 = rand; end if (z2 <= 0.5) z2 = z2*f2+0*(1-f2); else z2 = z2*f2+1*(1-f2); end if (rand >= z2) z5 = 1; end % Eingabe Benutzer fprintf(erg); fprintf('(%i)',s2+1); % Eingabe a = ''; ende2 = 0; while (ende2 == 0) a = input(' 0 oder 1 '); if (a == 0) ende2 = 1; end if (a == 1) ende2 = 1; end end if (a == 1) z3 = 1; end if (a == 0) z3 = 0; end erg = ' '; s2 = s2 + 1; if (z3 == z5) % richtig geraten erg = '*'; s1 = s1 + 1; end % erneuere x - die letzten 4 Antworten x(1) = x(3); x(2) = x(4); x(3) = z3; x(4) = z5; p(i9) = f1*p(i9)+(1-f1)*x(3); if (s2 >= b1) ende = 1; end end fprintf(erg); fprintf('Ende\n'); fprintf('von %i hast du %i richtig erraten.\n',s2,s1); \sourceoff

3.Testläufe

(a) alles 0 tippen \sourceon Test 1 >> FlipAhl (1) 0 oder 1 0 (2) 0 oder 1 0 (3) 0 oder 1 0 *(4) 0 oder 1 0 *(5) 0 oder 1 0 *(6) 0 oder 1 0 (7) 0 oder 1 0 (8) 0 oder 1 0 (9) 0 oder 1 0 (10) 0 oder 1 0 *(11) 0 oder 1 0 (12) 0 oder 1 0 (13) 0 oder 1 0 (14) 0 oder 1 0 (15) 0 oder 1 0 (16) 0 oder 1 0 (17) 0 oder 1 0 (18) 0 oder 1 0 (19) 0 oder 1 0 (20) 0 oder 1 0 (21) 0 oder 1 0 (22) 0 oder 1 0 (23) 0 oder 1 0 (24) 0 oder 1 0 (25) 0 oder 1 0 (26) 0 oder 1 0 (27) 0 oder 1 0 (28) 0 oder 1 0 (29) 0 oder 1 0 (30) 0 oder 1 0 (31) 0 oder 1 0 (32) 0 oder 1 0 (33) 0 oder 1 0 (34) 0 oder 1 0 (35) 0 oder 1 0 (36) 0 oder 1 0 (37) 0 oder 1 0 (38) 0 oder 1 0 (39) 0 oder 1 0 (40) 0 oder 1 0 (41) 0 oder 1 0 (42) 0 oder 1 0 (43) 0 oder 1 0 (44) 0 oder 1 0 (45) 0 oder 1 0 (46) 0 oder 1 0 (47) 0 oder 1 0 (48) 0 oder 1 0 (49) 0 oder 1 0 (50) 0 oder 1 0 Ende von 50 hast du 4 richtig erraten. \sourceoff (b) 0 1 0 1 0 1 usw. \sourceon Test 2 >> FlipAhl (1) 0 oder 1 0 (2) 0 oder 1 1 *(3) 0 oder 1 0 *(4) 0 oder 1 1 (5) 0 oder 1 0 *(6) 0 oder 1 1 (7) 0 oder 1 0 (8) 0 oder 1 1 *(9) 0 oder 1 0 (10) 0 oder 1 1 (11) 0 oder 1 0 *(12) 0 oder 1 1 (13) 0 oder 1 0 (14) 0 oder 1 1 (15) 0 oder 1 0 (16) 0 oder 1 1 (17) 0 oder 1 0 (18) 0 oder 1 1 (19) 0 oder 1 0 (20) 0 oder 1 1 (21) 0 oder 1 0 (22) 0 oder 1 1 (23) 0 oder 1 0 (24) 0 oder 1 1 (25) 0 oder 1 0 (26) 0 oder 1 1 (27) 0 oder 1 0 (28) 0 oder 1 1 (29) 0 oder 1 0 (30) 0 oder 1 1 (31) 0 oder 1 0 (32) 0 oder 1 1 (33) 0 oder 1 0 (34) 0 oder 1 1 (35) 0 oder 1 0 (36) 0 oder 1 1 (37) 0 oder 1 0 (38) 0 oder 1 1 (39) 0 oder 1 0 (40) 0 oder 1 1 (41) 0 oder 1 0 (42) 0 oder 1 1 (43) 0 oder 1 0 (44) 0 oder 1 1 (45) 0 oder 1 0 (46) 0 oder 1 1 (47) 0 oder 1 0 (48) 0 oder 1 1 (49) 0 oder 1 0 (50) 0 oder 1 1 Ende von 50 hast du 5 richtig erraten. \sourceoff (c) bei Primzahlen Wechsel primes(50) Columns 1 through 11: 2 3 5 7 11 13 17 19 23 29 31 Columns 12 through 15: 37 41 43 47 \sourceon Test 3 >> FlipAhl (1) 0 oder 1 0 (2) 0 oder 1 1 (3) 0 oder 1 0 (4) 0 oder 1 0 *(5) 0 oder 1 1 (6) 0 oder 1 1 (7) 0 oder 1 0 (8) 0 oder 1 0 (9) 0 oder 1 0 (10) 0 oder 1 0 (11) 0 oder 1 1 *(12) 0 oder 1 1 (13) 0 oder 1 0 (14) 0 oder 1 0 (15) 0 oder 1 0 (16) 0 oder 1 0 (17) 0 oder 1 1 (18) 0 oder 1 1 *(19) 0 oder 1 0 (20) 0 oder 1 0 (21) 0 oder 1 0 (22) 0 oder 1 0 (23) 0 oder 1 1 *(24) 0 oder 1 1 (25) 0 oder 1 1 *(26) 0 oder 1 1 *(27) 0 oder 1 1 (28) 0 oder 1 1 (29) 0 oder 1 0 (30) 0 oder 1 0 (31) 0 oder 1 1 *(32) 0 oder 1 1 (33) 0 oder 1 1 (34) 0 oder 1 1 *(35) 0 oder 1 1 (36) 0 oder 1 1 (37) 0 oder 1 0 (38) 0 oder 1 0 (39) 0 oder 1 0 *(40) 0 oder 1 0 *(41) 0 oder 1 1 (42) 0 oder 1 1 (43) 0 oder 1 0 (44) 0 oder 1 0 (45) 0 oder 1 0 (46) 0 oder 1 0 (47) 0 oder 1 1 *(48) 0 oder 1 1 (49) 0 oder 1 1 (50) 0 oder 1 1 *Ende von 50 hast du 12 richtig erraten. \sourceoff (d) Zufall von Hand \sourceon Test 4 >> FlipAhl (1) 0 oder 1 0 *(2) 0 oder 1 0 (3) 0 oder 1 1 (4) 0 oder 1 1 *(5) 0 oder 1 1 (6) 0 oder 1 0 (7) 0 oder 1 0 (8) 0 oder 1 1 *(9) 0 oder 1 1 (10) 0 oder 1 0 *(11) 0 oder 1 1 (12) 0 oder 1 0 *(13) 0 oder 1 0 *(14) 0 oder 1 1 (15) 0 oder 1 1 *(16) 0 oder 1 0 *(17) 0 oder 1 0 *(18) 0 oder 1 1 (19) 0 oder 1 0 *(20) 0 oder 1 1 *(21) 0 oder 1 0 *(22) 0 oder 1 0 (23) 0 oder 1 1 (24) 0 oder 1 1 (25) 0 oder 1 0 (26) 0 oder 1 0 (27) 0 oder 1 1 (28) 0 oder 1 1 *(29) 0 oder 1 0 (30) 0 oder 1 0 (31) 0 oder 1 1 (32) 0 oder 1 1 *(33) 0 oder 1 1 *(34) 0 oder 1 1 *(35) 0 oder 1 1 (36) 0 oder 1 0 (37) 0 oder 1 1 *(38) 0 oder 1 1 (39) 0 oder 1 0 (40) 0 oder 1 0 *(41) 0 oder 1 1 *(42) 0 oder 1 1 *(43) 0 oder 1 1 *(44) 0 oder 1 1 (45) 0 oder 1 0 (46) 0 oder 1 0 (47) 0 oder 1 1 (48) 0 oder 1 1 (49) 0 oder 1 1 *(50) 0 oder 1 1 Ende von 50 hast du 22 richtig erraten. \sourceoff (e) Zufall per Hand Versuch -2- \sourceon Test 5 >> FlipAhl (1) 0 oder 1 0 *(2) 0 oder 1 0 *(3) 0 oder 1 1 (4) 0 oder 1 1 *(5) 0 oder 1 1 *(6) 0 oder 1 0 (7) 0 oder 1 1 (8) 0 oder 1 01 (9) 0 oder 1 1 *(10) 0 oder 1 1 (11) 0 oder 1 1 *(12) 0 oder 1 0 *(13) 0 oder 1 0 (14) 0 oder 1 1 *(15) 0 oder 1 1 *(16) 0 oder 1 1 *(17) 0 oder 1 1 (18) 0 oder 1 0 *(19) 0 oder 1 0 (20) 0 oder 1 0 *(21) 0 oder 1 0 (22) 0 oder 1 1 *(23) 0 oder 1 1 (24) 0 oder 1 1 *(25) 0 oder 1 0 (26) 0 oder 1 0 (27) 0 oder 1 0 (28) 0 oder 1 1 *(29) 0 oder 1 1 (30) 0 oder 1 0 (31) 0 oder 1 1 *(32) 0 oder 1 0 *(33) 0 oder 1 1 *(34) 0 oder 1 0 (35) 0 oder 1 1 *(36) 0 oder 1 1 (37) 0 oder 1 0 (38) 0 oder 1 0 *(39) 0 oder 1 1 *(40) 0 oder 1 0 (41) 0 oder 1 1 (42) 0 oder 1 0 *(43) 0 oder 1 1 (44) 0 oder 1 0 *(45) 0 oder 1 1 (46) 0 oder 1 1 *(47) 0 oder 1 0 (48) 0 oder 1 1 (49) 0 oder 1 0 *(50) 0 oder 1 1 Ende von 50 hast du 25 richtig erraten. \sourceoff (f) Zufall per Hand Versuch -3- \sourceon Test 6 >> FlipAhl (1) 0 oder 1 0 (2) 0 oder 1 0 *(3) 0 oder 1 0 *(4) 0 oder 1 0 *(5) 0 oder 1 1 *(6) 0 oder 1 1 *(7) 0 oder 1 1 (8) 0 oder 1 0 *(9) 0 oder 1 0 (10) 0 oder 1 1 *(11) 0 oder 1 0 (12) 0 oder 1 1 *(13) 0 oder 1 0 (14) 0 oder 1 1 *(15) 0 oder 1 1 *(16) 0 oder 1 1 (17) 0 oder 1 0 (18) 0 oder 1 0 *(19) 0 oder 1 1 *(20) 0 oder 1 1 (21) 0 oder 1 0 (22) 0 oder 1 0 (23) 0 oder 1 0 (24) 0 oder 1 1 *(25) 0 oder 1 1 *(26) 0 oder 1 1 (27) 0 oder 1 1 *(28) 0 oder 1 1 (29) 0 oder 1 0 (30) 0 oder 1 1 *(31) 0 oder 1 0 *(32) 0 oder 1 0 (33) 0 oder 1 1 *(34) 0 oder 1 1 *(35) 0 oder 1 1 *(36) 0 oder 1 0 *(37) 0 oder 1 0 (38) 0 oder 1 1 (39) 0 oder 1 1 (40) 0 oder 1 0 (41) 0 oder 1 1 *(42) 0 oder 1 1 (43) 0 oder 1 1 *(44) 0 oder 1 0 *(45) 0 oder 1 1 *(46) 0 oder 1 0 *(47) 0 oder 1 1 *(48) 0 oder 1 0 (49) 0 oder 1 1 *(50) 0 oder 1 0 *Ende von 50 hast du 29 richtig erraten. \sourceoff Ein Stern (*) bedeutet, dass man richtig geraten hat. Wer möchte, kann versuchen gegen den Computer noch besser abzuschneiden. Oder aber einen besseren Computergegner programmieren. Danke fürs Lesen sagt Ronald
\(\endgroup\)
Get link to this article Get link to this article  Printable version Printer-friendly version -  Choose language     Kommentare zeigen Comments  
pdfFür diesen Artikel gibt es keine pdf-Datei


Arbeitsgruppe Alexandria Dieser Artikel ist nicht im Verzeichnis der Arbeitsgruppe Alexandria eingetragen.
[Die Arbeitsgruppe Alexandria katalogisiert die Artikel auf dem Matheplaneten]
 


 
Kommentare zum Inhalt bitte im Inhalte-Thread, Kommentare zur Gestaltung
bitte im Form-Thread. Klicke auf die passende Registerkarte.
von matroid am 2023-03-26 20:29
\(\begingroup\)Hi Delastelle, besten Dank für den Artikel aus deiner Serie "Computerspiele der goldenen Jahre". Ich finde, fast schon wäre das ein Spiel, das auch gonz uns hätte vorschlagen können. Das Programm kann also mein Verhalten bewerten und sich danach anpassen? Wie macht es das? Wenn ich dreimal 0 sage, dann schwenkt es um und glaubt, ich sage auch beim vierten Mal wieder 0? Hört sich für mich so an, als wäre ich da immer der Watschenmann. Kann man da eine Strategie entwickeln? Und wenn ja, was lernen wir daraus? Gruß Matroid \(\endgroup\)
von Delastelle am 2023-03-26 23:52
\(\begingroup\)Hallo matroid! Die bisher verwendete Strategie (wie ich sie verstanden habe) ist, dass die letzten beiden Züge direkt in die Bewertung eingehen. Das Programm hat bei meinen Testläufen 1 und 2 das Muster erkannt. (1) nur 0 (oder nur 1) - das Programm nimmt dann das Gegenteil. (2) die Folge 0 1 0 1 0 1 usw. - das Programm nimmt auch hier das Gegenteil. Bessere Strategie kann man sich überlegen. Z.B. mit einer Vergangenheit von 4 oder 5 oder 8 oder ... Zügen arbeiten. Viele Grüße Ronald\(\endgroup\)
von matroid am 2023-03-27 21:44
\(\begingroup\)Die „beste“ Vorgehensweise des Programms wäre aus meiner Sicht zu Lügen. Egal, was vorher „angeblich“ feststeht, es antwortet „Nein“, immer dann wenn mehr als 50% vom Probanden übertroffen würden. Nehmen wir also an, das Programm ist fair, dann bleibt die Frage, was lerne ich? Gruß Matroid PS: Kann man das mit ChatGPT spielen?\(\endgroup\)
von Delastelle am 2023-03-27 23:16
\(\begingroup\)\quoteon(2023-03-27 21:44 - matroid in Beitrag No. 3) Die „beste“ Vorgehensweise des Programms wäre aus meiner Sicht zu Lügen. ... Gruß Matroid \quoteoff Matroid arbeitet bestimmt nebenher als Rechtsanwalt. 😄 Ich habe das Programm mal in Octave übersetzt, um es selbst einsetzen zu können. Das gegenwärtige Programm kann aber auch leicht in eine andere Programmiersprache übersetzt werden. Mit dem Octave-Programm konnte ich selbst die Qualität der bisherigen Umsetzung testen. Vielleicht werde ich es später einmal verbessern. Mal sehen...\(\endgroup\)
von StrgAltEntf am 2023-03-27 23:42
\(\begingroup\)Hallo, dieses Spiel ist m. E. äquivalent zu Schnick-Scnack-Schnuck. (Mit drei Auswahlmöglichkeiten Brunnen, Schere, Papier.) Wenn einer der beiden Spieler einen echten Zufallsgenerator verwendet, bei dem jede der drei Möglichkeiten jeweils unabhängig von der Vergangenheit mit einer W'keit von 1/3 erscheint (bzw. 1/2 bei Flip), liegt die W'keit zu gewinnen bei exakt 1/2. (Bei einem Unentschieden wird so lange wiederholt, bis eine Partei gewinnt.) Nichtsdestoweniger soll es Strategien geben, gegen einen menschlichen Gegner bei wiederholtem Spiel zu gewinnen. \(\endgroup\)
von Delastelle am 2023-03-28 13:52
\(\begingroup\)Hallo StrgAltEntf! Bei "Flip" gibt es kein unentschieden. Es gibt nur 1-1 / 0-0 -> 1 Punkt (Sieg) bzw. 0-1 / 1-0 -> 0 Punkte (Niederlage). Vielleicht ist ein anderes schon bekanntes Spiel noch ähnlicher zu "Flip" als Stein/Schere/Papier. Viele Grüße Ronald \(\endgroup\)
von Wario am 2023-04-12 17:43
\(\begingroup\)Schönes Spiel.\(\endgroup\)
von gonz am 2023-04-12 18:10
\(\begingroup\)Man müsste also versuchen, einen Vorteil daraus zu schlagen, dass das Programm auf ein Muster, das man "andeutet", eingeht. Vielen Dank für den Artikel @Delastelle\(\endgroup\)
von Delastelle am 2023-04-12 21:37
\(\begingroup\)Man könnte versuchen, die Idee von Vergangenheit 2 (2 Züge von 2 Personen) auf 4 Züge zu erhöhen. Dabei muss ich aber an ein Warnung an Schachprogrammierer denken: "Bewertungsfunktionen (für Schach) zu finden ist nicht so schwer, aber die Parameter und die Gewichtung der Bewertungen anzupassen kann ganz schön schwer sein und man kann Jahre daran tüfteln." Je raffinierter die Strategien für Flip sind, um so länger kann man daran tüfteln.\(\endgroup\)
von StrgAltEntf am 2023-04-12 22:59
\(\begingroup\)Hier eine Gewinnstrategie 🙂\(\endgroup\)
von Delastelle am 2023-04-13 21:41
\(\begingroup\)Hallo StrgAltEntf! Ich dachte schon ich kann bei Facebook nichts sehen. Das Video erinnert mich leicht an Kishons "Jüdisches Poker" was Kishon mit Jossele spielt. Das Fingerspiel dürfte wie Flip sein, sofern man nur 1 oder 2 Finger zeigen kann? Viele Grüße Ronald\(\endgroup\)
von matroid am 2023-03-26 20:33
\(\begingroup\)Hi Delastelle, danke für den Artikel. Ich möchte anmerken, dass die Scans aus alten Büchern unscharf sind. Vielleicht kannst du sie noch schärfer hinkriegen? Gruß Matroid\(\endgroup\)
von Delastelle am 2023-03-26 23:48
\(\begingroup\)Hallo matroid! Ich hatte die Bilder abfotografiert und verkleinert. Aber ich besitze auch einen Flachbettscanner. Ich könnte es damit scannen. Viele Grüße Ronald Edit: ich habe jetzt mal 3 neue Bilder. Der größte Bereich der Bilder sollte schärfer sein. Mal sehen wie die Änderung wird...\(\endgroup\)


 
Aufrufzähler 331
 
Aufrufstatistik des Artikels
Insgesamt 1 externer Seitenaufruf zwischen 2023.05 und 2023.05 [Anzeigen]
DomainAnzahlProz
https://google.com1100%100 %



[Top of page]



 
All logos and trademarks in this site are property of their respective owner. The comments are property of their posters, all the rest © 2001-2023 by Matroids Matheplanet
This web site was originally made with PHP-Nuke, a former web portal system written in PHP that seems no longer to be maintained nor supported. PHP-Nuke is Free Software released under the GNU/GPL license.
Ich distanziere mich von rechtswidrigen oder anstößigen Inhalten, die sich trotz aufmerksamer Prüfung hinter hier verwendeten Links verbergen mögen.
Lesen Sie die Nutzungsbedingungen, die Distanzierung, die Datenschutzerklärung und das Impressum.
[Seitenanfang]