Each entry of the prediction array corresponds to one of the actions, and is a sort of "best guess" at the payoff that will be received if that action is taken by the system.

There are several ways that one might calculate the entry for an action. I have used the "fitness-weighted average" of the predictions of the classifiers in [M] that advocate that action. This means: (1) take the prediction of each such classifier and multiply it by the fitness of that classifier; (2) add up these products; (3) divide the sum by the sum of these same fitnesses. (4) insert the resulting value into the prediction array at the position corresponding to that action.

Thus classifiers that have relatively high fitness will have their predictions count for more in the average. This is a standard way of calculating a weighted average.

As an example, the 42.5 in Figure 1 results from
(43 x 99 + 27 x 3)/(99 + 3).

(If, for one of the possible actions, no classifiers in [M] advocate it, then "nil" goes in the corresponding slot of the array. Action selection ignores the nils.)


I have a hard time figuring out how the values in the prediction array are calculated. It would make the paper easier to understand if you included walk-through of this calculation with numbers.