Hunter

A Rubik-kocka legnehezebb rejtvényének nyomában

Az első világbajnokság óta a kocka kirakásának rekordja 19 másodpercről bő 7 másodpercre csökkent, de nem csak a játékosokat érdekli a bűvös kocka titka.

A világcsúcsot Erik Akkersdijk tartja 7,08 másodperccel. Thibaut Jacquinot egy kézzel, a 17 éves Joey Gouly bekötött szemmel, Zbigniew Zborowski pedig egyetlen nap leforgása alatt 3390 alkalommal rakja ki. A fent elmlítettek mindannyian a Rubik-kocka megszállottjai, az 1980-as évek egyik alapjátékáé, ami azon túl, hogy magyar találmány, minden idők egyik legnépszerűbb játéka.

Az első, 1982-ben megrendezett világbajnokság óta a kocka kirakásának rekordja 19 másodpercről bő 7 másodpercre csökkent, de nem csak a játékosokat érdekli a bűvös kocka titka. A játék a matematikusokat is lenyűgözi, mind a mai napig. Számukra az az első számú kérdés: hány mozdulat kell egy maximálisan összekevert Rubik-kocka kirakásához, avagy mi az a legkisebb n szám amivel biztosak lehetünk abban, hogy egyetlen elrendezésnek sem lesz szüksége n mozdulatnál többre a kirakáshoz?

A válasz koránt sem olyan egyszerű mint az első pillantásra tűnik. Ha veszünk egy kirakott kockát és megforgatjuk 25 véletlenszerű mozdulattal, akkor nyilvánvalóan 25 lépésben ki is lehet rakni, ez azonban nem jelenti azt, hogy ne lehetne ennél kevesebb mozdulattal visszajutni az alapállapothoz. A matematikusok az optimális megoldást keresik, a legrövidebb utat bármely adott elrendezés kirakásához. Bár ez nem tűnik egy világmegváltó kérdésnek, a matematikusok halálosan komolyan kezelik, az n számot sokszor "Isten száma"-ként emlegetve.

Azt hihetnénk, hogy a mai számítógépek teljesítményével néhány óra, legfeljebb nap alatt meg lehetne találni ezt a számot, a probléma azonban sokkal összetettebb, mint azt sokan gondolnák. "Ez a rejtvény, ez a játék annyira egyszerű, olyan kevés darabból áll, mégis több évnyi processzoridőre lenne szükség, hogy meghatározzuk akárcsak a legalapvetőbb tulajdonságait is" - mondta Tomas Rokicki, egy kaliforniai matematikus, az Instantis szoftvercég alapítója. Ennek ellenére az elmúlt évtizedek során a matematikusok apránként egyre lejjebb szorították Isten számának a felső határát, és úgy tűnik Rokicki egyre közelebb kerül egy végleges válaszhoz. Idén április óta háromszor csökkentette a felső határt. Lehet hogy a végeredmény már csak karnyújtásnyira van?

A kocka-őrület 1980-ban kezdődött, hat évvel azután hogy Rubik Ernő szobrász és építész feltalálta a bűvös kockát. Állítólag közel 300 millió kockát adtak el világszerte és egy nem rég lezajlott felmérés a világ legnagyobb játékőrületének nyilvánította, megelőzve az első személyi számítógépek által az otthonokba vitt játékokat is, így maga mögé utasítva a Sinclair ZX Spectrumát, illetve a jó öreg jojót, ami csak a harmadik helyet szerezte meg.


Rubik Ernő klasszikus kockája egy mechanikus fejtörő, ami kis kockákból áll össze egy háromszor háromszor hármas tömbbe. Minden háromszor hármas "szelet" önállóan is forgatható, a kis kockák a hat oldalnak megfelelően hat színt hordoznak - írjuk mindezt azoknak, aki valaki valami csoda folytán még nem találkozott ezzel a játékkal. A kocka kirakásához a szeleteket egészen addig kell forgatni az óra járásának megfelelő vagy ellentétes irányba, amíg minden oldalon azonos színű kis kockák nem sorakoznak.

