Hacker News new | ask | show | jobs
by RWeaver 4626 days ago
It sounds like all of these layouts are just people taking guesses and reporting on their anecdotal experience.

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.

3 comments

Did you actually read the OP?

He actually did do quite a lot of research of exactly this.

Also you should check out the carpalx project.

http://mkweb.bcgsc.ca/carpalx/?

Thanks for the link.

He definitely did quite a good job with the fitness function (bigrams, finger priority, etc), I just didn't see quite how he came up with the workman layout specifically. If he manually evaluated a few layouts and made tweaks, then surely there is further optimisation to be done for any given body of text. For something as central as a keyboard layout it seems like even those small gains could have huge effects.

It's not just guessing. The Carpalx does have algorithms for scoring various characteristics like finger bigrams, finger travel, and outputs the optimal results based on scores for key presses and bigrams, etc.
I think there were some people trying to apply machine learning and genetic algorithms to it.