Hi, 

Mit Rückmeldung im IRC habe ich jetzt einen Vorschlag für eine neue config 
ausgearbeitet.

Was sich ändert: 

- Handdisbalance zusätzlich zu Fingerdisbalance bestrafen: Handdisbalance 
ermöglicht es, dass auf verschiedenen Händen andere Finger stärker belastet 
werden, aber trotzdem gefühlsmäßige Gleichbelastung existiert. 

- Die gewünschte Fingerlast ist jetzt: Kleiner zu Zeige: 1, 1.6, 2.6, 2.6

- Doppelte Kosten für 

        * Fingerdisbalance, 
        * Tastenpositionen von xqßzöä,. in Neo 2, 
        * Kein Handwechsel bei Richtungswechsel und 
        * Fingerwiederholungen. 

- Dreifache Kosten für Zeilenwechsel. 

- Halbe Kosten für Handwechsel nach einer Taste, die die Hand aus der 
Grundposition zieht. 

- Bewegungsmuster vereinfacht , getestet und wieder integriert. 
    Mali geben die folgenden, nach absteigender ekelhaftigkeit sortiert :)
    iu td < ui dt dr ua rd au < ai rt < nd eu

- Es gibt einen „neuen“ Parameter: Die Gesamtkosten pro Buchstabe („total 
penalty per letter“: der erste angezeigte Wert). Sie sind nur schwach abhängig 
von der Länge des Textes und damit leichter mit dem Ergebnis von zu tippenden 
Sätzen vergleichbar, ansonsten aber äquivalent zu „total penalty compared to 
notime-noeffort“. 

→ https://bitbucket.org/ArneBab/evolve-keyboard-
layout/src/c9c82ff4f7fd/config.py


Bitte sagt, was ihr davon haltet! 

Nachdem seit Donnerstag keine Antworten kamen, denke ich, dass die Diskussion 
im IRC größtenteils erschöpfend war ⇒ wir können erstmal mit der hier 
weitergehen. 

Mit der config können wir gemeinsam neue Layouts erzeugen und dann wieder 
Tipptests machen. Wir brauchen jedes einzelne Layout! 


Um mit dieser config neue Layouts zu erzeugen:

Python 3.x und Mercurial installieren: 
- http://python.org/download
- http://mercurial.selenic.com/downloads

In einer Konsole/Terminal/cmd/…: 
$ hg clone http://bitbucket.org/ArneBab/evolve-keyboard-layout/
$ cd evolve-keyboard-layout
$ hg up config-2010-09-19
$ ./evolution.py

Die Layouts landen in output.txt

Die Datei könnt ihr einfach per Mail verschicken oder in 
results/2010-09-19-<euer Name>.txt umbenennen, committen und pushen (sagt mir 
einfach euren Bitbucket-Namen, dann kriegt ihr push-Rechte). 

./evolution.py kann auch mehrfach gleichzeitig gestartet werden. Für maximale 
Layouts/Stunde einmal pro Prozessorkern :)


Notizen: 

* Die Version verwendet nun Bens Simulated Annealing (ein Kurztest² hat 
gezeigt, dass die besten Ergebnisse deutlich besser sind, obwohl sich der 
Durchschnittswert nicht signifikant ändert). Es fängt mit 6 Vertauschungen pro 
Schritt an und geht über die ersten 500 iterationen auf 1 runter. Wenn 1000 
Vertauschungen nichts bringen, macht er wieder 2 Vertauschungen pro Schritt. 

* Dank martineo sind die in der Evaluation angesprochenen Punkte in der config 
und die Ausgabe der Einzelschritte ist schöner (nach dem Schritt, nicht mehr 
davor). 

* Danke an alle, die im IRC mitdiskutiert haben! Bei der Diskussion und den 
Tests zu movement patterns heute abend waren das: kaini, frakturfreak, 
martineo und Mike1_. Das sind aber wirklich nur die, die gerade heute Abend 
mitdiskutiert haben. 


²: ./evolution.py -f beispieltext-reference-sentence.txt -o anneal.txt
    mit anneal=5, bzw. -o no-anneal.txt mit anneal=0.  


Und damit es nicht in vergessenheit gerät: Bitte sagt, was ihr davon haltet! 
Und wenn ihr mitmacht, sagt es bitte auch :)

Wir brauchen so viel Rechenleistung wie möglich, und auch die Layouts, die 
nicht in die Top 10 kommen sind für die spätere Auswertung der Parameter und 
saubere Tipptests (nach Miche :) ) wichtig! 


Liebe Grüße, 
Arne
-- 
1w6 sie zu achten,
sie alle zu finden,
in Spiele zu leiten
und sacht zu verbinden.
→ http://1w6.org

Attachment: signature.asc
Description: This is a digitally signed message part.

Antwort per Email an