Xanoyning magnit minorasi - Magnetic Tower of Hanoi

Xanoyning magnit minorasi (MToH) jumboq

The Xanoyning magnit minorasi (MToH) jumboq - klassikaning o'zgarishi Xanoy minorasi jumboq (ToH), bu erda har bir diskning ikkita alohida tomoni bor, masalan, "qizil" va "ko'k" ranglari har xil. MToH jumboq qoidalari asl jumboq qoidalari bilan bir xil bo'lib, har bir disk harakatlanayotganda aylantirilishi va agar tegib turgan tomonlari bir xil rangga ega bo'lsa, ikkita disk bir-biriga joylashtirilmasligi mumkin bo'lgan qo'shimcha cheklovlar mavjud. . Har bir diskda Shimoliy va Janubiy qutblar mavjud, shunga o'xshash qutblar bir-birini qaytaradi va qarama-qarshi qutblar bir-birini o'ziga tortadi.Har bir disk ichidagi magnitlar noqonuniy harakatlarning oldini oladi.[1]

Magnetizmning tasviri: Disklar bir-biriga magnitlangan tarzda ta'sir qiladi, agar tegadigan tomonlari bir xil rangga ega bo'lsa

Klassik ToH jumboqining ajoyib xususiyatlaridan biri uning 2-asos bilan bog'liqligidir: jumboqni echish uchun zarur bo'lgan umumiy harakatlarning minimal soni 2 ga tengn - 1 (qaerda n bu disklar soni), disklar tomonidan amalga oshiriladigan harakatlarning minimal soni k 2.k − 1 (disklar pastdan yuqoriga qarab raqamlangan k = 1 eng katta disk bo'lib, va k = n eng kichik bo'lish). Quyida ko'rsatilgandek, ToH jumbog'ining asl nusxasi 2-asos bilan bog'liq bo'lgani kabi, MToH ham 3-asos bilan bog'liq, garchi bu murakkabroq bo'lsa ham.[2]

Kelib chiqishi

MToH ning ba'zi bir o'zgarishlariga matematik jihatdan teng keladigan jumboqlar ma'lum vaqtdan beri ma'lum bo'lgan. Masalan, biriga mos keladigan jumboq rangli o'zgarishlar MToH ning ichida paydo bo'ladi Beton matematika.[3] Ushbu jumboqdagi harakatlarga faqat ma'lum postlar orasida ruxsat beriladi, bu yozuvlarga doimiy ranglarni berishga teng keladi (masalan, agar ikkita post ularga bir xil doimiy rangga ega bo'lsa, unda ikkita post o'rtasida to'g'ridan-to'g'ri harakatlarga yo'l qo'yilmaydi).

Bepul (rangli bo'lmagan) MToH birinchi bo'lib Internetda paydo bo'ldi[4] matematik Fred Lunnon tomonidan asl Xanoy minorasi jumboqining turli xil o'zgarishlarini batafsil ko'rib chiqish doirasida 2000 yilda (garchi "Domino Xanoy" nomi ostida bo'lsa ham).

MToH 1984 yil yozida fizik Uri Levi tomonidan mustaqil ravishda ixtiro qilingan bo'lib, u ham bu nomni va magnetizmga o'xshashlikni yaratdi.[tushuntirish kerak ][5] Keyinchalik doktor Levi bir qator hujjatlarni nashr etdi [1][6][7] MToHning matematik jihatlari bilan shug'ullanish.

Jumboq tavsifi

Jumboqning boshlang'ich pozitsiyasi