A matematikusok számára az jelenti a fő problémát, hogy a fenti mechanizmus a kockának megközelítőleg 43 milliárd milliárd (43 × 1018) különböző lehetséges elrendezést eredményez. Ha ennyi Rubik-kockát egymás mellé tennénk, a sor hosszúsága elérné a 8 millió Nap-Föld távolságot, ezenfelül pedig minden egyes elrendezést tizennyolcféleképpen változtathatunk - egy fél vagy egy negyed fordulattal bármely irányba a hat oldal felé. Ezzel olyan komplexitást ért el a feladvány, hogy azt nem lehet "nyers erővel" megoldani, vagyis minden lehetséges elrendezést egyénileg kiszámítani. A számítógépek nélkül azonban lehetetlen eredményt elérni, ezért a feladvány megszállottjai igyekeznek egyre nagyobb számítási erőt összegyűjteni, hogy egyre pontosabb becsléseket kapjanak.

Hogy a számítógépek esélyt kapjanak, a matematikusoknak különböző trükkökkel le kellett egyszerűsíteniük a problémát. Szerencséjükre a Rubik-kocka egy rendkívül szimmetrikus rendszer. Mivel az egyenleteket nem érdekli, melyik oldal van felül, a piros, a kék, a fehér, vagy valamelyik másik színű, a szimmetria nagyságrendekkel csökkenti a problémát, hozzávetőleg két nullát lefaragva a lehetőségek számából, így már "csak" 450 millió milliárd elrendezés vár megoldásra. Ez valamivel jobb, azonban ezek végigszámolásához is körülbelül 3 millió számítógép 3 millió évnyi folyamatos munkájára lenne szükség, állítja Rokicki.

Hogy csinálják az úgynevezett gyorsasági kockaforgatók, akik rekord sebességekkel rakják ki az eléjük tett össze-vissza forgatott kockákat, hogy másodpercek alatt megoldják az adott problémát? Leyan Lo a kaliforniai Stanford Egyetem hallgatója, aki maga is jeleskedik a Rubik-kocka kirakásában, a legáltalánosabb gyorsasági módszert alkalmazza, amit Jessica Fridrich talált ki még 1982-ben. Az akkoriban a New York Állami Egyetemen tanuló Fridrich egy "köztes megállón" - egy a kirakott kockához vezető átmeneti elrendezésen alapuló technikát vázolt fel. Az általa választott elrendezés egy "kereszt" az egyik oldalon - ami mondjuk egy piros középponti kis kockából áll, amit négy másik piros társa vesz körül. Fridrich rájött, hogy ezt az elrendezést bármelyik véletlenszerű kockaállásból el tudja érni körülbelül hét mozdulattal.

Amint megvan a kereszt a kockaforgató a sarkokra kezd koncentrálni, majd a középső rétegre. Ezekhez külön-külön forgatási kombinációkat, algoritmusokat használnak, melyek minden egyes lehetséges elrendezésre alkalmazhatók, amivel szembe kerülhetnek a kirakás bármely szakaszában. A probléma ilyen módon történő lebontásával Fridrich megalkotott egy memorizálható algoritmus sorozatot. Ez a módszer gyorsasági szempontból eredményes ugyan, azonban messze nem a legkevesebb lépéssel jut el a megoldáshoz. Lo szerint a Fridrich módszerrel átlagosan 56 mozdulattal rakható ki a kocka.

Ez matematikai léptékekkel nézve hatalmas szám, mégis, a matematikusok hasonló stratégiát követtek Isten számának megtalálásához. Az elv ugyanúgy egy megfelelő köztes elrendezés megtalálását, majd annak optimális megoldását írja elő. A matematikusok azonban nem egy köztes elrendezést használnak, hanem a hatékonyság érdekében több százzal vagy millióval dolgoznak egyetlen számításban. Ezzel máris eljutottunk a matematika egy ágához, a csoportelmélethez, ami a szimmetriát mutató rendszerekkel foglalkozik. Ezt használják például a szimmetrikus molekulák tulajdonságainak kiszámításához, és májusban a modern csoport elmélet két alapítója elnyerte az Abel-díjat, a matematika egyik legtekintélyesebb elismerését.

A csoport elmélet eszközei leegyszerűsíthetik a számításokat több száz vagy millió elrendezés alcsoportjainak meghatározásával, melyek közös matematikai tulajdonságokkal rendelkeznek. 1992-ben Herbert Kociemba, német matematikus egy igen ravasz módszerrel állt elő a kocka 43 milliárd milliárd lehetőségének lecsökkentésére. Ahelyett, hogy adott elrendezésekre alapozta volna, felvázolt egy bizonyos alcsoportot, ami a kocka 18 lehetséges mozgatásából 10 mozgatás sorozatán alapult. Ennek a 10 mozdulatnak a kombinációjával rájött, hogy elérhet 20 milliárd különböző konfigurációt egy kirakott kockából.

