Какую команду нужно ввести с клавиатуры mv, чтобы включить расширенный алгоритм подхода

Обновлено: 20.11.2024

Число людей, использующих компьютеры в деловых и личных целях, увеличивается по мере развития технологий. Применение эргономических приемов на компьютерных рабочих станциях снижает испытываемый мышечно-скелетный дискомфорт и повышает общую удовлетворенность пользователей. Клавиатуры доступны в различных системах, от компьютеров до мобильных устройств, и имеют разные формы и размеры. Известно, что размер и форма клавиатуры влияют на положение верхних конечностей пользователя. Альтернативный дизайн клавиатуры помогает уменьшить боль в руках, возникающую из-за неудобного положения рук. Большинство предыдущих исследований пытались оптимизировать раскладку клавиатуры на основе эргономического набора текста и частоты совпадения букв. В этом исследовании рассматривается частота появления 3000 наиболее часто используемых слов в английском языке. Во-первых, анализатор текста вычисляет частоту каждой пары букв. Затем генетический алгоритм применяется для разработки эргономически оптимизированной клавиатуры, чтобы свести к минимуму общее расстояние перемещения пальца между выбранными буквенно-цифровыми символами. Результаты показали, что пройденное расстояние, полученное с помощью предложенной раскладки клавиатуры, меньше, чем для клавиатуры QWERTY во всех различных типах текстов, в которых было достигнуто улучшение в среднем на 6,04%. Поэтому предлагаемый дизайн можно использовать для клавиатур, чтобы сократить время и утомляемость.

Редактор: М. Сохел Рахман, Бангладешский инженерно-технологический университет, БАНГЛАДЕШ

Получено: 12 февраля 2019 г.; Принято: 2 декабря 2019 г.; Опубликовано: 7 января 2020 г.

Авторское право: © 2020 Онсороди, Корхан. Эта статья находится в открытом доступе и распространяется в соответствии с условиями лицензии Creative Commons Attribution License, которая разрешает неограниченное использование, распространение и воспроизведение на любом носителе при условии указания автора и источника.

Доступность данных: все соответствующие данные находятся в документе и в файлах вспомогательной информации.

Финансирование: авторы не получали специального финансирования для этой работы.

Конкурирующие интересы. Авторы заявили об отсутствии конкурирующих интересов.

Введение

Использование компьютеров стало необходимостью для всех целей. Клавиатура представляет собой одно из самых популярных и эффективных устройств для вставки, редактирования, удаления и обновления длинных строк информации. Клавиатуры были впервые представлены более 100 лет назад для облегчения работы машинистки.

На производительность печати может влиять раскладка клавиатуры, что также помогает снизить риск заболеваний опорно-двигательного аппарата. Исследования показывают, что некоторые факторы, такие как расстояние перемещения, сила нажатия на клавишу и тактильная обратная связь, влияют на мышечную усталость и дискомфорт [1].

Двумя наиболее часто используемыми клавиатурами являются клавиатуры QWERTY и Dvorak. С тех пор, как в 1878 году на пишущей машинке появилась традиционная раскладка QWERTY, было предпринято много усилий, чтобы улучшить присущую ей неэффективность. Упрощенная клавиатура Дворака (DSK) получила очень положительную оценку с точки зрения производительности и обучаемости пользователя; однако он может быть очень неэффективным при наборе текста на языках, отличных от английского, поскольку он был разработан с использованием только английского корпуса.

При попытке легко ввести информацию в компьютер возникают разные проблемы. Данные вводятся в компьютер через различные аппаратные носители. Голос и рукописный ввод — это два способа ввода данных, но алфавитная клавиатура остается одной из лучших технологий для точного и быстрого ввода большого количества информации.

В этом документе рассматривается проблема ввода текста и предлагается оптимальная раскладка клавиатуры для английского языка.

Чтобы правильно определить эту проблему, используется следующий подход: сначала предлагается анализ слов, а затем применяется систематический план раскладки для разработки новой эргономичной клавиатуры.

