Optisch und akustisch eindeutige Teilmenge des lateinischen Alphabets?

13

Stellen Sie sich vor, Sie geben jemandem eine Karte mit dem Code "5SBDO0".

In einigen Schriftarten ist der Buchstabe "S" visuell schwer von der Zahl fünf zu unterscheiden (wie bei der Zahl Null und dem Buchstaben "O").

Wenn Sie den Code laut vorlesen, ist es möglicherweise schwierig, "B" von "D" zu unterscheiden. Dazu müssen Sie "B" wie bei einem Jungen, "D wie bei einem Hund" oder stattdessen ein " phonetisches Alphabet " verwenden.

Was ist die größte Untergruppe von Buchstaben und Zahlen, die in den meisten Fällen visuell eindeutig aussehen und beim Vorlesen eindeutig klingen?


Hintergrund:

Wir möchten eine kurze Zeichenfolge generieren, die so viele Werte wie möglich codieren kann und dennoch einfach zu kommunizieren ist.

Stellen Sie sich vor, Sie haben eine 6-stellige Zeichenfolge "123456". In der Basis 10 kann dies 10 ^ 6 Werte codieren .

In hex "1B23DF" können Sie 16 ^ 6-Werte in der gleichen Anzahl von Zeichen codieren , dies kann jedoch beim Vorlesen mehrdeutig klingen. ("B" gegen "D")

Ebenso erhalten Sie für eine beliebige Folge von N Zeichen (Alphabetgröße) ^ N Werte.

Die Zeichenfolge ist auf eine Länge von ungefähr sechs Zeichen begrenzt, da sie leicht in die Kapazität des menschlichen Arbeitsgedächtnisses passen soll .

Um die maximale Anzahl von Werten zu finden, die wir codieren können, müssen wir den größten eindeutigen Satz von Buchstaben / Zahlen finden. Es gibt keinen Grund, warum wir die Buchstaben GZ und einige gebräuchliche Interpunktionszeichen nicht berücksichtigen können, aber ich möchte nicht manuell paarweise vergleichen müssen: "Klingt G wie A?", "Klingt G wie B?", "Tut G klingt wie C "ich. Wie wir wissen, wäre dies O (n ^ 2) Spracharbeit zu tun =) ...

elliot42
quelle
6
Beachten Sie, dass die ähnlich ausgesprochenen Buchstaben zwischen den Sprachen sehr unterschiedlich sein können ...
Michael Borgwardt
Was genau ist das lateinische Alphabet?
MSalters
Siehe auch meine Antwort in einer verwandten StackOverflow-Frage.
MSalters
Zur visuellen Unterscheidung ist Base 32 eine Standardcodierung, die die Ähnlichkeiten der Symbole begrenzt.
Barjak
@MSalters Die "lateinische Schrift" ist eine linguistische Idee, für unsere Zwecke meine ich eigentlich nur "aus der in Unicode kodierten Teilmenge der lateinischen Schrift auswählen", z. B. en.wikipedia.org/wiki/ISO/IEC_8859-1
elliot42

Antworten:

15

Sie sollten den Satz alphanumerischer Zeichen nach visueller Ähnlichkeit in Gruppen unterteilen und aus jeder Gruppe einen "kultigsten" Vertreter auswählen. Dies ist etwas subjektiv, obwohl Sie Benutzertests durchführen könnten. Die Auswahl, die Sie treffen, hängt auch davon ab, ob die Zahlen gedruckt oder handgeschrieben werden. Beispielsweise:

  • { O , 0 , Q , D }

  • { I , L , 1 }

  • { B , 8 }

  • { Z , 2 }

  • { S , 5 }

  • { 7 , T }

  • { U , V , Y }

In ähnlicher Weise werden Zeichen durch die phonetische Ähnlichkeit der Aussprachen ihrer Namen unterteilt:

  • { A [ʔeɪ], 8 [ʔeɪ (ʔ / t)]}
    = beginnt mit [ʔeʔ]

  • { P [pi:], B [bi:], V [vi:], D [di:], T [ti:], E [ʔi:]}
    = Stopp / Reibung + [i:]

  • { G [ʤi:], C [si:], Z [zi:], 3 [θɹi:]}
    = Reibung / Affrikat (Cluster) + [i:]

  • { M [ɛm], N [ɛn]}
    = [ɛ] + nasal

  • { S [ɛs], F [ɛf], X [ɛks]}
    = [ɛ] + Frikativ / Affrikat

  • { I [ʔaʔ], Y [waɪ], 5 [faɪv], 9 [naɪn]}
    = Konsonant + [aɪ] + (Konsonant)

  • { Q [kjʉ:], U [jʉ:], 2 [t (j) ʉ:]}
    = Konsonant + [(j) ʉ:]

Dies sind natürlich nicht die einzigen möglichen Partitionen, die im Moment in den Sinn kommen. Unabhängig davon sollten sie ausreichen, um Sie für weitere Tests zu gewinnen. Auch werden diese nicht von professionellen Quellen belegt - ich zitiere nur meine hobbyistischen Hintergründe in Typografie und Phonetik.

Jon Purdy
quelle
3
Sehen Sie sich zunächst die Funkkommunikation an, z. B. Flugsicherungshandbücher (in denen verbale Kommunikation richtig interpretiert werden muss oder Menschen sterben) und Amateurfunk. Zum Beispiel sind 5 und 9 leicht zu verwechseln und werden daher als "fünf" und "neun-a" gesprochen
Mattnz
@mattnz: Danke, ich habe 5 und 9 vergessen. Auch die Audioqualität spielt eine große Rolle: Radios, Telefone, Studioaufnahmen und persönliche Kommunikation stellen ihre eigenen Probleme.
Jon Purdy
1
Technisch gesehen ist das "niner", vier ist "fower".
Patrick Hughes
3

Sie können Mechanical Turk verwenden , um echte Personen zu veranlassen, alle 26 ^ 2 Buchstabenpaare auf klangliche und visuelle Ähnlichkeit zu bewerten. Der Vorteil ist, dass Sie auf diese Weise sogar Daten für verschiedene Muttersprachen abrufen können.

Michael Borgwardt
quelle
1

Für Englisch codieren die Algorithmen soundex und metaphone , welche Sounds mehrdeutig sind. Soundex ist wahrscheinlich zu einfach, aber Metaphone enthält einige gute Punkte. Möchten Sie die Sequenz "OU"? Das könnte auf viele Arten ausgesprochen werden, da dieser Satz demontriert;)

MSalters
quelle
0

Die obige Antwort von Jon Purdy scheint am richtigsten zu sein. Aus praktischen Gründen versuche ich z-base-32, eine nicht standardmäßige Base32-Codierung zu entwickeln, bei der die Kommunikationsfähigkeit im Vordergrund steht. Es sieht funktional aus, obwohl es nicht ideal ist - z. B. haben sie sich ausdrücklich nicht auf die gesprochene Disambiguierung konzentriert.

http://philzimmermann.com/docs/human-oriented-base-32-encoding.txt

http://pypi.python.org/pypi/zbase32/

elliot42
quelle