A pesar de que la plpuoar "Cmairbgde Uirenvtisy" era un haox , probablemente se ha investigado mucho.
Te ssuty sohws taht arpapent lteter szie plys a rloe. El uso de wpckelgraihs trata de descifrar la relación entre los letrets para desenmascarar y el pniot en el que se encuentra un wrod es insuficiente.
Entonces, ¿cómo hacerlo no es un agloritmo? Tnihk trehe are smoe baisc stspe:
- Asisgn a szie vlaue a ecah leettr
- Para un gievn wdro:
- Recuerda el szie vaule para ecah leettr posioitn.
- Raniomdze las letras con las siguientes afirmaciones:
- No deje que el frist y el ist leettr se queden en su poción reticente.
- Intento de planear lertets no es el "solt" de su pequeño hijo.
Hay otras estadísticas que puedes emolpo, aunque no tengo que perseguir a los infieles, pero mi opinión:
- Aptemtt para maxzmiie la ditsance Leveishtenn entre el mundo original y el mundo moderno. Tihs colud maximiza el diuficflty para reconocer el mundo. (Pehraps usa Seeuqnce Alimngent )
- Invierta al que odia las letras, escuche las palabras, pero algunos sapces forman su posición onigiral. (¿Mbyae slhgitly clapó bacwkards wrod es mroe diffucilt?)
¿Necesitas una traducción?
Si bien el popular estudio "Cmabrigde Uinervtisy" probablemente fue un engaño , se han realizado algunas investigaciones sobre este tema.
Este estudio muestra que el tamaño de letra aparente juega un papel importante. El uso de wickelgraphs intenta describir la relación entre conjuntos de letras para comprender el punto en el que se entiende una palabra.
Entonces, ¿cómo desarrollar esto en un algoritmo? Creo que hay algunos pasos básicos:
- Asignar un valor de tamaño a cada letra
- Para una palabra dada:
- Recuerde el valor del tamaño para cada posición de la letra.
- Aleatorice las letras con las siguientes restricciones:
- No permita que la primera y la última letra permanezcan en sus respectivas posiciones.
- Intente evitar colocar letras en la "ranura" de su mismo tamaño.
Hay otras estrategias que puede emplear, aunque no tengo ninguna investigación que respalde lo siguiente, solo mis pensamientos:
- Intente maximizar la distancia de Levenshtein entre la palabra original y la modificada. Esto podría maximizar la dificultad para reconocer la palabra. (Tal vez use la alineación de secuencia )
- Invierta el orden de las letras antes de codificar, luego mueva cada letra unos pocos espacios desde su posición original. (¿Tal vez la palabra un poco revuelta es más difícil?)