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

09.09.2013 Views

228 Bilag A 135 tFrame . tModel . s e t S t a r t e r ( 1 ) ; 136 tFrame . tModel . setWhitePlayer ( 2 ) ; 137 tFrame . tModel . s e t B l a c k P l a y e r ( 0 ) ; 138 } 139 i f ( s e t == 7) { // Growth VS Player 140 tFrame . tModel . s e t S t a r t e r ( 1 ) ; 141 tFrame . tModel . setWhitePlayer ( 4 ) ; 142 tFrame . tModel . s e t B l a c k P l a y e r ( 0 ) ; 143 } 144 tFrame . tModel . r e s e t ( ) ; 145 tFrame . r e p a i n t A l l ( ) ; 146 s e t V i s i b l e ( f a l s e ) ; 147 } 148 e l s e 149 { 150 s e t V i s i b l e ( f a l s e ) ; 151 } 152 } 153 } 154 } A.17 Tree.java 1 import java . u t i l . ArrayList ; 2 p u b l i c c l a s s Tree { // denne k l a s s e e r kun anvendt i Minimax AI ’ en 3 p u b l i c Node Root ; 4 p u b l i c Node Cur ; // c u r r e n t node 5 p u b l i c ArrayList evenGen ; 6 p u b l i c ArrayList oddGen ; 7 p u b l i c ArrayList Leaves ; 8 p u b l i c i n t curLeaves ; // Current number o f l e a v e s 9 p u b l i c i n t t o t a l L e a v e s ; // Temperary number o f l e a v e s . curLeaves +newly added l e a v e s . 10 p u b l i c i n t curMin ; 11 p u b l i c i n t curMax ; 12 13 14 p u b l i c Tree ( ) { 15 Root = new Node ( ) ; 16 Cur = new Node ( ) ; 17 Leaves = new ArrayList () ; 18 evenGen = new ArrayList () ; 19 oddGen = new ArrayList () ; 20 21 } 22 23 // s a e t t e r roden 24 p u b l i c void setRoot ( Node n ) { 25 Root = n ; 26 } 27 // s a e t t e r c u r r e n t node 28 p u b l i c void setCur ( Node n ) { 29 Cur = n ;

A.17 Tree.java 229 30 } 31 32 // t i l f o e j e r e t blad 33 p u b l i c void addLeave ( Node n ) { 34 Leaves . add ( n ) ; 35 } 36 37 p u b l i c void addMin ( Node n ) { 38 curMin++; 39 } 40 41 42 p u b l i c void addMax( Node n ) { 43 curMax++; 44 } 45 46 p u b l i c void resetMin ( ) { 47 curMin =0; 48 } 49 50 p u b l i c void resetMax ( ) { 51 curMax=0; 52 } 53 54 p u b l i c void addLeaveT ( Node n ) { 55 t o t a l L e a v e s ++; 56 } 57 58 p u b l i c void removeLeave ( i n t l ) { 59 Leaves . remove ( l ) ; 60 } 61 62 p u b l i c void removeLeaveT ( i n t l ) { 63 t o t a l L e a v e s −−; 64 } 65 66 p u b l i c void removeLeaveC ( i n t l ) { 67 curLeaves −−; 68 t o t a l L e a v e s −−; 69 } 70 71 72 p u b l i c i n t getCurLeaves ( ) { 73 r e t u r n ( curLeaves ) ; 74 } 75 76 }

228 Bilag A<br />

135 tFrame . tModel . s e t S t a r t e r ( 1 ) ;<br />

136 tFrame . tModel . setWhitePlayer ( 2 ) ;<br />

137 tFrame . tModel . s e t B l a c k P l a y e r ( 0 ) ;<br />

138 }<br />

139 i f ( s e t == 7) { // Growth VS Player<br />

140 tFrame . tModel . s e t S t a r t e r ( 1 ) ;<br />

141 tFrame . tModel . setWhitePlayer ( 4 ) ;<br />

142 tFrame . tModel . s e t B l a c k P l a y e r ( 0 ) ;<br />

143 }<br />

144 tFrame . tModel . r e s e t ( ) ;<br />

145 tFrame . r e p a i n t A l l ( ) ;<br />

146 s e t V i s i b l e ( f a l s e ) ;<br />

147 }<br />

148 e l s e<br />

149 {<br />

150 s e t V i s i b l e ( f a l s e ) ;<br />

151 }<br />

152 }<br />

153 }<br />

154 }<br />

A.17 Tree.java<br />

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

2 p u b l i c c l a s s Tree { // denne k l a s s e e r kun anvendt i Minimax AI ’ en<br />

3 p u b l i c Node Root ;<br />

4 p u b l i c Node Cur ; // c u r r e n t node<br />

5 p u b l i c ArrayList evenGen ;<br />

6 p u b l i c ArrayList oddGen ;<br />

7 p u b l i c ArrayList Leaves ;<br />

8 p u b l i c i n t curLeaves ; // Current number o f l e a v e s<br />

9 p u b l i c i n t t o t a l L e a v e s ; // Temperary number o f l e a v e s . curLeaves<br />

+newly added l e a v e s .<br />

10 p u b l i c i n t curMin ;<br />

11 p u b l i c i n t curMax ;<br />

12<br />

13<br />

14 p u b l i c Tree ( ) {<br />

15 Root = new Node ( ) ;<br />

16 Cur = new Node ( ) ;<br />

17 Leaves = new ArrayList () ;<br />

18 evenGen = new ArrayList () ;<br />

19 oddGen = new ArrayList () ;<br />

20<br />

21 }<br />

22<br />

23 // s a e t t e r roden<br />

24 p u b l i c void setRoot ( Node n ) {<br />

25 Root = n ;<br />

26 }<br />

27 // s a e t t e r c u r r e n t node<br />

28 p u b l i c void setCur ( Node n ) {<br />

29 Cur = n ;

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

Saved successfully!

Ooh no, something went wrong!