home *** CD-ROM | disk | FTP | other *** search
/ Shareware Overload / ShartewareOverload.cdr / games / icosahed.zip / DEWDNEY.DOC next >
Text File  |  1980-01-01  |  16KB  |  289 lines

  1.  
  2.                                                                  
  3.                   
  4.                                                  October,15, 1985                  
  5.                                                                                    
  6. A. K. Dewdney                                   Robert T. Carlson                 
  7. Department of Computer Science                  18480 Decatur Dr.                 
  8. University of Western Ontario                   Monte Sereno, California, USA 9503
  9. London, Ontario, Canada 96N5B7                  [408]-395-2134                      
  10.  
  11.  
  12. Re: Carlson's Icosahedron, a Rubiks cube type puzzle  that contains                 
  13.    Engel's Enigma, Hofstader's Impossiball and Alexander's Star                      
  14.  
  15.  
  16. Dear Mr. Dewdney
  17.  
  18. As I discussed with you by phone today  I have invented  a Rubiks cube          
  19. type puzzle based on the icosahedron (the regular polyhedron built of 20         
  20. equilateral triangles). Interestingly, Engels Enigma, the puzzle you mentioned    
  21. in your October Scientific American  collumn turns out to be a subset of          
  22. my puzzle (for the case where the Engels circles are divided into five sectors).    
  23.  
  24. The iocosahedron has 20 triangular stones (equilataeral triangle faces)          
  25. and 30 bones (edges of the icosahedron). There are 12 Enigma like circles        
  26. each containing 5 bones and 5 stones. The total number of adjacent pairs          
  27. of circles is 12*5/2=30 so you can think of the Icosahedron as containing         
  28. 30 Engels Enigmas.
  29.  
  30. The total number of combinations of various cube type puzzles is as follows         
  31.  
  32. puzzle         major pieces         minor pieces         total combination          
  33.  
  34. Icosahedron    20!*3^20= 2.828e27      30!*2^30= 1.424e41     10^  68.6             
  35. Alexander                1e0           30!*2^30= 1.424e41     10^  41.2           
  36. Impossiball    20!*3^20= 2.828e27                1e0          10^  27.5           
  37. Enigma-6       10!*3^10= 7.143e10      11!*2^11= 4.087e10     10^  21.5           
  38. Rubik           8!*3^8 = 8.8180e7      12!*2^12= 9.810e11     10^  19.9           
  39. Enigma-5        8!*3^8 = 8.8180e7       9!*2^9 = 9.2897e7     10^  15.9           
  40. Pyramid                  1e0            6!*2^6 = 2.304e4      10^  4.4            
  41.  
  42. A parenthetical remark                                                            
  43. These numbers are very large. 10^68 for example is greater than the number        
  44. of seconds since the big bang, as well as greater than the number of cubic        
  45. miles in the observable universe. If those numbers give you a headache            
  46. take heart (or is it despair) in the fact that 10^63 is size of the primes        
  47. used in typical public key encryption systems, 10^ 126 of course the size of      
  48. of a product of such primes. And speaking of primes all these numbers are         
  49. dwarfed by the large merseinne primes which exceed 2^32,768. And speaking         
  50. of encryption schemes icosahedron  scrambling might make a good trap door         
  51. function, but I dont see right now how to create a public encoding method         
  52. as well as public keys, perhaps someone else does.                                
  53.  
  54.  
  55. Relations between the Icosahedron and the Enigmas                                 
  56. Enigma-5 solutions should give Icosahedron solutions since they can be used       
  57. to solve every pair of adjacent circles in the Icosahedron.(In turn of            
  58. course the Icosahedron can model Enigma-5 by suppressing all but two adjacent     
  59. circles). Enigma solutions for adjacent circles would work perfectly given        
  60. two conditions: the adjacent circles contain only pieces that originated          
  61. there; the sum of all the pieces twist adds to zero, where twist is               
  62. the total angle a piece must twist through to return home in its correct          
  63. position.                                                                         
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70.  
  71. It is easy to show that Total Twist of any cube type puzzle                       
  72. remains constant and  equal to zero since  whenever a face is rotated             
  73. one click, N major (and minor) pieces have been given 360/N degrees twist         
  74. and N*360/N = 0 mod 360, so that total twist is unchanged mod 360.                
  75.  
  76. Since every algorithm is  composed of sequences of clicks                         
  77. any adjacent pair of the Icosahedron must begin with total twist=0               
  78. if you expect an Engels algorithm to restore them to perfect                      
  79. original condition with 0 twist.                                                  
  80.  
  81. How difficult is the Icosahedron compared with the Enigma.                        
  82. To measure the relative complexity of cube type puzzles is a thorny               
  83. question, since one has  many measures to choose from: initial resistance         
  84. to insight; or speed attainable by adept solvers; or ratio of time to             
  85. solve over number of pieces .  The measure I prefer however is the                
  86. how deep can you go into the forest before you start coming out measure,          
  87. the minimum number of moves M needed to create all possible  combinations         
  88. which is computed as follows: take the number of possible moves at any            
  89. time P then  P^M = total combinations                                             
  90.  
  91. puzzle         possible moves      minmum needed         total combinations       
  92.  
  93. Icosahedron     12*4   = 48                    ^ 41      =    10^  68.6           
  94. Alexander       12*4   = 48                    ^ 24      =    10^  41.2           
  95. Impossiball     12*4   = 48                    ^ 16      =    10^  27.5           
  96. Enigma-6         2*5   = 10                    ^ 21      =    10^  21.5           
  97. Rubik            3*6   = 18                    ^ 16      =    10^  19.9           
  98. Enigma-5         2*4   = 8                     ^ 18      =    10^  15.9           
  99. Pyramid          4*2   = 8                     ^ 5       =    10^  4.4            
  100.  
  101. Note Enigma-6 gets a higher number than the Impossiball or Rubik because          
  102. its possible moves are small.                                                     
  103.  
  104. The optimal solving algorithms would give solutions lengths around these          
  105. minimums. A measure of computational difficulty would be current best             
  106. average solution length / minimum length. In the case of Rubiks cube this number  
  107. is about 150/15= 10. I dont have best average solution lengths for the            
  108. Icosahedron or the Enigma, since I dont have algoritrhms for them, although       
  109. Doug Engels tells me that in the next issues of  American Mathematical            
  110. Monthly Jack Eidswick of the University of Nebraska has an article                
  111. giving a general, but inefficient  solution for all cube type puzzles.            
  112.  
  113. Of course Impossiball algorithms leaving edges fixed combined with Alexanders     
  114. star algorithms leaving triangles fixed would consitute solutions                 
  115. for the Icosahedron. Probably the most elegant solutions will be built            
  116. this way but I havent seen them yet.                                              
  117.  
  118. (The Star and Impossiball puzzles can be thought of as the Icosahderon minus      
  119. stones-triangles and bones-edges respectively)                                    
  120.  
  121.  
  122.  
  123.  
  124.  
  125.  
  126.  
  127.  
  128.  
  129.  
  130.  
  131.  
  132.  
  133.  
  134.  
  135. puzzle         major    minor    face           lcm                               
  136.  
  137. Icosahedron     3        2        5              30                               
  138. Alexander                2        5              10                               
  139. Impossiball     3                 5              15                               
  140. Enigma-6        3        2        6              6                                
  141. Rubik           3        2        4              12                               
  142. Enigma-5        3        2        5              30                               
  143. Pyramid         3                 3              1                                
  144.  
  145. Note the high score  of Enigma-5, and the low score of Enigma-6.                  
  146.  
  147. Heuristically  we expect transformations which move major (minor)                 
  148. pieces  but leave minor (major) pieces alone to have period                       
  149. 0 mod lcm(  2 (3) , face symmetry number) since they are acting as                
  150. the identity transformation on the unmoved pieces, and an identity                
  151. on piece n with symmetry n should have some number k*n clicks.                    
  152.  
  153. Ad hoc solving routines use utility transformations that act as                   
  154. identity on both major and minor pieces  so have period length                    
  155. 0 mod lcm(3,2,face symmetry).  The length of these utility routines               
  156. limits the speed of adept solvers, which  is why I am suggesting                  
  157. this number as a measure of difficulty.                                           
  158.  
  159.  
  160. According to Doug Engels Enigma-N can be built for any N by moving the            
  161. centers of the circles closer together and taking deeper cuts out of the          
  162. circles to make the stones and bones. We would  expect the solving difficulty     
  163. to increase with the number of pieces of course but using  the                    
  164. symmetry lcm as a  guide  we should  expect special difficulty                    
  165. when N is relatively prime to 2,3, and expect special ease                        
  166. when N has factors of 2 and 3, exclusively.                                       
  167.  
  168.  
  169.  
  170. Features of my Icosahedron manipulator program:                                   
  171.  
  172. Although I invented my Icosahedron puzzle shortly after Rubiks cube               
  173. came out I could never make a very good mechanical model since it                 
  174. required a lot of spherical machining and close tolerances. Realising             
  175. I probably would never have the 10-20,000  dollars necessary for such             
  176. a computer controlled machining job I decided to make Carlson's Magic             
  177. Icosahedron work on computer. So I spent a month locked in my room                
  178. with a PC and an IBM Basic manual  and wrote this program.                        
  179.  
  180. As you look through the code you will see I started with a sphere in              
  181. 3-space, found the vertexes of the icosahedron on the sphere, regarded            
  182. their 3-tuples as vectors and defined a batch of vector addition and              
  183. multiplication functions. Then for each triangle  I made a local                  
  184. coordinate system expressing each point within the triangle as a vector           
  185. sum of the 3 vertices around it. In this  system I scribed into                   
  186. the triangle the cuts along which the  aggregates of 5 stone and 5                
  187. bones would slide.                                                                
  188.  
  189.  
  190.  
  191.  
  192.  
  193.  
  194.  
  195.  
  196. I were to do it again I  might  take the six vectors                              
  197. for the six axes of symmetry and  make polar coordinates about them               
  198. to scribe on the sphere in those systems, but the advantage of using              
  199. the local triangular coordinate systems is that the code as it is now             
  200. will generate any puzzle based on any regular polyhedron with equilateral         
  201. triangle faces, including the tetrahedron (Pyramid puzzle),and  Octahedron        
  202. (which is equivalent to Rubik's cube).                                            
  203.  
  204. At any rate once the scribing  was done I connected all the centers               
  205. of all adjacent triangles which drew a dodesahedron over the                      
  206. icosahedron, which placed a pentagon around every  vertex.                        
  207.  
  208. These pentagons were then colored one of six colors, opposite                     
  209. penatagons having the same color. This results in 20 distinct triangles           
  210. but gives 10 pairs of identical bones, so I suppose the puzzle could be           
  211. made harder by distinguishing all bones but to see it on screen                   
  212. you'd need a 16 color display as well as 640 x 200 resolultion                    
  213. which exceeded the capacity of my machines  at the time, so I blew it off.        
  214.  
  215. Then the whole mess had to be projected on screen.                                
  216. I wanted to see the entire Icosahedron at once so I chose                         
  217. a polar projection, that is I projected onto the screen as if I had               
  218. placed a sheet of frosted glass on the north pole of the Icosahedron              
  219. and a candle at the south pole and was casting shadows onto the glass.            
  220. This keeps the northern hemisphere undistorted but smears the southern            
  221. hemisphere all over the screen, espescially the south pole  which                 
  222. appears as a white ring around the outside of the enclosed pictures.              
  223.  
  224. A technical point:                                                                
  225. Colors of the parts of the bones and stones are stored in an array                
  226. T(12,12,12)  where t(a,b,c) is the a corner of the abc stone where                
  227. a,b,c are the vertexes making the  abc triangle. Element t(c,b,a) is              
  228. part of the Mirror array holding  latest information while the t(a,b,c)           
  229. are being changed under face rotation. Other  elements hold screen                
  230. display information: screen addresses of points to be painted using the           
  231. PAINT command in  Advanced  Basic.                                                
  232.  
  233. What its like to use:                                                             
  234. Each function key  rotates a face. Shift, Ctrl, Alt simultaneously                
  235. with the function key gives -1,2,-2 clicks respectively.                          
  236.  
  237. Coming soon:                                                                      
  238. An inversion function  that switches north and south poles;                       
  239. Algorithm function that recieves moves generated by your algorithm;               
  240. Save current scramble  function, so you can pick up where you left                
  241.        off later on                                                               
  242. Suppress stones or bones function so you can emulate                              
  243.               Alexanders star or Hofstaders uniball respectively.                 
  244. FastmoveN which displays results ater N moves of your choice                      
  245. Reverse which reverses last 16 moves                                              
  246. and others!                                                                       
  247.  
  248.  
  249.  
  250.  
  251.  
  252.  
  253.  
  254.  
  255.  
  256.  
  257.  
  258.  
  259.  
  260.  
  261.  
  262.  
  263.  
  264.  
  265.  
  266.  
  267. What is available from me:                                                        
  268.  
  269. A  640 x 200 8 color version  for 80186 machines in GWBasic                       
  270. A  320 x 200  4 color version for IBM PCs                                         
  271. A 640 x 200 16 color version for IBM AT an XT with                                
  272. enhanced color graphics card and vdi graphics language (soon)                     
  273.  
  274. I am selling unprotected clear code copies for $10.00 each,                       
  275.              a terrific bargain.                                                  
  276.                                                                                   
  277.  
  278. Robert Carlson                                                                    
  279. 319 Lunada Ct.                                                                    
  280. Los Altos, California,94022                                                       
  281. [415]-941-0348                                                                    
  282.  
  283.               Happy Solving!                                                     
  284.  
  285.  
  286.  
  287.  
  288.                                   Robert    Carlson                                 
  289.