I was working on AI issues and came up with an easy way to improve performance.
Currently, the AI looks for attack opportunities and then moves up its forces during non-combat movement. This is backwards. It would be better to conduct separate passes of non-combat movement during the combat phase, moving all units not adjacent to the enemy, 1 area closer. Keeping on doing this until all units are out of movement or adjacent to the enemy. Only then, look for attacks.
This solves a number of problems.
1. The allies don't pull their forces out of Asia. Russia will dispatch forces to the nearest foe, rather than obsessively attacking German.
2. Armor and planes will move up to the front line quickly and engage in combat.
3. Naval combat units will move towards the enemy.
Some refinement of adjacency will be needed, so the Germans can move on towards Russia. Ground units should ignore forces at sea for movement.
If tested this by hand, and the improvement was noticeable. However, the Japanese tend to attack Alaska rather than pushing onto Moscow.