С этой целью был написан текстовый анализатор для анализа слов. Анализатор выдает наиболее часто встречающиеся буквы и наиболее часто встречающиеся пары букв в тексте.

Таким образом, основной целью этой статьи является разработка новой раскладки клавиатуры для задачи раскладки клавиатуры (KAP), основанной на частоте использования букв, и создание оптимальной модели физической клавиатуры. Можно отметить, что в этой статье в раскладке клавиатуры рассматривается только 26 букв.

Обзор литературы

В настоящее время используются различные типы клавиатур разной формы и раскладки. Каждый из них имеет различные преимущества и недостатки. Клавиатура QWERTY замедляет скорость набора текста и приводит к несбалансированной нагрузке на левую и правую руки [2]. Клавиатура QWERTY была представлена ​​братьями Шоулз в 1873 году. Первоначально она была разработана для английского языка, а затем для других языков, таких как французский и немецкий. Это привело к появлению клавиатур AZERTY и QWERTZ.По сравнению со случайной раскладкой клавиатура QWERTY показала, что для неопытных и относительно более опытных пользователей QWERTY является лучшей раскладкой [3]. Маккензи [4] показал, что набор текста на клавиатуре QWERTY выполняется быстрее, чем на клавиатурах ABC, Dvorak, Fitaly, Just Type и Telephone.

Раскладка клавиатуры имеет некоторые преимущества: она позволяет набирать текст без усталости, максимально увеличивает скорость набора, снижает количество ошибок при наборе и позволяет быстро освоить метод слепой печати [5, 6]. Кроме того, распределение рабочей нагрузки при постукивании, чередование рук и пальцев и направление ударов должны быть эргономическими критериями, на которые необходимо обратить внимание при создании новой клавиатуры [7].

Проблема расположения клавиш (KAP) известна как наилучшее потенциальное расположение букв на клавиатуре на основе эргономических процедур. Для создания нового макета были использованы отличительные методы использования функции оценки, основанные на сложном наборе эргономических критериев. В таблице 1 представлен список доступных исследований в литературе по KAP.

Важность эргономичного дизайна заключается в том, чтобы свести к минимуму расстояние перемещения, тем самым уменьшая количество повторяющихся движений пальцев. Предположим, что дизайн клавиатуры может сократить перемещение пальца на 1 см на каждую букву (в настоящее время примерно 5 см на слово); если человек набирает в среднем 100 слов в день (электронная почта, текстовые сообщения и т. д.), то 100 слов*5 см*365 дней равняются 1,825 километрам пути, который будет сэкономлен на человека в год. Би и др. [8] изготовили и изучили клавиатуры для английского, французского, испанского, немецкого и китайского языков, чтобы сократить расстояние перемещения примерно до половины расстояния QWERTY для всех пяти языков.

Карренбауэр и Оуласвирта [9] разработали математическую модель для оптимизации раскладки клавиатуры. С этой целью была предложена модель целочисленного программирования для задачи о назначении букв, которая была решена методом ветвей и границ. Изери и Эксиоглу [10] исследовали стоимость орграфов для оптимизации раскладки клавиатуры. Они представили систематическую методологию разработки эргономичных и оптимальных раскладок клавиатуры. В исследовании также изучалось влияние столбцов, строк, стрелок и точек на скорость нажатия на диграфы. Ян и Мали [11] изучали проблему раскладки клавиатуры, чтобы уменьшить расстояние перемещения пальцев. Они разработали метаэвристический алгоритм имитации отжига для изменения раскладки клавиатуры. Результаты показывают, что предложенный метод способен улучшить раскладку клавиатуры и превзойти лучший по сравнению с подходами, описанными в литературе.

Методология

