К ВОПРОСУ О НАИЛУЧШИХ РАСКЛАДКАХ АНГЛИЙСКИХ И РУССКИХ СИМВОЛОВ НА КОМПЬЮТЕРНОЙ КЛАВИАТУРЕ
З.Д. Усманов, О.М. Солиев
Пусть К - некоторая клавиатура, состоящая из п клавишей К1,К2,...,Кп, причем каждой клавише приписано положительное число к1 (1 = 1,...,п ), указывающее на количество энергии, которую следует затратить для того, чтобы активизировать (нажать на) К1. Предполагается, что клавиши пронумерованы таким образом, что
к1 > к2 >... > кп > 0. (1)
Пусть А - конечный набор символов а19а2,...,ап (буквы какого-либо естественного языка Ь и, возможно, некоторые знаки препинания), предназначенный для раскладки на клавишах множества К. Предполагается, что нам известны относительные частоты Х15 X 2,..., Хп встречаемости этих символов в репрезентативных текстах (К -текстах), написанных на языке Ь , причем без ограничения общности можно считать, что
Х1 >Х2 >...>Хп >0.
В условиях (1), (2) на раскладке
(2)
Р(ап,ап_1,...,а1) =
K17K2,...,Kn_j+1,...,Kn
ч ап>ап-1>
,aj,
(3)
работа, затрачиваемая на набор Я-текста, достигает минимального значения*. Здесь сама раскладка представлена в виде подстановки п-ой степени, указывающей, на каких клавишах размещаются те или иные символы. Согласно (3) наилучшей является такая раскладка, в которой чаще встречающиеся символы размещаются на менее трудоемких клавишах, а реже встречающиеся - на более трудоемких клавишах.
И еще один вывод следует из (3): при проектировании оптимальной клавиатуры, сводящейся к привязке каждого символа к той или иной клавише, более важной является информация о характере ранжировки клавишей и символов, нежели точные числовые значения показателей к 1 и X1, на основе которых производятся сами ранжировки.
В настоящей статье теоретическое решение проблемы адаптируется к практической ситуации, то есть к раскладке символов на русской и анг-
* Усманов З.Д. Об оптимальной раскладке символов на клавиатуре. // Программные продукты и системы. -2004. - № 2. - С.32-39.
лийской клавиатурах. В связи с тем, что дословное применение теоретического подхода в этих случаях реализовать не удается, мы говорим не об оптимальных, а о наилучших раскладках символов на компьютерной клавиатуре.
Ранжировка клавишей. Для русского языка нас будет интересовать раскладка 33 букв русского алфавита, а для английского - 26 латинских букв, 3 знаков препинания (точки, запятой и точки с запятой) и знака апострофа. В обоих случаях предполагается, что переразмещение символов будет происходить в пределах тех клавишей, на которых они располагаются в настоящее время.
Для ранжирования клавишей, основанного на значениях показателя к 1 , использован метод экспертных оценок. Двадцать программистов, практикующих слепой десятипальцевый метод набора информации на клавиатуре, по 10-балльной системе выставили 33-м клавишам, предназначенным для размещения символов, собственные оценки. Эти оценки характеризуют относительные (безразмерные) трудозатраты на активизацию (нажатие) той или иной клавиши. Усредненные результаты по каждой клавише приведены в таблице 1, которая представлена в виде фрагмента компьютерной клавиатуры.
Таблица 1
7,90
Q W E R T Y U I O P { } \
5,15 4,25 3,35 3,25 2,68 1,88 2,45 3,80 4,05 4,65 6,10 6,38 7,45
A S D F G H J K L "
2,05 1,67 1,45 0,30 1,22 1,02 0,80 1,85 2,57 3,80 4,40
Z X C V B N M ?
4,05 4,35 2,25 1,83 2,28 2,58 3,20 4,35 5,25 4,90
Здесь латинскими буквами и специальными символами указываются клавиши английской компьютерной клавиатуры, которые использованы для раскладки и которым снизу приписаны экспертные значения относительных трудозатрат на их активизацию.
Отметим закономерность, исходящую от экспертов: клавишам, расположенным ближе к центру, выставлены меньшие оценки в сравнении с периферийными клавишами. В частности, легче достижимыми являются клавиши среднего ряда (на уровне Caps Lock), над которыми в исходном положении при слепом десятипальцевом методе
а
1
4 О 0,0724
5 I 0,0686
6 N 0,0667
7 8 0,0642
8 Я 0,0562
9 н 0,0524
10 Б 0,0419
14 М 0,0254
15 ^ 0,0216
16 Р 0,0207
17 О 0,0205
18 У 0,0192
19 р 0,0178
20 в 0,0146
24 К 0,0088
25 ' 0,0067
26 X 0,0019
27 } 0,0016
28 X 0,0012
29 0 0,0011
30 0,0000
печатания располагаются пальцы левой и правой
рук.
Таблица 1 определяет по существу ранжировку клавишей с точки зрения экспертов. К примеру, в качестве К1 следует рассматривать клавишу английской клавиатуры, показатель которой к1 = 7,90 имеет наибольшее значение; в качестве К33 - клавишу Е, показателю которой приписывается наименьшее значение, к33 = 0,30 и т.д.
3. Частота встречаемости букв. Для изучения частот встречаемости букв были извлечены случайные выборки из литературных произведений, газетных и журнальных статей, причем из русских текстов объемом порядка 115 страниц, содержащих 281117 знаков, а из английских текстов - порядка 120 страниц с 294186 знаками. Путем обработки всевозрастающего количества страниц была выявлена экспериментальная сходимость относительных частот встречаемости букв. Методами корреляционного и дисперсионного анализов установлено, что случайные выборки как русских, так и английских текстов объемом не менее 10 страниц (приблизительно 24 000 знаков) являются репрезентативными (Я-текстами) в том смысле, что они характеризуются статистически неразличимыми распределениями относительных частот встречаемости букв.
В таблицах 2 (для русского языка) и 3 (для английского) указанные частоты (для соответствующих букв) приведены в порядке убывания их значений.
Таблица 2
1 а л
1 О 0,1117
2 Е 0,0845
3 А 0,0789
4 И 0,0749
5 Н 0,0667
6 Т 0,0625
7 С 0,0555
8 Л 0,0473
9 Р 0,0465
10 В 0,0446
11 М 0,0327
1 а л
12 К 0,0324
13 Д 0,0305
14 П 0,0276
15 У 0,0262
16 Я 0,0202
17 Ы 0,0195
18 Ь 0,0186
19 Г 0,0179
20 Б 0,0172
21 З 0,0168
22 Ч 0,0145
1 а л
23 Й 0,0118
24 Ж 0,0103
25 Х 0,0095
26 Ш 0,0079
27 Ц 0,0041
28 Щ 0,0034
29 Э 0,0032
30 Ф 0,0023
31 Е 0,0003
32 Ъ 0,0002
33 Ю 0,0001
1 а л
1 Е 0,1174
2 Т 0,0870
3 А 0,0813
1 а1 л
11 Ь 0,0401
12 С 0,0270
13 и 0,0265
Таблица 3
1 а л
21 0,0141
22 0,0135
23 V 0,0091
Отметим, что в таблице 3, в сравнении с таблицей 2, помимо букв указаны также и частоты встречаемости 4-х знаков, которые принимают участие в раскладках на клавишах компьютерной клавиатуры.
Инвариант ранжирования букв. Как следует из предыдущего пункта, распределение относительных частот является статистическим инвариантом по отношению к Я-текстам. Однако для проектирования оптимальной раскладки символов требуется не этот результат, а сведения о ранжировке букв.
Изучение этого вопроса показало, что ранжировка букв, порождаемая относительными частотами, оказывается неустойчивой (неинвариантной) по отношению к К-текстам. Иными словами, для К-текстов различных отраслей знания, различных авторов, различных произведений одного и того же автора и т.п. и ранжировки букв оказываются различными. Такая ситуация не позволяет осуществить оптимальную раскладку букв по методу, описанному выше. По этой причине Я-тексты были подвергнуты более детальному исследованию. В результате чего удалось обнаружить новый нетривиальный инвариант, характеризующий устойчивость ранжировки буквенных блоков.
Дополнительный анализ распределения частот встречаемости символов в русских и английских Я-текстах показал, что символы проявляют тенденцию группирования: для русского языка - в 17 блоков, в их числе 1 блок четырехбуквенный, 3 блока трехбуквенных, 7 двухбуквенных и 6 одно-буквенных (табл. 4); а для английского языка - в 14 блоков, среди которых 1 блок пятибуквенный, 1 блок четырехбуквенный, 3 блока трехбуквенных, 3 двухбуквенных и 6 однобуквенных (табл. 5, удобства ради в этой таблице, а также в некоторых других местах статьи знаки препинания и апостроф названы буквами). В этих таблицах группы букв взяты в рамки, для однобуквенных блоков рамки не используются.
Таблица 4
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
ОЕАИНТСЛРВМ КДПУ
16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 Я Ы |Ь Г Б З |Ч |Й Ж |Х Ш
ЦЩ Э Ф Е Ъ Ю
|Е Ъ |Ь
Таблица 5
1 2 3 4 5 6 7 8 9 10 11 12 13 14
E T A O
I N 8 К Н Б Ь сим
15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
W F G Y P
B .
V K
X J Z Q
Блочное группирование букв характеризуется следующими свойствами:
• в пределах одного блока относительные частоты букв достаточно близки (отличаются в третьем или же в четвертом знаках после запятой);
• блоки упорядочены в том смысле, что частоты встречаемости букв из одного блока превосходят частоты каждой буквы из последующих блоков;
• ранжировки букв для различных R-текстов сохраняют неизменным порядок следования блоков; в пределах самих блоков входящие в них буквы равноправны и могут меняться местами.
Таким образом, имеет место следующее статистическое утверждение: ранжировки буквенных блоков, представленные в таблицах 4 и 5, инвариантны по отношению к R-текстам.
Экспериментальная проверка этого утверждения по отдельности для русского и английского языков выполнялась по следующей схеме. Вначале случайным образом производился выбор 8-10 R-текстов. Для каждой выборки вычислялись распределения относительных частот встречаемости букв. Затем буквам, входящим в один и тот же блок в согласии с таблицами 4 и 5, присваивались новые значения частот, равные их средним взвешенным значениям. Тем самым буквы становились равноправными в смысле ранжировки в пределах блока. Далее с учетом изменения частот блочных букв по откорректированным распределениям вновь осуществлялась ранжировка букв.
При сравнении вновь полученных ранжировок для различных R-текстов обнаружилось:
• полное совпадение порядковых номеров одноблочных букв (так, русские буквы О, Е, С, Ч, Ф, Ю во всех ранжировках сохраняли свои порядковые номера 1, 2, 7, 22, 30, 33 соответственно);
• полное совпадение порядка следования других блоков (так трехбуквенный блок М-К-Д или же двухбуквенный блок Й-Ж во всех ранжировках привязывались соответственно к группам порядковых номеров 11-12-13 и 23-24 ).
Дополнительные эксперименты подтверждали инвариантность блочного ранжирования.
Оптимальная поблочная раскладка. Предыдущее утверждение предоставляет возможность получить оптимальную поблочную раскладку русских и английских букв на основе результата, описанного во введении к настоящей статье. Действительно, поскольку порядок букв внутри одного блока не имеет значения, естественно предпо-
ложить, что их частоты на самом-то деле равны. Присваивая относительным частотам этих букв одно и то же значение, равное средневзвешенному значению их прежних частот, мы получаем новое распределение относительных частот встречаемости букв в R-текстах. Это распределение, в свою очередь, порождает ранжировку букв (в порядке убывания их относительных частот), однако неединственную вследствие того, что буквы из одного блока не поддаются упорядочению.
В таких предпосылках применение формулы (3) позволяет получить раскладку букв на компьютерной клавиатуре, которую естественно воспринимать как оптимальную раскладку буквенных блоков. Если порядковые номера, используемые в таблицах 4 и 5, интерпретировать в качестве номеров клавишей компьютерной клавиатуры, то сами таблицы по существу в развернутом виде характеризует формулу (3), то есть задают оптимальную поблочную раскладку букв (с произвольным порядком букв в самих блоках).
Наилучшие раскладки. Оптимальная поблочная раскладка букв не приводит к окончательному результату. Причина в том, что она однозначным образом закрепляет группу букв за группой клавишей (например, русские буквы А и И - за клавишами K30, К31, а буквы Л, Р и В или же Ь, Г, Б и З - за клавишами K24, К25, К26 или К13, К14, К15 и К16 соответственно), однако внутри группы (блока) клавишей порядок следования букв оставляет произвольным. Следовательно, оптимальная поблочная раскладка не дает единственного решения интересующей нас проблемы. Тем не менее, она в сравнении с начальной ситуацией, когда в нашем распоряжении имелось 33! « 1040 возможных раскладок на русской клавиатуре и 30! « 1032 - на английской, значительно сокращает число допустимых решений и предоставляет дальнейший выбор из 663552 оставшихся раскладок для русского языка и 4976640 раскладок для английского, которые возникают вследствие того, что внутри каждого из блоков возможны перестановки букв.
Следующий этап в принятии решения естественно связать с поисками таких раскладок, которые наилучшим образом приспособлены к реализации слепого десятипальцевого метода работы на клавиатуре.
В соответствии с этим методом клавиши клавиатуры разделяются на 8 зон. Каждая зона предназначается для работы конкретного пальца левой и правой руки. При использовании этого метода чрезвычайно неудобными считаются такие ситуации, когда приходится печатать подряд две буквы, расположенные в зоне работы одного и того же пальца. Вероятно, полностью устранить возникновение таких ситуаций невозможно, однако их число можно уменьшить за счет подходящей расстановки букв внутри буквенных блоков. Это,
кстати, дает возможность определить однозначную раскладку букв по клавишам клавиатуры.
Отметим, что на этапе окончательного формирования раскладок русских и английских букв на компьютерной клавиатуре существенно используются данные о частотах встречаемости в текстах пар букв.
Получаемые таким образом раскладки названы нами наилучшими, поскольку на первом этапе их проектирования оптимальным образом размещаются буквенные блоки, а на втором фиксация позиций букв внутри блоков осуществляется для наилучшего обеспечения слепого десятипальцево-го метода печатания. Необходимо отметить, что на втором этапе проектирования не удается полностью устранить элементы субъективизма в принятии решений, а потому в итоге наилучших раскладок может оказаться несколько. Далее приводится по одному из вариантов наилучших раскладок русских и английских букв на компьютерной клавиатуре.
Таблица 6
Е
0 Е Я Т У и I О р { }
Ц Й Г Ь Ы В Д З Ж Щ Ю Ъ
А 8 Б Р О н ] К Ь "
Р Н Т О А И Е Л П Б Э
X X С V в N М , ?
Ч Ш М С К У Я Х Ф
Таблица 7
0 Е Я Т У и I О р { }
0 V У о W К м
А 8 Б Р О н ] К Ь "
Б 8 N Е О А т н с в ъ
X X С V в N М , ?
К X ь I и Е р 3
В этих таблицах в верхней строке символы и буквы английской клавиатуры указывают позиции тех клавишей, на которых располагаются русские и английские буквы в соответствии с наилучшей раскладкой.
Замечание. При реализации оптимальной поблочной раскладки букв, а затем и условий для наилучшего обеспечения слепого десятипальцево-го метода печатания существенно использовалась ранжировка клавишей, полученная на основе экспертных оценок. Однако мы могли бы воспользоваться и другой ранжировкой, например П. Клаус-лера, в которой группам клавишей присваиваются одинаковые весовые значения трудозатрат. Вполне понятно, что в этом случае после применения оптимальной поблочной раскладки букв нам пришлось бы иметь дело с большим разнообразием раскладок и осуществлять перебор большего числа вариантов размещения букв для наилучшего обеспечения слепого десятипальцевого метода печатания.
ДИНАМИЧЕСКОЕ КОНФИГУРИРОВАНИЕ СИСТЕМЫ ИМИТАЦИОННОГО МОДЕЛИРОВАНИЯ МОРСКОЙ ОБСТАНОВКИ
В.Ю. Андреев, А.Ф. Базлов
Задача имитационного моделирования морской обстановки является неотъемлемой частью разработки морских тренажерных комплексов. В настоящее время эта задача решается для целого ряда тренажеров различного назначения.
Одной из особенностей моделирования морской обстановки является необходимость имитации функционирования множества сложных объектов, входящих в ее состав. В частности, к таким объектам относятся надводные корабли и подводные лодки, летательные аппараты, стационарные объекты (буи, нефтяные вышки и т.п.). Большинство объектов являются сложными техническими системами. В связи с этим задача создания полноценной модели морской обстановки является са-
мостоятельной проблемой разработки морских тренажеров [2].
Разработка имитационных моделей объектов морской обстановки имеет ряд особенностей:
- количество типов моделируемых объектов достаточно велико (несколько десятков);
- перечень моделируемых объектов в начале разработки тренажера определяется лишь ориентировочно и постоянно уточняется в ходе разработки тренажера;
- перечень моделируемых объектов в начале разработки тренажера определяется лишь ориентировочно и постоянно уточняется в ходе разработки тренажера;