Has anyone ever tried determining a fitness function (travel distance, priority finger use, sequential characters on nearby fingers) and running random layouts through a genetic algorithm?
For sample data use english, romance languages, open source code, etc, for a good general purpose layout.
If you're going to relearn a layout it might as well be the optimum one.