Единое окно доступа к образовательным ресурсам

Труды SORUCOM-2011: Вторая Международная конференция "Развитие вычислительной техники и ее программного обеспечения в России и странах бывшего СССР"

Голосов: 0

Сборник трудов Второй Международной конференции "Развитие вычислительной техники и ее программного обеспечения в России и странах бывшего СССР" (SORUCOM-2011), проведенной 12-16 сентября 2011 года в Великом Новгороде на базе Новгородского государственного университета им. Ярослава Мудрого под эгидой Международной федерации по обработке информации (IFIP). На конференции были заслушаны доклады и сообщения о наиболее интересных проектах создания отечественной вычислительной техники, значительное внимание уделено истории развития микроэлектроники и программирования. С приглашенными докладами на конференции выступили ветераны, трудами и талантом которых создавались первые вычислительные машины в нашей стране, а также разработчики новых перспективных ЭВМ и систем программирования.

Приведенный ниже текст получен путем автоматического извлечения из оригинального PDF-документа и предназначен для предварительного просмотра.
Изображения (картинки, формулы, графики) отсутствуют.
                       История разработки системы речевого управления
                             интеллектуальным роботом
                                                      Загорулько Ю.А.
                          Институт систем информатики им. А.П. Ершова СО РАН, Новосибирск
                                                zagor@iis.nsk.su
      Аннотация. Описываются основные этапы и результаты проекта, направленного на создание системы рече-
      вого управления интеллектуальным роботом. В этом проекте, выполнявшемся в 1997–1999 гг., участвовали
      Институт систем информатики им. А.Р. Ершова СО РАН (ИСИ СО РАН, Новосибирск), Российский НИИ ис-
      кусственного интеллекта (РосНИИ ИИ, Москва – Новосибирск) и германский Институт прикладных систем
      обработки знаний (FAW, Ulm). В докладе представлена архитектура системы речевого управления интеллек-
      туальным роботом и схема ее функционирования. Система состоит из следующих компонентов: подсистемы
      речевого ввода, лингвистического процессора, транслирующего команды на английском языке в формальное
      представление, робота и синтезатора речи, озвучивающего его сообщения. Подсистема речевого ввода по-
      строена на основе промышленного программного пакета распознавания речи IBM ViaVoice. Для синтеза речи
      использована стандартная программная компонента Microsoft Concatenated Text-to-Speech Engine. Лингвис-
      тический процессор построен с помощью инструментальной системы Lingua-F. В экспериментах, проводи-
      мых в российских институтах, робот моделировался симулятором, реализованным средствами интегрирован-
      ной программной среды Semp-TAO.
      Ключевые слова: интеллектуальный робот, система речевого управления, команды на естественном языке,
      анализ речи, синтез речи, лингвистический процессор, симулятор робота.

                          The History of Development of a Voice System
                              for Controlling an Intelligent Robot
                                                        Zagorulko Yu.
                                          A.P. Ershov Institute of Informatics Systems
                                      Siberian Branch of the Russian Academy of Sciences
                                                    zagor@iis.nsk.su
      Abstract. The paper presents the main stages and results of the project aimed at creation of a voice system for con-
      trolling an intelligent robot. A.P. Ershov Institute of Informatics Systems of Siberian Branch of the Russian Academy
      of Sciences (IIS SB RAS, Novosibirsk), the Russian Research Institute of Artificial Intelligence (RRIAI, Moscow –
      Novosibirsk) and the Institute of Applied Knowledge Processing Systems (FAW, Ulm) participated in this project
      which was implemented during 1997–1999. An architecture and operation principles of the system are considered.
      The system includes the following components: speech input subsystem, linguistic processor that translates English
      commands into a formal representation, robot and the speech synthesizer that announces the robot's messages. The
      speech input subsystem is based on ViaVoice, a speech recognition package produced by IBM. Speech synthesis uses
      a standard Microsoft software component (Concatenated Text-to-Speech Engine). The linguistic processor is con-
      structed with the help of the Lingua-F instrumental system. In the release version of the system the robot is repre-
      sented by a simulated model which was implemented in the SemP-TAO integrated environment.
      Keywords: intelligent robot, voice system, natural language command, speech analysis, speech synthesis, linguistic
      processor, robot simulator

Введение
     В декабре 1997 г. Российский институт искусственного интеллекта (РосНИИ ИИ) и лаборатория искусст-
венного интеллекта Института систем информатики им. А.П. Ершова СО РАН (ЛИИ ИСИ) начали работу над
проектом, одна из целей которого – разработка прототипа системы речевого управления интеллектуальным ро-
ботом. Коллективы РосНИИ ИИ и ЛИИ ИСИ имели достаточный опыт в понимании запросов на естественном
языке и моделировании поведения технических устройств, но приступить к решению проблемы речевого
управления роботом они смогли только в конце 90-х годов прошлого века, когда появились промышленные
системы распознавания речи и партнер – германский Институт прикладных систем обработки знаний (FAW,
Ulm), заинтересованный в решении этой проблемы и готовый предоставить приемлемое финансирование.
     Следует напомнить, что разработка технологии автоматического понимания естественного языка тради-
