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
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
A.2 AI<strong>Taiji</strong>Growth.java 125<br />
) ;<br />
871 count++;<br />
872 i n t v = min ( nodes [ p [ 0 ] ] [ p [ 1 ] ] . get ( p [ 2 ] )<br />
, alpha , beta , 0 ) ;<br />
873 i f ( n . a < v )<br />
874 n . a = v ;<br />
875 i f ( n . a > beta ) {<br />
876 r e [ 0 ] = 0 ; // 1 = alpha beta pruning<br />
s l a a e t t i l , 0 = s l a a e t f r a (<br />
s l a a e t f r a da den g i v e r<br />
problemer )<br />
877 r e [1]= alpha ;<br />
878 r e [2]= beta ;<br />
879 r e [3]= n . a ;<br />
880 r e t u r n ( r e ) ;<br />
881 }<br />
882 i f ( alpha < n . a )<br />
883 alpha = n . a ;<br />
884<br />
885 }<br />
886 r e t u r n ( r e ) ;<br />
887 }<br />
888<br />
889 // haandtere p l a c e r i n g e n a f b r i k k e r f o r min ( ) , c h e c k e r om de<br />
a l l e r e d e e k s i s t e r e r , haandtere alpha beta pruning<br />
890 p r i v a t e i n t [ ] placePieceMin ( i n t [ ] [ ] b , i n t d , Node n , i n t wC,<br />
i n t wR, i n t bC , i n t bR, i n t alpha , i n t beta ) {<br />
891 i n t [ ] p = new i n t [ 3 ] ;<br />
892 p = c h e c k B o a r d I n d i v i d u a l i t y ( b , d ) ;<br />
893 i n t [ ] r e = new i n t [ 4 ] ; // r e [0]= 1 break , r e [1]= alpha , r e<br />
[2]= beta , r e [3]= n . a<br />
894<br />
895 i f ( p [ 2 ] >= 0) {<br />
896 nodes [ p [ 0 ] ] [ p [ 1 ] ] . get ( p [ 2 ] ) . par . add ( n ) ;<br />
897 n . c h i l d r e n . add ( nodes [ p [ 0 ] ] [ p [ 1 ] ] . get ( p [ 2 ] ) ) ;<br />
898 i n t v = max( nodes [ p [ 0 ] ] [ p [ 1 ] ] . get ( p [ 2 ] ) , alpha , beta , 1 ) ;<br />
899 i f ( n . a > v )<br />
900 n . a = v ;<br />
901 i f ( n . a < alpha ) {<br />
902 r e [ 0 ] = 0 ; // 1 = alpha beta pruning s l a a e t t i l , 0 =<br />
s l a a e t f r a ( s l a a e t f r a da den g i v e r problemer )<br />
903 r e [1]= alpha ;<br />
904 r e [2]= beta ;<br />
905 r e [3]= n . a ;<br />
906 r e t u r n ( r e ) ;<br />
907 }<br />
908 i f ( beta > n . a )<br />
909 beta = n . a ;<br />
910 }<br />
911 i f ( p [ 2 ] == −1){<br />
912 p [2]= nodes [ p [ 0 ] ] [ p [ 1 ] ] . s i z e ( ) ;<br />
913 nodes [ p [ 0 ] ] [ p [ 1 ] ] . add ( n . addChild ( tNode . createChildNode (<br />
wC, wR, bC , bR, n ) ) ) ;<br />
914 count++;<br />
915 i n t v = max( nodes [ p [ 0 ] ] [ p [ 1 ] ] . get ( p [ 2 ] ) , alpha , beta , 0 ) ;