Presentation is loading. Please wait.

Presentation is loading. Please wait.

Toward Conquering the  -Cracking (“Busy Beaver”) Problem presenters: OK, BvH, SB 28 January 2004 Owen Kellett Kyle Ross Bram van Heuveln Selmer Bringsjord.

Similar presentations


Presentation on theme: "Toward Conquering the  -Cracking (“Busy Beaver”) Problem presenters: OK, BvH, SB 28 January 2004 Owen Kellett Kyle Ross Bram van Heuveln Selmer Bringsjord."— Presentation transcript:

1 Toward Conquering the  -Cracking (“Busy Beaver”) Problem presenters: OK, BvH, SB 28 January 2004 Owen Kellett Kyle Ross Bram van Heuveln Selmer Bringsjord Kostas Arkoudas Marc Destefano Boleshaw Szymanski Carlos Varela Shailesh Kelkar Department of Cognitive Science Department of Computer Science (SB, Chair) Rensselaer AI & Reasoning (RAIR) Lab (SB, Director) RPI Troy NY 12180 USA

2 The Rensselaer AI & Reasoning Lab (The RAIR Lab) Over $1million internal seeding  Cracking Project; Intelligent Tutoring Systems (mathematical logic) Slate (Intelligence Analysis) Item generation (theorem proving-based generation) synthetic characters/psychological time Wargaming

3 The Busy Beaver Problem General Version In general, the busy beaver problem is to find the ‘most productive’ Turing machine with a given state and symbol set. The ‘productivity’ of a Turing machine can be defined in many ways: –The number of symbols written –The number of steps taken –The number of cells moved away from the starting cell –The number of non-blank symbols on tape –Etc. Note: Non-halting machines will set almost any of these numbers to infinity, so non-halting machines will be excluded from consideration.

4 Standard Settings Some standard settings for the Busy Beaver Problem are: –The alphabet consists of a blank and a non- blank –The Turing Machine starts on an empty tape. –Productivity is the number of non-blank symbols left on the tape

5 Formalizing the Problem n: number of states M(n): set of TM’s with n states and binary alphabet Prod(M): number of non-blank symbols left on tape by machine M, when started on empty tape. Busy Beaver Problem: Find BB(n) = max {Prod(M) | M  M(n)} –Any machine M  M(n) for which Prod(M) = BB(n) is called a Busy Beaver. Rado defined the problem and proved that BB(n) is uncomputable (1962). However, we can find individual values BB(n) for small n.

6 Variations of the Problem We can still define a variety of Busy Beaver problems: –Do we use quadruple or quintuple machines? –How does the machine come to a halt? –Are there any restrictions on the output configuration? Standard configuration: head positioned at leftmost 1 (non- blank) of consecutive string of 1’s on otherwise empty tape Anything goes quadruple formulationquintuple formulation explicit haltimplicit halt

7 Taxonomy of BB Problems BB QuintuplesQuadruples Anything goes Standard config. Anything goes Explicit Halt State  (n) (Rado) Explicit Halt State Implicit Halt State Explicit Halt State Implicit Halt State ? R(n) ?? B(n) (Boolos & Jeffrey, Turing’s World) P(n) (Pereira et al.) O(n) (Oberschelp et al.)

8 Previous Known Results nR(n)O(n)P(n)B(n) 1111 2222 3343 4>= 8 5>= 15 6>= 25 7>= 164 8>= 384

9 Problems in determining BB(n) Turing unsolvable Large search space –Implicit halt: |M(n)|=(4n+1) 2n –Explicit halt: |M(n)|=(4n+4) 2n 4 possible actions for each of n next states For implicit machines: 1 no- action transition to halt-state For explicit machines: 4 possible actions to halt-state 2n possible transitions n(4n + 4) 2n (4n + 1) 2n 16425 220,7366,561 316,777,2164,826,809 42.56*10 10 >10 9 5>10 13 6> 10 17 > 10 16

10 Inefficiency: Isomorphisms B(5)-11B(5)-11-isomorph

11 Inefficiency: Unused Transitions B(4)-5-u2B(4)-5-u1

12 Solution: Tree Normalization

13

14

15 Improvement from Normalization 234 93 94 95 96 97 98 99 100 Tree Normalization Improvement n (number of states) reduction (in per centage of machines analysed)

16 Inefficiency: Empty Tape Machine machine reaches an empty tape after 1 or more shifts any machine that does not write 1 as its first action is such a machine

17 (Partial) Solution: Force First Write

18

