うぇるあめさんが、
タイパー向けの配列の可能性について、興味深い記事を書いている。
https://welame.hatenadiary.com/entry/2025/04/29/202901
アルペジオ重視と同指連打回避という基本方針は、
同意だけど、その先の具体について、
もう少し突っ込んだ議論をしてみたい。
打鍵範囲を30に限定して、
30キー×30キーの900パターンの連接について、
どれがどれくらい速いのかについて、
かつて自分のデータを取ったことがある。
http://oookaworks.seesaa.net/article/490739021.html?1745980681#gsc.tab=0
この時は「とりあえずやったろ」重視で、
900パターンの10回トリルを動画で撮り、
コマ送りしてフレーム数を数えるという、
力技の測定であった。
打鍵する方も測定する方も900ループなので、
大変なのでうまく方法論を詰めたいのだけど、
自動測定するプログラムくらい、
エンジニアなら書けると思う。
1/100秒の精度くらいなら問題ないかな。
1/1000秒いるかな。PCのクロック数との戦いになるだろう。
3連接になると27000パターンになるため、
精度はより上がるだろう。測定の手間はおいといて。
僕の測定結果を見ればわかるが、
右アルペジオ>左→右>右→左
>左アルペジオ>右悪運指>左悪運指
というグループ分けが大体できる。
もちろんこれは僕の素人レベルの結果だ。
なので、
鍛えたタイパーのデータを取りたいんだよね。
ただし誰か自動測定器を作ってくれることが前提だ。
僕はプログラムはつくれないので。
で、
そのデータさえあれば、
競技の問題文のデータを取り、
N連接統計を取れば、
機械的に最適化配列を作ることは可能では?
という話である。
(統計的な問題文を入力にして、
出力を打鍵時間で出すプログラムは、
かつて岡さんがつくっていたので、
それを評価関数として用いて、
その数値の最小化問題と考えれば良い)
配列は手で作ってもいいし、
何かしらのアルゴリズムで解いてもいいと思う。
解けるかどうかはわからないので、
GA手法などで暫定的に解くやり方もある。
ある種のベースをアルゴリズムでつくり、
あとは打ちながら手で微調整する、
という合わせ技も可能かもしれない。
ローマ字だと、最低4連接データがないと難しい?
30^4=810000データかー。
それぐらい揃ってれば、精度の高いものできるかな?
人には打鍵塊の限界もあるし、
ミスタイプもあるだろうが、
理論値最適化配列をつくることは、
まあできそう。
ただし標準運指遵守で最適化なしの場合と、
最適化許容によって、プログラムはまったく変わると思う。
30範囲を破って、@や:や4段目や親指キーを許容したりすれば、
また最初のデータ取りからやり直しよね。
ということで、
配列勢から考えられるアイデアだけ出した。
出来る人やってみてください。
ちなみにJISカナベースで、4段配列最適化やってる人もいた。
http://oookaworks.seesaa.net/article/514040751.html?1745981632#gsc.tab=0
ただしこれは「頻度の高いものを中段に集める」
という古典的設計なので、
1gram設計法でしかないため、
「中段に集めた方が打ちやすいとは限らない」
を越えられていない。
「頻度の高いN連接を、高速で打てるN連接キーに当てる」
Ngram連接の想定をしなければならないと思う。
この手法のいいところは、
データだけ取ればあとは自分が打たなくてもつくれること。
qwertyを崩してまでやるべきか?
というタイパーの不安と関係なくつくれることだね。
2025年04月30日
この記事へのコメント
コメントを書く
この記事へのトラックバック