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.

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 ) ;

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

Saved successfully!

Ooh no, something went wrong!