Назад в библиотеку

Применение агентно-ориентированной технологии к синтезу новых технических систем

Авторы: Заболсева-Зотова А.В., Набока М.В.
Источник: Волгоградский государственный технический университет, каф. САПРиПК, micnab@mail.ru
[ссылка на источник]

Аннотация

В статье представляется подход к построению автоматизированных систем концептуального проектирования технических объектов с использованием агентно-ориентированной' технологии. Обосновывается выбор агентно-ориентированной технологии создания архитектуры системы и описывается концепция разрабатываемого метода автоматизации проектирования.

Введение

К настоящему моменту сложилось положение, при котором развитие методов автоматизации процесса структурного синтеза не приводит к получению результатов, способных вывести процесс проектирования на качественно новый уровень. В современных САПР по-прежнему автоматизированы только отдельные проектные процедуры, по большей части расчетные и оформительские. Задачи, возникающие на ранних стадиях проектирования технических объектов, «к которым относятся: формирование технического задания, разработка технического предложения и эскизное проектирование» [1] по-прежнему решаются в интерактивном режиме инженером-проектировщиком. Реализуемые при этом процедуры связаны с решением слабоструктурированных и трудноформализуемых задач, характеризующихся наличием неполной и нечеткой информации как о создаваемой технической системе (ТС), так и методах ее синтеза, и, по этому, с трудом поддаются автоматизации в рамках существующей методологии автоматизированного проектирования.

Основываясь на предыдущих достижениях в области автоматизации проектирования (в том числе ученых, работавших на кафедре САПРиПК ВолгГТУ: А.И. Половинкина, В.А. Камаева, А.В. Андрейчикова), сыгравших важную роль в развитии техники и технологии, необходимо признать наличие существенной необходимости в разработке принципиально новых подходов к решению задач концептуального проектирования.

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

Рассматривая синтез сложных систем с точки зрения уменьшения энтропии системы в процессе преобразования исходного описания (задания на проектирования) в некоторое конечное описание (проект), мы приходим к тому, что сама система проектирования должна создаваться как сложная система, которая «характеризуется большим числом элементов и связей между ними, причем как число элементов и сила межэлементных связей, так и их локализация могут неконтролируемо измениться, что делает поведение таких систем плохо предсказуемым» [2]. Для анализа и синтеза таких сложных систем возможно и необходимо использование нового направления развития систем искусственного интеллекта, например, такого, как синергетический искусственный интеллект. Область синергетического искусственного интеллекта включает, в первую очередь, исследование процессов зарождения, формирования, деятельности, коммуникации, эволюции и кооперации сложных, открытых интеллектуальных систем различных классов [3]. Удобным механизмом моделирования перечисленных процессов является методология интеллектуальных многоагентных систем, явившаяся результатом развития распределенного ИИ в последнее десятилетие.

С практической точки зрения, постоянный прогресс информационных технологий, с одной стороны, и постоянные модификации и рост сложности проектируемых технических систем, с другой, приводят к необходимости рассматривать САПР как архитектуру, обеспечивающую проектировщикам возможность добавления новых свойств и компонент. Использование технологии распределенных объектов на сегодняшний день может рассматриваться как необходимое, но, по-видимому, недостаточное условие повторного использования компонент. Наиболее приемлемые решения лежат в использовании агентно-ориентированной архитектуры в качестве каркаса САПР, в котором агенты обеспечивают динамическое связывание и взаимодействие, используя стандартные интерфейсы и форматы данных [4].

Общая характеристика агентных систем

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

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

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

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

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

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

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

  1. Архитектура, которая базируется на принципах и методах искусственного интеллекта, т.е. систем, основанных на знаниях («deliberative agent architecture», «архитектура разумного агента»).
  2. Архитектура, основанная на поведении («reactive architecture») или «реактивная архитектура» (основанная на реакции системы на события внешнего мира).

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

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

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

  1. Активность, способность к организации и реализации действий.
  2. Реактивность, способность воспринимать состояние среды.
  3. Автономность, относительная независимость от окружающей среды.
  4. Общительность (или «социальное поведение», «social ability»), вытекающая из необходимости решать свои задачи совместно с другими агентами.
  5. Целенаправленность, предполагающая наличие собственных источников мотивации, а в более широком плане, особых интенциональных характеристик [3].

Реализация агентного подхода

Применение многоагентных систем в САПР началось уже несколько лет назад [4-6]. Однако, существующие варианты реализации используют многоагентную технологию для создания систем поддержки коллективной работы проектировщиков или распределения решения задачи между агентами.

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

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

Кратко рассмотрим основные используемые в предлагаемом подходе формализмы структурного синтеза.

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

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