Было проведено множество исследований по разработке новой раскладки клавиатуры, и в каждом из них учитывались различные алгоритмы и использовались разные методы. Фиг.1 иллюстрирует процедуру предлагаемого способа. Как показано на рис. 1, сначала извлекаются 3000 наиболее часто встречающихся слов. Затем номера каждой пары букв вычисляются программным обеспечением Text Analyzer. Затем для решения задачи разрабатываются модель математического программирования для раскладки клавиатуры и метаэвристический алгоритм. Наконец, результаты, полученные с помощью предлагаемого метода, сравниваются с клавиатурой QWERTY.

Однако в основе многих исследований лежит популярность частотных сочетаний букв, но изучение популярности комбинаций буквенных пар требует большего внимания. Соответственно, настоящее исследование сосредоточено на частоте комбинаций обеих букв и популярности каждой буквы для разработки оптимального макета. Были использованы 3 000 самых популярных слов, которые используются в повседневной беседе или в проанализированном тексте.

На основе языка C-Sharp написана программа для анализа слов на разных языках. Код сначала анализирует частоту каждой буквы, а затем парные комбинации букв. Считается, что два основных фактора минимизируют движение пальцев на виртуальной клавиатуре. Этими двумя факторами являются частота каждой пары букв и относительные расстояния между клавишами. Цель состоит в том, чтобы оптимизировать раскладку клавиатуры таким образом, чтобы при наборе текста на такой клавиатуре происходило наименьшее расстояние перемещения. Это означает, что наиболее часто встречающиеся клавиши должны располагаться в центре клавиатуры, а часто соединяемые буквы должны быть ближе друг к другу, чем менее часто соединяемые буквы.

Интерфейс программы, показанной на рис. 2, называется Text Analyzer. Анализатор текста обладает следующими свойствами: показывает частоту каждой буквы, показывает частоту буквосочетаний, включает или исключает знаки препинания, включает или исключает пробелы, чувствителен к заглавным буквам и может использоваться для любого языка.

Программа способна подсчитывать количество каждой буквы отдельно, а также количество комбинаций из двух и более букв. Эта функция управляется опцией размера окна. Параметр с учетом регистра показывает разницу между заглавными и строчными буквами. Можно даже учитывать знаки препинания, такие как запятые, точки, вопросительные знаки и т. д.

Примечательно, что эту программу можно использовать для любого языка; таким образом, этот механизм проектирования макета может быть разработан для всех языков. Таким образом, анализатор текста вычисляет двойные комбинации всех букв (см. Таблицу A в приложении S1). Используя двойные комбинации из таблицы A в приложении S1, представлена ​​математическая модель программирования для разработки раскладки клавиатуры. Если рассматривать I, J и K как наборы псевдонимов букв клавиатуры, координация по осям X и Y каждой буквы, такой как k (k∈K), показана как a< em>k и bk соответственно. Модель оптимизирует существующую (старую) систему, правильно назначая каждую координату оси X и оси Y набору букв клавиатуры. На рис. 3 схематически представлена ​​эта процедура. Как показано на рис. 3, (2,2) представляет координаты оси X и оси Y буквы B в существующей системе, которая показана как aB< /em> и bB. Модель определяет, что в оптимальном случае координаты буквы B, показанные как xB и y< sub>B следует заменить на (1,2). Это означает, что существующая система показывает потенциальные координаты букв, а на следующем шаге модель присваивает координаты буквам.

Поскольку новый макет будет основан на координатах по осям X и Y существующей системы, математическая модель назначает только одну возможную координату по оси X (например, координату k) каждой букве (например, i) путем введения двоичной переменной с именем ni,k, которая равна 1, только если k th координата оси X присваивается i. Тот же механизм повторяется путем введения двоичной переменной с именем mi,k для определения координаты оси Y. каждой буквы i.

i, j и k: набор букв клавиатуры (i ∈ I, j∈ J, k ∈ K)

wi,j: коэффициент важности между буквой i и буквой j

ak: координата X k-го ключа в существующей системе

bk: координата Y k-го ключа в существующей системе

xi: координата X i-й буквы в новой системе