ционно являлась одним из главных направлений исследований ЛИИ ИСИ и РосНИИ ИИ. К этому времени ши-
рокую известность и признание в области автоматической обработки естественного языка получили разрабо-
танные в этих коллективах технологии и системы РИТА [1], СТЕНД [2], ЗАПСИБ [3, 4], InterBASE [5], Lingua-
F [6], Snoop [7] , Aura [8] и др., созданные в русле этого направления. Речевой ввод сообщений, который в те
годы становился элементом пользовательского рынка, придал новый импульс работам по созданию естествен-
но-языковых (ЕЯ) интерфейсов. С одной стороны, использование микрофона вместо клавиатуры делало естест-
венный язык действительно естественным средством общения и значительно повышало шансы ЕЯ-интер-
фейсов войти в разряд продуктов программного рынка. С другой стороны, качество и надежность распознава-
ния речи весьма существенно зависели от вовлечения в этот процесс лингвистического, семантического, праг-
матического и других уровней обработки пользовательского сообщения. Таким образом, многочисленные на-
работки коллективов РосНИИ ИИ и ЛИИ ИСИ стали востребованными в указанном контексте.


108                                            SORUCOM-2011

     Одним из принципиальных аспектов создания интеллектуального робота, бесспорно, является решение
проблем эффективного представления и обработки знаний. Это направление, наряду с работами по естествен-
ному языку, также являлось ключевым для указанных коллективов в течение многих лет и ко времени начала
проекта выкристаллизовалось в тщательно разработанную методологию, технологию и системную поддержку
всех основных этапов обработки знаний [9]. По указанным причинам проект оказался довольно удачным поли-
гоном для отработки и комплексного применения нескольких фундаментальных технологий команды исследо-
вателей из указанных коллективов.
     Значительной поддержкой данного проекта явился контракт, заключенный РосНИИ ИИ с Германским
Исследовательским институтом прикладных систем обработки знаний (FAW, г. Ульм). Контекстом контракта
стал исследовательский проект, выполняемый рядом организаций Германии по гранту Национального научного
фонда Германии. Важнейшим компонентом проекта было создание в FAW комплексной демонстрационной
системы на основе реального технического устройства – SMART Demonstrator (http://www.uni-ulm.de/SMART/
Demonstrator/). Выбор английского языка для экспериментов диктовался, прежде всего, наличием надежных
средств распознавания английской речи. Используемая в проекте технология обработки текстовых сообщений
гарантировала, что в дальнейшем работы по данному проекту могли быть спроецированы на русский язык, что
позволяло надеяться на перспективу отечественных внедрений.
     В докладе представлена архитектура системы речевого управления интеллектуальным роботом и схема ее
функционирования. Дается подробное описание мира, в котором действует робот, способностей робота и языка
управления им. Приводятся характеристики реализации основных компонентов системы.
1. Архитектура и функционирование системы
     Задача управления роботом при помощи устных команд на естественном языке распадается на следующие
подзадачи:
• распознавание речи,
• естественно-языковую обработку текста команды,
• выполнение команды и соответствующую модификацию мира робота,
• визуализацию результатов выполнения команды,
• генерацию ответа робота и преобразование его в речевое сообщение.
     Каждая из этих подзадач представляет собой самостоятельную проблему и может быть решена соответст-
вующими ей методами. Так, для решения задач распознавания и синтеза речи, которые являются достаточно
сложными и ресурсоемкими, могут быть использованы уже существующие системы, в то время как для задач
обработки текста на естественном языке, анализа и исполнения команд необходимо затратить более значитель-
ные усилия, включая элементы инженерии знаний и программирования.
     Кроме разработки и настройки отдельных модулей, каждый из которых отвечает за решение своей подза-
дачи, необходимо также связать их в единую систему, обеспечив их взаимодействие друг с другом. Основная
сложность заключается в том, что такая система должна действовать по замкнутому циклу: прием команды, ее
анализ и исполнение, а затем переход к режиму приема новой команды.
     Для того, чтобы обеспечить выполнение перечисленных выше требований, разработанная система речево-
го управления интеллектуальным роботом включает следующие компоненты:
• подсистему речевого ввода, состоящую из микрофона, звуковой платы и программного распознавателя речи;
• лингвистический процессор, получающий от распознавателя речи текст команды, выраженной на естествен-
   ном (английском) языке и переводящий ее в формальное представление;
• исполнитель команд (робота);
• синтезатор речи, озвучивающий сообщения робота.
     Подсистема речевого ввода была построена на основе промышленной программной системы IBM ViaVoice
