Skip to content

Commit 5c23c37

Browse files
committed
Реализована возможность фиксации позиций в раскладке с использованием заглавных букв.
Дополнительно: - исправлена ошибка визуализации статистики по биграммам для активной раскладки с индексом [0] - дополнен файл README.md разделом про оптимизацию раскладок
1 parent 1745e64 commit 5c23c37

File tree

3 files changed

+321
-56
lines changed

3 files changed

+321
-56
lines changed

README.md

Lines changed: 16 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44

55
## Назначение программы
66

7-
Для целей расширенного анализа статистики в анализаторе используется ряд параметров, которые не используются в других анализаторах. Для таких параметров в программе вводится ряд специализированных терминов, не имеющих широкого употребления, но использование которых может существенно повыситьх глубину анализа и помочь сформировать индивидуально настроенную раскладку в соответствии с индивидуальными предпочтениями.
7+
Для целей расширенного анализа статистики в анализаторе используется ряд параметров, которые не используются в других анализаторах. Для таких параметров в программе вводится ряд специализированных терминов, не имеющих широкого употребления, но использование которых может существенно повысить глубину анализа и помочь сформировать индивидуально настроенную раскладку в соответствии с индивидуальными предпочтениями.
88

99
**Программа поддерживает:**
1010
- Загрузку и анализ существующих раскладок
@@ -156,4 +156,18 @@ kbda --text file.txt --alphabet string --output language.json
156156
- HSB - учитываются только биграммы, при которых на нижнем из двух рядов находятся средний или безымянный пальцы.
157157
- FSB - при котором учитываются только биграммы, при которых на нижнем ряду находятся средний или безымянный пальцы.
158158
- LSB - при котором учитываются только биграммы, набираемые через вертикальный ряд указательным и средним пальцем.
159-
```
159+
```
160+
161+
## Оптимизация раскладок
162+
163+
В анализаторе реализованы две команды для однократного поиска оптимизированной раскладки и для непрерывного.
164+
165+
Алгоритм поиска носит вероятностный характер - сначала генерируется набор случайных раскладок, на основе которых с использованием относительно небольшого перебора отбирается некоторый локальный минимум.
166+
167+
Поскольку функция совокупной оценки раскладки зависит от большого количества параметров, то она содержит много таких локальных минимумов. В связи с этим при нескольких последовательных запусках однократного поиска найденная на каждом шаге раскладка может оказаться лучше или хуже предыдущих.
168+
169+
С учетом изложенного, был реализован режим непрерывного поиска наилучшего варианта. В ходе такого поиска раскладки, которые оказались на очередной итерации лучше всех предыдущих, могут записываться в заданный выходной файл. В результате такого поиска будет сформировано семейство раскладок по заданным критериям, которые рекомендуется дополнительно проанализировать вручную.
170+
171+
По опыту использования непрерывного режима, финальный кандидат может определиться через несколько десятков итераций, но может потребоваться и несколько сотен или даже больше.
172+
173+
С учетом изложенного, при изменении параметров конфигурационного файла рекомендуется сначала вручную выполнить несколько однократных итераций поиска и оценить насколько полученные раскладки соответствуют индивидуальным предпочтениям и только после этого выполнять глубокий поиск оптимальной раскладки по заданному набору параметров.

0 commit comments

Comments
 (0)