Перевести страницу на:  
Please select your language to translate the article


You can just close the window to don't translate
Библиотека
ваш профиль

Вернуться к содержанию

Кибернетика и программирование
Правильная ссылка на статью:

Многоагентный подход к построению машин обработки знаний на основе семантических сетей

Шункевич Даниил Вячеславович

ассистент, кафедра Интеллектуальных информационных технологий, Белорусский государственный университет информатики и радиоэлектроники

220013, Беларусь, г. Минск, ул. П. Бровки, 6

Shunkevich Daniil Vyacheslavovich

assistant, Department of Intelligent Information Technologies, Belarusian State University of Informatics and Radio Electronics

22013, Belarus, Minsk, ul. P. Brovki, 6

shu.dv@tut.by
Другие публикации этого автора
 

 

DOI:

10.7256/2306-4196.2013.1.8299

Дата направления статьи в редакцию:

18-01-2013


Дата публикации:

1-02-2013


Аннотация: В данной работе рассматриваются проблемы существующих мето-дов, средств и технологий построения машин обработки знаний, рас-сматривается подход к их построению, призванный решить поставлен-ную проблему путем интеграции различных методов и способов реше-ния задач на общей формальной основе. Машина обработки знаний каждой конкретной системы во многом зависит от назначения данной системы, множества решаемых задач. Основная проблема, рассматриваемая в данной работе, заключается в отсутствии средств, позволяющих относительно неподготовленному разработчику в удовлетворительные сроки проектировать машины обработки знаний для прикладных интеллектуальных систем различного назначения. Технология проектирования машин обработки знаний предполагает использование многоагентной архитектуры. В данной работе рассматриваются два основных способа классификации агентов: по функциональному назначению и по внутренней структуре. Рассматривается ряд средств, обеспечивающих дополнительные возможности при проектировании машин обработки знаний на основе библиотек. В статье рассмотрены наиболее значимые средства, позволяющие осуществлять проектирование многоагентных систем.


Ключевые слова:

семантические сети, агенты, обработка знаний, проектирование, технология, машины, многоагентные системы, информационно-поисковая машина, операции, задачи

Abstract: In this paper we consider the problem of existing methods-ing, tools and technologies for construction machinery processing knowledge, dis-regarded approach to their construction, designed to solve the put-ing problem by integrating different methods and ways of solution of the problem, a common formal basis. Machine processing of knowledge of each particular system depends largely on the purpose of the system, the set of tasks. The main problem addressed in this paper is the lack of means to relatively inexperienced developer in terms satisfactory to design the machine processing of knowledge for application of intelligent systems for various purposes. Machine Design Technology knowledge processing involves the use of multi-agent architecture. In this paper, we consider two basic ways to classify agents: based on their functions and internal structure. Addresses a number of tools that provide additional opportunities for the design of machines processing of knowledge-based libraries. The article deals with the most important tools that enable the design of multi-agent systems. The paper discusses two basic ways of classifying agents: based on their functions and internal structure. Author consider a number of features that provide additional capabilities when designing knowledge processing machines on the basis of libraries. The article deals with the most important means to implement the design of multi-agent systems.


Keywords:

semantic network, agents, knowledge information processing, design, technology, machine, multi-agent systems, information retrieval machine, operations, tasks

Введение

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

Однако большинство прикладных интеллектуальных и экспертных систем [1] имеют один и тот же недостаток – они не позволяют в должной мере обеспечить обработку тех знаний, которые в них содержатся.

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

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

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

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

В связи с этим возникает необходимость создания универсальной технологии проектирования машин обработки знаний, обладающей следующими свойствами, отсутствие которых делает невозможным обработку знаний на желаемом уровне, а также не позволяет проектировать машины обработки знаний, удовлетворяющие потребностям конкретной системы. Данная технология является частью открытой семантической технологии проектирования интеллектуальных систем OSTIS [3].

Классификация агентов обработки знаний

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

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

По функциональному назначению агенты можно декомпозировать следующим образом:

  • Поисковые агенты. Основной задачей данного класса агентов, как следует из названия, является осуществление попытки поиска готового ответа на поставленный вопрос. Таким образом, для каждого класса решаемых системой задач необходимо наличие хотя бы одного соответствующего поискового агента.
  • Агенты, реализующие стратегии решения. К данному классу относятся агенты, которые реализуют принципы решения задач, заложенные в ту или иную стратегию решения. Для каждой имеющейся в системе стратегии необходимо наличие хотя бы одного агента, реализующего данную стратегию.
  • Агенты логического вывода. К данному классу относятся агенты, предназначенные для генерации новых знаний на основе некоторых логических утверждений. Количество и разнообразие таких агентов зависит от типологии логических утверждений, которые предполагается использовать в прикладной интеллектуальной системе.
  • Агенты интерпретации программ. Агенты данного класса предназначены для интерпретации программ, записанных как на внешних (с точки зрения системы), так и на внутренних языках системы. Количество таких агентов в конкретном случае зависит от интенсивности использования готовых программ в решении задачи и может равняться нулю, если готовые программы не предполагается использовать по каким-либо причинам.
  • Агенты-мусорщики. Агенты данного класса предназначены для удаления из памяти системы информационного мусора, т.е. конструкций, сгенерированных ранее каким-либо агентом, и потерявших актуальность либо семантическую ценность. Агенты-мусорщики могут ориентироваться либо на типовые конструкции, либо на нетипичные конструкции, помеченные каким-либо специальным образом.
  • Агенты интеграции знаний и устранения противоречий в базе знаний. Данный класс агентов предназначен для обеспечения корректной интеграции в системе новых знаний с уже существующими, а также для верификации знаний. Агенты данного класса могут активироваться не в процессе решения системой конкретной задачи, а в произвольный момент при возникновении необходимости верификации знаний, как это указано в разделе 2.