(http://www.software.ibm.com/is/voicetype/), которая после необходимой настройки дала вполне удовлетвори-
тельные результаты. Для синтеза речи использовалась стандартная программная компонента Microsoft
Concatenated Text-to-Speech Engine (http://www.research.microsoft.com/research/srg/). Поскольку эти системы не
поддерживают русский язык, то общение с роботом проходило на английском языке. Лингвистический процес-
сор построен с помощью инструментальной системы Lingua-F [6], в которой использован предложенный
А.С. Нариньяни семантически-ориентированный подход к анализу текстов на естественном языке [3, 10]. В
настоящей версии подсистема исполнения команд и среда для эмуляции мира робота были реализованы средст-
вами интегрированной программной среды представления и обработки знаний SemP-TAO [11, 12].
     Функциональная схема системы, приведенная на Рис. 1, демонстрирует полный цикл исполнения команды,
подаваемой роботу. Команда, произнесенная оператором, попадает на вход распознавателя речи, который пре-
образует ее в текст на естественном языке. Этот текст затем передается на вход лингвистического процессора,
который переводит его в последовательность формальных команд. Команды, представленные на формальном
языке, подаются на вход подсистемы управления роботом. Эта подсистема выполняет требуемые действия, что
может привести к изменению состояния мира робота. Все изменения отображается на экране монитора визуа-
лизатором состояний, что позволяет наглядно демонстрировать результат выполнения команды. Кроме того,
если поданная команда требует ответа, то подсистемой исполнения команд будет сгенерирован соответствую-
щий текст ответа на естественном языке. Этот ответ преобразуется синтезатором речи в звуковую форму и со-


            Загорулько Ю.А. История разработки системы речевого управления интеллектуальным роботом     109

общается пользователю. Система действует по замкнутому циклу, т.е. после исполнения роботом одной коман-
ды и получения реакции на нее, оператор может подать следующую команду.
                                                Пользователь
                                                 (оператор)

                           устная                     графический               устный
                           команда                    образ                       ответ
                           роботу                     состояния                 робота


                   Распознаватель               Визуализатор                     Синтезатор
                        речи                     состояний                         речи


                                                      формальное
                           текст                      описание                    текст
                           команды                    состояния                  ответа
                           роботу                                                робота

                                         команды на
                                         формальном
                    Лингвистический         языке                  Подсистема управления
                       процессор                                         роботом



                                      Рис. 1. Функциональная схема системы

2.Интеллектуальный робот и управление им
    Рассмотрим характеристики и способности робота, являющегося объектом управления, «мир» робота, а
также язык управления им.
2.1. Мир робота и его способности
     Предполагается, что мир робота включает несколько комнат, в которых могут находиться различные объ-
екты. Сам робот в этом мире также является объектом.
     В мире робота выделяются такие классы объектов, как мебель и оборудование.
     Мебель – это объекты, имеющие форму параллелепипеда или цилиндра. Они характеризуются координа-
тами центра, размерами, цветом, весом, мобильностью и др. В этом классе выделяются еще три подкласса: сто-
лы, стулья, кресла.
     Оборудование кроме тех свойств, которыми обладает мебель, имеет свои особенные свойства: подключе-
но/не подключено, марка устройства и т.п.
     Робот в модели мира рассматривается не только как объект, но и как субъект. Как объект робот характери-
зуется теми же свойствами, что и оборудование. Как субъект, он обладает некоторыми способностями, о кото-
рых будет сказано ниже.
     Отношения служат в основном для задания взаимного расположения объектов, например: слева, справа,
снизу, сверху, внутри и т.д.
     Робот действует в окружающем мире, который находится в определенном состоянии. В состоянии мира
можно выделить такие части как каркас, состояния объектов и отношения между объектами. Каркас образуют
неперемещаемые объекты (комнаты) и отношения между ними. Состояние объекта – это конкретный набор
значений его характеристик. Объекты также могут находиться в каких-либо отношениях между собой. Таким
образом, каркас – это неизменяемая часть мира, а состояния объектов и отношения между ними – та часть мира,
которую робот может изменять.
     В связи с тем, что робот должен уметь переносить мебель и оборудование из одной комнаты в другую и
отвечать на вопросы пользователя, его основными функциями являются: найти, взять, положить, переместить,
перейти и т.п.
     Этим функциям соответствует набор операторов. Выделяется два уровня операторов. Первый уровень об-
разуют операторы, доступные пользователю. Именно их он использует для формирования задания роботу. Вто-
рой уровень составляют операторы, реализующие операторы первого уровня.
     Операторами первого уровня являются: Принеси, Отнеси, Перемести, Перейди, Где_находится,
Что_находится. Второй уровень образуют следующие операторы: Найди, Возьми, Освободи, Поставь, Сообщи.
     Для каждого оператора имеется своя операторная схема, которая определяет условия, порядок и результа-
ты выполнения оператора.


110                                              SORUCOM-2011

2.2. Формальный язык управления роботом
     На основе описанных выше операторных схем разработан формальный язык управления роботом, полу-
чивший название FOROL (FOrmal RObot Language). Он включает операторы WhereIs, GO и MOVE. Аргумента-
ми этих операторов могут быть объекты и комнаты.
     Описание объекта в языке имеет вид:
     OBJECT(name: <name of object>, color: <color of object>), где <name of object> – название объекта, <color
of object> – цвет объекта (может быть не задан).
     Описание комнаты в языке FOROL имеет вид:
     ROOM( number: <number of room>), где <number of room> – целое число, обозначающее номер комнаты.
     Рассмотрим синтаксис и семантику основных операторов языка.
     Оператор WhereIs имеет вид:
     WhereIs(what: object, where: room),
здесь object – описание объекта, местоположение которого необходимо установить или подтвердить, а room –
описание комнаты.
     В операторе WhereIs один или оба аргумента могут быть неопределенными. В связи с этим семантика опе-
ратора WhereIs зависит от того, какие аргументы заданы, а какие нет. Рассмотрим каждый случай отдельно.
     Если задан только первый аргумент, то выполнение оператора WhereIs состоит в поиске объекта object с
указанными характеристиками и выдаче сообщения о том, где он находится. В случае неудачи выдается соот-
ветствующее сообщение.
     Если задан только второй аргумент, то выдаются характеристики всех объектов, находящихся в комнате
room.
     В случае, если не заданы оба параметра, выдаются характеристики всех объектов, находящихся в той же
комнате, что и робот.
     Оператор GO имеет вид:
     GO( to: room), где room – описание комнаты, в которую роботу нужно переместиться.
     Оператор MOVE имеет следующий синтаксис:
     MOVE( what: object, from: room1, to: room2), где object – описание предмета, который необходимо перемес-
тить из комнаты room1 в комнату room2.
     В операторе MOVE обязательным является только первый аргумент. Любой из остальных аргументов мо-
жет отсутствовать. Заметим также, что в качестве названия предмета в аргументе what не должно использовать-
ся значение Robot.
     Семантика оператора MOVE, как и WhereIs, зависит от того, какие аргументы заданы. Так, если заданы все
три аргумента, предмет object перемещается из комнаты room1 в комнату room2. В случае, когда заданы только
аргументы what и from, предмет object перемещается из комнаты room1 в комнату, в которой находится в дан-
ный момент робот. Когда заданы только аргументы what и to, предмет object должен быть найден и перемещен
в комнату room2. Если задан только аргумент what, предмет object должен быть найден и перемещен в комнату,
в которой находится робот.
     Во всех вариантах оператора MOVE в случае его неудачного выполнения выдается соответствующее сооб-
щение. Например: "The green chair is not found", "There is no room 20", "The computer is already in room 5!" и т.д.
2.3. Получение формального представления команды
     В описываемой системе перевод команды оператора в формальное представление на языке управления ро-
ботом FOROL осуществляет лингвистический процессор (ЛП). ЛП представляет состоит из двух компонентов:
словаря и продукционного компонента, который переводит поступающую ему на вход естественно-языковую
фразу в заданное выходное представление.
     Существует два типа обращений к роботу: директива и вопрос. При анализе фразы слова, входящие в нее,
подразделяются на значимые, т.е. оставляющие след в формальном представлении, и незначимые, игнорируе-
мые при разборе.
     Значимой лексикой в обращениях к роботу являются глаголы, задающие перемещения предметов и обо-
значающие передвижения робота, глаголы и вопросительные слова, задающие поиск объекта, существитель-
ные, обозначающие объекты, числительные, задающие номера комнат, прилагательные, обозначающие свойст-
ва объектов, а также некоторые предлоги.
     Семантика естественно-языковых обращений полностью определяется семантикой формального языка
управления роботом. Например, с помощью слов указанных типов можно составлять команды, имеющие сле-
дующую структуру: «Идти в ...», «Перенести что-то из ... в ...», а также задавать вопросы «Где, в какой ком-
нате находится ..». и пр. Порядок и количество компонентов команды, а также слов в рамках каждой компо-
ненты не являются строго фиксированными. Правила анализа и синтеза текста составлены таким образом, что-
бы оператор практически не ощущал языковых ограничений при подаче команд.
     Приведем примеры различных запросв и соответствующих им формальных представлений.
     Сначала рассмотрим директивы, которые по глаголу, входящему в них, делятся на типы MOVE и GO:
     а) В директиве типа MOVE "Transport the blue armchair from the first room to room number 4!" допустима пе-
рестановка локативных компонентов: "... to room number 4 from the first room".


            Загорулько Ю.А. История разработки системы речевого управления интеллектуальным роботом          111

      Кроме того, эта директива будет разобрана правильно, если ее сформулировать с эллипсисом, т.е. пропус-
ком слов "room number": "Transport the blue armchair from the first room to 4!". Во всех случаях ей соответствует
следующее формальное представление:
      MOVE (what: OBJECT (name: armchair, color: blue), from: ROOM (number: 1), to: ROOM (number: 4));
      б) Совершенно прозрачный перевод имеет директива типа GO, например "Go to the second room!":
      GO (to: ROOM (number: 2)).
      Распознаются также вопросы о месте расположения различных предметов, либо о наличии предметов в