MToH jumboq manba (S), maqsad (D) va oraliq (I) deb nomlangan uchta postdan va to'plamdan iborat. n diskning har ikki tomoni qizil yoki ko'k ranglari turlicha bo'lgan har xil o'lchamdagi disklar. Jumboqning boshida disklar hajmi kattalashgan tartibda S ustuniga joylashtirilgan (ya'ni eng katta disk pastki qismida joylashgan) va barcha disklarning qizil tomoni yuqoriga qarab turishi kerak. Jumboqning maqsadi (uning "asosiy" versiyasida) butun stekni, birma-bir diskni D postiga ko'chirish, tartibni eng kichigidan eng kichigigacha ushlab turish, ammo Moviy tomonlari yuqoriga qarab.

Jumboqning yakuniy pozitsiyasi

Disklar harakatini tartibga soluvchi qoidalar quyidagicha:

  • Kattaroq diskni kichikroq disk ustiga qo'yib bo'lmaydi (asl ToHda bo'lgani kabi)
  • Disk ko'chirilganda, u aylantiriladi, ya'ni yuqoriga qarab turgan rang pastga qarab turadi
  • Bir xil rangdagi har xil disklarning ikki tomoni bir-biriga tegmasligi mumkin (masalan, Moviy tomoni pastga qaragan diskni ko'k tomoni yuqoriga qaragan disk ustiga qo'yib bo'lmaydi).

Uchun jumboq echimi n = 2 va n = 3

MToH qoidalarini aks ettirish va umumiy echim yo'lini ko'rsatish uchun quyidagi misollar orqali ishlash foydalidir. n = 2 va n = 3. uchun n =, Qo'shimchadagi rasmda ko'rsatilgandek, to'rtta qadam kerak n = Original ToH ning 2 ta holati. Qo'shimcha qadam talab qilinadi, chunki ikkinchi bosqichdan so'ng kichik diskni I postdan to'g'ridan-to'g'ri D postiga ko'chirish mumkin emas, chunki bu uning Moviy tomoni pastga qarab turishini anglatadi. Shunday qilib, kichik disk rangini aylantirish uchun qo'shimcha qadam talab qilinadi, shunda uni D ustuniga ko'k tomonini yuqoriga qaratib qo'yish mumkin.

Ning echimi n = 2 jumboq

Uchun n = 3 holat, echim quyidagi bosqichlarni o'z ichiga oladi:

  • Disklarni 1 dan 3 gacha kattadan kichigacha raqamlash, birinchi navbatda 2 va 3 disklarni S postdan I postga o'tkazadi (to'rtta harakat)

Ushbu birinchi bosqich o'xshashdir n = Yuqorida tavsiflangan 2 ta jumboq, u to'rtta harakatni amalga oshiradi, bu erda D va I postlari almashtiriladi. Biroq, u bilan bir xil emas n = S postida katta disk borligi sababli qizil rangga "rang beradigan" 2 ta jumboq. Bu shuni anglatadiki, diskni faqat qizil tomoni yuqoriga qaragan holda ushbu postga qo'yish mumkin.

  • 1-diskni S-dan D-ga ko'chirish (bitta harakat)

Ushbu bosqichda yana bir marta foydalanishni istash mumkin n = 2 ta jumboq va 2 ta va 3-disklarni I-dan D-ga 4 ta harakatga o'tkazishga harakat qiling. Biroq, bu erda yana g'amxo'rlik kerak. D-da 1-disk borligi sababli, D endi "rangli" Moviy rangga ega, ya'ni boshqa disk unga ko'k tomoni yuqoriga qaragan taqdirdagina joylashtirilishi mumkin. Bundan tashqari, bilan n = 2 jumboq disklarning qizil tomoni boshlang'ich pozitsiyasida yuqoriga qaragan bo'lsa, bu erda ularning ko'k tomonlari yuqoriga qaragan. Shunday qilib, ushbu oraliq konfiguratsiya n = 2 MToH. Buning o'rniga biz quyidagicha harakat qilamiz:

  • S-orqali 3-diskni I-dan D-ga ko'chiring (2 ta harakat)
  • 2-diskni I-dan S-ga ko'chirish (1 ta harakat)
  • 3-diskni D-dan I-ga ko'chirish (1 ta harakat)
  • 2-diskni S-dan D-ga ko'chirish (1 ta harakat)
  • 3-diskni I-dan D-ga ko'chirish (1 ta harakat)

Shunday qilib, echim uchun umuman 11 ta qadam kerak. Yuqorida ko'rsatilganidek, dan foydalanishga harakat qilish tabiiydir n = Ning qismlarini echish uchun 2 ta eritma n = A-da 3 ta jumboq rekursiv odatda klassik ToH jumboqini echishda ishlatiladigan usul. Biroq, klassik ToHdan farqli o'laroq, bu erda n = 2 ta eritmani yozuvlar va disklarning ranglanishi tufayli ko'r-ko'rona qo'llash mumkin emas. Ushbu nuqta, uchun yanada umumiy echimga erishish mumkinligini ko'rsatadi n-disk MToH jumboq, postlar oldindan ranglangan (ko'k yoki qizil) jumboqning variantlarini ko'rib chiqish kerak. Ushbu variantlarni ko'rib chiqish orqali MToH jumboq uchun to'liq rekursiv munosabatlarni rivojlantirish va shu bilan umumiy echimni topish mumkin.

MToH jumboqining rang-barang variantlari

MToH "singil jumboqlari" ning rang-barang variantlari.

MToH jumboqining yuqoridagi tavsifida disklarning o'zi rangli bo'lsa, postlar neytral deb taxmin qilinadi. Bu shuni anglatadiki, bo'sh yozuv diskni qizil yoki ko'k tomoni yuqoriga qaratib qabul qilishi mumkin. MToH ning ushbu asosiy versiyasi "bepul" MToH deb nomlanadi.

MToH jumboqining boshqa variantlari ham bo'lishi mumkin, ular yordamida rasmlar ko'rsatilgandek postlarning o'zi ranglanadi. Agar post oldindan qizil / ko'k rangda bo'lsa, u holda ushbu qizil rangli postga faqat qizil / ko'k tomoni yuqoriga qaragan disklar qo'yilishi mumkin. MToH ning turli xil o'zgarishlari 3 ta harfli "SID" yorlig'i yordamida nomlanishi mumkin, bu erda S, ID mos ravishda Manba, Intermediate va Destination postlarining rangiga ishora qiladi va R (Qizil), B (Moviy) qiymatlarini qabul qilishi mumkin. yoki N (Neytral - rang yo'q). Shunday qilib, "NNN" jumboq bepul MToHga ishora qiladi, "RBB" jumboq esa S post oldindan qizil rangga, I va D postlar oldindan ko'k rangga bo'yalgan o'zgarishni anglatadi.

MToHning o'zgarishi o'z-o'zidan jumboq bo'lsa-da, ular bepul MToHni hal qilishda ham muhim rol o'ynaydi. Yuqorida ko'rib chiqilgandek, bepul MToH ning oraliq holatlarini ranglarning o'zgarishi deb hisoblash mumkin, chunki unda allaqachon disk bo'lgan post diskning mos rangini oladi (ya'ni ustunga faqat bir xil rang yuqoriga qaragan disk joylashtirilishi mumkin) ).

Masalan, bepul n = Yuqorida tavsiflangan 3 ta MToH jumboq, 5 ta harakatdan so'ng katta disk D postida joylashgan oraliq holatga erishiladi. Shu vaqtdan boshlab D post ko'k rangga ega deb hisoblanadi va jumboq "NNB" jumboqiga teng bo'ladi. Agar echim ma'lum bo'lsa n = 2 "NNB" jumboq, uni darhol bajarish uchun qo'llash mumkin n = 3 bepul jumboq.

Simmetriya munosabatlari

Turli xil rangdagi o'zgarishlarning hammasi ham boshqacha jumboq emas, chunki simmetriya ba'zi oldindan tayyorlangan jumboqlarning boshqalari bilan bir xilligini anglatadi. Masalan, agar biz RBB jumboqini orqaga qarab hal qilsak, bu RRB jumboqini oldinga yo'nalish bo'yicha echish bilan bir xil (eslatma: jumboq boshida barcha disklar qoidasini bajarish uchun ko'k va qizil ranglar almashtirilgan. manba postida qizil tomoni yuqoriga qarab turishi kerak). Shunday qilib, RBB va RRB jumboqlari a vaqtni qaytarish simmetriyasi juftlik. Bu shuni anglatadiki, ular talab qilinadigan optimal harakatlar soniga nisbatan bir xil xususiyatlarga ega, garchi har bir jumboq uni hal qilish uchun alohida algoritmni talab qiladi. Darhaqiqat, vaqtni qaytarish simmetriyasi juftligini tashkil etuvchi jumboqlar bir-birining o'zaro bog'liqligi, ya'ni birini echish algoritmi boshqasining echish algoritmidan foydalanishi ma'nosida ko'rsatiladi.

Yechimlar

Klassik ToH jumboqida bo'lgani kabi, MToHni hal qilishning eng sodda va eng ibratli usullaridan biri bu foydalanishdir rekursiv algoritmlar. Bunday algoritmlar jumboqning tanlangan variantlari uchun quyida keltirilgan va echimlarning maqbulligi isbotlangan. Ushbu algoritmlardan foydalanib, jumboqni echish uchun zarur bo'lgan umumiy harakatlarning soni va echim davomida har bir diskning harakatlari soni bo'yicha rekursiv munosabatlar va keyinchalik yopiq shaklli ifodalar olinishi mumkin.

Rekursiv aloqalarni shuningdek a yordamida taqdim etish va tahlil qilish mumkin Markov turi tahlili, bu ham muhokama qilinadi.

Rekursiv echish algoritmlari va ularning maqbulligini isbotlash

Dastlab RBB va RRB jumboqlarining vaqtni qaytarish simmetriyasi juftligini ko'rib chiqish ibratlidir. Ma'lum bo'lishicha, bu ikkita jumboqni echish eng sodda, chunki ularning rekursiv algoritmlari boshqalarning boshqasiga bog'liq bo'lib, boshqotirmalarga bog'liq emas.

Aksincha, yarim rangli o'zgarishlarga (bir yoki bir nechta post neytral bo'lgan) va to'liq erkin o'zgarishga oid echimlar yanada murakkab rekursiya munosabatlari bilan hal qilinadi. RBB (n) va RRB (n) jumboqlari quyidagi juftlik yordamida echilishi mumkin. optimal algoritmlar:

RBB (n) uchun:

  • Harakatlantiring n - RBB yordamida S dan I gacha bo'lgan 1 ta eng kichik disklar (n - 1) algoritm
  • 1-diskni S-dan D-ga ko'chiring
  • Ko'chirish n - RRB yordamida I dan S gacha bo'lgan 1 ta disk (n - 1) algoritm
  • Ko'chirish n - RBB yordamida S dan D gacha bo'lgan 1 ta disk (n - 1) algoritm

RRB (n) uchun:

  • Harakatlantiring n - RRB yordamida S dan D gacha bo'lgan 1 ta eng kichik disklar (n - 1) algoritm
  • Ko'chirish n - RBB yordamida D dan I gacha 1 ta disk (n - 1) algoritm
  • 1-diskni S-dan D-ga ko'chiring
  • Ko'chirish n - RRB yordamida I dan D gacha bo'lgan 1 ta disk (n - 1) algoritm

Ushbu juft algoritmlarning maqbulligi orqali isbotlangan induksiya, quyidagicha (ushbu dalil algoritmlarning batafsil izohini ham hosil qiladi):

Uchun n = 1 algoritmlarning maqbul ekanligi aniq, chunki bitta harakat bor. Keyinchalik, algoritmlar maqbul deb taxmin qilinadi n - 1 va ushbu taxmindan foydalanib, ular uchun maqbul ekanligi ko'rsatilgann.

RBB bilan boshlang (n) algoritmi, aniqrog'i, 1-disk D postiga joylashtirilishidan oldin u birinchi navbatda S postida (bu qizil rangli yagona post), qolgan disklar esa I postida bo'lishi kerak. Shunday qilib, yechim ushbu oraliq holatdan o'tishi kerak va taxminlarga ko'ra ushbu oraliq holatga erishishning eng maqbul usuli RBB (n - 1) algoritm D va I yozuvlari bilan almashtirildi.

Keyinchalik, disk 1 S dan D ga ko'chirilishi kerak, chunki u kamida bir marta ko'chirilishi kerak.

Keyinchalik, ushbu holatdan yakuniy echimga faqat hamma qaerda bo'lgan oraliq holat orqali erishish mumkinligi ko'rsatilgan n - 1 ta disk S postida. D-postga 2-disk joylashtirilishi uchun avval u S-postada (bitta qizil post), ikkinchisi esa n - 2 ta disk men postda bo'lishi kerak. Biroq, 3-disk I postiga joylashtirilishidan oldin, avval disk 2-ning ustidagi S postida bo'lishi kerak. Ushbu mulohaza barcha disklar orqali o'tishi mumkin, ularning har biri avval S postida bo'lishi kerak. Shunday qilib, men yechim hamma joyda oraliq holatdan o'tishi kerakligini ko'rsataman n - 1 ta disk S postida.

Ushbu oraliq holatga erishish uchun o'tkaziladigan optimal algoritmdan foydalanish kerak n - Moviy D posti orqali Red I postiga Blue I postidan 1 ta disk, ya'ni optimal BBR (n - 1) RRB ga teng bo'lgan algoritm (n - 1) algoritm (ranglar shunchaki almashtirilgan).

Nihoyat, ni o'tkazish kerak n - I post orqali S dan D postgacha bo'lgan eng kichik 1 ta disk. Bu, albatta, faqat RBB (n - 1) algoritm.

Xuddi shunday mulohazalarni yuqoridagi RRB (n) algoritmining optimal ekanligini ko'rsatish uchun ham qo'llash mumkin. Algoritmlarni echish ham boshqacha vaqtni o'zgartiruvchi jumboq juftliklari uchun yozilishi va ularning maqbulligi isbotlanishi mumkin:

  • RBN va NRB juftligi
  • RNB va BNR juftligi
  • RNN va NNB juftligi

Ushbu algoritmlar odatda ancha murakkab va yuqorida tavsiflangan to'liq rangli RBB va RRB algoritmlaridan foydalaniladi. Ushbu algoritmlarning to'liq tafsilotlari va ularning maqbulligining dalillari bilan tanishishingiz mumkin.[7]

Ushbu bo'limni yakunlash uchun to'liq bepul NNN jumboqni echish algoritmi keltirilgan. Optimallikning isboti ham topilishi mumkin.[7]

  • Eng kichigini siljiting n - RNN yordamida S dan I gacha bo'lgan 1 ta disk (n - 1) algoritm
  • 1-diskni S-dan D-ga o'tkazing.
  • Eng kichigini siljiting n - RRB yordamida I dan S gacha bo'lgan 2 ta disk (n - 2) algoritm (BBR (n-2) algoritmiga teng)
  • Eng kichigini siljiting n - RBB yordamida S dan D gacha bo'lgan 2 ta disk (n - 2) algoritm
  • 2-diskni I-dan S-ga ko'chiring
  • Eng kichigini siljiting n - RBN yordamida D dan I ga S orqali 2 ta disk (n - 2) algoritm (bu BRN ga teng (n - 2) algoritm)
  • 2-diskni S-dan D-ga ko'chiring
  • Eng kichigini siljiting n - NNB algoritmidan foydalangan holda S orqali I dan D gacha bo'lgan 2 disk

Takrorlanish munosabatlari va ularning echimlari

Yechish algoritmlari topilgandan so'ng, ulardan foydalanish uchun foydalanish mumkin takrorlanish munosabatlari algoritmni bajarish paytida qilingan harakatlarning umumiy soni uchun, shuningdek har bir disk tomonidan qilingan harakatlar soni uchun.

RBB va RRB jumboqlarining optimal algoritmlari tomonidan amalga oshirilgan harakatlarning umumiy sonini quyidagicha belgilash va , keyin yuqorida sanab o'tilgan echish algoritmiga murojaat qilib, quyidagi takrorlanish munosabati mavjudligini ko'rsatish oson:

qaerda RBB va RRB jumboqlari vaqtni qaytarish simmetriyasi juftligini hosil qilishidan foydalanilgan va .

Bundan tashqari, biz k bilan belgilaydigan k disk tomonidan amalga oshirilgan harakatlarning umumiy soni uchun rekursiya munosabatlarini ro'yxatlash mumkin va mos ravishda RBB va RRB algoritmlari uchun (e'tibor bering disklarning umumiy sonidan mustaqil n jumboqda). Algoritmlar orqali ishlash va tenglikdan foydalanish , buni ko'rsatish oddiy

Ushbu rekursiv aloqalardan, uchun yopiq shaklli iboralarni olish juda oddiy va tomonidan berilgan

Ko'rinib turibdiki, bu miqdorlar 3 ga tengn, 2 ga teng bo'lgan klassik ToH jumboqidan farqli o'laroqn. Aslida, ko'rsatilganidek,[7] MToH jumboqining barcha o'zgarishlari asimptotik munosabatlarni qondiradi

omillar bilan s, p quyidagi jadval bilan berilgan:

Jumboqning o'zgarishisp
RRB / RBB1/21
RBN / NRB5/1110/11
RNB4/118/11
RNN / NNB7/2214/22
NNN10/3320/33

Va nihoyat butun sonli ketma-ketliklar for ifodasi bilan hosil qilingan va butun dunyo bo'ylab Onlayn Entsiklopediyada (OEIS) yaxshi tanilgan va ro'yxatga olingan,[8] boshqa jumboq o'zgarishlari tomonidan hosil qilingan butun sonli ketma-ketliklar unchalik ahamiyatsiz va MToH tahlili oldidan OEISda topilmagan. 15 ta ushbu yangi ketma-ketliklar endi ro'yxatga olingan.

Markov tipidagi echim

Fred Lunnon tomonidan taklif qilingan va Tower bulmacalar variatsiyalarini ko'rib chiqishda taqdim etgan MToH jumboqini (va shunga o'xshash boshqa jumboqlarni) tahlil qilishning kuchli usuli,[4] matritsa usuli.

Ushbu usulda turli xil jumboqlarni echish algoritmlari faqat bittasiga bog'liq bo'lgan mustaqil guruhlarga ajratish uchun hech qanday harakat qilinmaydi. Buning o'rniga hal qilish algoritmlari to'g'ridan-to'g'ri yoziladi, shunda barcha jumboq turlarining algoritmlari bir-biriga bog'liqdir. Bu amalga oshirilgandan so'ng, harakatlarning umumiy soni (S, I, D R, B, N ga teng) har bir jumboq o'zgarishi uchun quyidagicha yozilishi mumkin:

E'tibor bering, boshqa o'zgarishlardan va umumiy qoidadan farqli o'laroq, MToH o'zgarishlari NNR va NBR disklarning qizil tomonlari yuqoriga qarab tugaydi. Bu maqsad post qizil rangga bo'yalganining tabiiy natijasidir.

Agar endi vektorni aniqlasak

Keyin

va rekursiya munosabatlari quyidagi matritsa shaklida yozilishi mumkin

bu erda Markov matritsasi bilan belgilanadi

MToH jumboqining turli xil variantlarini optimal echimlari uchun zarur bo'lgan harakatlar soni

Uchun tenglama kabi yozilishi mumkin

The xarakterli polinom ning tomonidan berilgan

quyidagi sakkizta ildizga ega

va sakkizta xususiy vektor shu kabi

Endi biz ifoda eta olamiz sakkizta xususiy vektor yordamida

Shuning uchun; ... uchun; ... natijasida

Endi, beri Barcha uchun , bu aniq

Shunday qilib, avvalgi kabi, barcha jumboqlarning o'zgarishi uchun quyidagi asimptotik munosabatlarni qo'lga kiritdik

omil bilan s quyidagi jadval bilan berilgan:

Jumboqning o'zgarishis
NNN20/66
RNN21/66
NNR39/66
NBR42/66
RNB24/66
RBN30/66
RRB33/66

Adabiyotlar

  1. ^ a b Levi, Uri (2010). "Xanoyning magnit minorasi". arXiv:1003.0225 [matematik CO ].
  2. ^ "Xanoy minorasi, qiyin yo'l". Bu 3-asos bilan bog'liq bo'lgan ToHning yana bir o'zgarishi.
  3. ^ R.L.Grem; D.E. Knuth va O. Patashnik (1989). Beton matematika. Addisson Uesli. p. 17.
  4. ^ a b Lunnon, Fred. "Xanoy minorasi va o'zgarishlar". Arxivlandi asl nusxasi 2013-09-05 da. Olingan 2013-01-25.
  5. ^ Kutrofello, Tom (2010). "Xanoy minorasi va boshqa rekursiv jumboqlar". O'yinlar (2010 yil noyabr).
  6. ^ Levi, Uri (2010). "Xanoyning magnit minorasi". Rekreatsiya matematikasi jurnali. 35 (3): 173.
  7. ^ a b v d Levi, Uri (2010). "Xanoyning magnit minoralari va ularning optimal echimlari". arXiv:1011.3843 [matematik CO ].
  8. ^ "Butun sonlar ketma-ketligining on-layn ensiklopediyasi (OEIS)".