УДК 004.89 + 004.5 ББК 32.813
МОДЕЛЬ ЕСТЕСТВЕННО-ЯЗЫКОВОГО ИНТЕРФЕЙСА ДЛЯ СИСТЕМ УПРАВЛЕНИЯ СЛОЖНЫМИ ТЕХНИЧЕСКИМИ ОБЪЕКТАМИ И ОЦЕНКА ЭФФЕКТИВНОСТИ АЛГОРИТМОВ НА ЕЕ
ОСНОВЕ 1
Крайванова В. А. 2
(Алтайский государственный технический университет им. И. И. Ползунова, г. Барнаул)
Рассмотрена проблема построения интеллектуального человекомашинного интерфейса на основе логического анализа фраз на естественном языке. Предложена математическая модель интерфейса и показана ее эффективность. На основе построенной модели рассмотрена архитектура интеллектуального управления техническими объектами на примере систем „Умный дом“.
Ключевые слова: естественно-языковой интерфейс, человекомашинное взаимодействие, искусственный интеллект.
Введение
Задача создания интерфейса для общения с компьютером на естественном человеческом языке (ЕЯ) не нова, однако сейчас она вновь обретает остроту и актуальность в свете особенностей современных компьютерных систем. Это связано, прежде всего, со следующими тремя факторами. Во-первых, на сегодняшний день сфера применения компьютеров настолько широка и разнообразна, что использовать для всех задач универсальный интер-
1 Автор признателен профессору Е.Н. Крючковой за ценное обсуждение содержания статьи.
2 Варвара Андреевна Крайванова, аспирант ([email protected]). 158
фейс человеко-машинного взаимодействия неэффективно. Каждый вид интерфейса становится всё более специализированным. Во-вторых, нарастание сложности технических систем требует от субъекта управления всё больших усилий по запоминанию сценариев взаимодействия: комбинаций действий, нажатий кнопок, голосовых команд. В-третьих, пользователю приходится приспосабливаться к формальному компьютерному интерфейсу. Альтернативой является построение человеко-машинного взаимодействия на основе естественного человеческого языка, но данная задача необычайно сложна с точки зрения формализации.
На сегодняшний день существует три основных подхода к формализации естественного языка. Наиболее распространенный на западе подход основывается на формальных грамматиках [13, 12] и позволяет достаточно эффективно формализовать синтаксис языка, однако извлечение смысла в данной парадигме представляется проблематичным. Второй подход основан на использовании не только синтаксической информации, но и семантических словарей [5], однако составлять такие словари очень трудоемко, а чрезмерная многозначность естественного языка приводит на вычислительном уровне к комбинаторному взрыву. Третий подход - использование шаблонов - наиболее прост в автоматизации и используется для извлечения семантики из достаточно строго структурированных текстов. Применение этого подхода для сколько-нибудь широкого подмножества естественного языка проблематично, так как требуется предусмотреть все возможные способы выражения той или иной мысли [5].
Таким образом, задача синтаксического разбора фраз ЕЯ в определенной степени уже решена, чего нельзя сказать о смысловом анализе текстов.
Одним из прикладных вопросов в этой области является перевод задания, сформулированного в фразах ЕЯ, в формальные команды исполнителя-компьютера. Вопрос имеет широкую сферу применения: от построения естественно-языковых интерфейсов к базам данных (например, отечественный коммерческий проект 1иБа8е [9]) до сред программирования сверхвысокого уровня.
На практике, как правило, для каждой подобной задачи строится своя достаточно сложная семантическая модель. Тем не менее, далеко не каждая задача требует глубокого семантического анализа текста, учитывающего структуру дискурса. Во многих прикладных областях понимание текстов на уровне простейшей логики было бы достаточным. Примерами таких областей служат запросы к базам данных, интеллектуальные справочные системы, электронные персональные секретари, системы управления „Умных домов“ [8]. Заметим, что во всех этих областях сейчас используются системы управления, требующие от пользователя специальных навыков (например, знание 8рЬ, умение пользоваться сложными графическими интерфейсами), строго говоря, неадекватных содержанию предметной области.
Цель проекта - построение модели интеллектуального адаптивного ЕЯ-интерфейса, с одной стороны, достаточно разумного и быстрого для практического использования, а с другой стороны, требующий минимальных усилий для построения базы знаний. Поскольку, как уже говорилось ранее, задача синтаксического анализа в достаточной для целей проекта степени решена для широкого круга языков, в предлагаемой модели в качестве исходных данных берутся результаты синтаксического анализа. С точки зрения трех описанных выше подходов предлагаемое решение является расширением шаблонов с минимальным синтаксическим лексиконом упрощенной структуры. В качестве представления фраз естественного языка используется несколько модифицированное функциональное представление, предложенное Тузовым [10]. Статья посвящена анализу темпоральной эффективности алгоритмов логического вывода в построенной модели.
Для иллюстрации и экспериментальной реализации в качестве предметной области нами выбрана модель системы управления „Умными домами“. Модель применима к любому языку, синтаксис которого основан на подчинительных отношениях, для определенности в качестве примера будет использован русский язык.
160
1. Математическая модель ЕЯ-интерфейса
Естественный язык имеет достаточно строгую грамматическую структуру, т. е. содержит обширную формальную составляющую. Эта составляющая достаточно информативна. Действительно, турист с помощью нескольких стандартных фраз и разговорника может понимать незнакомый язык на бытовом уровне, не вникая в тонкости значений слов и выражений. В этом случае человек не думает на используемом языке, т. е. подходит к языковым знаниям с точки зрения формальной лексико-синтаксической структуры. При этом турист в состоянии самостоятельно обучаться: встраивать в свой лексикон новые слова и узнавать новые синтаксические конструкции.
Предлагаемая математическая модель ЕЯ-интерфейса основана на этом же принципе и состоит из следующих элементов:
• лексикон как множество известных в модели слов;
• формальное представление фразы ЕЯ на основе ее синтаксической структуры;
• представление команд системы управления;
• механизм анализа фраз.
В данной работе предлагается осуществлять перевод синтаксической конструкции с естественного языка на формальный путем замены фрагментов синтаксических конструкций на их логические следствия. При этом осуществляется не только буквальный перевод команд с естественного языка на формальный, но и логический анализ фраз, не являющихся командами. Пример, иллюстрирующий этот подход, будет приведен далее.
Пусть А - алфавит лексического уровня применяемого ЕЯ. Тогда формально словом будем называть упорядоченную последовательность непустых цепочек на этом алфавите, разделенных пробелами. Пусть конечное множество Ш Q А + (А+)* - лексикон модели. Слова в лексиконе Ш могут являться как отдельными словами ЕЯ (например: ЧАЙКА, ФЛАГ, ЯБЛОКО), так и
161
устойчивыми словосочетаниями (например: СТИРАЛЬНАЯ МАШИНА, ТЕОРИЯ ВЕРОЯТНОСТЕЙ). Лексикон ЕЯ представляет собой гораздо более сложную структуру, чем просто множество слов. Лексикон построенной модели учитывает два аспекта лексикона ЕЯ, непосредственно определяемые через синтаксис ЕЯ: группировка слов ЕЯ в понятия и синонимичность.
Из множества W выделим множество N понятий естественного языка. Нечеткое отношение обобщения Gen : W х N ^ [0,1] определяет степень уверенности модели в том, что некоторое понятие p £ N обобщает слово w £ W.
Нечеткое отношение синонимичности Syn : W х W ^ [0,1] определяет степень уверенности системы в том, что некоторое слово WA £ W является синонимом к слову WB £ W.
Мы исходим из посылки, что знания модели о предметной области не полны, поэтому небольшое начальное (созданное экспертом по знаниям) множество слов W и отношения обобщения и синонимичности уточняются в процессе функционирования модели на основе анализа позиции в фразе, где встретилось незнакомое слово. Разработанные механизмы адаптации модели в процессе функционирования описаны в [3].
Для дальнейшей иллюстрации будем рассматривать приведенный ниже начальный лексикон.
W = {НАПИСАТЬ, НАБРАТЬ, НАПЕЧАТАТЬ, "ТЕКСТОВЫЙ ДОКУМЕНТ”, СТАТЬЯ, ПИСЬМО, ЗАПУСТИТЬ, БЛОКНОТ, ПРОИГРЫВАТЕЛЬ, ПРОГРАММА, ВКЛЮЧИТЬ, ПРИБОР, ПОМЕЩЕНИЕ, ТЕМНО, СВЕТИЛЬНИК, ЧАЙНИК, КОМНАТА, КУХНЯ}
• веп(СТАТЬЯ,"ТЕКСТОВЫЙ ДОКУМЕНТ") = 1;
• веп(ПИСЬМО,"ТЕКСТОВЫЙ ДОКУМЕНТ") = 1;
• веп(БЛОКНОТ,ПРОГРАММА) = 1;
• веп(БЛОКНОТ,ПРОИГРЫВАТЕЛЬ) = 1;
• веп(СВЕТИЛЬНИК,ПРИБОР) = 1;
• всп(ЧАЙНИК,ПРИБОР) = 1;
• Осп(КОМНАТА,ПОМЕЩЕНИЕ) = 1;
• всп(КУХНЯ,КОМНАТА) = 1;
• 8уп(НАПЕЧАТАТЬ,НАБРАТЬ) = 1;
• 8уп(НАБРАТЬ,НАПЕЧАТАТЬ) = 1;
Все прочие отношения равны нулю. Все новые для модели слова также добавляются в лексикон.
Рассмотрим представление фраз ЕЯ. В фразах естественного языка можно выделить три основных вида синтаксических отношений:
• подчинительные отношения соединяют некоторое главное слово с зависимой синтаксической конструкцией;
• сочинительные отношения - это отношения между конструкциями, синтаксически не подчиненными друг другу и связанными между собой союзом и/или интонацией (например, однородные члены предложения) [6];
• отношение отрицания (унарное) - это признак того, что утверждение не является истинным.
Для ЕЯ это отношение гораздо сложнее традиционного логического отрицания. В общем случае о значении фразы с признаком отрицания ничего конкретного сказать нельзя. Поэтому в дальнейшем мы не будем строить никаких предположений о семантике отрицания.
В предлагаемой модели за основу представления ЕЯ-фразы возьмем подчинительные синтаксические отношения. С точки зрения подчинительных отношений ЕЯ-фраза представляется некоторой иерархической структурой, в которой главные слова находятся над зависимыми.
Формально фразу на естественном языке определим как функциональную форму, в которой в качестве функциональных символов выступают слова лексикона Ш:
• w £ W - любое слово из лексикона модели является фразой;
• пф - отрицание фразы является фразой;
• w([ri : фг], [г2 : Ф2},...[Тп : фп]),п > 0,фг - подчиненная фраза; п - тип аргумента; w £ W - слово с перечисленными в скобках подчиненными фразами.
Пусть Rel - конечное множество типов аргументов модели. Фактически, это типы возможных в языке подчинительных отношений. На практике тип аргумента может представлять собой просто некоторую морфологическую информацию.
Чтобы абстрагироваться от порядка слов в предложении, будем считать, что на множестве Rel всех типов аргументов и на множестве всех слов W задана геделевская нумерация Ng(r), r £ Rel и Ng(w),w £ W. Аргументы некоторого функционального символа упорядочены сначала по геделевскому номеру типа аргумента, а потом - по геделевскому номеру функционального символа - слова.
Функциональную форму фразы ф удобно изображать в виде дерева, вершины которого помечены словами w £ W, а ребра -типами аргументов r £ Rel (рис. 1). Корень дерева фразы ф будем обозначать как Root(ф). Пусть и - узел помеченного дерева фразы. Тогда Word(u) - пометка узла и; Relation(u) - пометка ребра, соединяющего узел и с родительским; Args(u) - множество дочерних узлов узла и. Negation(u) - признак отрицания узла u.
Получить такое помеченное дерево фразы из предложения на ЕЯ можно, например, с помощью библиотек Dialing [7]. Для иллюстрации используются деревья, полученные этим анализатором. К предлагаемому представлению с помощью достаточно очевидных преобразований приводятся такие традиционные представления синтаксических конструкций ЕЯ, как граф зависимостей или дерево непосредственных составляющих [5].
Команда системы управления представляется парой
Требуется срочно написать статью и сопроводительное письмо для журнала
Дерево:
ТРЕБОВАТЬСЯ(
[PR0PERT:CP04H0],
[RESTRiJKyPHAJT],
[CONTEN:HAnHCATb(
( ТРЕБОВАТЬСЯ )
PROPERT
[OBJlCTATbfl], 4--------'
[OBJ:nHCbMO( [PROPERT:COnPOBOflHTEJlbHbl(i ]
(СРОЧНО) ( ЖУРНАЛ ) ( НАПИСАТЬ )
OBJ
)])])
( СТАТЬЯ ) с ПИСЬМО )
PROPERT
( СОПРОВОДИТЕЛЬНЫЙ^)
Рис. 1. Пример построения дерева фразы
e = {v, Parameters)
где v - функциональная форма, задающая определение команды на ЕЯ. Некоторые функциональные символы в v могут быть помечены не словами из W, а параметрами из множества Parameters. Parameters = {p\p = (namei,Ni), Ni С N} - множество параметров команды, где namei - имя параметра; N - множество понятий.
В общем случае команда - это некоторая фиксированная параметризованная синтаксическая конструкция, понятная объекту управления. Можно показать, что общность модели не нарушается, вне зависимости от того, используется ли в командах формальный или естественный язык. Для определенности будем считать, что команда в модели - это фиксированное описание формальной команды объекта управления на естественном языке, т. е. используются типы аргументов и слова естественного языка,
В узлы дерева v, помеченные параметром namei, может быть подставлено некоторое дерево ф, такое, что Бп : Gen(Word(Root^)),n) > 0,п Е Ni. Пусть т(pi) - уровень достоверности унификации параметра.
(1)
т (pi) = Gen(W ord(Root^)) ,n)
Проверка наличия в некоторой фразе ф команды е и вычисление параметров команды производится с помощью операции
165
унификации.
(2) (7, Values) = Unification^, e)
Результатом унификации являются:
• уровень релевантности 7, который определяет степень уверенности системы в наличии команды.
• множество Values = {(pi^i)},где pi - параметры команды e; фi - значения параметров. Причем для каждого параметра Pi должно существовать единственное значение фi.
Обозначим Value(pi) = фi.
Задача логического анализа заключается в том, чтобы свести некоторую начальную фразу ф к множеству фраз, определяющих команды и понятных объекту управления. Механизм преобразования фраз описывается конечным множеством правил контекстной замены Rules. Введем три группы правил контекстной замены. Логическое правило задается следующим образом:
rL = (v ^ a, Parameters)
где v и a - гипотеза и следствие правила, представленные двумя суперпозициями, некоторые функциональные символы которых, возможно, помечены не словами ЕЯ, а параметрами из множества Parameters. Parameters - множество параметров правила, аналогичное множеству параметров команды.
Правило-определение используется для перевода функциональных форм устойчивых словосочетаний в слова лексикона. Правило-определение задается следующим образом:
rO = (v ^ c, Parameters)
где v - словосочетание в функциональной форме, содержащее, возможно, параметры; c - определяемое слово из лексикона W; Parameters - множество параметров.
166
Заключительное правило представляет собой шаблон команды для объекта управления или фразу-ответ на ЕЯ. Заключительное правило задается парой
ге = {v, Parameters)
где v - функциональная форма, представляющая шаблон команды объекта управления или фразу-ответ на ЕЯ.
Цепочка вывода из функциональной формы ф - это конечная последовательность функциональных форм {ф0, ф1,..., фп) таких, что фо = ф, форма и фі+1 непосредственно выводима из фі для 0 < i < n — 1 с помощью некоторого правила ri є Rules, форма фп получена из формы фп-1 с помощью заключительного правила rn є Rules.
На основе введенных определений задачу логического анализа фразы ф можно сформулировать следующим образом.
Задача 1. Найти множество Еф всех заключительных функциональных форм, выводимых из данной функциональной формы ф с помощью цепочек вывода длины не более Length. Очевидно, что при такой постановке задачи множество Еф конечно.
Далее приведен пример логического анализа нескольких фраз. Объект управления в примере умеет только включать известные ему приборы (светильник и чайник), расположенные в известном помещении (на кухне) и запускать известные программы (блокнот и проигрыватель). Для краткости будем опускать обозначение типа аргумента.
Rules = {
1) ЗАПУСТИТЬ ($X) Parameters = {{$X, "ПРОГРАММА"}};
2) ВКЛЮЧИТЬ ($X, $Y) Parameters = {{$X,
"ПОМЕЩЕНИЕ"}, {$Y, "ПРИБОР"}};
3) НАПИСАТЬ ($X) ^ НАБРАТЬ ($X), Parameters = {{$X, "ТЕКСТОВЫЙ ДОКУМЕНТ"}} ;
4) НАБРАТЬ ($X) ^ ЗАПУСТИТЬ (БЛОКНОТ),
Parameters = {{$X, "ТЕКСТОВЫЙ ДОКУМЕНТ"}};
5) ТЕМНО ($X) ^ ВКЛЮЧИТЬ ($X, СВЕТИЛЬНИК) Parameters = {{$X, "ПОМЕЩЕНИЕ"}};
}
Рассмотрим анализ фразы "Нужно срочно написать статью для журнала". Заметим, что эта фраза не является явной командой объекту управления. Функциональная форма, представляющая фразу: НУЖНО(СРОЧНО, ЖУРНАЛ, НА-ПИСАТЬ(СТАТЬЯ)). Применение правила 3 к функциональной форме: НУЖНО(СРОЧНО, ЖУРНАЛ, НАБРАТЬ(СТАТЬЯ)). Применение правила 4: НУЖНО(СРОЧНО, ЖУРНАЛ, ЗАПУ-СТИТЬ(БЛОКНОТ)). Применение заключительного правила 1 дает команду: ЗАПУСТИТЬ(БЛОКНОТ). Аналогичным образом фраза "В кухне слишком темно"приведет к команде ВКЛЮ-ЧИТЬ(КУХНЯ, СВЕТИЛЬНИК). Таким образом, предложенная модель позволяет описывать принципиально более сложную логику, чем простая интерпретация команд, вроде "Включи чайник". Пример показывает, что адекватность результатов логического вывода определяется наполнением множества правил и отношениями на лексиконе, и не зависит от используемого языка.
Однако алгоритмы, решающие Задачу 1, имеют высокую временную сложность.
Теорема: Задача 1 является NP-трудной.
Доказательство теоремы можно найти в [2].
Если рассматривать данную модель с точки зрения практической применимости, возникает проблема, типичная для интеллектуальных систем: высокая временная сложность алгоритмов. Предлагаемый способ решения этой проблемы рассмотрен далее.
2. Проблема увеличения скорости работы алгоритма логического анализа
В большинстве случаев фраза на ЕЯ характеризуется уникальным упорядоченным набором слов - пометок вершин. Схемы 168
построения фраз, задаваемые пометками ребер, определяются не обширным лексиконом, а структурной спецификой выбранного языка, и потому имеют тенденцию к повторению. Эта особенность ЕЯ отражается, прежде всего, в синтаксисе. Учет этого обстоятельства позволяет, как показано далее, значительно снизить временную сложность алгоритмов предложенной модели.
Схема ТешрІаЬе(ф) - это дерево фразы ф без пометок вершин. Для хранения схем гипотез всех правил базы и целевых шаблонов команд нами разработана специальная структура данных - дерево схем (ДС). Ребра ДС помечены типами отношений, возможными между лексемами во фразах на анализируемом языке. Каждый узел может быть связан данным типом отношения с не более чем одним потомком. Таким образом, каждый узел щ ДС однозначно задается упорядоченным набором пометок ребер Ь(щ) вдоль пути от корня дерева к узлу щ. Каждый узел щ содержит список правил, в гипотезе которой существует узел и, такой что Ь(и) = Ь(щ).
Заметим, что производительность ДС зависит не от количества внесенных в него фраз, а от количества узлов в этих фразах. Эксперименты, результаты которых представлены ниже, показали эффективность ДС не только как структуры организации базы правил, но и как хранилища уже полученных фраз для предотвращения повторного вывода.
3. Результаты тестирования производительности
Были проведены вычислительные эксперименты, позволяющие проанализировать эффективность разработанных алгоритмов. В экспериментах измерялось только „чистое“ время работы системы, не включающее время перевода фраз на ЕЯ во внутреннее представление.
В качестве анализируемого языка использован русский. Анализируемые предложения имеют различную сложность и длину от 2 до 11 слов. Заметим, что фразы на естественном языке редко бывают длиннее 20 слов, поэтому их размер мало влияет на общую производительность алгоритмов модели.
Знания модели в проводимых экспериментах являются полными, т. е. при унификации уровень релевантности результата равен 0 или 1 и обучение системы не производится.
Поведение системы значительно зависит от конкретного содержания предложений. Это связано с наличием экстенсивных правил. Пусть дерево фразы $1 - результат применения правила г к дереву фразы в. Правило г назовем экстенсивным, если оно применимо к в1. Такие правила вызывают порождение сильно ветвящихся деревьев вывода с большой высотой, что существенно влияет на производительность системы. Для более объективной оценки времени работы системы каждая точка графика получается как среднее значение времени работы пяти тестов. В качестве входного текста для каждого из пяти тестов использовалась случайная выборка предложений требуемого размера. К каждому предложению применимо хотя бы одно правило из базы правил. Для алгоритмов выбора правила ЛВП и ДС в точках с одинаковым количеством правил анализируются одинаковые тексты.
1. Сравнение алгоритмов выбора правила ЛВП и ДС. Зависимость от размера текста.
Условия эксперимента:
• База правил - 200 правил.
• Структура данных для хранения полученных результатов -красно-черное дерево.
• Максимальная глубина дерева вывода - 5 шагов.
• Диапазон изменения размера текста: от 10 до 120 предложений; шаг: 10 предложений.
На рис. 2 изображена полученная зависимость. Пунктирными линиями обозначены коридоры значений.
2. Сравнение алгоритмов выбора правила ЛВП и ДС. Зависимость от количества правил.
Условия эксперимента:
Технические и программные средства управления — "Линейный выбор правила Дерево схем
3500 -|
зооо --
« 2500 -г
1
^ 2000 -■ ю п
к 1 500 -■
Е ф
а.
“ 1 000 -■
500 -■
0 -■
о
Рис. 2. Сравнение алгоритмов выбора правила ЛВП и ДС. Зависимость от размера текста
• Диапазон изменения размера базы правил - от 15 до 390 правил; шаг: 15 правил.
• Структура данных для хранения полученных результатов -красно-черное дерево.
• Максимальная глубина дерева вывода - 5 шагов.
• Размер текста: 128 предложений.
На рис. 3 изображена полученная зависимость. Пунктирными линиями обозначены коридоры значений.
Серии 1 и 2 экспериментов демонстрируют несомненное превосходство алгоритма ДС в сравнении с алгоритмом ЛВП для выбора применяемого правила.
3. Сравнение ДС и красно-черного дерева как структур данных для хранения полученных результатов (для предот-
171
-------
/ У/
20 40 60 80 1 00 1 20 НО
количество предложений
-----Линейный выбор правила — -Дерево схем
7000
0 50 100 150 200 250 300 350 400 450
Количество правил
Рис. 3. Сравнение алгоритмов выбора правила ЛВП и ДС.
Зависимость от количества правил
вращения повторного вывода) для различных способов выбора правила: ЛВП и ДС.
Условия эксперимента:
• База правил - 200 правил.
• Максимальная глубина дерева вывода - 7 шагов.
• Диапазон изменения размера текста: от 10 до 120 предложений; шаг: 10 предложений.
Эксперимент показал, что в качестве структуры данных для хранения полученных результатов ДС значительно эффективнее красно-черного дерева. Однако это отличие заметно лишь при большой глубине дерева логического вывода. В проведенном эксперименте алгоритм логического вывода получил порядка 1400 различных фраз для текста из 120 предложений. Если ограничить максимальную глубину дерева вывода 5 шагами, то количество
172
Алгоритм выбора правила: ДС Алгоритм выбора правила: ЛВП
Дерево схем ---------Красно-черное дерево----------Дерево схем -----------Красно-черное дерево
О 50 100 150 0 50 100 150
количество предложений количество предложений
Рис. 4. Сравнение ДС и красно-черного дерева как структур данных для хранения полученных результатов (для предотвращения повторного вывода) для различных способов выбора правила: ЛВП и ДС
получаемых различных фраз - около 600, и различия в производительности между красно-черным деревом и ДС незаметны.
4. Зависимость времени работы алгоритмов от глубины вывода для различных способов выбора правила: ЛВП и ДС.
Условия эксперимента:
• База правил - 200 правил.
• Структура данных для хранения полученных результатов -красно-черное дерево.
• Диапазон ограничения на максимальную глубину дерева вывода - от 3 до 7 шагов.
• Диапазон изменения размера текста: от 10 до 120 предложений; шаг: 10 предложений.
Эта серия экспериментов показывает, что производительность системы при росте ограничения на максимальную глубину дерева вывода очень быстро падает (рис. 5).
Рис. 5. Зависимость времени работы алгоритмов от глубины вывода для различных способов выбора правила: ЛВП и ДС
4. Общая архитектура системы
В качестве языка программирования для реализации предложенной математической модели выбран мультиплатформенный язык Java. Взаимодействие модулей реализации системы представлено на рис. 6[4].
Рис. 6. Схема потоков данных системы Модуль первичного семантического анализа преобразует
фразы на естественном языке во внутреннее представление системы - функциональные формы. Первичный семантический анализ использует внешний синтаксический анализатор текстов на естественном языке. Модуль первичного семантического анализа легко заменяем, что позволяет подключать к системе синтаксические анализаторы различных языков. В текущей реализации для синтаксического анализа используется продукт Dialing.
Задача модуля логического вывода - построить список команд для объекта управления из исходных гипотез путем построения цепочек логического вывода. Алгоритм логического вывода конфигурируется набором параметров, таких как глубина дерева логического вывода и параметры обучения.
Преобразование результатов логического вывода в команды для „Умного дома“ производится в модуле интерпретации. В простейшем случае каждому шаблону команды соответствует минипрограмма определенной системы „Умного дома“. Этот модуль является заменяемым и определяется программным интерфейсом объекта управления.
Через модуль графического интерфейса осуществляется взаимодействие с пользователем системы: ввод команд на естественном языке, интерактивное обучение системы с учителем, конфигурация и настройка системы.
Модуль обучения автоматизирует процесс построения базы знаний системы.
5. Выводы
Вычислительные эксперименты демонстрируют, что предложенная математическая модель адекватна моделируемому объекту в пределах поставленной задачи. Тестирование производительности показало высокую эффективность механизмов повышения темпоральной эффективности. Модель представляет практический интерес в области интеллектуального управления техническими системами.
Использование разработанной программной библиотеки в комплексах Умный дом“ позволит расширить функциональ-
175
ные возможности комплексов (возможно управление любыми электрическими бытовыми приборами без усложнения системы управления). Кроме того, предложенный механизм не требует от пользователя специальной подготовки и опыта работы с формализованными знаковыми системами.
Литература
1. ЛЮГЕР Д. Ф. Искусственный интеллект: стратегии и методы решения сложных проблем. 4-е издание. - М.: Вильямс, 2003.
2. КРАЙВАНОВАВ. А. Вычислительная сложность задачи логического анализа для адаптивно-логической модели естественного языка // Материалы двенадцатой региональной конференции по математике "МАК-2009". - Барнаул: Изд-во АГУ, 2009. - С. 130-132.
3. КРАЙВАНОВАВ. А., КРЮЧКОВАЕ.Н. Концепция адаптивного управления интеллектуальными объектами на основе логического вывода / Ползуновский альманах. -2008. - №4. - Барнаул: Изд-во АлтГТУ. - С. 26-30.
4. КРАЙВАНОВАВ. А. Система интеллектуального управления сложными адаптирующимися объектами // Научная сессия ТУСУР-2008: Материалы докладов Всероссийской научно-технической конференции студентов, аспирантов и молодых ученых, Томск, 5-8 мая 2008 г. Ч. 2. - Томск: В-Спектр, 2008. - С. 78-81.
5. НАЙХАНОВА Л. В., ЕВДОКИМОВА И. С. Методы и алгоритмы трансляции естественно-языковых запросов к базе данных в Б01-запросы.. - Улан-Уде: Издательство ВСГТУ, 2004.
6. РОЗЕНТАЛЬ Д. Э., ТЕЛЕНКОВА М. А. Справочник по русскому языку. Словарь лингвистических терминов. - М.: Наука, 1985. - 394 с.
7. СОКИРКОА. В. Реализация первичного семантического анализа в системе Диалинг // Труды междунар. семинара
Диалог’2000 по компьютерной лингвистике и её приложениям, Протвино, 2000.
8. Сайт компании House Control [Электронный ресурс]. -Режим доступа: http://www.housecontrol.ru
9. Сайт Российского НИИ искусственного интеллекта [Электронный ресурс]. - Режим доступа: http://artint.ru
10. ТУЗОВ В. А. Компьютерная семантика русского языка СПб.: Изд-во СПбГУ, 2004. - 400 с.
11. ХОРОШЕВСКИЙ В. Ф. Оценка систем извлечения информации из текстов на естественном языке: кто виноват, что делать // Труды Десятой национальной конференции по искусственному интеллекту с международным участием (КИИ- 2006). - М.: Физматлит. - 2006. - Т. 2. -С. 464-478.
12. ЧЕПОВСКИЙ А. М. Неразрешимая проблема компьютерной лингвистики // "Компьютерра"№30, 02.08.2002.
13. CHOMSKYN. The logical basis of linguistic theory // Preprints of papers for ninth international congress of linguistics. - Cambridge: Mass. - 1962.
MODEL OF NATURAL-LANGUAGE INTERFACE FOR COMPLEX TECHNICAL OBJECTS CONTROL SYSTEMS AND EFFICIENCY EVALUATION OF MODEL-BASED ALGORITHMS
Varvara Krayvanova, Altai State Technical University, Barnaul, post-graduate student([email protected]).
Abstract: The article considers the problem of intelligent computer human interface construction based on natural language phrases logical analysis. The mathematical model of interface is offered and its efficiency is shown. The architecture of technical objects intellectual control is considered by the example of systems ,,Clever house“.
Keywords: natural language interface, human-computer interaction, artificial intelligence.
Статья представлена к публикации членом редакционной коллегии Д.А. Новиковым.