09.09.2013 Views

Kunstig Intelligens til Brætspillet Taiji - Danmarks Tekniske Universitet

Kunstig Intelligens til Brætspillet Taiji - Danmarks Tekniske Universitet

Kunstig Intelligens til Brætspillet Taiji - Danmarks Tekniske Universitet

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

142 Bilag A<br />

593 r e t u r n ( n ) ;<br />

594 }<br />

595<br />

596<br />

597 }<br />

A.4 AI<strong>Taiji</strong>Minimax.java<br />

1 import java . u t i l . Random ;<br />

2 import java . u t i l . ArrayList ;<br />

3<br />

4 p u b l i c c l a s s AI<strong>Taiji</strong>Minimax {<br />

5 p u b l i c <strong>Taiji</strong>Model tModel ;<br />

6 p u b l i c Node tNode ;<br />

7 p u b l i c Tree tTree ;<br />

8 p u b l i c i n t count ; // f o r at t e s t e hvor mange noder der l a v e s .<br />

9 p u b l i c i n t maxDepth ; // f o r at kunne s a e t t e en max dybde paa<br />

soegningen<br />

10<br />

11 p u b l i c AI<strong>Taiji</strong>Minimax ( <strong>Taiji</strong>Model m) {<br />

12 t h i s . tModel = m;<br />

13 }<br />

14<br />

15 // F r e m s t i l l e r t r a e e t med udgangs punkt i det nuvaerende b r a e t .<br />

16 p u b l i c void c r e a t e T r e e ( )<br />

17 {<br />

18 tNode = new Node ( ) ;<br />

19 Node i n i t = tNode . createNode ( tModel . currentTurn ,<br />

tModel ) ;<br />

20 count = 1 ;<br />

21 // i n t b [ ] [ ] = tModel . getOneBoard ( tModel . currentTurn ) ;<br />

22 //Node t e s t = tNode . createCloneNode ( i n i t ) ;<br />

23 // System . out . p r i n t l n (” t e s t . par ”+ t e s t . par ) ;<br />

24 tTree = new Tree ( ) ;<br />

25 tTree . setRoot ( i n i t ) ;<br />

26<br />

27 i n t maxTurns = tModel . maxTurnsLeft ( ) ;<br />

28 System . out . p r i n t l n (” minimax max t u r n s l e f t ”+maxTurns )<br />

;<br />

29 setMaxDepth ( 1 ) ;<br />

30 // System . out . p r i n t l n (” i n i t ”) ;<br />

31 // System . out . p r i n t l n (” ”+ i n i t +” ”+ i n i t . par+” ”+ i n i t . a+”<br />

”+ i n i t . bc+” ”+ i n i t . br+” ”+ i n i t . wc+” ”+ i n i t . wr+” ”+<br />

i n i t . c h i l d r e n +” ”+ i n i t . nodeBoard+” ”+ i n i t . d ) ;<br />

32 // System . out . p r i n t l n ( i n i t . nodeBoard [ 0 ] [ 0 ] + ” ”+ i n i t .<br />

nodeBoard [ 1 ] [ 0 ] + ” ”+ i n i t . nodeBoard [ 2 ] [ 0 ] ) ;<br />

33 // System . out . p r i n t l n ( i n i t . nodeBoard [ 0 ] [ 1 ] + ” ”+ i n i t .<br />

nodeBoard [ 1 ] [ 1 ] + ” ”+ i n i t . nodeBoard [ 2 ] [ 1 ] ) ;<br />

34 // System . out . p r i n t l n ( i n i t . nodeBoard [ 0 ] [ 2 ] + ” ”+ i n i t .<br />

nodeBoard [ 1 ] [ 2 ] + ” ”+ i n i t . nodeBoard [ 2 ] [ 2 ] ) ;<br />

35<br />

36 // System . out . p r i n t l n (” minimax createChildren ”) ;<br />

37 c r e a t e C h i l d r e n ( i n i t , 0) ;

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!