yi: координата Y i-й буквы в новой системе

В соответствии с: (2) (3) (4) (5)

Целевая функция минимизирует взвешенное расстояние между ключами. Для каждой буквы ограничения (2) и (3) назначают определенное место на осях X и Y. Ограничение (4) гарантирует, что каждой букве будет присвоено уникальное место, а ограничение (5) гарантирует, что каждому местоположению будет назначена уникальная буква. Поскольку математическую модель можно интерпретировать как квадратичную задачу о назначениях, которая, как известно, является Np-трудной [12], для ее решения в больших масштабах разработан метаэвристический алгоритм.

Чтобы свести к минимуму общее расстояние, проходимое на клавиатуре, необходимы два компонента. Первая — это комбинация между каждыми двумя буквами, полученная из таблицы 2, а вторая — это расстояние между центроидами каждой клавиши на обычной клавиатуре. То есть буква (s) рядом с буквой (a) удалена на одну единицу, или буква (d) удалена на 2 единицы от буквы (a). Эти два компонента импортируются в предлагаемую модель, которая закодирована как генетический метаэвристический алгоритм в программном обеспечении MATLAB.

В этой книге мы будем использовать программную среду R для всего нашего анализа. Вы одновременно изучите методы R и анализа данных. Поэтому для продолжения вам потребуется доступ к R. Мы также рекомендуем использовать интегрированную среду разработки (IDE), такую ​​как RStudio, чтобы сохранить свою работу. Обратите внимание, что курсы или семинары обычно предлагают доступ к среде R и IDE через ваш веб-браузер, как это делается в облаке RStudio 12 . Если у вас есть доступ к такому ресурсу, вам не нужно устанавливать R и RStudio. Однако, если вы намерены стать продвинутым аналитиком данных, мы настоятельно рекомендуем установить эти инструменты на свой компьютер 13 . И R, и RStudio бесплатны и доступны в Интернете.

2.1 Практический пример: убийства с применением огнестрельного оружия в США

Но тогда вы помните, что США — это большая и разнообразная страна, включающая 50 очень разных штатов, а также округ Колумбия (округ Колумбия).

Например, в Калифорнии проживает больше населения, чем в Канаде, а в 20 штатах США проживает больше населения, чем в Норвегии. В некотором отношении различия между штатами в США сродни различиям между странами Европы.Кроме того, хотя это и не указано в приведенных выше таблицах, уровень убийств в Литве, Украине и России превышает 4 случая на 100 000 человек. Так что, возможно, новостные сообщения, которые волнуют вас, слишком поверхностны. У вас есть варианты, где жить, и вы хотите определить безопасность каждого конкретного штата. Мы получим некоторые сведения, изучив данные об убийствах с применением огнестрельного оружия в США в 2010 году с помощью R.

Прежде чем мы начнем с нашего примера, нам нужно охватить логистику, а также некоторые из самых основных строительных блоков, которые необходимы для получения более продвинутых навыков R. Имейте в виду, что полезность некоторых из этих строительных блоков может быть неочевидна сразу, но позже в книге вы оцените овладение этими навыками.

2.2 Самые основы

Прежде чем мы начнем работу с мотивирующим набором данных, нам нужно охватить самые основы R.

2.2.1 Объекты

Предположим, что старшеклассник просит нас помочь решить несколько квадратных уравнений вида \(ax^2+bx+c = 0\) . Квадратичная формула дает нам решения:

\[ \frac>\,\, \mbox < и >\frac> \], которые, конечно, меняются в зависимости от значений \(a\) , \(b\) и \(c\) . Одним из преимуществ языков программирования является то, что мы можем определять переменные и писать выражения с этими переменными, подобно тому, как мы это делаем в математике, но получая числовое решение. Ниже мы напишем общий код для квадратного уравнения, но если нас попросят решить \(x^2 + x -1 = 0\) , то мы определим:

в котором хранятся значения для последующего использования. Мы используем для присвоения значений переменным.