указанном месте:
      а) Вопрос к системе "Where is the robot?" человеку, для которого робот является одушевлённым предметом
и, более того, партнёром общения, естественно задать в форме "Where are you?". Его формальный вид будет:
      WhereIs (what: OBJECT (name: robot));
      б) Наряду с вопросом о роботе, можно спросить о любом предмете "Where is the red box?" или "What place
is the red box located in?".
      Директива "Find/Search the red box!" трактуется как косвенный вопрос о месте расположения предмета:
      WhereIs (what: OBJECT (name: box, color: red));
      в) Вопросы о наличии предметов в комнате, где находится робот "What is (located) here / there / in this
room?" переводятся в:
      WhereIs (what: ?, where: ? );
      г) Вопросы о наличии каких-либо предметов в указанном месте "Is something in room 5?", "What is located /
situated in room 5?" имеют следующее формальное представление:
      WhereIs (what: ?, where: ROOM(number: 5) );
      д) Альтернативный вопрос "Is the computer in room number 2?" переводится в:
      WhereIs (what: OBJECT (name: computer), where: ROOM(number: 2) ).
3. Моделирование робота
     В экспериментах по отладке системы речевого управления вместо робота использовался его симулятор,
реализованный с помощью интегрированной программной среды Semp-TAO [11, 12]. Эта среда предназначена
для разработки интеллектуальных систем, в том числе требующих описания сложных по структуре и семантике
предметных областей и сочетания логического вывода и вычислений над неточно заданными значениями. Все
понятия предметной области, правила вывода и визуализатор состояний написаны на объектно-
ориентированном языке представления и обработки знаний этой среды.
3.1. Описание модели мира робота
     Поскольку все объекты мира робота и сам робот занимают определенное место в пространстве, то все они