Ez azért számít fontos lépcsőfoknak, mert az így kapott alcsoport már elég kicsi ahhoz, hogy beférjen egy hétköznapi asztali számítógép memóriájába. A célra Kociemba megalkotott egy programot is, a Cube Explorert, amit egy amerikai matematikus, bizonyos Michael Reid 1995-ben továbbfejlesztett, és alkalmazásával 30-ra becsülte Isten számát. A kritikusok szerint ezen el lehet ugyan indulni, a módszer mégsem tökéletes, mivel ha összerakjuk a legrövidebb utat A-ból B-be, illetve a legrövidebb utat B-ből C-be, az koránt sem biztos hogy a legrövidebb utat eredményezi A-ból C-be. Az elméleti tudósok egyébként már 1982-ben a 20-at tartották Isten számának, a bizonyításhoz azonban számítógépek kellenek, a nagyságrendek ismeretében szuperszámítógépek.

1995 és 2005 között a matematikusok különböző trükkökkel farigcsálták a problémát, 2006-ban Isten számának a felső határa már csak 27 volt, majd jött 2007. Dan Kunkle és Gene Cooperman egy új módszert vázolt fel. Meg kell alkotni 1,5 billió csoportot, úgynevezett alsorozatokat, melyek mindegyike körülbelül 660 000 konfigurációt foglal magába, ami mindössze hat mozdulattal, egy fél fordulattal minden oldal felé elérhető. Figyelembe véve a szimmetriákat 15 000 egyedi elrendezést azonosítottak be minden alsorozatban, majd bebizonyították, hogy ezek mindegyike megoldható legfeljebb 13 mozdulattal. Végül előálltak egy módszerrel, ami az alsorozatok összes többi elrendezését a 15 000 egyikévé transzformálja, így ha egyet megoldunk a 15 000-ből, azzal az összeset megoldottuk.

Ezekhez a számításokhoz hatalmas számítási teljesítményre volt szükség, ezért Kunkle és Cooperman megközelítőleg 7 terabájt számítógépes memóriát gyűjtött össze, hogy az összes elrendezést nyomon követhessék. 8000 óra feldolgozási idő után eggyel lejjebb szorították a felső határt, a keresett szám már csak 26 volt. Sajnos a kör tovább szűkítéséhez nagyságrendekkel több memóriára lett volna szükség, tehát valami újat kellett kitalálni.

Ekkor került be a képbe Rokicki, aki immár 15 éve kutatta Isten számát. Az utóbbi években a linzi Johannes Kepler Egyetem matematikusával, Silviu Raduval szinte teljes egészében átdolgozták a Cube Explorert. A módosított program többször is végigszámol minden összekevert kocka elrendezést, minden alkalommal kiszámítva egy lehetséges útvonalat és csak a legrövidebbeket tartja meg. Rokicki algoritmusa 25 mozdulatra redukálta a felső határt, ekkor azonban ő is kifogyott a számítási teljesítményből. Szerencséjére John Welborn felfigyelt a Slashdoton közölt eredményére és általa a Sony Pictures Imageworks a segítségére sietett. A Pókember 3 és a Legenda vagyok című mozik digitális látványeffektjeit előállító cég felajánlotta több száz nagy teljesítményű számítógépének szabad kapacitását. Áprilisra Rokicki és Welborn már 24-nél tartottak, majd két héttel később még eggyel lejjebb vitték a felső határt, június elején pedig elérték a 22-t.


Ez a szám egészen addig fog fenn állni, míg Rokicki vagy valamelyik vetélytársa újabb huszárvágást nem talál az algoritmusokban és bebizonyítja hogy Isten száma valóban 20, ez ugyanis már bizonyítottan az alsó határ. 2006-ban Rokicki több elrendezést is talált, amit 20 lépésnél kevesebből nem lehet kirakni.

A további számításokhoz már kevés lesz a Sony ereje, így rájuk már aligha számíthat a kutató. Mi lenne, ha a problémát a Blue gene/L-nek, a világ egyik leggyorsabb szuperszámítógépének dobnánk fel, tette fel a kérdést Jason Palmer, a New Scientist londoni munkatársa. "Körülbelül 900 órára, vagyis 38 napra lenne szüksége"- becsülte meg Rokicki, azt azonban már nem merte megsaccolni mennyi időbe telne elintézni, hogy a kaliforniai Lawrence Livermore Nemzeti Laboratórium atomrobbanások szimulálására és a klímaváltozás kutatására használt szuperszámítógépe az ő problémájával foglalkozzon.