19 Inefficiency: Mirror Machines B(5)-11 B(5)-11-mirror

20 Solution: Force First Move

21

22

23

24

25 Improvement from Optimizations 2345 94 95 96 97 98 99 100 Optimizations Improvement Tree Normalization First-Write Optimization First-Move Optimization n (number of states) reduction (in per centage of machines analysed)

26 Inefficiency: Nonproductive Transitions

27 General Algorithm thus far: Begin with root machine (single state with no transitions) on stack Initialize best machine as root machine While stack is not empty –Pop machine m off of stack –If m is a non-halter, discard m and continue at the beginning of the loop –Run m until it halts –If m halts in the halt state (for the purposes of this algorithm we will consider an implicit machine to have a halt state where no action is performed when transitioning to it) Compare m’s productivity to best machine and update if necessary –Else Generate m’s children in the optimized fashion described Push m’s children onto the stack Problem: What if m is a non-halter?

28 Solution: Non-halt detection Step Limit: –Run a machine for a fixed number of steps. Problem: if it hasn’t halted, it may still halt at some later point. Also, Halting problem: –There is no generalized algorithm that will take as input machine m and return whether or not m halts Fortunately, algorithms can be designed to test for specific non-halting behaviors By adding such detection routines to the tree- normalization algorithm from the previous slide, we obtain an algorithm A based is such that for any machine m: –A eventually declares that m halts (m is a halter) –A eventually declares that m does not halt (m is a non-halter) –A eventually declares that it doesn’t know whether m halts or not (m is a holdout)

29 Backtracking q[0]x1 → halt 1 0 q[3]x1 → q[0]xL 11 3 101101 q[2]x0 → q[3]xR 0 2 1 01 3 Does not match! Non-halter! Local tapes match, continue

30 Subset Loops A Turing Machine M is classified as a subset loop if –There is a set of states S such that every possible transition from each state in S is defined –Every transition defined from a state in S is a transition to another state in S –During execution, at some point the machine enters one of the states in S

31 Simple Loops 0 State 0 1 State 1 10 State 2 100 State 3 1000 State 4 10000 State 5 10000 State 5 10000 State 5 10000 State 5 10000 State 5 010000 State 3 010000 State 4 010000 State 2 010000 State 3 010000 State 1 0010000 State 0 1010000 State 1 1010000 State 2 1010000 State 3 1010000 State 1 1010000 State 0 01010000 State 4 01010000 State 5 01010000 State 3 01010000 State 4 01010000 State 2 01010000 State 3 01010000 State 1 001010000 State 0 101010000 State 1 101010000 State 2 101010000 State 3 101010000 State 1 101010000 State 0 A machine is classified as a simple loop if (given words of arbitrary length X, Y, V, and C and state s): –The following tape configuration is reached: 0*[Y][ s X][C]0* -and one of the following- –1: The same tape configuration is reached at a later point -or- –2: The following tape configuration is reached at a later point: 0*[Y][ s X][V][C]0* –Between these points, the read head never moves past the right edge of the initial X The corresponding mirror of the above specification also identifies a simple loop 0* [Y] [X] [C] 0* 0* [Y] [X] [V] [C] 0*

32 Christmas Trees In the general sense, a christmas tree non-halter sweeps back and forth across the tape in a repeatable manner: 0 State 0 1 State 1 10 State 2 10 State 3 010 State 0 110 State 1 110 State 2 110 State 0 111 State 1 1110 State 2 1110 State 3 1110 State 0 1010 State 3 1010 State 3 01010 State 0 11010 State 1 11010 State 2 11010 State 0 11110 State 1 11110 State 2 11110 State 0 11111 State 1 111110 State 2 111110 State 3 111110 State 0 111010 State 3 111010 State 3 111010 State 0 101010 State 3 101010 State 3 0101010 State 0 1101010 State 1 1101010 State 2 1101010 State 0 1111010 State 1 1111010 State 2 1111010 State 0 1111110 State 1 1111110 State 2 1111110 State 0 1111111 State 1 11111110 State 2 11111110 State 3 11111110 State 0 11111010 State 3 11111010 State 3 11111010 State 0 11101010 State 3 11101010 State 3 11101010 State 0 10101010 State 3 10101010 State 3 010101010 State 0 110101010 State 1 110101010 State 2 110101010 State 0 111101010 State 1 111101010 State 2 111101010 State 0 111111010 State 1 111111010 State 2 111111010 State 0 111111110 State 1 111111110 State 2 111111110 State 0 111111111 State 1 1111111110 State 2