представляются в виде геометрических фигур или же имеют специальный атрибут, значением которого являет-
ся некоторый геометрический объект, отражающий пространственные характеристики соответствующего объ-
екта мира робота.
     Для описания таких геометрических объектов вводится наиболее общее понятие фигура, которому в языке
Semp-TAO соответствует класс SHAPE:
     class SHAPE
         x, y : integer;
         left, right, top, bottom: integer;
     end;
     Здесь x, y – координаты центра фигуры, а left, right, top, bottom – координаты ее границ.
     На основе класса SHAPE строятся классы CIRCLE и RECTANGLE. Например, описание класса
RECTANGLE имеет вид:
     class RECTANGLE( SHAPE )
         length, width: integer;
     constraints
         length = bottom - top;
         width = right - left;
         left = x - width/2;
         right = x + width/2;
         top = y - length/2;
         bottom = y + length/2;
     end;
     Класс RECTANGLE имеет два дополнительных параметра length и width (длина и ширина) и множество ог-
раничений, связывающих значения этих параметров с координатами центра и границ прямоугольника.
     На основе класса RECTANGLE строится класс ROOM:
     class ROOM( RECTANGLE )
         number: integer;
         door : atom(Open,Close):=Open;


112                                           SORUCOM-2011

         locs: tuple of OBJECT;
     end;
     Класс ROOM служит для описания комнаты. У комнаты есть номер (number) и дверь (door). Для простоты
визуализации объектов, находящихся внутри комнаты, она разбивается на так называемые «локи» (locs) – гео-
метрические места, в которых могут располагаться объекты.
     Для представления всех объектов мира вводится абстрактный класс OBJECT:
     class OBJECT
         name: atom;
         color: Object_Color;
         bmp : TImage;
         loc: RECTANGLE;
     end;
     Класс OBJECT имеет общие для всех объектов характеристики, такие как: имя (name), цвет (color) и размер
(size). Для задания геометрических характеристик объекта и указания его местоположения в пространстве вво-
дится специальный параметр loc, значением которого является прямоугольник, в который вписан объект. Кроме
того, с каждым объектом связывается его графический образ (bmp), в виде которого объект будет отображаться
на экране.
     Кроме объектов вводится отношение INSIDE, указывающее, что некоторый объект находится в определен-
ной комнате. Заметим, что это декларативное отношение также имеет и вычислительную интерпретацию, т.е.
включает набор ограничений, связывающих пространственные характеристики двух объектов, один из которых
находится в другом:
     relation INSIDE( what: OBJECT; into: SHAPE )
         antiref, antisym;
     constraints
         what.loc.left >= into.left;
         what.loc.right <= into.right;
         what.loc.top >= into.top;
         what.loc.bottom <= into.bottom;
     end;
     Вводится также отношение NEXT, которое задает порядок обхода комнат роботом:
     relation NEXT( from: ROOM, to: ROOM );
     В частности, это отношение говорит о том, что после осмотра комнаты, указанной в качестве первого ар-
гумента, нужно перейти в комнату, на которую указывает второй аргумент.
3.2. Симуляция действий робота
    Для симуляции действий робота служит система правил-продукций, которые реализуют операторные схе-
мы робота. Эта система правил-продукций обрабатывает команды, поступающие на вход симулятора, редакти-
рует и отображает на экране монитора план-схему (см. Рис.2) и выдает соответствующие сообщения.




                                      Рис. 2. Интерфейс с пользователем
    Все множество правил разбито на шесть групп, каждая из которых отвечает за определенный вид или этап
обработки задания. Первая группа правил ($Do) распознает тип команды и подготавливает ее исполнение. Каж-
дая из остальных групп правил соответствует одной или нескольким близким по семантике операторным схе-


             Загорулько Ю.А. История разработки системы речевого управления интеллектуальным роботом            113

мам. Так, вторая группа правил ($Where) обеспечивает выдачу ответов на вопросы типа "Где находится компь-
ютер?". Третья группа ($Go) выполняет перемещение робота, четвертая ($Move) – перемещение объекта. Пятая
группа ($Find) осуществляет поиск нужного объекта. Шестая группа ($Draw) автоматически размещает объек-
ты внутри комнаты и рисует план-схему на экране.
     Во время исполнения некоторых групп правил могут вызываться другие группы. Так, группа правил