Így nem marad más, mint a csoport elmélet kiskapuit kihasználva tovább karcsúsítani a feldolgozandó adatokon. A rendelkezésre álló bizonyítékok mind a 20-at hozzák ki befutóként, több mint 4 millió milliárd elrendezés megoldása legalábbis ezt mutatja, a matematika világában ez azonban nem elégséges. "Valamit tudni és valamit sejteni az óriási különbség, a matematika már csak ilyen" - szögezte le Rokicki.

Hozzászólások

A témához csak regisztrált és bejelentkezett látogatók szólhatnak hozzá!
Bejelentkezéshez klikk ide
(Regisztráció a fórum nyitóoldalán)
  • totti96 #119
    Így 2011-ben is visszaolvasva igen érdekes cikk. köszönjünk! Rubik kocka, Rubik kockák, Rubik kocka kirakása
  • kisdead99 #118
    A trollinál van fent két madzag, a villamosnál csak egy :P
  • totya4 #117
    Inkább az a kár hogy semmi értelmeset nem írtál. Számítógépekről van fogalmam hogy működnek, és lehet hogy a villamosról is többet tudok mint te. Fen van két madzag, ott kapja a feszt, az meg végülis hajt egy vagy több motort, a motor meg hogy hogy működik azt ne kelljen már elmesélnem.
    GPS-t nem használok, de úgy működik hogy műholdas adatok alapján tudja azt hogy hol vagy méghozzá szerintem méteres pontossággal legalább, a betáplált adatok alapján pedig megmutatja merre kéne menned egy adott cél eléréséhez. Ha az adatok nem jók, vagy mondjuk van egy fel nem dolgozott(!) útlezárás/tüntetés, borulhat az egész útiterv.
  • pTk #116
    Oh, jeah, sikerült 10 éves hirre valaszolni, sry :)
    csak a linket kaptam..
  • pTk #115
    Mit gondolsz a számítógéped mi alapján működik?
    1930as években nem fejlődött a technika?
    Második vh után nem fejlődött a technika? 20 éve nem fejlődött? Pedig akkor is szarban volt a gazdaság. Most azon a számítógépen nyomod a hülyeségeidet aminek az alapjait a 2 vh között rakták le (nem tudom hallottál-e a 33as gazdasági válságról).
    Gondolkodtál azon, hogy miért megy a villamos?
    Szerintem azon sem gondolkodtál, hogy a gps a kocsidban hogy működik, és miért pont az a legrövidebb út a tescoba...
  • chriskardos #114
    Tényleg nincs? Hallod te valami nagyon okos ember lehetsz....
  • chriskardos #113
    Nem tudom, hogy ekkora emberek hogy nem jönnek rá a megoldásra....Szerintem bárki, aki egy kicsit is gondolkodik, rájön, hogy a megoldás: 42.
  • kukacos #112
    Látsz itt a fenti cikkben akár csak egy darab magyar nevet is? Egyébként a magyar matematikai iskola világhírű, és a matek rohadt kevésbe kerül az összes többi tudományághoz képest.
  • totya4 #111
    Senki sem vitatja te okostojás hogy a fej használata gondolkodásra előbb-utóbb eredményt hoz, de gazdasági helyzettől függően kutasson az akinek futja rá. Nem olyan bonyolult ez hogy pár nap alatt ne fognád fel.
  • kukacos #110
    Hallottál már hosszú távú befektetésekről? A tudomány is az, a matek meg főleg, megtérülési ideje száz években mérhető, de a végén busás hasznot hoz. Neked most persze magas, hogy a Rubik-kockából hogy lesz a végén jobb számítógép és gyógyszer, de ez csak a tudatlanságod bizonyítja. Fogadd el szépen, hogy nálad okosabb emberek már tapasztalatból tudják, hogy megéri ilyesmire költeni, és menj vissza kapálni. Szerencsére nem a te dolgod eldönteni - a te dolgod, hogy felfogd, hogy nem értesz hozzá.

    De tudod mit? Ha mindenképp harcolni akarsz a pénzszórás ellen, tüntess a világbékéért - az összes tudományos alapkutatásra kiadott pénz töredéke a fegyverekre költött összegnek. Egyetlen atomtengeralattjáróból be lehetne oltani Afrika összes gyerekét fertőző betegségek ellen, kettő már kiadja Magyarország költségvetési hiányát.