Логистика. Управление цепочками поставок. Ответы на экзаменационные вопросы
.pdfМАС в подобной постановке состоит из трех основных уровней:
•концептуальное моделирование в терминах МАС;
•математическое моделирование на основе комбинирования МАС и классических теорий;
•МАС как программный модуль имитационного моделирования ЦП.
13.2. Основные виды архитектуры агентов: реагирующий, консультационный, гибридный. Основные свойства MAC
Различают три основных вида архитектуры программных агентов: реагирующий, консультационный и гибридный.
Реагирующие агенты способны реагировать строго определенным образом на конкретные возмущения внешней среды, поэтому предназначены для решения элементарных задач.
Агенты консультационного типа могут на основе их знаний воспринимать поступающие возмущения, анализировать их и выбирать способ реакции.
Гибридная архитектура представляет собой сочетание двух первых видов. Виртуальное предприятие (ВП) создает очень сложную и постоянно меняющуюся структуру агентов, которой необходимо управлять и учитывать сетевые принципы управления.
Инструмент управления кооперационными процессами в сети по сути должен представлять программное средство, осуществляющее координацию деятельности в ВП на базе моделей деловых процессов и оптимизационных инструментов в режиме реального времени. Для решения подобных задач целесообразно использование принципов мультиагентных систем (MAC). Применение принципов MAC возможно в качестве основы построения системы управления ВП, а также при разработке концепции динамической модели оперативного управления ВП и его агентами. Основными особенностями MAC, которые могут быть использованы в оперативном управлении ВП, является то, что: используются для моделирования (интеллектуальные агенты); агенты обладают ресурсами и компетенциями; агенты действуют как в своих интересах (конкурируют), так и кооперируются для выполнения общих задач.
181
13.3. Эвристические алгоритмы оптимизации процессов: генетические алгоритмы (ГА)
и метод АСО
MAC обладают следующими свойствами: объекто-ори- ентированность, гибкость, адаптивность, высокая реакционная способность, выделение автономной независимой единицы управления – агента. Именно наличие этих свойств обуславливает эффективность использования MAC при построении ВП, основанных на объектно-ориентированном моделировании деловых процессов, высоких требованиях к оперативным изменениям, управлении автономными единицами. В многоагентных системах можно выделить три организационных уровня: микросоциальный, содержащий среду функционирования небольшого числа агентов; групповой, на котором происходит разграничение ролей агентов, возникновение оргструктур и агрегирование агентов для решения конкретных задач; уровень глобального общества, отражающий динамику функционирования большого числа агентов, общую структуру системы и ее развитие. Проектирование многоагентных систем может осуществляться как сверху вниз, так и снизу вверх. Организация является результатом действия агентов, которые, в свою очередь, ограничены организационной структурой. Принципиальными понятиями в многоагентных системах являются ситуации взаимодействия и кооперации. Ситуацией взаимодействия является множество способов поведения, которое возникает при группировании объектов, которые должны выполнить определенные действия для достижения их целей с учетом ограниченности ресурсов и возможностей. Ситуация кооперации возникает в том случае, если при добавлении нового агента существенно изменяется представление группы, или если совместные действия агентов способствуют решению или избеганию потенциальных или существующих конфликтов. На основании этого условия возможно определить ВП как множество агентов.
Агенты группируются вместе в ВП для выполнения текущей задачи, для которой установлены общие цели и намерения. Успешное решение своей задачи каждым агентом в ВП приводит к успешному достижению поставленной цели.
182
К основным особенностям формирования многоагентной системы управления ВП относятся:
•Взаимодействие в едином электронном пространстве по единому стандарту – поддержание избыточной коммуникации. Для формирования надежной внутренней сети ВП-подсистеме, отвечающей за формирование сети, требуется поддерживать дополнительные коммуникации с внешними структурами, потенциально готовыми включиться в процесс предоставления услуги или производства продукции на согласованных условиях.
•Разрешение конфликтов по единым правилам. Конфликты, связанные с правами на создаваемые активы, неадекватной оценкой усилий и трансфертом выигрышей, возникающие между элементами ВП в процессе выполнения заказа, должны разрешаться по единым правилам.
•Создание единой базы знаний по оценке деятельности участников ВП. Подобная система необходима для снижения трансакционных издержек при подборе новых участников ВП и передаче этой информации во внешнюю единую базу данных об оценке деятельности выходящего из системы участника.
•Наличие системы передачи приоритетов подцелей ВП.
Впроцессе функционирования ВП внешняя среда предприятия может изменяться в разных частях его присутствия, поэтому необходимо оперативное согласование целей для всех элементов ВП. В концепции MAC используется динамический подход к понятию «организация». Во многом это помогает понять определение предприятия и «организации» как структуры отношений между компонентами или индивидуумами, которая производит новую единицу или систему, обладающую свойствами, не присутствующими на уровне компонент/индивидумов. Принципиальными в данном случае являются два аспекта. Во-первых, организация в MAC поддерживает отношения между агентами и в то же время обуславливает, выявляет эти отношения. Во-вторых, понятие «организация» включает в себя как процесс создания структуры, так и результат этого процесса. Именно этот второй аспект характеризует организацию как динамическое образование. Такой подход позволяет существенно приблизиться к пониманию сущности механизмов управления процессами в ВП на основе МАС.
183
13.4. Основные фазы ГА решения задач оперативно-календарного планирования
Одними из современных методов оптимизации, основанных на эвристических алгоритмах, являются генетические алгоритмы (ГА).
Генетический алгоритм был получен в процессе обобщения и имитации в искусственных системах таких свойств живой природы, как естественный отбор, приспособляемость к изменяющимся условиям среды, наследование потомками жизненно важных свойств от родителей и т. д. В процессе такого поиска используется некоторая кодировка множества параметров вместо самих параметров. В этом случае он может эффективно применяться для решения задач дискретной оптимизации, определенных как на числовых множествах, так и на конечных множествах произвольной природы. Поскольку для работы алгоритма в качестве информации об оптимизируемой функции используются лишь ее значения в рассматриваемых точках пространства поиска и не требуется вычислений ни производных, ни ка- ких-либо иных характеристик, то данный алгоритм применим к широкому классу функций, в частности, не имеющих аналитического описания. Использование набора начальных точек позволяет применять для их формирования различные способы, зависящие от специфики решаемой задачи, в том числе возможно задание такого набора непосредственно человеком.
Сила генетических алгоритмов заключается в том, что этот метод очень гибок, и, будучи построенным в предположении, что об окружающей среде нам известен лишь минимум информации (как это часто бывает для сложных технических систем), алгоритм успешно справляется с широким кругом проблем, особенно в тех задачах, где не существует общеизвестных алгоритмов решения или высока степень априорной неопределенности.
Во многих логистических проблемах присутствуют специальные знания, позволяющие построить аппроксимационную модель. При использовании ГА это может уменьшить объем и время вычислений и упростить моделирование функций, сократить число ошибок моделирования.
184
13.5. Кодирование, популяция, селекция, генетические операторы, оценка
Метод ветвей и границ – один из комбинаторных методов. Его суть заключается в упорядоченном переборе вариантов и рассмотрении лишь тех из них, которые оказываются по определенным признакам перспективными, и отбрасывании бесперспективных вариантов.
Метод ветвей и границ состоит в следующем: множество допустимых решений (планов) некоторым способом разбивается на подмножества, каждое из которых этим же способом снова разбивается на подмножества. Процесс продолжается до тех пор, пока не получено оптимальное целочисленное решение исходной задачи.
Алгоритм решения
Первоначально находится симплексным методом или методом искусственного базиса оптимальный план задачи без учета целочисленности переменных. Например, пусть им является план X0. Если среди компонент этого плана нет дробных чисел, то тем самым найдено искомое решение данной задачи: Fmax = F(X0).
Если же среди компонент плана X0 имеются дробные числа, то X0 не удовлетворяет условию целочисленности и необходимо осуществить упорядоченный переход к новым планам, пока не будет найдено решение задачи. Покажем, как это можно сделать, предварительно отметив, что F(X0) > = F(X) для всякого последующего плана X.
Предполагая, что найденный оптимальный план X0 не удовлетворяет условию целочисленности переменных, тем самым считаем, что среди его компонент есть дробные числа. Пусть, например, переменная приняла в плане X0 дробное значение. Тогда в оптимальном целочисленном плане ее значение будет по крайней мере либо меньше или равно ближайшему меньшему целому числу, либо больше или равно ближайшему большему целому числу +1. Определяя эти числа, находим симплексным методом решение двух задач линейного программирования.
Рассмотрим решение задач линейного программирования (I) и (II). Здесь возможен один из следующих четырех случаев:
185
1)одна из задач неразрешима, а другая имеет целочисленный оптимальный план. Тогда этот план и значение целевой функции на нем и дают решение исходной задачи;
2)одна из задач неразрешима, а другая имеет оптимальный план, среди компонент которого есть дробные числа. Тогда рассматривается вторая задача и в ее оптимальном плане выбирается одна из компонент, значение которой равно дробному числу, и строятся две задачи, аналогичные задачам (I) и (II);
3)обе задачи разрешимы. Одна из задач имеет оптимальный целочисленный план, а в оптимальном плане другой задачи есть дробные числа. Тогда вычисляются значения целевой функции на этих планах и сравниваются между собой. Если на целочисленном оптимальном плане значение целевой функции больше или равно ее значению на плане, среди компонент которого есть дробные числа, то данный целочисленный план является оптимальным для исходной задачи и он вместе со значением целевой функции на нем дает искомое решение.
Если же значение целевой функции больше на плане, среди компонент которого есть дробные числа, то следует взять одно из таких чисел и для задачи, план которой рассматривается. Необходимо построить две задачи, аналогичные (I) и (II);
4)обе задачи разрешимы, и среди оптимальных планов обеих задач есть дробные числа. Тогда вычисляется значение целевой функции на данных оптимальных планах
ирассматривается та из задач, для которой значение целевой функции является наибольшим. В оптимальном плане этой задачи выбирают одну из компонент, значение которой является дробным числом, и строятся две задачи, аналогичные (I) и (II).
Таким образом, описанный выше итерационный процесс может быть представлен в виде некоторого дерева, на ко-
тором исходная вершина отвечает оптимальному плану X0 задачи (1)–(3), а каждая соединенная с ней ветвью вершина отвечает оптимальным планам задач (I) и (II). Каждая из этих вершин имеет свои ветвления. При этом на каждом шаге выбирается та вершина, для которой значение функции является наибольшим. Если на некотором шаге будет полу-
186
чен план, имеющий целочисленные компоненты, и значение функции на нем окажется больше или равно, чем значение функции в других возможных для ветвления вершинах, то данный план является оптимальным планом исходной задачи целочисленного программирования и значение целевой функции на нем является максимальным.
Таким образом, процесс нахождения решения задачи целочисленного программирования (1)–(4) методом ветвей
играниц включает следующие основные этапы:
1)находят решение задачи линейного программирования (1)–(3);
2)составляют дополнительные ограничения для одной из переменных, значение которой в оптимальном плане задачи (1)–(3) является дробным числом;
3)находят решение задач (I) и (II), которые получаются из задачи (1)–(3) в результате присоединения дополнительных ограничений;
4)в случае необходимости составляют дополнительные ограничения для переменной, значение которой является дробным, формулируют задачи, аналогичные задачам (I) и (II), и находят их решение. Итерационный процесс продолжают до тех пор, пока не будет найдена вершина, соответствующая целочисленному плану задачи (1)–(3), и такая, что значение функции в этой вершине больше или равно значению функции в других возможных для ветвления вершинах.
Описанный выше метод ветвей и границ имеет более простую логическую схему расчетов, поэтому в большинстве случаев для нахождения решения конкретных задач целочисленного программирования с использованием ЭВМ применяется именно этот метод.
13.6. Метод нечетких множеств (FUZZY-логика)
В последние годы все больше отечественных предприятий (как частных, так и государственных) в целях повышения эффективности управления экономическими процессами пытаются организовать свою деятельность на основе современных научных исследований в области анализа, прогнозирования и моделирования экономических явлений
187
ипроцесоов с использованием нечеткой логики (fuzzy logic). Нечетко-множественные модели, зачастую представленные в виде программного обеспечения для персональных компьютеров, позволяют как менеджерам различного уровня, так и собственникам предприятий принимать экономически грамотные решения.
Вотличие от стандартной логики, в которой мы привыкли к двум бинарным состояниям (1/0, Да/Нет, Истина/Ложь
ит.п.), нечеткая логика позволяет определять промежуточные значения между стандартными оценками. Примерами таких оценок являются: «более привлекательная», «менее привлекательная», «скорее да, чем нет», «наверное, да», «немного вправо», «резко влево», в отличие от стандартных: «привлекательная» или «непривлекательная», «вправо» или «влево», «да» или «нет». С помощью данного математического аппарата перечисленные оценки стало возможным сформулировать математически и впоследствии обработать с помощью ЭВМ. Таким образом, с помощью данного математического аппарата удалось максимально приблизить механизм компьютерной обработки и анализа данных к человеческому мышлению.
Первоначальным замыслом теории нечетких множеств являлось построение функционального соответствия между нечеткими лингвистическими описаниями («высокий», «теплый», «привлекательный» и т.д.) и специальными функциями, выражающими степень принадлежности значений измеряемых параметров (длина, температура, внешность
ит.д.) упомянутым нечетким описаниям. Так, классическим примером таких описаний является вопрос о делении совокупности людей на старых и молодых.
Пусть имеется множество молодых людей. Как определить это понятие в обычной (булевой) логике? Для этого необходимо задать интервал лет, для которого мы будем считать, что человек является молодым. Допустим, это интервал от 15 и до 35 лет. Тогда, согласно стандартной логике, всех людей, которые попадают в данный интервал, мы будем считать «молодыми», а остальных – не включаем в состав «молодых». Однако может возникнуть вполне очевидный
188
вопрос: «А что же человек, которому 36 лет, уже старик, или человек, которому 14 лет, тоже не относится к разряду молодых?» Это и есть главный недостаток четкой (бинарной) логики. При этом нечеткая логика позволяет ослабить такое строгое разделение на старых и молодых. Обычно человек мыслит так – если человеку 36 лет, то мы можем сказать: «Иван Петрович еще молод, но возраст скоро даст о себе знать», или про человека 14 лет: «Олег еще слишком молод»
ит. д. Если в первом случае (для обычной логики) элементы множества кодировались компьютером как 0 (старый) или 1 (молодой), то теперь можно использовать промежуточные значения между 0 и 1.
Для человека, возраст которого попадает в интервал от 15 до 35 лет, мы с огромной долей уверенности можем сказать, что он молодой, поэтому данному высказыванию будет соответствовать значение 1. Если же человеку 36 или 14 лет, то будем ставить в соответствие, допустим, значение 0,9. Другими словами, чем ближе возраст человека к интервалу от 15 до 35 лет, тем более уверенно мы можем говорить о том, что он молод, т.е. оценка уверенности (достоверность высказывания) будет близка к 1. При удалении от указанного интервала «молодости» как в сторону его увеличения, так
ив сторону уменьшения возраста значение достоверности высказывания будет постепенно снижаться до нуля.
Таким образом, данный математический аппарат позволяет сформулировать и математически описать какое-либо качественное понятие некоторой функцией распределения
идалее использовать его как точное, не заботясь более о его «нечеткой» природе.
Согласно изложенному выше принципу нечеткой логики графическое описание качественного понятия «молодой» представлено на рис. 13.1.
Функция распределения имеет форму трапеции. Участок трапеции BC соответствует интервалу от 15 до 35 лет. Высказыванию «молодой» для этого участка будет соответствовать достоверность, равная единице. Участки AB и CD иллюстрируют тот факт, что если возраст человека попадает в интервалы от 10 до 15 и от 35 до 50, то достоверность высказывания о том, что человек молод, снижается или увеличивается.
189
Достоверность |
высказывания |
μ(x) |
В |
С |
|
1 |
|||
|
|
0,5
|
А |
|
|
|
D |
0 |
10 |
15 |
35 |
50 |
(возраст) X |
|
|
|
|
|
Рис. 13.1. Графическое описание качественного понятия «молодой»
Следующим достижением теории нечетких множеств является введение в обиход так называемых нечетких чисел – нечетких подмножеств специализированного вида, соответствующих высказываниям типа «значение переменной примерно равно а». Здесь в качестве примера было использовано треугольное нечеткое число, где выделяются три точки: минимально возможное, наиболее ожидаемое
имаксимально возможное значение фактора. Треугольные числа – это самый часто используемый тип нечетких чисел
ичаще всего их используют в качестве прогнозных значений параметра.
Очередным историческим шагом является введение набора операций над нечеткими числами, которые сводятся к алгебраическим операциям с обычными числами при задании определенного интервала достоверности (уровня принадлежности), получившие название – мягкие вычисления [17, 24].
Параллельно с разработкой теоретических основ новой науки ряд ученых прорабатывал различные возможности ее практического применения. И в 1973 году эти усилия увенчались успехом – удалось показать, что нечеткая логика может быть положена в основу нового поколения интеллектуальных систем управления. Именно поэтому эту дату логично считать началом второго этапа в развитии данной науки.
Результаты не заставили себя долго ждать. Небольшая предприимчивая фирма из Дании применила принципы нечеткой логики для усовершенствования системы управления доменной печью. Лишь только после этого ученые
190