$Where во время своей работы всегда вызывает группу правил $Find для нахождения необходимого объекта.
Последняя, в свою очередь, может вызвать группу $Go. При работе группы правил $Move также могут инициа-
лизироваться вызовы групп правил $Find и $Go.
     Чтобы дать представление о том, как работает система правил-продукций, рассмотрим несколько правил
из группы $Find.
     Первое из них имеет вид:
     rule GoIni
     exist
          $find: FIND( what: OBJECT(name: $name, color: $color), where: ? ),
          $last: LAST( where: $room1 ),
          NEXT( from: $room1, to: $room2 )
     not
          WAS( where: $room2 )
     =>
          delete $last;
          new GO ( to: $room2);
          call $Go;
     end;
     Это правило инициализирует перемещение робота в комнату ($room2), в которой он еще не был (на это ука-
зывает подобразец not WAS( where: $room2 )), в случае неудачного поиска в текущей комнате ($room1). Это осу-
ществляется путем генерации команды GO(to:$room2) и вызовом соответствующей группы правил (call $Go).
     Второе правило:
     rule NotFound
     exist
          $find: FIND( what: OBJECT(name: $name, color: $color), where: ? ),
          $last: LAST( where: $room1 ),
          NEXT( from: $room1, to: $room2 ),
          WAS( where: $room2 )
     =>
          Say( "The " + $color + " " + $name + " is not found!");
          delete $last;
     end;
соответствует ситуации, когда искомый объект не обнаружен ни в одной из комнат. (В комнате $room1 объекта
нет, а в $room2 и во всех остальных комнатах робот уже был, о чем говорит наличие в сети объекта WAS( where:
$room2)). Сообщение о том, что объект не обнаружен, озвучивается синтезатором речи, который вызывается с
помощью функции Say.
Заключение
    Представленная в докладе система речевого управления роботом была реализована в полном объеме и
прошла тестирование, показавшее ее устойчивую работу на большом количестве тестовых команд. Отметим,
однако, что подсистема распознавания речи, являлась довольно чувствительной к аппаратуре и требовала тща-
тельной настройки на предметную область и конкретного пользователя.
    Использование интегрированной объектно-ориентированной среды SemP-TAO позволило естественным
образом представить в системе мир робота, специфицировать и реализовать расширяемый формальный язык
управления роботом, а также обеспечить визуализацию состояний мира и удобный пользовательский интер-
фейс. Семантически-ориентированный подход и развитые средства обработки естественно-языковых текстов
инструментальной системы Lingua-F обеспечили быструю разработку надежного лингвистического процессора,
выполняющего в системе функцию перевода команд робота в формальное представление.
    В поздней фазе проекта был построен лингвистический процессор для русского языка, что при наработан-
ной технологии не составило большого труда. Планировались работы над следующей версией системы речево-
го управления роботом, которая должна была содержать более богатый язык управления роботом, а, следова-
тельно, и более мощный лингвистический процессор, однако проект не получил продолжения.
Список литературы
1. Ершов А.П., Мельчук И.А., Нариньяни А.С. РИТА – экспериментальная система взаимодействия с ЭВМ на естествен-
   ном языке // Тр. 4-й Междунар. объедин. конф. по искусств. интеллекту. Т. 6. Общение с ЭВМ на естественном языке,
   Тбилиси, 3–8 сент. 1974 г. – М.: ВИНИТИ, 1975. – С. 6.10–6.19.


114                                                   SORUCOM-2011

2. Левин Д.Я. СТЕНД - комплекс для конструирования и адаптации лингвисти-ческих процессоров. // Вопросы разработки
    прикладных систем. -Новосибирск, 1979. -С.78-92.
3. Нариньяни А.С. Лингвистические процессоры ЗАПСИБ. Часть I – задачи проекта. – Новосибирск, 1979. – (Препринт /
    ВЦ СОАН СССР, № 199.)
4. Нариньяни А.С. Лингвистические процессоры ЗАПСИБ. Часть II – общие схемы и основные модули. – Новосибирск,
    1979. – (Препринт / ВЦ СОАН СССР, № 202.)
5. Диненберг Ф.Г., Кучин С.И., Трапезников С.П. INTERBASE- система конструирования ЕЯ-интерфейса к dBASE III
    PLUS// Искусственный интеллект-90: Труды 2-й Всесоюзной конференции: секционные и стендовые доклады. - Минск,
    1990. - Т.2. - С. 161-163.
6. Диненберг Ф.Г., Трапезников С.П. Система технологической поддержки конструирования естественно-языковых ин-
    терфейсов // Тез. докл. I Всесоюзн. конф. по искус. интел. -Переславль-Залесский, 1988.- Т. 3.- С. 194-199.
