Re: [Neo] Kriterien für Neo 3
Hi Michael, Arne Babenhauserheide wrote: >> Ich hätte ganz naiv geglaubt, dass, wenn die Gesamtbelastung der Finger >> ein eigener Punkt in der Bewertung ist, man die Tastenpositionen rein >> nach der ‚Unbequemheit’ strafen sollte. Jedes Kriterium hätte ich also >> gesondert bewertet. Voraussetzung ist allerdings, dass die Modifier >> dann auch in die Bewertung mit einfließen. Ob dazu genügend >> Sonderzeichen im Textkorpus vorhanden sind vermag ich nicht zu bewerten. > Habe ein Todo aufgenommen: „Gesamte Fingerbelastung und Kosten pro Taste > entkoppeln“. Gehe ich dann an, sobald ich den Code für die Fingerbelastung > habe. Ich habe die Entkopplung jetzt teilsweise implementiert. Wir können pro Finger festlegen, wie hoch die Belastung idealerweise sein soll und können damit beliebige Layouts darauf prüfen, wie gut sie das erfüllen. Was noch fehlt ist eine Gewichtung, aus der die gewünschte Fingerbelastung (rein in „relative Zahl der Anschläge in einem durchschnittlichen Text“) entfernt wurde. Für die gewünschte Belastung der Finger müssen wir miteinbeziehen, dass nur „normale“ Buchstaben verglichen werden, dass aber der kleine Finger noch M3 und M4 drücken muss. Ich habe jetzt erst mal das hier gewählt: #: The intended load per finger. Inversed and then used as multiplier for the finger load before calculating the finger disbalance penalty. Any load distribution which strays from this optimum gives a penalty. WEIGHT_INTENDED_FINGER_LOAD_LEFT_PINKY_TO_RIGHT_PINKY = [ 1, # Klein links 2, # Ring L 2, 3, 1, # Daumen L 1, # Daumen R 3, 2, 2, 1] # Klein R Außerdem kann das Prog¹² Tastaturlayouts dafür optimieren, die Belastung so nah wie möglich an das Schema anzupassen. Liebe Grüße, Arne ¹: http://bitbucket.org/ArneBab/evolve-keyboard-layout/ ²: http://draketo.de/licht/freie-software/neo-tastaturlayout-pruefen-und- evolutionaer-entwickeln
Re: [Neo] Kriterien für Neo 3
Hi Michael, > Ich hätte ganz naiv geglaubt, dass, wenn die Gesamtbelastung der Finger > ein eigener Punkt in der Bewertung ist, man die Tastenpositionen rein > nach der ‚Unbequemheit’ strafen sollte. Jedes Kriterium hätte ich also > gesondert bewertet. Voraussetzung ist allerdings, dass die Modifier > dann auch in die Bewertung mit einfließen. Ob dazu genügend > Sonderzeichen im Textkorpus vorhanden sind vermag ich nicht zu bewerten. Das kann ich auch nicht ad-hoc beantworten.Allerdings beziehe ich die bisher noch nicht in die Rechnung ein (das Programm optimiert nur Ebenen 1 und 2 (klein und groß). Habe ein Todo aufgenommen: „Gesamte Fingerbelastung und Kosten pro Taste entkoppeln“. Gehe ich dann an, sobald ich den Code für die Fingerbelastung habe. Immerhin gibt uns das schonmal eine Richtlinie: Die Belastungskosten pro Finger sollten beim Kleinen Finger etwa das doppelte der Erreichbarkeit ausmachen (weil er zwar schnell ist, aber nicht zu sehr belastet werden sollte). > Ich habe keine Zahlen angeschaut, weshalb mein Vorschlag auch > ‚unqualifiziert’ ist. Du hast natürlich Recht. „Deutlich” und Faktor 2 > ist für mich allerdings wiederum nicht das Selbe. Schau mal hier rein: - http://forschung.goebel-consult.de/de-ergo/rohmert/Rohmert.html Bei der vertikalen Richtung ist es etwa Faktor 1.5. (habe gerade gemerkt, dass ich die Skala übersehen hatte :( Das Bild sagt Faktor 4, die Skala Faktor 1.5). >> Wenn Zeige-, Mittel- und Ringfinger gleich gewichtet sind, ist es für die >> Optimierung gleichgültig, ob wir in der Mitte IAE oder EAI haben. > > Nicht ganz, da der Zeigefinger ja noch 3 Tasten mehr hat und somit nach > Auswertung der Gesamtbelastung der Finger und der x-Gramme ein > Eindeutiges Zeichen haben sollte. Die Tasten von Ring- und Mittelfinger > wären aber vertauschbar, bei gleicher Gewichtung. Wenn allerdings noch > ‚Trommelbewegungen’ ausgewertet werden… Sollten sie. Allerdings ist bei mir der Mittelfinger wieder deutlich schneller (in dem Fall würde ich sagen eigentlich eher 10%) als der Ringfinger. ⇒ Genau diese Diskussion brauchen wir, um die Rechenkriterien zu finden! > Somit würde ich die niedrigste Strafpunktzahl auf mindestens 10 erhöhen, > um feinere Unterscheidungen machen zu können (u.a. Zeige-, Mittel- und > Ringfinger). Kein Problem. > Eine genaue Auflistung erspare ich mir und Euch, da ich > wie gesagt keine Zahlen habe. Objektivierung anhand von Messergebnissen > wären meiner Meinung nach aber zu begrüßen. Ich habe dazu leider nur die Daten von anderen. Aber mit kbwatch ist es möglich, selbst Daten zu sammeln. → http://klausler.com/evolved.html > Ich möchte nochmal für eine strikte Trennung aller Bewertungskriterien > plädieren. Alles Andere ist meiner Meinung nach undurchsichtig. > Fehlende Kriterien, die schlecht zu benennen oder auszuwerten sind, > natürlich ausgeschlossen. Ich versuch es — Danke, dass du einen Sanity-check machst! Liebe Grüße, Arne
Re: [Neo] Kriterien für Neo 3
Hallo Arne, hallo Liste, > Ich habe dem kleinen Finger mehr Strafpunkte gegeben, um die Belastung klein > zu halten, schließlich hat er mehr Tasten als jeder andere und ist > gleichzeitig der Schwächste. Ich hätte ganz naiv geglaubt, dass, wenn die Gesamtbelastung der Finger ein eigener Punkt in der Bewertung ist, man die Tastenpositionen rein nach der ‚Unbequemheit’ strafen sollte. Jedes Kriterium hätte ich also gesondert bewertet. Voraussetzung ist allerdings, dass die Modifier dann auch in die Bewertung mit einfließen. Ob dazu genügend Sonderzeichen im Textkorpus vorhanden sind vermag ich nicht zu bewerten. > Hier fehlt mir eine unterschiedliche Gewichtung von Mittel- und Ringfinger > im Vergleich zum Zeigefinger. Der ist in den Zahlen, die ich gesehen habe, > deutlich schneller (und bei mir auch). Ich habe keine Zahlen angeschaut, weshalb mein Vorschlag auch ‚unqualifiziert’ ist. Du hast natürlich Recht. „Deutlich” und Faktor 2 ist für mich allerdings wiederum nicht das Selbe. > Wenn Zeige-, Mittel- und Ringfinger gleich gewichtet sind, ist es für die > Optimierung gleichgültig, ob wir in der Mitte IAE oder EAI haben. Nicht ganz, da der Zeigefinger ja noch 3 Tasten mehr hat und somit nach Auswertung der Gesamtbelastung der Finger und der x-Gramme ein Eindeutiges Zeichen haben sollte. Die Tasten von Ring- und Mittelfinger wären aber vertauschbar, bei gleicher Gewichtung. Wenn allerdings noch ‚Trommelbewegungen’ ausgewertet werden… >> Die niedrigste Strafpunktzahl liegt hier bei 3, da ich eine Bestrafung >> von mehr als 133% für den kleinen Finger zu krass finde, und wir ja >> ganzzahlig bleiben sollen. Oder? > Ganzzahlig sollten die Zahlen aus Effizienzgründen sein - der Code ist schon > so nicht allzu schnell (hundert Mutationen brauchen gut eine Minute) und mit > Ganzzahlen sind Rechner einfach schneller. > > Überlaufen würden sie allerdings erst ab etwa 65000, und selbst da würde das > Programm nicht brechen, sondern einfach nur langsamer werden. Somit würde ich die niedrigste Strafpunktzahl auf mindestens 10 erhöhen, um feinere Unterscheidungen machen zu können (u.a. Zeige-, Mittel- und Ringfinger). Eine genaue Auflistung erspare ich mir und Euch, da ich wie gesagt keine Zahlen habe. Objektivierung anhand von Messergebnissen wären meiner Meinung nach aber zu begrüßen. Ich möchte nochmal für eine strikte Trennung aller Bewertungskriterien plädieren. Alles Andere ist meiner Meinung nach undurchsichtig. Fehlende Kriterien, die schlecht zu benennen oder auszuwerten sind, natürlich ausgeschlossen. Nette Grüße, Miche
Re: [Neo] Kriterien für Neo 3 (was: Kriterien f ür ein optimiertes Layout)
Andre Adrian wrote: >> Hab ich mir mit in die Faktoren TODO-Liste aufgenommen, danke! > > Ich gehe mal davon aus das es hier um Cut, Copy und Paste geht. > Eigentlich gehört da auch noch das Z (Undo) dazu, wie sie auch im > US-Layout nebeneinander liegen. Stimmt eigentlich… Danke! Lieben Gruß, Arne
Re: [Neo] Kriterien für Neo 3 (was: Kriterien f ür ein optimiertes Layout)
Hallo, ich bin eigentlich ja nur stiller Mitleser hier, wollte aber trotzdem kurz was anmerken. Am 15. März 2010 20:10 schrieb Arne Babenhauserheide : > Michael Ostermeier wrote: >> Wie schon von Anderen vorgeschlagen: Strafpunkte für x, c und v >> außerhalb des Bereiches Qwertz q…r, a…f, y…v. Auch wenn das wiederum >> Andere anders sehen werden. Ich finde, wenn es nicht zuviel kostet, >> sollten xcv auf der linken Hand liegen. Es gibt bestimmt eine günstige >> Anordnung, die das erfüllt. Mögliche Strafpunktzahl: 0,5% der >> Gesamt-Strafpunkte einer idealen Tastatur. Nur um bei der manuellen >> Nachselektion etwas Entlastung zu haben. > > Hab ich mir mit in die Faktoren TODO-Liste aufgenommen, danke! Ich gehe mal davon aus das es hier um Cut, Copy und Paste geht. Eigentlich gehört da auch noch das Z (Undo) dazu, wie sie auch im US-Layout nebeneinander liegen. Einer der Gründe warum ich noch zwischen Colemak und Neo schwanke. Bei Colemak liegen sie halt so schön gewohnt. Nur mal so als Anmerkung. Gruss, Andre
Re: [Neo] Kriterien für Neo 3 (was: Kriterien f ür ein optimiertes Layout)
Hi Michael, Michael Ostermeier wrote: > Ich finde es übertrieben, in der Grundreihe für den kleinen Finger das > Dreifache des Zeigefingers zu strafen. In der unteren Reihe sollten > meiner Meinung nach der kleine Finger die wenigsten Strafpunkte > bekommen und der Zeigefinger die zweitwenigsten. In der Oberen Mittel- > und Ringfinger. Besitzer von Tastaturen mit versetzten Spalten mögen > das anders sehen. Ich habe dem kleinen Finger mehr Strafpunkte gegeben, um die Belastung klein zu halten, schließlich hat er mehr Tasten als jeder andere und ist gleichzeitig der Schwächste. Faktor drei könnte allerdings wirklich etwas viel sein. > Mein erster, aus der Hüfte geschossener, Vorschlag: > > 9 7 7 8 9 9 8 7 7 9 > 4 3 3 3 6 6 3 3 3 4 (Grundreihe) > 6 9 9 7 8 8 7 9 9 6 Hier fehlt mir eine unterschiedliche Gewichtung von Mittel- und Ringfinger im Vergleich zum Zeigefinger. Der ist in den Zahlen, die ich gesehen habe, deutlich schneller (und bei mir auch). Wenn Zeige-, Mittel- und Ringfinger gleich gewichtet sind, ist es für die Optimierung gleichgültig, ob wir in der Mitte IAE oder EAI haben. > Leertaste maximal 5, da der Daumen ja darauf ruht. Soll aber ohnehin > nicht geändert werden, oder? Jupp. Der Wert da geht zwar in die Rechnung, aber nicht in die Optimierung ein, weil die Taste nicht mutiert. > Die niedrigste Strafpunktzahl liegt hier bei 3, da ich eine Bestrafung > von mehr als 133% für den kleinen Finger zu krass finde, und wir ja > ganzzahlig bleiben sollen. Oder? Ganzzahlig sollten die Zahlen aus Effizienzgründen sein - der Code ist schon so nicht allzu schnell (hundert Mutationen brauchen gut eine Minute) und mit Ganzzahlen sind Rechner einfach schneller. Überlaufen würden sie allerdings erst ab etwa 65000, und selbst da würde das Programm nicht brechen, sondern einfach nur langsamer werden. >> => Welche zusätzlichen Kostenfaktoren? > > Wie schon von Anderen vorgeschlagen: Strafpunkte für x, c und v > außerhalb des Bereiches Qwertz q…r, a…f, y…v. Auch wenn das wiederum > Andere anders sehen werden. Ich finde, wenn es nicht zuviel kostet, > sollten xcv auf der linken Hand liegen. Es gibt bestimmt eine günstige > Anordnung, die das erfüllt. Mögliche Strafpunktzahl: 0,5% der > Gesamt-Strafpunkte einer idealen Tastatur. Nur um bei der manuellen > Nachselektion etwas Entlastung zu haben. Hab ich mir mit in die Faktoren TODO-Liste aufgenommen, danke! >> Also: Was gibt es an Kosten, auf die ein Layout optimiert sein sollte? >> (Ja, ich möchte dazu eine Diskussion lostreten - dadurch können wir die >> Anforderungen an eine Tastatur teilweise quantisieren. > > Ich hoffe, hier nicht als einziger unqualifizierte Vorschläge zu machen. Mir sind „unqualifizierte” Vorschläge definitiv lieber als keine. Über die kann man nämlich diskutieren und so weitere finden, auf die man nur mit „qualifizierten” (was macht einen Vorschlag eigentlich qualifiziert?) nicht gefunden hätte. Lieben Gruß, Arne
Re: [Neo] Kriterien für Neo 3 (was: Kriterien f ür ein optimiertes Layout)
Hallo, > Ich habe in den letzten Wochen an meinem evolutionären > Optimierungscode gebastelt und bin jetzt so weit, dass ich auf eine große Zahl > Bedingungen prüfen kann. Vielen Dank für Deine Arbeit. > COST_PER_KEY = [ # 0 heißt nicht beachtet > [0,0,0,0,0,0,0,0,0,0,0,0,0,0], # Zahlenreihe (0) > [0,6,3,3,3,4,4,3,3,3,6,7,8,0], # Reihe 1 > [0,3,2,2,1,3,3,1,2,2,3,6,0,9], # Reihe 2 > [0,5,5,5,5,5,7,7,5,5,5,5,0], # Reihe 3 > [0,0,0, 9 ,0,0,0,0] # Reihe 4 mit Leertaste Ich finde es übertrieben, in der Grundreihe für den kleinen Finger das Dreifache des Zeigefingers zu strafen. In der unteren Reihe sollten meiner Meinung nach der kleine Finger die wenigsten Strafpunkte bekommen und der Zeigefinger die zweitwenigsten. In der Oberen Mittel- und Ringfinger. Besitzer von Tastaturen mit versetzten Spalten mögen das anders sehen. Mein erster, aus der Hüfte geschossener, Vorschlag: 9 7 7 8 9 9 8 7 7 9 4 3 3 3 6 6 3 3 3 4 (Grundreihe) 6 9 9 7 8 8 7 9 9 6 Leertaste maximal 5, da der Daumen ja darauf ruht. Soll aber ohnehin nicht geändert werden, oder? Die niedrigste Strafpunktzahl liegt hier bei 3, da ich eine Bestrafung von mehr als 133% für den kleinen Finger zu krass finde, und wir ja ganzzahlig bleiben sollen. Oder? Mein Vorschlag gefällt mir selbst nicht, soll aber meine Grundeinstellung verdeutlichen. Zumindest Qwertz z sollte hier zweistellig werden. Was ist denn die maximale Strafpunktzahl pro Taste, dass der Zähler nicht überläuft? > => Welche zusätzlichen Kostenfaktoren? Wie schon von Anderen vorgeschlagen: Strafpunkte für x, c und v außerhalb des Bereiches Qwertz q…r, a…f, y…v. Auch wenn das wiederum Andere anders sehen werden. Ich finde, wenn es nicht zuviel kostet, sollten xcv auf der linken Hand liegen. Es gibt bestimmt eine günstige Anordnung, die das erfüllt. Mögliche Strafpunktzahl: 0,5% der Gesamt-Strafpunkte einer idealen Tastatur. Nur um bei der manuellen Nachselektion etwas Entlastung zu haben. > Also: Was gibt es an Kosten, auf die ein Layout optimiert sein sollte? (Ja, > ich möchte dazu eine Diskussion lostreten - dadurch können wir die > Anforderungen an eine Tastatur teilweise quantisieren. Ich hoffe, hier nicht als einziger unqualifizierte Vorschläge zu machen. Nochmal vielen Dank. Viele Grüße Miche