@ Player/RL/Learner.cs: made some improvement:
algorithm now selects: max{Q(next-state) + R(next-state)}
but when updating Q: Q(state) = R(state) + Q(selected-next-state)
it improved convergence of algorithm on higher cycle#
@ Player/RL/Learner.cs:  update rule CHANGED to : Q(gameState) = 500 * getReward(gameState) / gameState.GameStep + GAMMA * candidate.Key.Key
@ Player/RL/Learner.cs: some improvment happen
@ Player/RL/Learner.cs: reducing Q(select-next-state) over time made the algorithm become a defender of his own gate + good aggressive sence of making goal too
@ Player/RL/Leaner.cs: var nQv = getReward(gameState) + GAMMA * (candidate.Key.Key + GAMMA * candidate.Key.Value) / gameState.GameStep;
@ Player/RL/Learner.cs: algorithm improved by `GAMMA * (candidate.Key.Key + GAMMA * candidate.Key.Value);`
@ Player/RL/Learner.cs: algorithm improved by `GAMMA * (candidate.Key.Key + candidate.Key.Value);`