Ugrás a tartalomhoz

Conway puzzle

A Wikiszótárból, a nyitott szótárból


Főnév

Conway puzzle (tsz. Conway puzzles)

  1. (informatika) A Conway Puzzle (néha Conway’s Soldiers, vagy Conway’s Army) a híres matematikus, John Horton Conway egyik különleges logikai-matematikai játéka, amely a végesség és a végtelen kapcsolatát vizsgálja egy egyszerű lépésrendszeren keresztül.



🧠 1. Alapötlet

A Conway Puzzle egy játék egy végtelen rácson (mint a sakk- vagy Go-tábla), ahol:

  • A játékos célja: egy adott alapsorból kiindulva elérni minél távolabbi sorokat,
  • de csak bizonyos lépésekkel (ugrásokkal) haladhat.



📐 2. Alapszabályok (Conway’s Soldiers)

  • Képzeld el a 2D rácsot, ahol az x-tengely vízszintes, az y-tengely függőleges.
  • Kezdőállapot: minden mező az sorokban tele van „katonákkal” (korongok, bábuk).
  • Egy katona ugorhat:
    • fölé, jobbra, balra vagy lefeléegy másik katona fölött, mint a dámajátékban.
    • A középső katonát eltávolítjuk (leugrottuk).
  • Cél: eljutni minél magasabb sorba – pl.



❗ 3. A meglepő eredmény

Nem lehet eljutni az ötödik sor föléakármekkora kezdőállomány esetén sem!

  • Ez az első nem triviális példa egy játékra, amely korlátozott, még végtelen forrásból is.
  • A negatív bizonyítás technikai, de mutatja: végtelen készlet ≠ végtelen hatás.



📊 4. Általánosítható Conway-játékok

  • A játék kiterjeszthető 3D-be, vagy más táblaméretekre.
  • Híres másik játék: Game of Life – szintén Conway találmánya.



🧮 5. Matematikai tartalom

  • A játék szorosan kapcsolódik a potenciálfüggvényekhez, amikkel igazolható, hogy az „energia” véges, így nem lehet elérni magasabb szinteket.
  • Ez például indirekt bizonyítás egy véges értékkel, amely nem nőhet elég nagyra.



🧰 6. Implementációs ötlet (Python)

# Egyszerű Conway's Soldier játékmező inicializálás
N = 10
board = [[0 for _ in range(N)] for _ in range(N)]
for i in range(N):
    for j in range(N // 2, N):
        board[i][j] = 1  # kezdő állapot: alul tele

def print_board(board):
    for row in reversed(board):
        print(''.join(['O' if c else '.' for c in row]))
    print()

print_board(board)

Továbblépés: adj hozzá ugráslogikát a szabályokkal, és próbálj meg feljutni soronként.



🧾 7. Összefoglalás

Tulajdonság Részlet
Név Conway’s Soldiers / Puzzle
Feltaláló John Horton Conway
Típus Logikai/matematikai játék
Játéktere Végtelen rács
Lépések Dámajáték-szerű ugrás másik figura felett
Meglepő eredmény Nem lehet eljutni az 5. sor fölé
Bizonyítás eszköze Potenciálfüggvény, matematikai indukció, energiaérv