На основании внутренней структуры агенты можно декомпозировать следующим образом:

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

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

Автоматические средства поддержки проектирования машин обработки знаний

Рассмотрим ряд средств, обеспечивающих дополнительные возможности при проектировании машин обработки знаний на основе библиотек, а также собственно компонентов, входящих в состав каждой из библиотек.

  • Среда программирования для языка, ориентированного на обработку семантических сетей.

Данная среда программирования должна обладать всеми стандартными возможностями, предоставляемыми средами разработки для существующих языков программирования. Среди таких возможностей можно отметить

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

●●Редактор исходных текстов программ, имеющий функции автодополнения, подсветки синтаксиса, выявления синтаксических ошибок, поиска необъявленных переменных и т.д.

●●Транслятор реального времени, позволяющий протранслировать составленную программу в память системы прямо в процессе ее работы для последующего тестирования и использования.

  • Профайлер графодинамической памяти.

Задача профайлера состоит в подсчете объема памяти, используемого тем или иным агентом или группой агентов. Объем памяти оценивается соответственно на основе количества созданных узлов и дуг, с возможностью уточнения типа учитываемых элементов. Такой профайлер позволит отслеживать и предупреждать накопление информационного мусора, ложные срабатывания агентов обработки знаний и т.д.

  • Визуализатор графодинамической памяти.

Задача визуализатора состоит в отображении в реальном времени средствами пользовательского интерфейса некоторого фрагмента памяти (например, семантической окрестности некоторого узла). Это позволяет разработчику лучше понять процессы, происходящие в памяти, оценить правильность работы спроектированных программ и выяснить, действительно ли все происходит так, как он планировал. Использование визуализатора наиболее целесообразно одновременно с отладчиком в режиме пошаговой отладки, т.к. разработчик сможет визуально отследить реальный результат каждого шага составленной программы.

  • Среда проектирования коллективов агентов над общей памятью.

В мире существуют средства, позволяющие осуществлять проектирование многоагентных систем. Наиболее значимые представители рассмотрены в статье А.В. Нарушева и В.Ф. Хорошевского [4]. Однако все указанные средства ориентированы на непосредственное взаимодействие агент-агент, в то время как в рамках рассматриваемого подхода к проектированию машин обработки знаний взаимодействие агентов осуществляется через общую память.

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

Таким образом, речь идет о создании интегрированной среды разработки машин обработки знаний на основе мультиагентного подхода.

Библиография
1. Гаврилова, Т. А. Базы знаний интеллектуальных систем. Учебник / Т.А. Гаврилова, В.Ф. Хорошевский. – СПб: Изд-во «Питер», 2001.
2. Ефимов, Е. И. Решатели интеллектуальных задач / Е. И. Ефимов;-М: Наука, 1982.
3. OSTIS (2013). Открытая технология проектирования интеллектуальных систем. Web: http://www.ostis.net.
4. Нарушев, Е. С. AgSDK: Инструментарий разработки мультиагентных си-стем / Е.С. Нарушев, В.Ф. Хорошевский // Труды 7-ой Национальной конферен-ции по искусственному интеллекту с международным участием, Переславль Залесский, 24-27 октября 2000. – М: ИФМЛ, том 2.
5. В.В. Голенков, Д.В. Шункевич, И.Т. Давыденко Cемантическая технология проектирования интеллектуальных решателей задач на основе агентно-ориентированного подхода // Программные системы и вычислительные методы. - 2013. - 1. - C. 82 - 94. DOI: 10.7256/2305-6061.2013.01.7.
6. Н.А. Гулякина, И.Т. Давыденко, Д.В. Шункевич Методика проектирования семантической модели интеллектуальной справочной системы, основанная на семантических сетях // Программные системы и вычислительные методы. - 2013. - 1. - C. 56 - 68. DOI: 10.7256/2305-6061.2013.01.5.
References
1. Gavrilova, T. A. Bazy znanii intellektual'nykh sistem. Uchebnik / T.A. Gavrilova, V.F. Khoroshevskii. – SPb: Izd-vo «Piter», 2001.
2. Efimov, E. I. Reshateli intellektual'nykh zadach / E. I. Efimov;-M: Nauka, 1982.
3. OSTIS (2013). Otkrytaya tekhnologiya proektirovaniya intellektual'nykh sistem. Web: http://www.ostis.net.
4. Narushev, E. S. AgSDK: Instrumentarii razrabotki mul'tiagentnykh si-stem / E.S. Narushev, V.F. Khoroshevskii // Trudy 7-oi Natsional'noi konferen-tsii po iskusstvennomu intellektu s mezhdunarodnym uchastiem, Pereslavl' Zalesskii, 24-27 oktyabrya 2000. – M: IFML, tom 2.
5. V.V. Golenkov, D.V. Shunkevich, I.T. Davydenko Cemanticheskaya tekhnologiya
proektirovaniya intellektual'nykh
reshatelei zadach na osnove
agentno-orientirovannogo podkhoda // Programmnye sistemy i vychislitel'nye metody. - 2013. - 1. - C. 82 - 94. DOI: 10.7256/2305-6061.2013.01.7.

6. N.A. Gulyakina, I.T. Davydenko, D.V. Shunkevich Metodika proektirovaniya
semanticheskoi modeli intellektual'noi
spravochnoi sistemy, osnovannaya
na semanticheskikh setyakh // Programmnye sistemy i vychislitel'nye metody. - 2013. - 1. - C. 56 - 68. DOI: 10.7256/2305-6061.2013.01.5.