Введем некоторые терминологические соглашения:

  1. Под семантической категорией будем понимать имя, данное совокупности определенных элементов в области рассуждений, т.е. семантическая категория – суть именованное подмножество. Область рассуждений - совокупность семантических категорий.
  2. Имена, даваемые категориям, могут определяться произвольно и являются синтаксическими объектами.
  3. Семантический граф Gs, есть конечный граф, вершинами которого служат семантические категории. Дуги Gv указывают теоретико-множественные отношения.
  4. Висячие вершины графа Gv называются примитивными категориями.

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

В целях описания структур ТС введем следующие семантические категории: техническая система, структура ТС, элементарная подсистема, соединение элементарных подсистем, универсальное множество входных и выходных воздействий (U), универсальное множество состояний объектов воздействия (О).

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

Моделируемую техническую систему определим как объект вида П=(Х,У,8), где X и Y - множества входных и выходных воздействий, являющихся частью универсума, содержащего наименования вещественных, энергетических и информационных потоков и их нечеткие характеристики.

S - нечеткий семантический гиперграф, интерпретирующий структуру системы. S = (SN,R,p),где SN = {SJi-iij} - множество элементарных подсистем (N - мощность множества sn), R - множество типов соединения подсистем и р - двухместный нечеткий предикат инцидентности, определенный для всех пар (Sf r) (S. eS^ r eR) и принимающий значения из интервала [0,1].

лементарная подсистема определена в виде: S=(X^L, Yr,0,K,affl), где Xj^L - множество входов, содержащее вещественные (V), энергетические (?) и информационные (Р) воздействия: X*'с: (VuEuP)', Yj^M - множество выходов: У/м с: (YuEuP); О* - множество состояний объекта воздействия; а. - выходная функция; ^ -преобразователь выходной функции. Верхние индексы в Xt^L и Y,^M определяют со­ответственно количество входов и выходов, в О,^к - количество возможных состояний объекта воздействия.

При описании структуры технической системы возможны следующие типы соединений элементарных подсистем:

  1. Последовательное.
  2. Параллельное.
  3. Правый узел.
  4. Левый узел.

Для представления элементарных подсистем в процессе синтеза и хранения в базе знаний введем понятие «гиперэлемент». Гиперэлемент представляет собой элементарную подсистему, участвующую в синтезе гиперструктуры и интерпретирующую на качественном уровне физические операции конкретными техническими реализациями.

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

  1. Идентификатор гиперэлемента.
  2. Входы.
  3. Выходы.
  4. Состояние объекта.
  5. Управляющие воздействия.
  6. Техническая реализация.

Эта база знаний является предметно-ориентированной, т.е. заполняемой при­менительно к выбранной группе проектируемых устройств (или иных сложных систем). Фреймы, как активные объекты, наилучшим образом подходят для хранения знаний о структуре агентов.

В рамках данного исследования представим процесс структурного синтеза состоящим из трех этапов:

  1. Формирование технического задания в виде модели цели на основе И-ИЛИ дерева требований и ограничений, предъявляемых к техническим устройствам конкретной предметной области.
  2. Синтез нечеткого семантического гиперграфа S, интерпретирующего структуру технической системы на основе базы гиперэлементов и баз входных и выходных воздействий.
  3. Формирование решения на основании предыдущих этапов, анализ и вывод результатов.

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

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

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

Агенты могут порождаться внутри MAC по требованию других агентов, реализуя один из фреймов, имеющихся в базе гиперэлементов. В процессе межагентных коммуникаций архитектурное решение (например, эту функцию может выполнять AreHT-«Directory Service» в архитектуре FIPA) позволяет динамически порождать новых агентов, которые могут ответить на запрос, если отсутствуют такие агенты, еще не задействованные в коммуникации.

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

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

В процессе межагентных коммуникаций возможна конкуренция двух типов:

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

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

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

Выводы

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

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

Список использованной литературы

  1. Половинкин А.И. Основы инженерного творчества.- М: Машиностроение, 1988.- 368 с.
  2. Прангишвили И.В. Системный подход и общесистемные закономерности. Серия «Системы и проблемы управления».- М.:СИНТЕГ, 2000.- 528 с.
  3. Тарасов В.Б. От многоагентных систем к интеллектуальным организациям: философия, психология, информатика.- М.: Эдиториал УРСС, 2002.- 352 с.-(Науки об искусственном).
  4. Смирнов А.В., Шереметов Л.Б. Многоагентная технология проектирования сложных систем // Автоматизация проектирования,- 1999.- №1.- С.42.
  5. Курдюков А.А. Интеллектуальные агенты и их применение в инженерном проектировании // Материалы конференции и выставки «Системы проектирования, технологической подготовки производства и управления этапами жизненного цикла промышленного продукта. CAD/CAM/PDM-200".
  6. Котенко И.В. Многоагентная модель поддержки принятия решений при кооперативной работе проектировщиков // Перспективные информационные технологии и интеллектуальные системы.- 2001.- №1- С. 10-21.
  7. Городецкий В.И., Грушинский М.С., Хабалов А.В. Многоагентные системы (обзор) // Новости искусственного интеллекта.- 1998.-№2.-С. 64-1 16.