7. Sharoff S. A System for Development of Linguistic Processors. SNOOP. In Proc. of EWAIC-93, Moscow, 1993, pp. 184-188.
8. Kononenko I., Sharoff S. Understanding Short Texts with Integration of Knowledge Representation Methods // Perspectives of
    System Informatics (Proc. of Andrei Ershov Second Intern. Conf. PSI'96). –Novosibirsk, June 25–28, 1996. – P.43–47.
9. Narin'yani A.S. Intelligent Software Technology for the New Decade // Communs of the ACM. – Vol. 34, Iss. 6, – P.60–67
    (1991).
10. Левин Д.Я., Нариньяни А.С. Экспериментальный минипроцессор: семантически-ориентированный анализ // Взаимодей-
    ствие с ЭВМ на естественном языке. – Новосибирск, 1978. – С.223–233.
11. Загорулько Ю.А., Попов И.Г., Щипунов В.В. Интегрированная технологическая среда для создания систем обработки
    знаний // РАН. Известия Академии наук. Теория и системы управления. – 1995. – № 5. – С.210–213.
12. Загорулько Ю.А., Попов И.Г. Представление знаний в интегрированной технологической среде Semp-TAO // Проблемы
    представления и обработки не полностью определенных знаний. – Москва-Новосибирск, 1996. – С.59–74.


Школьная информатика в России – техническая база начального периода
                                              Захаров В.Н.
                                    Институт проблем информатики РАН
                                         vzaharov@ipiran.ru

      School Informatics in Russia: The Technical Basis of the Initial Period
                                                 Zakharov V.
                                   Institute of Informatics Problems RAS

     Событием, которое оказало очень существенное влияние на введение в образовательный процесс средней
школы информатики и сыграло роль стартового толчка, была поездка советской партийно-правительственной
делегации в Великобританию в декабре 1984 года. Делегацию возглавлял тогда еще второй секретарь ЦК КПСС
М.С. Горбачев. В состав делегации входил и вице-президент АН СССР Е.П. Велихов. Делегация встречалась с
тогдашним премьер-министром Маргарет Тэтчер (кстати, это знакомство сыграло большую роль и в дальней-
шей судьбе М.С. Горбачева).
     Делегация, в частности, посетила завод, где изготавливались простые и дешевые персональные компьюте-
ры “Sinclair ZX Spectrum”. В ходе переговоров со стороны англичан возникло предложение о поставке этих
машин по «рекламной» цене 99,99 фунтов стерлингов для школ. Е.П. Велихов буквально загорелся этой идеей.
По приезде была достаточно быстро организована работа по закупке небольшой партии этих машин для опро-
бывания в образовании. Было согласовано приобретение 4 комплектов, в каждый из которых входило по 25
компьютеров, объединенных в сеть, клавиатура (в том числе с русским алфавитом), адаптер для подключения
советских телевизоров системы СЕКАМ, некоторый набор программ, в том числе учебного назначения. В каче-
стве цели использования приобретаемого оборудования было заявлено проведение экспериментов по выбору
прототипа школьной микро-ЭВМ для выработки рекомендаций на изготовление отечественных школьных ком-
пьютеров. Эти комплекты были приобретены, один из классов был поставлен в Доме детского творчества на
Полянке в Москве, где активно использовался для кружковой работы. Достаточно быстро стало ясно, что пред-
лагаемые решения непригодны для использования в советских школах, в частности, по ряду конструктивных
особенностей, связанных с переключением режимов работы для использования кириллицы.
     В начале марта 1985 г. Генеральным секретарем ЦК КПСС становится М.С. Горбачев. И уже 28 марта
1985 г. выходит Постановление ЦК КПСС и Совета Министров СССР № 271 «О мерах по обеспечению компь-
ютерной грамотности учащихся средних учебных заведений и широкого внедрения электронно-вычислитель
ной техники в учебный процесс». Это Постановление можно считать стартовым моментом массовой компьюте-
ризации школ. Было решено, начиная с 1985/86 учебного года, ввести повсеместно в 9-10 классах новый пред-
мет «Основы информатики и вычислительной техники».
     Сразу остро встал вопрос о технической базе, на которой можно проводить обучение. Срочно были созда-
ны рабочие группы из ученых АН СССР и представителей Министерства просвещения, образовательного со-
общества, Академии педагогических наук для формулирования стратегии и технических требований к аппарат-
ным и программным средствам. В центре этой деятельности был академик Е.П. Велихов, который также руко-
водил созданным в 1983 г. Отделением информатики, вычислительной техники и автоматизации АН СССР.
Техническая и организационная часть работы была возложена на Институт проблем информатики АН СССР
(ИПИАН), который возглавлял академик Б.Н. Наумов. Активнейшую роль в определение содержания предмета
внес академик А.П. Ершов и его коллеги из Новосибирска, имевшие богатый опыт преподавания «продвину-
тым» школьникам основ информатики и программирования.
     Было решено идти двумя путями – выбрать и закупить некоторое количество учебных классов за рубежом
в качестве пилотного проекта для накопления опыта, разработки учебных программ и методик, а также быст-
рыми темпами создать необходимые комплексы и организовать их производство в СССР. Фактически был объ-
явлен тендер (в нынешней терминологии) зарубежным фирмам на поставку комплектов учебной вычислитель-
ной техники (КУВТ).
     Свои предложения представили более десятка фирм из Англии, США, Франции, Японии и даже Австра-
лии. В ИПИАН фирмами представлялись образцы для испытаний, по многим проводились демонстрационные
семинары. В таблице 1 приведены сравнительные технические характеристики КУВТ стандарта MSX (ряд
фирм Японии), фирм Аккорн и Амстрад (Великобритания), Нанорезо (Франция), Микроби (Австралия). Испы-
тывались также ПЭВМ Коммодор 64, TRS 80 фирмы Тенди, Apple II (США), которые были сочтены на тот мо-
мент устаревшими и снимаемыми с производства.
     Для более масштабных закупок на основании первичного накопленного опыта с приобретенными ком-
плектами были разработаны технические требования на закупаемые комплекты вычислительной техники для
оснащения средних учебных заведений, утвержденные в середине 1986 года заместителями Министра просве-
щения СССР, Председателя Государственного комитета СССР по профессионально-техническому образованию
и директором головной организации МНТК «Персональные ЭВМ» академиком Б.Н. Наумовым.
     Эти технические требования определили 3 категории учебных классов: категория А (стандарт MSX) – для
преподавания информатики в школах, ПТУ и средних учебных заведениях, категория Б – для преподавания
информатики и других предметов в опытных школах, ПТУ и других заведениях, категория В – для подготовки


116                                        SORUCOM-2011

преподавателей по информатике в педвузах, и для профессионального обучения учащихся по программирова-
нию и эксплуатации ПЭВМ в народном хозяйстве в УПК и СПТУ. Также были сформулированы требования к
инструментальным комплектам, обеспечивающим возможность разработки графических программ.
                                                                                   Таблица 1
       Сравнительные технические характеристики испытывавшихся зарубежных комплексов
                                    ПЭВМ для образования

Параметры              MSX1/MSX2    MSX2           Би-би-си,       Нанорезо         Амстрад          Микроби
                                                   Аккорн
                                                   Мас- Мо-                         СРС     СРС
                                                   тер    дель                      6128    464
                                                          В+
                         РМП РМУ РМП РМУ           РМП РМУ         РМП     РМУ      РМП     РМУ      РМП    РМУ
             2               3    4     5    6        7      8       9       10       11      12       13     14
Тип процессора            Z80   Z80   Z80   Z80     6512 6512       8088    6809     Z80     Z80      Z80    Z80
Число разрядов               8    8     8    8        8      8       16      8        8       8        8      8
Объем оперативной          128   64   128   128      128     64     256      48      128     128      128     64
памяти, Кбайт
Объем постоянной памяти,    64   32    64    64     128     48      64        16     48       16      32       32
Кбайт
Объем видеопамяти, Кбайт 128     16   128   128      –       –       –         –      –        –       –        –
число символов в строке     80   40    80    80     80      80      80        40     80       80      80       80
на экране
число точек на экране    512 × 212 × 512 × 512 ×   640 ×   640 ×   320 ×   320 ×    160 × 160 × 512 ×       512 ×
цветного монитора для 16   212  192   212   212     256     256     200     200      200   200     256       256
цветов                     Цв.  Цв.   Цв.   Цв.    моно.   моно.    Цв.     Цв.      Цв.   Цв.    моно      моно
число одновременно        256 / 16 / 256 / 256 /     16      16      16      16       16  16 / 27   16       4/8
воспроизводимых цветов     512  512   512   512
число динамически           32   32    32    32      –       –       –         –      –        –       –        –
движущихся объектов
возможность динамиче-       +     +     +    +       –       –       –         –      –        –       –        –
ской трехмерной графики
Число экранов в              4    2     4     4      –       –       –         –      –        –       –        –
видеопамяти
Музыкальные
 возможности
– число голосов              3    3     3    3        –      –        –       3        –        3      3         3
– диапазон (октавы)          8    8     8    8        –      –        –       7        –        7      6         6
Емкость накопителей на    0,75    –   0,75    –     0,64     –      0,36    0,36     0,36     0,18   0,75      0,75
гибких магнитных дисках,
Мбайт
Возможность подключе-       +     +     +    +       +      +        +         –      +        –       –        –
ния советских лаборатор-
ных приборов без участия
фирмы
Наличие разъемов для        +     +     +    +       +      +        –        +       –        +       –        –
внешних ПЗУ
Наличие возможности         +     –     +     –      +      +        +         –      +        –       –        –
подключения накопителя
типа «Винчестер»
Соответствие требованиям    +     +     +    +       –       –       –         –      –        –       –        –
к функциям учебной сети
Скорость учебной сети,     9,6   9,6  250   250     250    250      9,6       9,6    9,6      9,6     9,6      9,6
Кбит/сек
Число фирм-поставщиков      10   10    10    10      1      1      IBM        1       1        1       1        1
данного типа ПЭВМ                                                   XT
Совместимость по ПО с     Бей-  Бей- Бей-  Бей-     нет     нет    MS –    СР/М     СР/М      нет    СР/М   СР/М
отечественными ПЭВМ        сик  сик   сик   сик                    DOS
                         СР/М        СР/М СР/М
Размер дискеты, дюйм       3,5    –    3,5    –     5,5     5,5     5,5       5,5    5,5      3,0     3,5      3,5
Наличие цветного монито-    +     +     +    +       +       +       –         –      –        –       –        –
ра с разрешающей способ-
ностью 400 × 220 точек
(санитарная норма)



    
Яндекс цитирования Яндекс.Метрика