Мы также можем присваивать значения, используя = вместо , но мы не рекомендуем использовать =, чтобы избежать путаницы.

Скопируйте и вставьте приведенный выше код в консоль, чтобы определить три переменные. Обратите внимание, что R ничего не печатает, когда мы делаем это присваивание. Это означает, что объекты были определены успешно. Если бы вы допустили ошибку, вы получили бы сообщение об ошибке.

Чтобы увидеть значение, хранящееся в переменной, мы просто просим R оценить a, и он показывает сохраненное значение:

Более явный способ попросить R показать нам значение, хранящееся в a, — это использовать print следующим образом:

Мы используем термин объект для описания того, что хранится в R. Переменные являются примерами, но объекты также могут быть более сложными объектами, такими как функции, которые будут описаны позже.

2.2.2 Рабочее пространство

Когда мы определяем объекты в консоли, мы фактически меняем рабочее пространство. Вы можете увидеть все переменные, сохраненные в вашей рабочей области, набрав:

В RStudio на вкладке Среда отображаются значения:

Мы должны увидеть a , b и c . Если вы попытаетесь восстановить значение переменной, которой нет в вашей рабочей области, вы получите сообщение об ошибке. Например, если вы наберете x, вы получите следующее сообщение: Ошибка: объект 'x' не найден.

Теперь, поскольку эти значения сохраняются в переменных, для получения решения нашего уравнения мы используем квадратичную формулу:

2.2.3 Функции

После определения переменных процесс анализа данных обычно можно описать как набор функций, применяемых к данным. R включает в себя несколько предопределенных функций, и в большинстве конвейеров анализа, которые мы создаем, они широко используются.

Мы уже использовали функции install.packages, library и ls. Мы также использовали функцию sqrt для решения приведенного выше квадратного уравнения. Есть много других встроенных функций, и еще больше можно добавить с помощью пакетов. Эти функции не отображаются в рабочей области, поскольку вы их не определяли, но они доступны для немедленного использования.

Вообще, нам нужно использовать круглые скобки для вычисления функции. Если вы наберете ls , функция не будет оцениваться, а вместо этого R покажет вам код, определяющий функцию. Если вы наберете ls(), функция будет оценена, и, как показано выше, мы увидим объекты в рабочей области.

В отличие от ls , большинству функций требуется один или несколько аргументов. Ниже приведен пример того, как мы присваиваем объект аргументу функции log. Помните, что ранее мы определили a равным 1:

Вы можете узнать, что ожидает функция и что она делает, изучив очень полезные руководства, включенные в R. Вы можете получить помощь, используя функцию справки следующим образом:

Для большинства функций мы также можем использовать это сокращение:

Страница справки покажет вам, какие аргументы ожидает функция. Например, для запуска log требуется x и base. Однако некоторые аргументы являются обязательными, а другие необязательными. Вы можете определить, какие аргументы являются необязательными, отметив в справочном документе, что значение по умолчанию назначается с = . Их определение не является обязательным. Например, база журнала функции по умолчанию равна base = exp(1), что делает log естественным журналом по умолчанию.

Если вы хотите быстро просмотреть аргументы, не открывая справочную систему, введите:

Вы можете изменить значения по умолчанию, просто назначив другой объект:

Обратите внимание, что мы не указывали аргумент x как таковой:

Приведенный выше код работает, но мы можем сэкономить время на наборе текста: если имя аргумента не используется, R предполагает, что вы вводите аргументы в порядке, показанном в файле справки, или в виде args . Таким образом, не используя имена, предполагается, что аргументы - это x, за которым следует base :

Если используются имена аргументов, мы можем включать их в любом порядке:

Чтобы указать аргументы, мы должны использовать = и не можем использовать .

Есть несколько исключений из правила, согласно которому функции должны вычислять круглые скобки. Среди них наиболее часто используются арифметические операторы и операторы отношения. Например:

Читайте также: