Apakah ada maxima lokal dalam jumlah gerakan yang diperlukan untuk menyelesaikan Rubik's Cube?


22

Peter Shor dibesarkan titik yang menarik dalam kaitannya dengan upaya untuk menjawab sebelumnya pertanyaan pada kompleksitas memecahkan Rubiks cube. Saya telah memposting upaya yang agak naif untuk menunjukkan bahwa itu harus dimuat dalam NP. Seperti yang ditunjukkan Peter, pendekatan saya gagal dalam beberapa kasus. Salah satu kasus potensial dari instance semacam itu adalah di mana terdapat maksimal lokal dalam panjang lintasan. Maksud saya, mungkin diperlukan langkah S A untuk menyelesaikan kubus dari konfigurasi A , dan baik langkah S A atau S A - 1 untuk memecahkan kubus dari posisi apa pun yang dapat dicapai dalam satu gerakan darin×n×nSAASASA1 . Sekarang, ini tidak selalu menjadi masalah jika S A adalah jumlah maksimum gerakan yang diperlukan untuk menyelesaikan kubus secara umum (Nomor Tuhanuntuk kubus itu), tetapi jelas merupakan masalah jika S A benar-benar kurang dari Angka Tuhan untuk kubus itu . Jadi pertanyaan saya adalah apakah maksima lokal seperti itu ada? Bahkan jawaban untuk 3 × 3 × 3 kubus akan menarik bagi saya.ASASA3×3×3


Meskipun saya tidak memiliki contoh, saya akan terkejut jika tidak ada, karena itu sepertinya menyiratkan bahwa kita dapat menghitung angka Tuhan dengan hanya menemukan satu konfigurasi yang maksimum lokal (meskipun ini bukan argumen yang keras).
Tsuyoshi Ito

@ Tsuyoshi Ah, tapi mungkin belum diketahui apakah ada maxima lokal sampai setelah Nomor Tuhan dihitung! Tetapi saya setuju bahwa saya berharap maxima lokal ini memang ada. Saya hanya tidak tahu pasti, dan akan tertarik untuk mencari tahu.
Joe Fitzsimons

@ Jo: Ya, itulah tepatnya yang tidak keras tentang argumen saya. Saya akan lebih terkejut :) jika mungkin untuk membuktikan bahwa tidak ada maxima lokal tanpa melakukan pencarian lengkap.
Tsuyoshi Ito

1
@ Tsuyoshi Sepertinya maxima lokal tidak dapat terjadi untuk panjang lintasan yang sangat pendek, dan sepertinya hanya ada dekat dengan angka Tuhan, itulah sebabnya saya pikir itu tidak begitu pasti bahwa mereka ada.
Joe Fitzsimons

1
Saya tahu grafik Cayley untuk grup sewenang-wenang dapat memiliki maksimum lokal. Saya lupa di mana saya melihat hasil ini, tetapi saya yakin saya melihatnya di suatu tempat. Jadi, kecuali jika kelompok kubus Rubik entah bagaimana istimewa, orang mengharapkannya memiliki maxima lokal juga.
Peter Shor

Jawaban:


9

Menanyakan kepada Tomas Rokicki pertanyaan ini segera menghasilkan jawaban yang benar ("ya, maxima lokal ada"):

Jika suatu posisi menunjukkan total simetri, itu adalah suatu keharusan maksimum lokal (semua kecuali awal). Sedikit pemikiran harus menjelaskan mengapa hal ini terjadi dalam QTM [metrik seperempat putaran]. Untuk HTM [setengah-putar metrik], ini sedikit lebih halus tetapi tidak terlalu buruk.

...

Posisi seperti itu adalah pons asinorum, yaitu jarak 12 di QTM dan jarak 6 di HTM (U2D2F2B2L2R2).

Saya tidak melihat mengapa ini terjadi pada metrik setengah-putar; tetapi untuk metrik quarter-turn jelas. Dalam posisi dengan simetri total, semua posisi tetangga harus pada panjang jalur yang sama (karena semua gerakan setara dengan simetri). Jadi posisi dengan total simetri harus maksimum lokal atau minimum lokal ketat. Tapi minimum lokal yang ketat tidak ada ... harus ada beberapa langkah yang mengurangi jarak ke kondisi terpecahkan, hanya dengan definisi jarak. Argumen simetri diterjemahkan menjadi kubus, seperti halnya posisi contoh yang disediakan.n×n×n


Argumen yang sederhana, ini brilian!
Hsien-Chih Chang 張顯 之

Bagus sekali, itu argumen yang sangat bagus!
Joe Fitzsimons

2

Berikut argumen yang sangat heuristik yang menunjukkan di mana maksima lokal dapat ditemukan. Biarkan menjadi jumlah posisi yang membutuhkan d bergerak untuk menyelesaikannya. Setiap gerakan dari posisi seperti itu membutuhkan kubus untuk jarak d - 1 , d , atau d + 1 ; jadi ada total N d - 1 + N d + N d + 1 posisi yang dapat diakses. Ada M bergerak dari setiap posisi, mengarah ke posisi M baru; posisi pada jarak dNddd1dd+1Nd1+Nd+Nd+1MMdadalah maksimum lokal ketika tidak ada posisi ini pada jarak d + 1 . Jika kita mengambil posisi ini untuk ditarik secara acak secara acak dari posisi yang dapat diakses (yang, tentu saja, tidak; ini adalah bagian heuristik), kita memiliki:Md+1

Xd=P[ a given position at d is a local max ]=(Nd1+NdNd1+Nd+Nd+1)M=(1+Nd+1Nd1+Nd)M.

Jumlah maksimum lokal yang diharapkan pada jarak adalah N d X d .dNdXd

3×3×3M=18NdN16X16=0.2N17X17=9×109N18X18=1.5×1019d16. At d=17, the total number of positions is estimated to be 12×1018, so one might expect to test a billion positions before finding a local maximum. Finally, at d=18, one expects a local maximum in every twenty positions.


Thanks. It is however not clear to me that Nd1+Nd+Nd+1 is the correct number of states accessible from the Nd states of distance d. If for example there are local maxima of distance d1 this would seem not to hold. It also seems to break for any state of distance d for which all neighbouring states have distance d1 or d+1, karena keadaan ini tidak dapat dicapai dalam 1 gerakan dari kondisi jarak mana pun d. Saya tidak tahu seberapa umum atau jarang situasi ini terjadi.
Joe Fitzsimons
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.