Стратегия выбора агентов
графического представления поковок в
САПР ТП ковки на молотах
А.В.
Коновалов,
зав.
лаб., д.т.н., проф., avk@imach.uran.ru,
О.Ю.Муйземнек,
с.н.с.,
к.т.н.,
С.И. Канюков,
вед.
инж., к.т.н., доц.,
С.В.Арзамасцев,
с.н.с.,
к.т.н., доц.,
ИМАШ УрО РАН, г.
Екатеринбург
При создании современных программных систем
стал широко использоваться мультиагентный подход для организации взаимодействия
отдельных их частей и системы в целом. Агенты представляют собой сущности,
способные воспринимать своё окружение и изменять его своими действиями. В
докладе рассмотрены вопросы выбора агентов для графического представления
графической информации в системе автоматизированного проектирования
технологического процесса ковки поковок на молотах. Показана взаимосвязь
агентов, их свойства и принципы функционирования в условиях неопределённости и слабой
формализуемости задачи применительно к проектированию поковок. Стратегия
строится на основе аппарата математической логики. Разработан критерий
полезности поведения агента, гарантирующий корректное и полное представление
графической информации в графическом редакторе САПР ТП ковки на молотах.
The creation of modern software systems have become a
widely used multi-agent approach for the organization of interaction of the
individual parts of the system and in general. Agents are entities that can
perceive their environment and change their actions. The report discusses
agents for the graphical representation of the graphical information in the
computer aided design process forging hammers. Shows the relationship of
agents, their properties and principles of functioning in conditions of
uncertainty and difficult to formalize task in relation to the design of forgings.
The strategy is based on mathematical logic. Developed the criterion of
usefulness of the agent, ensuring correct and complete representation of the
graphic information in the graphical editor, the CAD system of forging hammers.
В САПР технологии ковки поковок типа
валов на молотах автономной составляющей является графический редактор,
необходимый для геометрической иллюстрации и управления процессом
проектирования поковок. Задачи графического редактора системы
автоматизированного проектирования заключаются в представлении исходной
геометрической информации о детали, корректировке, как исходной геометрии
детали, так и расчетной геометрии поковки на каждом этапе проектирования, а
также в определении параметров проектирования непосредственно в диалоге с
пользователем и отображении выбранного пользователем решения на эскизе поковки.
Для представления информации в
графическом редакторе выделяются геометрические объекты, имеющие
самостоятельную природу и действующие взаимосвязано. Такие объекты удобно
рассматривать, используя аппарат теории интеллектуальных агентов [1-3]. Под
агентами согласно [4] будем понимать нечто, способное воспринимать свое
окружение и изменять его своими действиями. Для графического редактора такими
агентами являются:
· ступени детали
(цилиндрические или конические);
· ступени поковки
(только цилиндрические)
· специальные ступени –
проба для механических испытаний, проба для замера твердости, торец (скос или
сфера);
· размеры ступени –
длины и диаметр ступени (если ступень имеет форму конуса, то диаметров два);
· другие размеры –
габаритная длина поковки и детали, длина пробы для механических испытаний;
· дополнительные
элементы (надписи, стрелки и т.п.).
На рисунке 1 представлен полученный с
помощью графического редактора чертеж спроектированной поковки, на котором
показаны примеры агентов геометрического представления информации различных
видов. Поковка имеет вид вала, состоящего из пяти цилиндрических ступеней, с
назначенной пробой для механических испытаний. Деталь, для которой
проектировалась поковка, состоит также из пяти ступеней, одна из ступеней имеет
форму конуса, остальные – цилиндрические. Вид торца поковки определяется в
процессе проектирования. На чертеже торец слева имеет вид сферы, справа –
скоса. Каждой ступени соответствуют
агенты, отвечающие за размеры ступени. На чертеже показаны также агенты,
отвечающие за габаритный размер,
размерные линии, стрелки, надписи, символы и т.д.
Для графического редактора агенты
имеют вид специальных программ, определяющих поведение, возможность отображения
и законы существования агента [5]. Функцией агента является выбор своего
поведения в зависимости от полученной им информации. Целью агента служит выбор
наилучшего действия, в нашем случае корректного и полного представления
геометрической информации, исходя из меры полезности своих действий. Так как в
графическом редакторе существует множество агентов, взаимодействующих между
собой, будем рассматривать его как кооперативную мультиагентную систему [2],
функционирующую в окружающей среде.
Внешнюю по отношению к графическому
редактору программную среду, моделирующую процесс проектирования поковок типа
валов на молотах, а также пользователя системы определим как окружающую среду
мультиагентной системы. Окружающая среда является эпизодической и дискретной,
она характеризуется конечным набором состояний, соответствующим этапам
проектирования поковки в САПР:
– ввод исходной информации о детали;
– назначение припусков на механическую
обработку;
– назначение припусков на термическую
обработку;
– проверка выполнимости поковки
(назначение напусков);
– оформление эскиза поковки.
рис.1.
Агенты, используемые для геометрического представления спроектированной поковки
Свойствами окружающей среды является
ее полная наблюдаемость, дискретность и стохастичность. Для каждого выделенного
состояния определяется все множество существующих в нем агентов графического
представления информации и правил их поведения.
Агенты действуют в условиях неопределенности, связанной с трудно
формализуемой задачей распределения графической информации таким образом, чтобы
она не перекрывалась и была доступна к корректировке. Среда является
статической, так как она не зависит от действий агентов.
Агенты, действующие в каждом
конкретном состоянии окружающей среды, взаимодействуют друг с другом и
принимают решения одновременно. Отметим, что стратегия поведения агента
определяется лишь текущим состоянием окружающей среды и не зависит от истории
его развития. Такой агент принято
называть рефлексивным, а его стратегию – реактивной или стратегией без памяти [1].
Стратегия выбора агента строится на
основе аппарата математической логики. Каждый агент приобретает свойства видимости
и доступности, которые в процессе работы принимают значения «true» ( = 1) или
«false» ( = 0) в зависимости от того возможно на данном этапе проектирования
обращение к нему или нет. Применение операций булевой алгебры позволяет
сформулировать правила поведения агента, законы их взаимного расположения и
совместной деятельности в рамках мультиагентной системы, в частности, для
решения задач пересечения ступеней, определения числа выводимых размеров,
нахождения типа ступени и других. Для агентов размеров и агента габаритного
размера дополнительной характеристикой является значение агента, определяемое
автоматически в процессе функционирования.
Например, на этапе ввода исходной
информации о детали агенты ступеней детали, а также агенты, отвечающие за вывод
размеров ступеней, являются видимыми и доступными для корректировки;
соответствующие агенты принимают значения доступности и видимости, равные
«true». В отличие от них агенты,
отвечающие за ступени поковки, которые еще не спроектированы, оказываются невидимыми
и недоступными, соответственно также невидимы и недоступны агенты, отвечающие
за их размеры. Они принимают значения доступности и видимости, равные «false».
В остальных состояниях окружающей среды видимыми, но недоступными становятся
агенты ступени детали, так как при проектировании поковки деталь не должна
изменяться.
Аналогичные задачи решаются при
появлении агентов, отвечающих за размеры. Агент ступень детали вызывает
появление агентов, связанных с выводом длины и диаметра ступени, агентов размерных
линий и агентов стрелок. Так в случае
цилиндрической ступени видимым и доступным оказывается только один агент,
отвечающий за диаметральные размеры, в отличие от конической ступени, для
определения которой используются два агента, описывающие различные диаметры.
Значения агентов размеры взаимосвязано с поведением и видом агента ступень
детали; так например, изменение значения агента длины приведет к увеличению
длины агента ступень детали и наоборот.
Если для изображения ступенчатого вала
требуется несколько агентов ступеней детали, то порождаемые им агенты размеров,
линий и т.п. формируют размерную цепочку. Появляется специальный агент,
отвечающий за габаритную длину детали. Значение этого агента определяется
автоматически, суммируя значения существующих агентов длин ступеней детали.
Отметим, что корректировка значения агента габаритной длины приводит к
неопределенности, связанной с тем, что изменение габаритного размера может
произойти из-за изменения длины любого существующего агента ступени детали, а,
следовательно, связанного с ним агента длины. Вопросы согласованного поведения
агентов и правила принятия решений в условиях неопределенности будут
рассмотрены ниже. Изменение вида любого
агента ступени детали или размера приводит к изменению всей совокупности
существующих агентов. В частности при удалении агента ступень детали, все
порождаемые им агенты также исчезают.
При появлении спроектированной поковки
агенты ступени поковки ведут себя аналогичным образом. Каждый агент ступени
поковки порождает агенты размеров, множество дополнительных агентов, к которым
относятся агенты линий, стрелок, символов, надписей и т.п., а также при
необходимости специальные агенты: агенты пробы для механических испытаний и
агенты торца поковки. Одновременное существование нескольких ступеней поковки
порождает агент габаритного размера. При существовании только одного агента
ступени поковки агент длины этой ступени становится невидимым и недоступным,
так как его функции берет на себя агент габаритной длины поковки.
При этом возникают новые задачи,
связанные с одновременным изображением детали и поковки на чертеже (рис.2).
Одной из основных задач графического редактора является взаимосвязанное
поведение агентов ступеней детали и агентов ступени поковки, при котором не
происходит внедрения поковки в деталь, как при выводе изображения, так и при
корректировке его в процессе проектирования.
рис.2.
Совместное представление детали и
спроектированной для неё поковки
С помощью операций математической
логики решается и такая сложная задача представления графической информации,
как определение суммарной длины ступеней детали, частично или полностью
входящих в ступень поковки (рис. 2). На данном рисунке показано, что деталью
служит вал, состоящий из восьми агентов ступень детали, а поковка состоит
только из пяти агентов ступень поковки. Некоторые ступени поковки (ступени 1,
3, 4) включают в себя по две ступени детали, а две ступени (2 и 5) поковки
соответствуют одной ступени деталь. Каждый агент ступени поковки порождает не
только агенты своих размеров, но и выбирает среди агентов длины ступени детали
те, которые относятся к ступеням детали, входящих в данную ступень поковки,
суммирует их значения и создает новый агент длины ступеней детали, входящих в
данную ступень поковки (на рис. 2 это размеры в скобках). Для диаметров среди
агентов диаметров ступеней, входящих в данную ступень поковки, выбирается агент
с наибольшим значением (размеры в скобках). Такое правило классификации
размеров соответствует процессу проектирования поковки, состоящему в назначении
на каждую ступень припусков на термическую и механическую обработку, а также
назначении напусков при невыполнимости ступеней. Алгоритм процесса
проектирования, а также информация о значениях припусков изложены в «ГОСТ
7829–70. Поковки из углеродистой и легированной стали, изготовляемые свободной
ковкой на молотах. Припуски и допуски».
Критерием качества поведения
сообщества агентов, существующих в каждом дискретном состоянии окружающей
среды, является корректность и полнота графического представления информации о
ходе проектирования поковки. В процессе своего функционирования каждый агент
определяет последовательность своих действий (стратегию) в соответствии с
информацией, полученной им от других агентов. Если выбранная агентом стратегия
соответствует результату, который хочет получить пользователь системы, то агент
действует «хорошо». Заметим, что критерий оценки качества поведения,
выбираемого агентом, определяется человеком – пользователем системы, а, значит,
он является чисто субъективным, трудно формализуемым и строится на основе
нечетких правил.
Таким образом, графический редактор
представляет собой мультиагентную систему, на которую накладываются следующие
ограничения:
– число агентов , входящих в систему, должно быть больше 1 ();
– множество действий агента состоит из двух
элементов , : «видимость» и «доступность», принимающих значения
«true» и «false» и формализованных с использованием аппарата математической
логики;
– агенты выбирают свои действия
одновременно в зависимости от информации, полученной от других агентов;
– ряд агентов (агенты размеров и агент
габаритного размера) имеют численные значения, над которыми агенты умеют
совершать арифметические действия;
– каждый агент обладает
множеством правил поведения , определяющих стратегию и возможности данного агента;
– мультиагентная система функционирует
в дискретных состояниях окружающей среды , соответствующих этапам
проектирования поковок типа валов на молотах ();
– состояние среды полностью
обозреваемо для всех агентов, что позволяет организовать их совместное
поведение;
– каждый агент выбирает
действие из собственного
множества действий с целью
оптимизации меры полезности совместного
поведения агентов выбранного состояния окружающей среды ;
– критерий оценки качества поведения
выбранных агентов определяется полнотой и корректностью графического
представления информации на этапах проектирования поковки в САПР.
Множество стандартных
правил поведения агента состоит из
правил зарождения агентов, алгоритмов изображения и законов взаимного
существования. Эти правила определяют процесс формирования сообщества агентов и
зависят как от появления новых агентов, так и от запросов окружающей среды.
Например, появление агента ступень детали, и агента ступень поковки, порождает
агенты размеров, размерных линий, стрелок. Если агентов ступеней два или
больше, то появляется агент габаритной длины. Если при проектировании поковки
требуется проба (или две пробы с разных концов поковки) для механических
испытаний, то из состояния окружающей среды «эскиз поковки» поступает запрос на
возникновение агентов пробы, длины пробы, торца, надписей, символов и т.п.
Для агентов определяются правила
(алгоритмы) графического представления информации. Так агенты ступеней как
детали, так и поковки должны примыкать друг к другу; агенты ступеней поковки
окаймляют соответствующие агенты ступеней детали. Агенты размеров должны
располагаться таким образом, чтобы было понятно, к какому агенту ступени они
принадлежат. При этом размеры не должны накладываться друг на друга, и
размерные линии не должны пересекаться. Все существующие агенты должны быть
видимы, вписаны в экран монитора и при необходимости иметь возможность
масштабироваться.
рис.3. Автоматическое
нанесение размеров на чертеже детали
Для примера рассмотрим чертеж детали,
автоматически полученный графическим редактором в соответствии со стандартным
набором правил (рис. 3). Появление
четырех агентов ступень детали вызывает возникновение девяти агентов размеры,
причем их количество различно: четыре из них –
это агенты длины ступеней и пять агентов – диаметры ступени. Агентов,
определяющих диаметры ступеней больше, так как одна из ступеней детали является
конической, а, значит, агент, описывающий ее поведение, вызывает появление не
одного, а двух агентов, отвечающих за ее диаметры. Также возникает агент
«габаритная длина детали» и множество агентов, описывающих дополнительные
элементы – размерные линии, стрелки. Все агенты видимы и доступны, т.е.
действия «видимость» и «доступность» каждого агента принимают значения «true».
Стандартные правила поведения агентов позволили получить графическое
изображение, при котором агенты не пересекаются, хорошо видны и расположены.
Однако помимо стандартного поведения
возникают ситуации, в которых агент должен принимать нестандартное решение.
Чаще всего такие ситуации возникают при ручной корректировке размеров ступеней
или при уменьшении масштаба изображения. В этом случае ступени могут оказаться
настолько маленькими, что размерные линии начнут пересекаться друг с другом,
при этом полнота и наглядность представления графической информации,
естественно, теряется. Такая же ситуация возможна при проектировании поковки,
когда соотношение размеров двух соседних ступеней изменяется за счет назначения
припусков или напусков. В этой ситуации поведение агентов «размеры» перестает
быть стандартным. Они начинают выбирать такое расположение, при котором сами
становятся хорошо видимыми и не мешают при этом корректной работе других
агентов. Заметим, что помимо автоматического расположения агентом в графическом
редакторе существует и ручное представление информации пользователем системы. В
этом случае сам пользователь, представляющий собой окружающую среду
мультиагентного редактора, принимает ответственность за корректное и полное
расположение выводимой информации.
Оценка качества поведения, выбираемого
агентами, проводилась с применением аппарата теории нечетких множеств. Под
мерой полезности -го агента будем понимать величину , равную отношению разности площади, занимаемой самим
агентом , и площади пересечения данного агента с другими
агентами к площади
агента: . Значение меняется от 0 (в
этом случае агент полностью закрыт другими агентами, т.е. ) до (агент полностью
видим и ничем не перекрыт, т.е. ). Стратегия поведения агентов строится таким образом,
чтобы суммарное значение меры полезности всех агентов для выбранного состояния
системы оказалась
наибольшей, это приведет к тому, что графическая информация будет представлена
наиболее полно.
Таким образом, правила поведения
агентов, позволяющие определять их видимость и доступность для каждого
состояния окружающей среды, и выработка стратегии поведения агентов, приводящая
к наибольшему значению суммарной меры полезности, приводят к корректному и
полному представлению информации в мультиагентной системе, которой является
графический редактор САПР ковки поковок типа валов на молотах.
Работа выполнена в рамках программы
Президиума РАН № 15, проект № 12-П-1-1024 и при поддержке РФФИ, грант № 13-07-00531-А.
Литература
1. Люгер Д.Ф.
Искусственный интеллект: стратегии и методы решения сложных проблем, 4-е
издание.: Пер. с англ. – М.: Издательский дом "Вильямс". 2003. 864 с.
2. Стюарт Р., Норвиг П.
Искусственный интеллект: современный подход, 2-е изд. – М.: Издательский дом
«Вильямс», 2006. – 1408 с.
3. Грэхем И.
Объектно-ориентированные методы. Принципы и практика.: Пер. с англ. – М.:
Издательский дом "Вильямс". 2004. – 880 с.
4. Гуревич Л.А., Вахитов
А.Н. Мультиагентные системы // Введение в Computer Science. – 2005. – с. 116 –
139.
5. Муйземнек О.Ю.,
Коновалов А.В., Гагарин П.Ю. Мультиагентный графический редактор САПР ковки //
Программные продукты и системы. 2011. №2. С. 148 – 151.
6. Рыжов А.П. Элементы
теории нечетких множеств и измерения нечеткости. М.: Диалог – МГУ, 1998. 75 с.
7. Коновалов А.В.,
Арзамасцев С.В., Шалягин С.Д., Муйземнек
О.Ю., Гагарин П.Ю. Интеллектуальная САПР
технологических процессов ковки
валов на молотах. // Заготовительные производства в
машиностроении. 2010. №1. С. 19 – 22.
8. Fabio Bellifemine Developing
multi-agent systems with JADE / Printed and bound in Great Britain by Antony
Rowe Ltd., Chippenham, Wiltshear, 2007, P. 303.