Hunter

20 mozdulattal kirakható bármely Rubik kocka

15 évig tartott mire eljutottak erre a pontra, most már azonban bizonyos, hogy akárhogyan is keverjenek össze egy Rubik-kockát, azt legfeljebb 20 mozdulattal ki lehet rakni - és még a matricákat sem kell leszedni.

Az 1980-as évek legnagyobb sikerű fejtörőjének számító logikai játék titka már az 1979-es világpremier óta foglalkoztatja a kutatókat, akik az összesen 43 252 003 274 489 856 000-féle kezdő pozícióból próbálták megtalálni az "isteni számot", azaz, hogy legfeljebb hány lépés kell a kocka kirakásához. Az eredményt közzétevő csapat a Google számítási teljesítményét és jópár matematikai csavart ötvözve végigellenőrizte az összes, 43 kvintrillió lehetséges összekevert pozíciót, amit a kocka fel tud venni, megfejtve ezzel a híres kocka legnagyobb matematikai rejtvényét.

A kutatók 1995-ig még úgy vélték, hogy legfeljebb 18 lépés szükséges a kocka optimális kirakásához, azonban Michael Reid matematikus felfedezett egy olyan kombinációt, amelyet 20 lépésnél kevesebb forgatással nem lehet megoldani. A végleges válaszra csak a számítástechnika fejlődése adhatta meg a választ, bár a jelenlegi szuperszámítógépek teljesítménye sem elegendő ahhoz, hogy minden lehetséges kombinációt végigpróbáljanak.

Az elsődleges áttörést egy, a csoportelmélet elnevezésű matematikai ágból vett technikának köszönhették, magyarázta Tomas Rokicki, kaliforniai programozó, aki az elmúlt 15 évet annak a legkisebb számnak a keresésével töltötte, amivel a kocka bármelyik elrendezése kirakható. Az "Isten számaként" is emlegetett értékről 2008-ban számoltunk be legutóbb, amikor Rokicki 22-re csökkentette, azonban már akkor is egyértelmű volt, hogy ez még nem a legkisebb szám.

A csoportelméletből származtatott technikával először felosztották az összes lehetséges kezdő konfigurációt 2,2 milliárd csoportra, melyek mindegyike 19,5 milliárd elrendezést foglalt magába, annak megfelelően hogyan reagálnak ezek a konfigurációk a kocka tekergetésének 10 lehetséges mozdulatára. A kocka különböző szimmetriáit kihasználva a projekten dolgozó matematikusoknak sikerült a csoportok számát 56 millióra csökkenteniük, mondván például, ha egy összekevert kockát egyszerűen az oldalára, vagy fejjel lefelé fordítunk, azzal nem lesz nehezebb a kirakása, tehát ezeket az egyenértékű pozíciókat máris el lehetett vetni. Ettől azonban még rengeteg ellenőrizendő induló konfiguráció maradt, ezért a csapat kidolgozott egy algoritmust a folyamat felgyorsítására.

A korábbi módszerekkel másodpercenként körülbelül 4000 kockát tudtak végigpróbálni, az algoritmus megvizsgált egy sorozat induló mozdulatot, majd meghatározta, hogy az eredményként kapott pozíció közelebb van-e a megoldáshoz. Ha nem, akkor az algoritmus elvetette ezeket a lépéseket és újra indult. Rocicki felismerte, hogy ezek a zsákutcába torkolló lépések valójában más kiindulási pozíciók megoldásai, ami elvezette egy algoritmushoz, mellyel egy másodperc alatt egymilliárd kockát tudott kipróbálni.

Ez a metódus olyan, mintha egy barátunkat meglátogatnánk egy számunkra ismeretlen városban, megkapjuk tőle az útirányt, hogy mikor forduljunk jobbra vagy balra, viszont azt nem árulta el, hogy mi is valójában a kiindulási pontunk. Ha egy véletlenszerű pontról kiindulva követjük az iránymutatást, igen csekély esélyünk lesz eljutni a célállomáshoz, ha azonban sikerül összeilleszteni a megfelelő kiinduló ponttal, akkor biztosan odaérünk.

A csapat algoritmusa a kissé leegyszerűsített példánkhoz hasonlóan, rendkívüli sebességgel párosítja a mozdulatokat a megfelelő kiinduló ponttal, így egy 19,5 milliárdos sorozatot 20 másodperc alatt meg tudnak oldani, ami döbbenetes sebességnek tűnik, de még így is 35 évig tartana egy hagyományos számítógép számára a teljes feladat megoldása, ezért a csapat egy újabb huszárvágást eszközölt a megoldás érdekében. John Dethridge, a Google egyik mérnöke a számítógépes birodalom szabad számítási kapacitásának felhasználásával néhány hét alatt megoldotta a problémát.

