Методы обеспечения адаптивного взаимодействия
В табл. 2.5 перечислен ряд методов обеспечения адаптивного взаимодействия между пользователем, машиной и задачей с указанием соответствующего программного обеспечения. Хотя эту таблицу нельзя считать полной, содержащийся в ней список методов служит хорошей иллюстрацией многочисленных альтернативных методик проектирования, предназначенных для использования разработчиками адаптивных программных интерфейсов. Как показано в таблице, адаптивное программное обеспечение взаимодействия между человеком и ЭВМ подразделяется на адаптивные диалоговые системы, адаптивные консультативные системы и адаптивные обучающие системы. Системы всех трех категорий предназначены для оказания помощи пользователю, но в конкретных системах, как правило, особое внимание уделяется лишь каким-то определенным аспектам взаимодействия человек-—ЭВМ.
Адаптивные диалоговые системы
Различные методы проектирования диалога, перечисленные в табл. 2.5, включают в себя такие средства ввода—вывода информации, как естественный язык, речевой информационный обмен и графика. Предоставляя эти различные каналы коммуникации, адаптивная диалоговая система «пытается говорить языком неопытного пользователя». Например, при работе с электронной почтой главе какой-либо компании не пришлось бы вводить команды с клавиатуры, если бы адаптивная диалоговая система обеспечивала также речевой интерфейс, «понимающий» естественный язык. Очевидно, что для качественного адаптивного интерфейса потребуется обеспечение возможности работы с альтернативными вариантами организации диалога [3, 67].
Проектированию интерфейсов, использующих естественный разговорный язык, были посвящены работы нескольких исследователей. Однако серьезная проблема в разработке подобных диалогов заключается в том, что пользователи, как правило, испытывают затруднения при подборе для сложных команд и процедур точных словесных формулировок на естественном языке [94, 127]. Отсюда возникает задача создания таких программ обработки естественноязыковых конструкций, которые предоставили бы системе возможность правильно понимать команды пользователя даже при их неточных формулировках. Иногда может оказаться необходимым ведение диалогов, «разъясняющих» машине смысл информации, вводимой пользователем на естественном языке, подобных предложенным в работе [25]. Такая система в случае выявления во введенной программе двусмысленности либо задает пользователю вопрос, предполагающий ответ «Да/Нет», либо просит пользователя выбрать нужную команду из набора альтернатив или более четко сформулировать команду.
При разработке программных интерфейсов, использующих естественный язык, для улучшения качества диалога можно также пойти на ограничение круга вопросов, которые должна понимать система. Фрагментарно этот метод был применен при 'создании системы bLIZA [150]. Указанная система обеспечивает видимость «разумной» машины, выполняющей роль медика-консультанта в ситуации «врач — пациент», используя для этого только возможности, предоставляемые программой обра-
Таблица 2 5. Варианты адаптивных коммуникационных интерфейсов человек — ЭВМ
Адаптивные диалоговые системы
1. Интерфейсы, использующие естественный язык
А) Интерфейсы с процедурами уточнения и пояснения диалогов [25]
Б) Интерфейсы целевого назначения [150, 152, 159]
В) Интерфейсы, управляемые с помощью меню [143]
2. Интерфейсы с речевой формой обмена информацией
А) Интерфейсы с процедурами адаптивной подстройки [70, 104]
Б) Интерфейсы, способные к контекстному исправлению ошибок пользователя [12, 17, 138]
3. Интерфейсы, использующие графическое представление информации
А) Интерфейсы, в которых графический материал способствует проведению мысленных экспериментов [71]
Б) Интерфейсы с режимом одновременной работы в нескольких коммуникационных окнах на экране дисплея [20]
Адаптивные консультативные системы помощи пользователю
1. Активные, пассивные и «творческие» программы-посредники [149]
2. Узкоспециальные экспертные системы [18, 130]
3. Системы помощи пользователю в принятии решений [1, 4]
4. Диалоговые системы с неявной формой коммуникации [115]
5. Диалоговые системы типа DWIM [142]
6. Система пояснений, использующая краткое описание команды, указание последовательности выполняемых ею процедур и объяснение вероятных ошибок [31]
7. Системы контекстно-завнсимой помощи [46]
8. Система стандартизации способов доступа к памяти [87]
9. Системы с использованием конкретных обучающих примеров [62]
10. Система, исправляющая стиль [56, 84]
11. Системы, реализующие методологию «экскурсовода» [32]
Адаптивные обучающие системы
1. Системы с выводом на экран результатов выполнения текущей работы пользователя [76]
2. Диалоговые системы, использующие прн обучении метод Сократа [139]
3. Диалоговые системы, использующие метод подбора тематических примеров [24]
4. Обучающая система, основанная на методе управляемых открытий [19]
5. Системы диагностики и исправления неверных действий пользователя [40,
411
Ботки ключевых слов. Данная система понимает только очень небольшую часть вводимой пользователем информации, так как ее программное обеспечение позволяет лишь поделить введенный текст на составные части, а затем восстанавливать его уже по набору ключевых слов. Тем не менее метод обработки информации с помощью выделения ключевых слов может быть приемлемым для построения отдельных адаптивных интерфейсов.
Применение интерфейсов специального назначения более реалистично для ведения диалогов, использующих естественный язык, в системе оперативного доступа к базе данных [159] а консультативной системе помощи пользователю [152]. В обеих указанных работах показано, что применение естественного языка в диалоге человек—ЭВМ может быть достаточно успешным, если наделить систему «знанием» наиболее существенных семантических и прагматических понятий, употребляемых в сфере деятельности, для которой она разрабатывается. Так, система LUNAR [159] обрабатывает узкоспециальную информацию по лунной геологии, в то время как система Консультант по операционной системе UNIX [152] использует подробное описание различных аспектов управления файлами в этой операционной системе.
Третий способ проектирования диалога человек — ЭВМ на естественном языке еще больше ограничивает возможности взаимодействия. Отмечена высокая эффективность использования ограниченного естественного языка в интерфейсе типа меню, ориентированном на оконную форму представления информации. Такой программный интерфейс сам формирует для системы команды на естественном языке, основываясь на выбранных пользователем ключевых словах, высвечиваемых в окнах экрана дисплея. В этом случае система фактически управляет процессом генерирования команд пользователем и, сле - іовательно, исключается возможность задания им неверных команд. Более того, оказывается, что пользователи не испытывают трудностей в усвоении последовательности действий при ведении диалога, так как построенное предложение представляет собой своеобразную карту ранее выполненных действий. В поддержку этого метода проектирования свидетельствуют также результаты исследований по психологии поведения человека, которые показывают, что людям свойственно ограничивать список используемых ими как общеупотребительных слов, так и узкопрофессиональных терминов [78, 94]. Таким образом, можно сделать вывод, что создание адаптивных диалогов на языке, близком к естественному, — цель вполне достижимая.
При проектировании диалогов с речевой формой обмена информацией (см. табл. 2.5) особое внимание уделяется проблеме использования адаптивных систем автоматического распознавания речи для повышения точности распознавания. Например, выпускаемые в настоящее время промышленностью автоматические распознаватели речи, как правило, не являются универсальными и для использования их определенным человеком необходимо предоставить машине образцы произнесения им всех слов, которые он будет употреблять при вводе (этот процесс называется регистрацией). Автоматическое распознавание речи в условиях непосредственной работы пользователя часто ухудшается вследствие влияния на речевой сигнал различных факторов, которые не отражены в хранящихся шаблонах, как, например, в случае изменения речи в стрессовом состоянии, при высокой умственной нагрузке или когда на поступающий в ЭВМ речевой сигнал накладывается фоновый шум. Процедуры настройки для автоматического обновления речевых шаблонов в конкретных условиях работы могут обеспечить существенное улучшение качества распознавания по сравнению с использованием неизменяемых зарегистрированных образцов речи [70, 104].
В интерфейсы с автоматическим распознаванием речи можно попытаться ввести элементы интеллекта путем применения процедур автоматической коррекции ошибок, связанных с данным контекстом. Если для ведения диалога используется ограниченный синтаксис, можно спроектировать интерфейс таким образом, чтобы машина выявляла ошибочно составленные вводимые последовательности команд, видоизменяла их до наиболее вероятных наборов команд и затем, если это необходимо, представляла корректировку для подтверждения пользователю. В работе [17] указаны наиболее характерные операции, выполняемые программным обеспечением интерфейсов с автоматическим распознаванием речи, такие, как выявление фоновых эффектов, воздействующих на вводимую речь, определение значений слов, принимаемых по умолчанию, и автоматическая проверка системой правильности «понимания» ею речи человека. При использовании этих методов [138] было установлено, что точность автоматического распознавания может быть увеличена с 76 до 97%.
Были разработаны и более сложные способы исправления ошибок при автоматическом распознавании речи, включающие использование методики персонифицированных звуковых рядов; списки недопустимых звукосочетаний, используемые для предсказания наиболее вероятных следующих фрагментов речи, и использование полученной информации, например данных о предыдущей работе пользователей в подобных диалогах [12]. Тесты на восприятие ЭВМ естественного языка при автоматическом распознавании речи с использованием такой информации для корректировки ошибок обеспечили 77%-ное понимание 6000 правильно произнесенных предложений [13].
Последняя из перечисленных в табл. 2.5 подгруппа вариантов диалога для адаптивных интерфейсов связана с проблемой представления графических изображений. Применение графических изображений становится довольно распространенным при работе с обычными вычислительными системами и может быть полезно в адаптивных интерфейсах при обобщении больших объемов информации. Эффективность использования гра - фики при ведении диалога в адаптивных интерфейсах под - —ерждается системой STEAMER [71]. Используемый в STEA - ER графический интерфейс был создан для оценки возмож - істи предоставления обучаемым качественных моделей сложной имитационной двигательной установки. Графические модели, изображаемые на экране дисплея, могут видоизменяться обучаемыми, что помогает последним проводить мысленные эксперименты, приводящие к пониманию ими количественных взаимосвязей между отдельными параметрами двигательной установки. Этот пример отражает сложный характер связей между представлением информации и методами коммуникации в адаптивных человеко-машинных системах. Обычно достаточно трудными для понимания оказываются количественные модели типа «черного ящика». Однако, как показало использование системы STEAMER, графическое представление данных может в некоторой степени облегчить решение этих коммуникационных проблем.
Дальнейшее совершенствование методов графического представления информации привело к возможности создания изображений с высокой разрешающей способностью, представляемых в двоичном коде и используемых в командных языках и в программах текстообработки. Это позволяет пользователю выполнять задачу с помощью нескольких «коммуникационных окон», допуская тем самым функционирование параллельных каналов связи между человеком и ЭВМ [20]. Таким образом, диалог неопытного пользователя с адаптивной системой может осуществляться через несколько коммуникационных окон на экране дисплея.
Адаптивные консультативные системы помощи пользователю
Кроме того, что настраивающийся интерфейс способен вести диалог на языке неопытного пользователя, можно наделить его также и возможностью оказания человеку помощи в освоении языка, на котором «говорит» ЭВМ. Так, например, первый способ проектирования подобных систем (см. табл. 2.5) предусматривает наличие программы-посредника между пользователем и его задачей, исполняющей мониторные функции и обеспечивающей пользователя автоматическим инструктажем по работе с системными процедурами. Несколько типов такой программы-посредника были предложены для разработки [149]. Она может быть активной, пассивной и даже «творческой». Программа первого типа устанавливает связь с пользователем и переводит его сообщения на язык, понятный машине, в то время как пассивный вариант программы допускает ведение диалога непосредственно между пользователем и машиной. «Творческая» программа-посредник берет на себя выполнение системных функций, автоматически вызывая в каждый нужный момент другие программы помощи для решения обычных и обучающих задач.
Обеспечению пользователя такого рода консультациями большое значение придается также и при проектировании экспертных систем. (Более подробно экспертные системы обсуждаются в гл. 3 тома 3.) Кратко характеризуя эти программы «искусственного интеллекта», отметим, что их назначение — решать наиболее трудные вопросы некоторой конкретной области человеческой деятельности. Примеры экспертных систем как узкоспециальных консультантов для неопытных пользователей включают программу структурного анализа проблем органической химии DENDRAL [18] и программу диагностики инфекционных заболеваний крови MYCIN [130]. Отметим, что неопытные пользователи подобных экспертных систем составляют отдельный класс начинающих пользователей ЭВМ. Высококвалифицированные инженеры и специалисты предпочитают работать со сложноорганизованными интерфейсами, в которых машина аргументирует свои решения и в свою очередь может принимать советы от человека. Таким образом, проблема передачи пользователю научно-технической информации узкоспециального назначения, содержащейся в используемых экспертными системами базах данных, представляется решающей для их успешного применения.
Третья группа адаптивных систем данного типа (см. табл. 2.5) разрабатывается для оказания помощи пользователям в задачах принятия решений. Необходимость в такой помощи вытекает из широкого разнообразия возможных способов принятия человеком решений, многие из которых являются далеко не оптимальными [10, 151]. Поэтому было выдвинуто предложение по созданию систем, которые придали бы процессу принятия решений более структурированный вид, не оказывая при этом влияния на стиль работы и методологические предпочтения пользователя [1, 4]. Действительно, в тесной связи с разработкой таких систем находится проектирование человеко-машинных диалогов с неявной формой коммуникации [115]. Такая неявная связь позволяет ЭВМ работать с неопытным пользователем, помогая ему и не препятствуя при этом ходу выполнения задачи.
Следующий метод организации помощи пользователю реализуется в режиме работы ЭВМ, условно называемом «делай то, что я говорю» (do what I mean — DWIM), который был разработан для программной среды INTERLISP [142]. В этом применении подсистема DWIM осуществляет в основном функции корректора неверно составленных команд, который может быть вызван из отдельных подсистем INTERLISP, что позволяет автоматически выявлять и исправлять ошибки в командах. Данный режим работы освобождает программиста от утомительных переписываний неверных команд в программе на языке высокого уровня, а также предоставляет системе INTERLISP ограниченную автономию действий на основе информации, вытекающей из контекста. Не приходится и говорить о том, что проектировщик адаптивных интерфейсов должен быть крайне осторожен при разработке системы типа DWIM. Рассмотрим, например, ситуацию, в которой использование режима DWIM может привести к крайне нежелательным последствиям: пользователь пытается загрузить дисковые файлы с помощью команды DEPiRINT*, но пишет ее неверно, как DEPENT*. В зависимости от алгоритма корректировки интерфейс DWIM может стереть все пользовательские файлы, заменив введенную команду на DELETE*. Для предотвращения выполнения машиной неверных или нежелательных команд пользователя параллельно с разработкой интерфейса DWIM необходимо проектировать и оценивать ранее упомянутые процедуры диалоговых подтверждений и с учетом явных ограничений.
В работе [31] одной из целей автоматизированного проектирования являлось также и уменьшение нагрузки на пользователя. Была разработана система пояснений CADHELP, которая подстраивается к требованиям пользователей с применением трехступенчатого описания: краткое описание команды и ее назначения, ее стандартное объяснение с указанием последовательности выполняемых процедур и предоставление информации, содержащей список наиболее вероятных ошибок. Пояснения системы CADHELP обеспечивают пользователя также информацией, хранящейся в системе автоматизированного проектирования, что позволяет ему уделять больше времени решению главной задачи разработки электрических цепей. Используя подобные системы, неопытный пользователь ожидает (и это вполне оправданно) получить возможность творческой работы и свободного проектирования вместо того, чтобы заучивать сложные автоматизированные процедуры.
При осуществлении аналогичного метода проектирования различные системы подобного типа могут оказывать заметную помощь неопытному пользователю. Известна специальная программа для автоматизированных систем, способная оказывать пользователю помощь в зависимости от конкретных условий работы [46]. Создан также метод совмещения вспомогательной информации с работой программных средств, позволяющий сопровождать каждый шаг в последовательности ввода пользователем команд соответствующими синтаксическими руководствами. Исследования Маркуса [87] показывают, что при работе с системами оперативного доступа к библиографическим базам данных объем информации, получаемой неопытными пользователями, может быть значительно увеличен в случае включения в систему автоматизированного «помощника», предназначенного для стандартизации способов доступа к нескольким базам данных на основе базового набора команд. Наконец, согласно результатам работы [62], использование конкретных обучающих примеров вполне возможно и в системах текстового редактирования, разрабатываемых для неопытных пользователей.
Последние два способа ведения диалога для машинных консультативных систем, указанные в табл. 2.5, отводят адаптивным интерфейсам роль советчика. Например, система, называемая «Рабочее место автора», дает советы по стилистике при формировании описаний работы с операционной системой UNIX. Проведя анализ работы человека, использующего систему «Рабочее место автора», Гингрич [56] обнаружил, что такой автоматизированный «помощник» позволяет увеличить число выявленных ошибок и сократить продолжительность этапа редактирования. Как правило, пользователям нравится как объективный, так и приватный характер советов автоматического «ассистента».
Для подобных целей используют и так называемую методологию экскурсовода [32], позволяющую предотвращать тупиковые ситуации в ходе диалога между неопытным пользователем и ЭВМ. Разработана система, постоянно регистрирующая выполняемые пользователем действия и на основании их анализа оценивающая, способен ли пользователь довести задачу до конца по заранее указанному плану [32]. Если оказывается, что он не в состоянии самостоятельно завершить решение задачи, автоматически вызывается компьютерный наставник, именуемый «экскурсоводом», который помогает пользователю выйти из затруднительного положения.
Адаптивные обучающие системы
Последний класс методик создания адаптивных интерфейсов, представленный в табл. 2.5, используется при проектировании систем обучения и инструктировании неопытных пользователей [106]. В случаях, когда отсутствует возможность обеспечить пользователя при его работе на ЭВМ каким-ннбудь альтернативным языком общения с машиной или же автоматизированной системой помощи, вероятно, остается единственный способ повысить качественный уровень ведения диалога — обучить пользователей работе с автоматическими процедурами. Вследствие того что требования, предъявляемые к процессу обучения отдельных лиц, как правило, различаются, для неопытных пользователей рекомендуется создание индивидуальных условий обучения. Использование индивидуального подхода связано с разработкой диагностических обучающих моделей и применением соответствующих методик обучения. Для достижения этих целей применяются как адаптивные обучающие системы, так и автоматизированные системы обучения с элементами систем искусственного интеллекта.
Результаты широкомасштабных исследований адаптивных обучающих систем, использующих поведенческие методы, позволяют предполагать, что подобные системы следует разрабатывать таким образом, чтобы они могли адаптироваться соответственно данным обратной связи и обеспечивать пользователей информацией, которая как бы «ведет» обучающегося по задаче, что может существенно повысить эффективность обучения. Особо подчеркивается тот факт [76], что для создания качественных адаптивных обучающих систем в их программное обеспечение следует включить программы вывода на экран результатов текущей работы пользователя, так как сами по себе такие системы не допускают осуществления обратной связи с обучаемыми. Результаты проведенного исследования свидетельствуют о широких возможностях адаптивных коммуникационных систем человек — ЭВМ, которые еще предстоит изучить в дальнейшем.
Что же касается разработки интеллектуальных обучающих систем, то в этом случае методики проектирования адаптивных интерфейсов, как правило, связаны с проблемой выбора формы обучения. Так, например, в основу системы, предложенной авторами работы [139], был положен метод сократовой логики. На практике функционирование данной системы сводилось к следующему: машина достаточно активно проводит опрос пользователей и пытается выявить при этом их неверные концептуальные представления, которые являются наиболее очевидными в случае, когда пользователь дает на заданные вопросы логически противоречивые ответы. Другими словами, система, использующая метод сократовой логики, составляет вопросы для пользователя таким образом, чтобы выявить все аспекты его неправильного представления. В аналогичном обучающем диалоге [24] в качестве формы обучения применен метод подбора тематических примеров. Данный диалог был использован для проведения эксперимента по обучению пользователей диагностическим правилам в системе MYCIN. Компьютерный «наставник» подробно объяснял функционирование MYCIN на конкретных примерах. Диалоги, в которых применяется метод обучения с помощью тематических примеров, акцентируют внимание пользователя непосредственно на задаче, решаемой им с помощью ЭВМ, и представляются достаточно эффективным методом решения соответствующих задач.
В противоположность этим двум методам обучения, предполагающим, что сама система управляет процессом его проведения, авторы работы [19] предложили использование обучающего диалога, в котором ведущая роль отводится пользователю. Разработанный ими метод обучения можно кратко охарактеризовать как метод управляемых открытий. При его использовании обучающая система позволяет пользователю достаточно свободно исследовать поставленную задачу с целью постижения ее основных понятий и внутренних взаимосвязей под неявным руководством ЭВМ. Машина вмешивается в работу неопытного пользователя только в том случае, когда для исправления его неправильных концептуальных представлений необходимо предоставить ему специальные инструкции.
При рассмотрении данных трех методик проектирования диалоговых обучающих систем становится очевидным, что основное внимание в них уделяется вопросам диагностики и исправления неверных действий пользователя. Обучающий интерфейс должен непрерывно «наблюдать» за последовательностью действий человека и давать указания в случаях, когда это необходимо.
Важность аспектов диагностики и исправления ошибок при использовании методов проектирования обучающих систем подтверждается и результатами исследования, проведенного авторами работы [41], которые продемонстрировали эффективный способ обучения неопытных пользователей методам быстрого поиска файлов. Полученные результаты показывают, что автоматизированный «консультант», оставляющий право выбора действий за человеком, в сочетании с точной диагностической моделью помогает неопытному пользователю намного быстрее овладеть методами поиска, чем система, в которой ЭВМ дает «советы», обязательные к исполнению, а диагностические модели имеют более «расплывчатую» форму. Однако, как отмечают сами исследователи, вследствие все возрастающего применения данного метода обучения для повышения его эффективности при проектировании систем, предназначенных для начинающих пользователей, необходимо провести его дополнительные исследования и оценивание.