33 Christmas Trees 11111110 State 2 11111110 State 3 11111110 State 0 11111010 State 3 11111010 State 3 11111010 State 0 11101010 State 3 11101010 State 3 11101010 State 0 10101010 State 3 10101010 State 3 010101010 State 0 110101010 State 1 110101010 State 2 110101010 State 0 111101010 State 1 111101010 State 2 111101010 State 0 111111010 State 1 111111010 State 2 111111010 State 0 111111110 State 1 111111110 State 2 111111110 State 0 111111111 State 1 1111111110 State 2 0*[U’][Z][Z][V’’]0* = 0*[U][X][X][X][V]0* 0*[U][X][X][V s ]0* 0*[U’][Y][Y][V’]0*

34 Leaning Christmas Trees

35 Multi-sweep Christmas Trees The machine transforms the tape much like a normal Christmas tree, however, it takes more than one sweep across the tape to complete a cycle 0*[U][X][X][X][V]0* 0*[U’][Y][Y][Y][V’]0* 0*[U’][Z][Z][Z][V’’]0* = 0*[U][X][X][X][X][V]0* 0*[U][X][X][X][V]0* 0*[U’][Y][Y][Y][V’]0* 0*[U’][Z][Z][Z][V’’]0* 0*[U’’][M][M][M][V’’’]0* 0*[U’’][N][N][N][V’’’’]0* = 0*[U][X][X][X][X][V]0* Christmas Trees Double-sweep Christmas Trees

36 Counters 0 State 0 1 State 1 10 State 2 100 State 3 101 State 0 101 State 1 101 State 1 101 State 2 101 State 3 100 State 2 1000 State 3 1001 State 0 1001 State 1 1001 State 1 1001 State 1 1001 State 2 1001 State 3 1011 State 0 1011 State 1 1011 State 1 1011 State 2 1011 State 3 1001 State 2 1001 State 3 1000 State 2 10000 State 3 10001 State 0 10001 State 1 10001 State 1 10001 State 1 10001 State 1 10001 State 2 10001 State 3 10101 State 0 10101 State 1 10101 State 1 10101 State 2 10101 State 3 10001 State 2 10001 State 3 10011 State 0 10011 State 1 10011 State 1 10011 State 1 10011 State 2 10011 State 3 10111 State 0 10111 State 1 10111 State 1 10111 State 2 10111 State 3 10011 State 2 *Note: this machine generates binary numbers that read from right to left rather than the conventional left to right

37 Results: non-halters n = 2n = 3n = 4n = 5 backtracker22817471023842187 subset loop01774938761 simple loop61597243508658 christmas tree0220119009 double sweep christmas tree00232781 leaning christmas tree000118 triple sweep christmas tree000472 quadruple sweep christmas tree00076 counter002274 holdouts000221

38 Updated Records nR(n)O(n)P(n)B(n) 11111 22222 34343 48875 5>= 16>= 15>= 16>= 11 6>= 240>= 239>= 163>= 25 7>= 164 8>= 384

39 Future Work/Goals Certification of our records (Athena) Continued development of non-halt detection routines –Christmas tree variations –Counter variations (base 3, base 4, etc..) –With only 221 holdouts left, explicit confirmation of BB(5) is imminent –novel techniques for detecting non-halting Additional tree normalization optimizations –Identical state machines? Visual Reasoning (relates to new representations in support of novel non-halter detection) Treat issues in Logico-Mathematical Foundations Distributed computing (SALSA) –Working implementation using the developmental language SALSA to allow the potential for massive distributed computation

40 Visual Reasoning The behavior of certain machines can sometimes be generalized by observing them in action. Indeed, notice that we have named certain classes of machines, such as ‘Christmas Trees’, exactly by observing a graphical display of their bevhavior. Maybe a system component can be created that can be used to reason about the behavior of a Turing machine based on a visual representation of (the behavior of) that Turing machine rather than a more traditional linear symbolic representation.

41 The Mathematical Landscape Space of all information processes The “Turing Limit” Turing Machines, Algorithms, Programs, … Hypercomputation Analog Chaotic Neural Networks, Zeus Machines, Weyl Machines, P/Poly Machines, … engineering on the busy beaver?


Download ppt "Toward Conquering the  -Cracking (“Busy Beaver”) Problem presenters: OK, BvH, SB 28 January 2004 Owen Kellett Kyle Ross Bram van Heuveln Selmer Bringsjord."

Similar presentations


Ads by Google