Научная статья на тему 'Алгоритм генетического программирования для формирования систем на основе интеллектуальных агентов'

Алгоритм генетического программирования для формирования систем на основе интеллектуальных агентов Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
113
29
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ИНТЕЛЛЕКТУАЛЬНЫЙ АГЕНТ / АГЕНТЫ НА ОСНОВЕ ЛОГИЧЕСКОЙ МОДЕЛИ / МУЛЬТИАГЕНТНЫЕ СИСТЕМЫ / ГЕНЕТИЧЕСКОЕ ПРОГРАММИРОВАНИЕ / INTELLECTUAL AGENT / AGENTS BASED ON THE LOGICAL MODEL / MULTI-AGENT SYSTEMS / GENETIC PROGRAMMING

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Сажина Ю.В., Липинский Л.В., Свиридова А.С.

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

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

ALGORITHM OF GENETIC PROGRAMMING FOR THE FORMATION OF SYSTEMS BASED ON INTELLIGENT AGENTS

The concept of an intelligent agent is considered. The concept of an intelligent agent is considered. A method of automated formation of intelligent agents based on genetic programming is proposed. The main schemes of the proposed algorithms and their descriptions are presented.

Текст научной работы на тему «Алгоритм генетического программирования для формирования систем на основе интеллектуальных агентов»

УДК 004.825

АЛГОРИТМ ГЕНЕТИЧЕСКОГО ПРОГРАММИРОВАНИЯ ДЛЯ ФОРМИРОВАНИЯ СИСТЕМ НА ОСНОВЕ ИНТЕЛЛЕКТУАЛЬНЫХ АГЕНТОВ

Ю. В. Сажина, Л. В. Липинский, А. С. Свиридова

Сибирский государственный университет науки и технологий имени академика М. Ф. Решетнева Российская Федерация, 660037, г. Красноярск, просп. им. газ. «Красноярский рабочий», 31

E-mail: yulia_klimec@mail.ru

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

Ключевые слова: интеллектуальный агент, агенты на основе логической модели, мультиагентные системы, генетическое программирование.

ALGORITHM OF GENETIC PROGRAMMING FOR THE FORMATION OF SYSTEMS BASED ON INTELLIGENT AGENTS

U. V. Sazhina, L. V. Lipinskiy, A. S. Sviridova

Reshetnev Siberian State University of Science and Technology 31, Krasnoyarsky Rabochy Av., Krasnoyarsk, 660037, Russian Federation E-mail: yulia_klimec@mail.ru

The concept of an intelligent agent is considered. The concept of an intelligent agent is considered. A method of automated formation of intelligent agents based on genetic programming is proposed. The main schemes of the proposed algorithms and their descriptions are presented.

Keywords: intellectual agent, agents based on the logical model, multiagent systems, genetic programming.

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

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

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

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

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

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

В настоящее время выделяют четыре основные архитектуры [2; 3]:

1) агенты, основанные на модели классической логики или на знаниях;

2) реактивные агенты (архитектура, основанная на реакции системы на события окружающей среды);

3) BDI - агенты (внутренние состояния и принимаемые решения определяются структурой данных, которые представляют собой такие ментальные понятия агента, как убеждения, желания, намерения);

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

В рамках данной работы рассматриваются агенты, основанные на классической логике (логические агенты). Логические агенты обладают базой знаний (куда входит представление о внешней среде) и механизмом принятия решений. Такой агент сначала строит план по достижению цели, а потом выполняет его путем циклического повторения трех основных процедур: выбрать цель, сгенерировать план ее достижения, исполнить план, выбрать новую цель и т. д. Логические агенты имеют ярко выраженную индивидуальность и характеризуются целесообразным поведением. Благодаря своим возможностям рассуждений, такие агенты могут запоминать и анализировать различные ситуации, предвидеть возможные реакции на свои действия, делать выводы и в результате планировать свое поведение [2].

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

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

онном алгоритме, а все остальные процедуры поиска остаются неизменными.

При формировании процедуры вывода исследователь, как правило, сталкивается с двумя основными задачами: формирование структуры и настройка числовых параметров. Например, при формировании нейронной сети необходимо построить структуру и настроить веса, при построении нечеткого логического вывода - настроить базу правил и определить параметры лингвистических переменных, при построении Байесовских сетей доверия - построение структуры и настройка вероятностей и т. д. Для поиска эффективных структур (структурного поиска) хорошо зарекомендовал себя алгоритм генетического программирования. В генетическом программировании решения представляются в виде древовидных структур. Такое представление позволяет в удобном и наглядном виде кодировать даже сложные структурные решения. Общую схему генетического программирования более подробно можно изучить в работах [4]:

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

Рассмотрим работу каждого модуля подробнее:

Модуль генетического программирования. Для применения генетического программирования необходимо решить следующие задачи: определить представление решения и определить функцию пригодности. Представление решения зависит от типа решающего механизма.

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

Рис. 2. Пример дерева: Условие N - функциональное множество, Вывод N - терминальное множество

Рис. 3. Схема вычисления оценки пригодности

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

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

ского программирования задается алгоритмически. Рассмотрим схему вычисления оценки пригодности (рис. 3).

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

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

Библиографические ссылки

1. Осипов Г. С. Методы искусственного интеллекта. М. : Физмалит, 2011. 296 с.

2. Рассел Стюарт, Питер Норвинг Искусственный интеллект: современный подход. 2-е изд. М. : Виль-ямс, 2006. 1408 с.

3. Тарасов В. Б. От многоагентых систем к интеллектуальным организациям: философия, психология, информатика. М. : Эдиториал УРСС, 2002. 352 с.

4. Burger Yuri Мягкие вычисления [Электронный ресурс] // Алгоритмы. 2003. URL: http://www.getinfo. ru/article28.html (дата обращения: 26.05.2015).

5. Сажина Ю. В., Липинский Л. В. Эволюционные алгоритмы автоматизированного формирования интеллектуальных агентов. М. : Институт управления и социально-экономического развития, 2018.

References

1. Osipov G. S. Metody iskusstvennogo intellekta. M.: Fizmalit, 2011. 296 р.

2. Rassel Styuart, Piter Norving. Iskusstvennyy intellekt: sovremennyy podkhod. 2-e izd. M.: Izdatelskiy dom "Viliams", 2006. 1408 р.

3. Tarasov V. B. Ot mnogoagentykh sistem k intellek-tualnym organizatsiyam: filosofiya. psikhologiya. infor-matika. M .: Editorial URSS, 2002. 352 р.

4. Burger Yuri Myagkiye vychisleniya // Algoritmy. 2003. Available at: http://www.getinfo.ru/article28.html (accessed: 26.05.2015).

5. Sazhina Yu. V., Lipinskiy L. V. Evolyutsionnyye algoritmy avtomatizirovannogo formirovaniya intellektu-alnykh agentov. M. : Institut upravleniya i sotsialno-ekonomicheskogo razvitiya, 2018.

© Сажина Ю. В., Свиридова А. С., 2018

i Надоели баннеры? Вы всегда можете отключить рекламу.