Azt már évek óta tudták, hogy a Rubik-kocka egyes konfigurációi csupán 20 forgatást igényelnek - sok matematikus sejtette is, hogy egyik elrendezésnek sincs szüksége ennél többre, a 15 éves kitartó kutatás azonban megerősítette feltevésüket. "Az ilyen kutatások példázzák, hogyan használható a tiszta matematika a nagy számítási kapacitást igénylő problémák leegyszerűsítésére" - tette hozzá Mark Kambites, a Manchester Egyetem egyik matematikusa, aki nem vett részt Rocki csapatának munkájában.

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)
  • Kara kán #34
    Nagy tróger vagy te. :-D
    Amúgy falra hánytál borsót.
  • Tiro2 #33
    Nem!
    Chuck Norris nem rak ki rubinkockát. A rubinkocka rakja ki magást chuck-nak. :D
  • sKeezo #32
    chuck norris 19ből is kirakja :c
  • Looooser #31
    algoritmuss????????????????????????????????????????????
  • trogi #30
    Kedves szerző!

    Sajnálattal tájékoztatlak, hogy kevered a számok "elnevezését". A cikk elején még rövid (angolszász-) skálát használsz, utána már hosszú (normális-) skálát.
    Döntsd el, melyiket akarod használni és kérlek jelöld is legközelebb.

    Addig is segítségül:
    43 252 003 274 489 856 000 (hosszúban 43 trillió, rövidben kvintrillió)
    2,2 illetve 19,5 milliárd (hosszúban milliárd, rövidben billió)

    Segítség:
    Magyarországon a hosszú skála terjedt el, ezt használják a skálát ismerők.
    Aki jól beszél/ír/ért angolul, de kutyaütő skálából az kapásból billiónak fordítja a billiont, pedig az csak milliárd. Ezért sajnos egyes cikkeknél megbízhatatlanok a számok, majdhogynem ilyenkor a fordítónak értenie kellene skálául is.

    Utóbbi lehet, hogy zavarosnak tűnik számodra, kérlek nézd el nekem & egyúttal nézd meg a vikipédián a hosszú és rövid skála közötti különbséget!

    Bízva abban, hogy segíthettem maradok továbbra is üdvözlettel:
    Tróger Szilárd
  • Julius Caesar #29
    OFF:
    Aláírásodban miért van ott a Kuat drive Yards emblémája? :D

    ON:
    UnnameD: a 4D-s kockának nem tesszerakt a neve? (itt)
  • djhambi #28
    idebudanemoda arra gondolt, hogy a fehér játékos lépéselőnyből indul, és ha nem hibázik, akkor a fekete játékosnak mindig ellenlépéseket kell tennie, de ha a fekete játékos sem hibázik, akkor a fehér játékos megőrzi lépéselőnyét. Mennyi az a minimális lépésszám, amivel a fehér játékos nyer, ha egyikük sem hibázik? (Egy nem minimális megoldás: elkezdenek bábukat cserélgetni, és a fehérnél marad egy királynő, amivel és a királlyal sarokba mattolja a fekete királyt.) Persze én azon gondolkozom, hogy a tábla nem-e olyan szerkezetű, hogy egy idő után biztosan elveszti a fehér a lépéselőnyét, és a fekete kerül előnybe? Mert akkor az sem biztos, hogy van a fehér számára minimális biztosan nyerő lépésszám.
  • Looooser #27
    algoritmus??????
  • polarka #26
    Tudod, attól még mert egy témával többen foglalkoznak nem biztos, h hamarabb is lesz eredmény.
  • JASON13 #25
    "Tomas Rokicki, kaliforniai programozó, aki az elmúlt 15 évet annak a legkisebb számnak a keresésével töltötte, amivel a kocka bármelyik elrendezése kirakható."
    Gratulálok mr. Rokickinek, Hasznos 15 év volt. Foglalkozhatott volna valami hasznosabbal is, rák ellenszere, AIDS, stb.

    Az egész Rubik kirakó versenyeknek semmi értelme... Neten van is olyan séma amivel bármilyen kombinációból kilehet jönni ergo a versenyeken is csak ezeket a betanult sémákat alkalmazzák minél gyorsabban, tehát nem is a logikát hanem csak a betanult mozdulatokat használják. De az utcán mindig látni kis képmutató gyerekeket akik játsszák a zsenit meg az eszüket a Rubik pörgetésével.