|HOW IT WORKS - BRIEF GUIDE TO THIS ENGINE|
|obsah:||flag combinations and third layer of move values:||page 7/12|
inputs and outputs
first 2 layers
flag rules (1D)
flag combination (2D)
go to page:
When the engine searches through the game board in all 8 directions, it remembers several squares with different values at free square positions. In arrays xRCboard and oRCboard , it stores move values from 0 (minimum value) to 50 (maximum value), which the engine updates further during game board situation analysys.
The information used to update arrays xRCboard and oRCboard is stored in arrays flagx and flago.
First of all, the engine will re-evaluate any very-high-valued moves (free sauqres) in arrays xRCboard and oRCboard:
if((xRCboard[row][column] > 43) && (xRCboard[row][column] < 47)) xRCboard[row][column] = xRCboard[row][column] + 3;
Values 44, 45 and 46 will be increased to 47, 48 and 49.
Free squares that are common for some character sequences (Flag Rules) from different lines, have a strategic significance in the game. They allow the engine to recognize and use two-dimensional structures. Data on these squares are written in arrays flagx and flago.
The RCBoard rule set does not allow a move into the line intersection.
But according to Flag Rules the intersection move has the highest value.
Furthermore, Flag Rules allow two different strategies depending on whether the engine is player one or player two.
When merging squares with different RCBoard Rule values from (four) different searched lines, the highest value is selected. When merging directional data in 'flag' and 'flat' arrays however, the values add up for each square. This way the intersections of character sequences from different Flag Rule lines are automatically marked.
So the engine now searces the arrays flagx and flago. According to values found here, it will update values at same positions in arrays xRCboard and oRCboard. The highest positions in the best move hierarchy are assigned to Flag Rule intersections with values: M + M, M + CII, M + CI, CII + CI, CI + CI.
The hierarchy of moves selected according to Flag Rules from first and second player's point of view. If the engine finds moves of the same value in both arrays (xRCboard a oRCboard), it considers the move from its own array to be better. So if the engine is player one, it will first pick the move from xRCboard array.
|go top||independent Machines develop lab (2013)||page 7/12|