> Ich habe in Python deinen damals beschriebenen Algorithmus geschrieben.
Prima. Mit Python haben sicher mehr Leute die Möglichkeit, mit dem Algorithmus und mit Bewertungschemas zu spielen. > 1. Mache eine zufällige Tastatur > 2. Tausche zwei Zeichen. Gibt das bessere Punkte, dann mache mit „2“ weiter. > Gibt es nicht bessere Punkte, dann tausche zwei anderen ( bis 32 * 32 = 1024 > minus 32 die gleich sind -> 992 Möglichkeiten erschöpft sind). > 3. Ist keine Besserung mehr möglich, dann höre auf. > > Das ist doch so richtig oder nicht? Bei Punkt 2 bin ich nicht sicher. In meiner ersten Variante probiere ich erst alle 992 möglichen Vertauschungen. Erst dann nehme ich die Beste davon. In meiner zweiten Variante fange ich bei einer zufälligen Vertauschung an und suche von da ab die erste, die eine Verbesserung bringt. Wichtig ist «zufällig»; fängt man immer an derselben Stelle an kommt das vermutlich nicht gut (hab's aber nicht probiert). > Nur 1 von 25 Tastaturen gefällt mir. Sie sind nicht so schöne wie deine. Ich schaue nur Resultate an, die eine gute Wertung haben, ansonsten probiere ich gleich nochmal. Vielleicht ist das ja der einzige Unterschied; es passt auch zu den Laufzeiten, die du nennst. > Wie bewertest du ganz genau? Ich habe ein paarmal dran gedreht, für «Ohne Shift» war es so: - Einzeltasten wie in deinem Auswerteprogramm mit Ausnahme von QWERTZ-n; hier 5 statt 7 Punkte. - Mehrfachanschlag: Differenz aus Einzeltastenwert und dem Einzeltastenwert der Grundposition des betreffenden Fingers (also etwas negatives für Tasten außerhalb der Grundposition). - Andere Fingerwiederholung (also Kollisionen): 9 plus zweimal Absolutwert der Differenz der Spaltennummern der beiden Tasten. - Andere Handwiederholung: Für Einwärtsrolle 1 plus das Verhältnis aus dem Absolutwert der Zeilennummerdifferenz und dem Absolutwert der Spaltennummerdifferenz; für Auswärtsrolle noch einen Punkt mehr. Für «Mit Shift» kommen noch Strafpunkte dazu, das Schema für diese ist ähnlich. > Es bedarf demnach oft mehr als eine Mutation bevor eine Besserung > eintritt. Das geht bei deinem Algorithmus nicht. Da muss jede Mutation eine > Besserung bringen. Auch mal was zum überlegen??? Ja, und deswegen hat es mich überrascht, dass der Algorithmus überhaupt etwas Brauchbares liefert. Ich hatte erwartet, dass man praktisch immer bei irgendetwas mittelmäßigem stecken bleibt. In Variation meines Verfahrens könne man auch Verschlechterungen akzeptieren, aber mit geringerer Wahrscheinlichkeit als Verbesserungen. Ich habe schon ein wenig in der Richtung probiert, aber ohne Erfolg. Vielleicht braucht man tatsächlich noch «Replikation» und «Vererbung», um erreichte Qualitäten nicht an den Zufall zu verlieren. > Wenn ich mit deinem Algorithmus 50 Tastaturen mache und lasse sie durch > meinen > laufen kommen scheinbar sehr gute heraus. Bei Interesse werde ich davon > welche hier posten. Ja, ich habe Interesse. Ich möchte eine deiner sehr guten Tastaturen mit meinen Kriterien beurteilen und sehen, ob sie danach tatsächlich besser ist als Beste mit meinem Algorithmus gefundene. Wenn ja ist die Kombination der Algorithmen tatsächlich ein weiterer Fortschritt. Wenn nein kommen die Unterschiede wohl von unterschiedlichen Kriterien oder vom unterschiedlichen Korpus. Andreas
