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

Бикритериальная модель и алгоритмы синтеза оптимально-компромиссных стратегий однопроцессорного обслуживания линейной группировки стационарных объектов Текст научной статьи по специальности «Математика»

CC BY
150
48
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ДИСКРЕТНАЯ МОДЕЛЬ ОБСЛУЖИВАНИЯ / ПАРЕТО-ОПТИМАЛЬНЫЕ СТРАТЕГИИ / ДИНАМИЧЕСКОЕ ПРОГРАММИРОВАНИЕ / МЕТАЭВРИСТИЧЕСКИЕ АЛГОРИТМЫ / DISCRETE MODEL OF SERVICING / PARETO-OPTIMAL STRATEGIES / DYNAMIC PROGRAMMING / METAHEURISTIC ALGORITHMS

Аннотация научной статьи по математике, автор научной работы — Дуничкина Надежда Александровна

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

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

Похожие темы научных работ по математике , автор научной работы — Дуничкина Надежда Александровна

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

BICRITERIA MODEL AND SYNTHESIS ALGORITHMS OF OPTIMAL COMPROMISE STRATEGIES FOR SINGLE PROCESSOR SERVICING OF A LINEAR GROUP OF STATIONARY OBJECTS

A discrete model of single-stage servicing of a group of stationary objects is considered. The objects are located along a one-dimensional working zone of a mobile processor. Each object is associated with a pair of monotonically increasing penalty functions. Synthesis problems are formulated in the criteria plane of a full set of effective estimates and corresponding Pareto-optimal service strategies. Recurrence relations of dynamic programming allowing us to build the entire Pareto domain are derived. Special attention is paid to the synthesis algorithms of suboptimal servicing strategies.

Текст научной работы на тему «Бикритериальная модель и алгоритмы синтеза оптимально-компромиссных стратегий однопроцессорного обслуживания линейной группировки стационарных объектов»

Информационные технологии Вестник Нижегородского университета им. Н.И. Лобачевского, 2012, Nc 1 (1), с. 175-181

УДК 519.8 + 681.3

БИКРИТЕРИАЛЬНАЯ МОДЕЛЬ И АЛГОРИТМЫ СИНТЕЗА ОПТИМАЛЬНО-КОМПРОМИССНЫХ СТРАТЕГИЙ ОДНОПРОЦЕССОРНОГО ОБСЛУЖИВАНИЯ ЛИНЕЙНОЙ ГРУППИРОВКИ СТАЦИОНАРНЫХ ОБЪЕКТОВ

© 2012 г. Н.А. Дуничкина

Волжская государственная академия водного транспорта, Нижний Новгород nadezhda .dunichkina@gmail .com

Поступсл- в ркд-кцсю 16.06.2011

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

Ключквые слов-: дискретная модель обслуживания, Парето-оптимальные стратегии, динамическое программирование, метаэвристические алгоритмы.

Введение

Рассматриваемая в статье проблема возникла в связи с созданием компьютерных средств поддержки оперативного управления снабжением дизельным топливом плавучих дизель-электрических комплексов, осуществляющих русловую добычу нерудных строительных материалов (НСМ) в крупномасштабных русловых районах внутренних водных путей РФ. Примерами таких полигонов, протяженностью до нескольких сотен километров, являются Камский грузовой район и 4-й грузовой район на реке Белой. В навигационный период в каждом таком районе работает группировка из 15-20 единиц плавучих добывающих комплексов (ПДК). В непрерывном технологическом цикле добывающий комплекс осуществляет выемку, обезвоживание и погрузку НСМ в речные суда и составы для последующей транспортировки их к местам складирования и реализации предприятиям-потребителям [1].

Снабжение ПДК дизельным топливом осуществляется закрепленными за полигоном специализированными танкерами-заправщиками.

В условиях высоких расходов на эксплуатацию ПДК и цен на дизельное топливо, сокращения возможностей предприятий по созданию его технически значимых оперативных запасов основная задача диспетчера группировки (лица, принимающего решения - ЛПР) заключается в

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

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

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

1. Математическая модель и постановка оптимизационной задачи

Считается заданной группировка Оп = {оь

о2, ... , оп} стационарных объектов, расположенных в рабочей зоне 2 обслуживающего процессора Р. Зона 2 представляет собой отрезок L, в фиксированных точках которого А, 12, ... , 1п (А < 12 < ... < 1п) расположены соответственно объекты О], о2, ... , оп. Граничная точка А отрезка L является базовой для процессора. Другая граничная точка В является местом расположения объекта оп. Из точки А, начиная с момента времени t = 0, процессор Р перемещается к граничной точке В отрезка L (прямой рейс - Х+), а затем, достигнув ее, возвращается в точку А (обратный рейс - Х_). При реализации цикла Х+Х_ процессор должен выполнить однократное, без прерываний, обслуживание каждого объекта группировки Оп; при этом обслуживание части объектов реализуется в рейсе Х+, а обслуживание оставшихся объектов — в рейсе ^-. Не связанные с обслуживанием объектов простои процессора и одновременное обслуживание процессором двух и более объектов недопустимы.

С каждым объектом Оj ассоциируется функция индивидуального штрафа ф/(0, выражающая зависящую от момента завершения его обслуживания величину потерь (/ = 1,п). Если в связи со специфическими условиями реализации обслуживания удобно говорить о штрафе

по объекту Оj (/ = 1, п) за некоторый временной интервал [р, q], то в этом случае величина индивидуального штрафа за данный временной отрезок равна ф^) - ф/(р). Для произвольного подмножества объектов штраф за отрезок времени [р, q] определяется как сумма индивидуальных штрафов за этот промежуток времени по всем объектам подмножества.

Для используемых ниже норм времени примем обозначения: т/ - длительность обслуживания объекта о/; уЯ/ и у/ - продолжительность перемещения процессора Р между точками расположения соседних объектов в рейсах Х+ и

соответственно (/ = 1, п); при этом у0д и У1>0 -продолжительности перемещения процессора между базовой точкой А и точкой А в рейсах Х+ и Параметры т/, У/-\,/, У/,/-1 далее будем считать принимающими целочисленные значения.

Стратегией обслуживания будем называть произвольное подмножество элементов V из совокупности индексов N = {1, 2, ... , п}, содержащее элемент п. Объекты О/,/е V, в реализации стратегии V обслуживаются процессором

Р в рейсе Х+, а все остальные объекты группировки Оп - в рейсе Х_. Для определенности полагаем, что объект оп обслуживается при завершении процессором рейса Х+. Таким образом, число различных стратегий обслуживания равно 2п-1. Любая стратегия однозначно определяет моменты начала и завершения обслуживания

каждого из объектов. Для объекта о у через tу (V) обозначим момент завершения его обслуживания при реализации стратегии V, у = 1, п. Если объект оу обслуживается в рейсе Х+ (у є V), то

+ 1тк, где V(/) - совокуп-

к = 1 к еV (/)

ность не превосходящих / элементов из V. Для суммы I у к-1,к + I тк введем обозначение 5/.

к = 1 к еV (/)

Если jеN\V, то обслуживание объекта о- реализуется позже, поскольку процессор должен предварительно выполнить перемещения от точки I/ до точки В и обратно, обслужив при этом объекты О/+1, О/+2, ., оп.

Обозначим через М(/) задержку по объекту О/ при переносе его обслуживания с рейса Х+ на рейс Х-. Ясно, что М(/) - сумма трех слагаемых:

1У к-1,к (затраты времени на перемещение

к=/+1

процессора от точки I/ к точке В), I ук,к-1 (за-

к=/+1

траты времени на перемещение процессора от

п

точки В к точке I/), I тк (суммарная продол-

к =/+1

жительность обслуживания объектов О/+1, О/+2, ... , оп). В итоге для/ = 1,п имеем общую формулу

18 , если / еV,

ti (V )=\

/ + т/ + М(/), если / й V.

Существенно, что величины М(/) (/ = 1, п -1) не зависят от того, какие объекты обслуживаются в прямом, а какие - в обратном рейсе процессора Р.

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

( п п Л

тіп

V

^Ф у С*(V)), тт

(1)

V у=1 у=1

минимизации суммы индивидуальных штрафов ф;- и у по всем объектам группировки Оп.

2. Алгоритм синтеза совокупности Парето-оптимальных стратегий обслуживания

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

Записью вида в//(М) будем обозначать максимальное по включению подмножество недоминируемых в М векторов, где М - произвольное множество двумерных векторов-оценок.

Выражением вида У © х будем обозначать совокупность всех векторов V, представимых в виде V = у + х , где у є У.

Введем в рассмотрение ряд частных задач Z(i, П), отличающихся от задачи (1) следующим: функции индивидуального штрафа по объектам оі+1, оі+2, ... , оп тождественно нулевые, а общее время, затрачиваемое процессором Р на обслуживание в рейсе Х+ объектов

о1, о2, ... , оі, равно П. Через Е(і, П) обозначим полную совокупность эффективных оценок в задаче Z(i, П). Пары (і, П) далее будем именовать ситуациями. Не все ситуации реализуемы в процессах обслуживания. Так, для і = 1 реализуемы только ситуации (1, т1) и (1, 0). Удобно считать, что для всех нереализуемых ситуаций (і, П) имеет место соотношение Е(і, П) = ={(+<», +<»)}. Отметим также, что для всех значений параметра П, не принадлежащих множе-

п

ству {0, 1, 2, ... , ^тк }, ситуации (і, П) нереа-

к=1

лизуемы. В частности, Е(і, П) = {(+<», +<»)} при всех отрицательных значениях П.

Как очевидно, ситуация (1, 0) соответствует обслуживанию объекта о і в рейсе Х_, которое завершается в момент времени у0>1 + М(1) + т1. Напомним, что М() - задержка по объекту Oj при переносе его обслуживания с прямого рейса на обратный (у = 1, п -1) - определяется как

сумма трех слагаемых: к-1к (затраты вре-

к=І+1

мени на перемещение процессора Р от точки 1у к точке В), кк-1 (затраты времени на пере-

к=у+1

мещение процессора Р от точки В к точке 1у),

п

^т к (суммарная продолжительность обслу-

к =і+1)

живания объектов оу+1, оу+2, ... , оп). Ситуация (1, т1) описывает обслуживание объекта о1 в рейсе Х+, завершающееся в момент у01 + т1. При Пй {0, т1} величины Е(1, П) смысла не имеют. Поэтому для задачи (1) имеют место соотношения

Е(1, 0) = {Ф1(у0,1 + М(1) + Т1),

У1(У0,1 + М(1) + Т1)}, (2)

Е(1, Т1) = {Ф1 (у 0,1 + т1), у1(У0,1 + т1)}, (3) Е(1, П) = {(+<», +<»)} при Пй {0, т1}. (4)

Пусть все значения Е(і, П) для некоторого і є {1, 2, ... , п - 2} уже найдены. При отыскании значений Е(і+1, П) следует учитывать следующие две возможности:

1) объект оі+1 обслуживается в рейсе Х+, и тогда рассматриваемой ситуации (і+1, П) непосредственно предшествует ситуация (і, Б-ті+1);

2) объект оі+1 обслуживается в рейсе Х_, и тогда ситуации (і+1, П) непосредственно предшествует ситуация (і, П).

С учетом указанных возможностей для

іє {1, 2, . , п - 2} получаем соотношение

Е(і +1, П) = в// (К,, К 2), (5)

где

К1 = Е(і, П -ті+1) © (Фі+1(£у,,у+1 + П),

і=0

(6)

Уі+1(^Уу, і+1 + П))

j=0 і+1

К = Е(і, П) © (Фі+1(^Уі+1,і +Т+1 + П+М(і+1)),

(7)

^і+1(^Уу+1,і +Ті+1 + П +М(і + 1))).

Величины К1 и К2 ниже именуем соответственно первой и второй компонентами формулы (5), вычисляемое по которой значение Е(і+1, П) оказывается равным {(+<», +*)} в том и только том случае, когда ситуация (і+1, П) нереализуема.

При определении значений Е(п, П) следует иметь в виду, что объект оп обслуживается в рейсе Х+. Поэтому для задачи (1) имеем соот-

ношение

Е(п, П) = Е(п -1, П - тп) ©

(8)

© (Ф п+1 (^ У у, у+1 + V п+1 (£ У у і+1 + П)Х

у=0 у=0

и полная совокупность эффективных оценок в задаче (1) определяется по формуле

Е = в// (Е (п, П)).

(9)

Формулы (2)-(4), (8) суть рекуррентные соотношения динамического программирования, позволяющие совместно с (5)-(7), (9) получить решение задачи (1).

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

т

к

3. Алгоритмы синтеза

субоптимальных стратегий обслуживания

Наряду с синтезом точных решений задачи (1), требующим, вообще говоря, значительных и не всегда допустимых в производственных условиях временных затрат, интерес представляют быстро работающие алгоритмы построения приближенных решений с приемлемыми для приложений погрешностями. Ниже приводится описание трех таких алгоритмов (TS, SA и GA), сконструированных с использованием метаэв-ристических концепций поиска с запретами (taboo search) [6], имитации отжига (simulated annealing) [7] и эволюционно-генетического моделирования (genetic algorithm) [8]. Их применение для синтеза субоптимальных стратегий обслуживания является особенно значимым при больших размерностях задачи (1) ввиду ее NP-трудности [9].

Введем операцию добавления без нарушения эффективности (ДбНЭ). Пусть имеется оценка (W, Q) и множество оценок M, такое, что ни одна из оценок этого множества не доминирует другую оценку этого множества или, другими словами, M = effM). В результате применения операции ДбНЭ к оценке (W, Q) и к множеству Mполучим множество EffM ^ {(W, Q)}).

Если в множестве M существуют оценки, доминируемые оценкой (W, Q), то эти оценки удаляются из множества M, а оценка (W, Q) добавляется. Будем называть эту ситуацию успешной.

Если же оценка (W, Q) доминируется некоторой оценкой множества M, то она не добавляется. Будем называть эту ситуацию неуспешной.

В качестве текущего решения в алгоритмах SA, TS или особи для алгоритма GA будем полагать булев вектор i = (i1, i2, ..., in-i), такой, что

i = 1 тогда и только тогда, когда объект oi обслуживается в рейсе Х+. Такой вектор однозначно определяет стратегию V(i) обслуживания группировки объектов, поскольку объект on всегда обслуживается в прямом рейсе. Данной стратегии соответствуют значения критериев

(Wv(i), Qv(i)) = (W, Qi) =

Z Фj (t* (V(i))X Z V, (t* (V(i)))

V j= j=

Под NB(iJ) (1 < j < n - 1) будем понимать булев вектор (i[,ij,...,i’n_l): i'j = 1 -ij, i, = ij

для V/ e {1, ..., n -1}, l фj, соответствующий стратегии, полученной из текущей стратегии перестановкой одного произвольного объекта Oj с обслуживания в рейсе Х+ (L) на обслуживание в рейсе L (Х+).

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

Для учета в схеме поиска с запретами специфики задачи (1) будем считать множество

векторов {КВ(/,/): j = 1, п -1} окрестностью

точки г = (?1, г2, ..., !„.]). Число векторов в такой окрестности равно п - 1.

В процессе поиска с запретами нам потребуется сравнивать некоторую оценку (Ж, О) с эталоном - другой оценкой (Ж7, О'). Будем говорить, что оценка (Ж, О) проходит операцию сравнения с эталоном, если (Ж - Ж1)2 + (О - О')2 < е, где е - наперед заданное оценочное число. Иначе будем считать, что оценка не проходит операцию сравнения с эталоном.

С учетом сделанных пояснений алгоритм TS решения задачи (1) записывается в виде следующей пошаговой последовательности действий.

1. Выбрать в качестве начального решение и = (1, 1, ..., 1), соответствующее обслуживанию всех объектов в рейсе Х+.

2. Очистить список запретов, а множество оценокМ считать состоящим из точки (Жи, Ои), объявляемой на данном шаге эталоном для сравнения.

3. Для всех точек и из окрестности решения и, не входящих в список запретов, вычислить значения функций штрафов (Жи, Ои).

4. Применить операцию ДбНЭ к оценке (Жи, Ои) и множеству М.

5. Если результат операции ДбНЭ на шаге 4 является неуспешным и оценка (№ги, Ои) не проходит сравнение с эталоном, то добавить решение и' в список запретов; перейти к шагу 7.

6. Если результат операции, выполненной на шаге 4, является успешным, то считать оценку (Жи, Ои) эталоном для сравнения, а соответствующее ей решение и' добавить в список запретов.

7. Если в результате выполнения шагов 3-6 эталон изменился, то положить текущее решение и равным решению, соответствующему эталону; иначе в качестве текущего выбрать решение, соответствующее случайно выбранной оценке из М.

8. Перейти к шагу 3, если не выполнено условие останова; иначе завершение работы алгоритма; М - множество субоптимальных оценок.

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

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

1. Зафиксировать значение начальной температуры Т = Ттах и коэффициента охлаждения с = с0.

2. Выбрать в качестве начального решение и = (1, 1, ... , 1), соответствующее обслуживанию всех объектов в прямом рейсе; множество субоптимальных оценок считать состоящим из одного элемента М = {(Ж(Ц), О(и))}.

3. Определить точку и' как КВ(и,/), где ] -случайно выбранное число в интервале от 1 до п - 1.

4. Вычислить изменения функций штрафов при переходе к точке и':

Д1 = щи1) - щи), Д2 = О(и') - О(и).

5. Если выполняется хотя бы одно из следующих условий:

Д1 < 0 или Д2 < 0 или Д1 = 0 и Д2 = 0, (10) применить операцию ДбНЭ к точке (Ж(и'), О(и')) и множеству М; текущую точку и заменить на и'.

6. Если ни одно из условий (10) не выполняется, переход в точку и = и' осуществляется тогда и только тогда, когда выполняется усло-

вие e V ~ ' > R , где R - случайно выбранное

число из диапазона (0, 1); в противном случае текущая точка не изменяется.

7. Значение температуры уменьшается согласно закону охлаждения T = cT.

8. Циклически повторяются шаги 3-7 до тех пор, пока не будет произведено заданное количество итераций или совокупность оценок M не будет изменяться на протяжении заданного количества шагов.

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

3.3. Алгоритм GA. Общими процедурами в различных реализациях эволюционно-генетических алгоритмов являются: а) создание начальной популяции; б) вычисление значений функций приспособленности для всех особей популяции; в) циклический процесс до момента выполнения критерия останова: селекция,

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

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

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

Функцией приспособленности считается вектор-функция (—WV, —QV), компоненты которой вычисляются как значения критериев на соответствующей особи V, взятые со знаком минус.

На этапе селекции производится отбор тех особей, значения функции приспособленности которых входят в множество Eff ({(—WV, —QV): Ve e population}).

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

Пусть этап отбора не прошли (N — H) особей. Тем не менее в целях сохранения разнообразия они будут использованы на этапе скрещивания и мутации.

Считаем заданным число k, k e [0, 1], которое определяет, какую долю из (N — H) особей займут в следующем поколении особи, полученные путем мутации. Остальные «места» займут особи, полученные с помощью скрещивания. Таким образом, (N — H)k особей появятся в следующем поколении из-за мутации, а (N — H)-(1 — k) особей получатся с помощью скрещивания.

В генетических алгоритмах рассматривают, как правило, половое размножение. Это значит, что для получения одного потомка необходимо два родителя. Поэтому для получения (N — H)-(1 — k) потомков надо иметь 2(N — H)-(1 — k) родителей. Первого родителя выбираем случайным образом из числа H особей, отобранных на этапе селекции. Вторым родителем может быть любая из N особей. Пусть ц = (ць ц2, ..., цп-1), П = (П1, П2, •••, Пп-1) — два родителя. Тогда в результате скрещивания получается особь р = (р1, Р2, ., Рп-1), такая, что р = ц | ц.

Для проведения мутации выбирается (N —

— H)k особь из числа неотобранных на этапе селекции; это делается для предотвращения застоя в одной из эффективных оценок или локальном минимуме. Для каждой такой особи U случайным образом выбирается особь U' = =NB(U, j). Если Ww < Wv или Qw < Qw, то в новое поколение переходит особь U'. В противном случае в новое поколение переходит особь U.

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

Таким образом, в новое поколение переходят H особей, отобранных из предыдущего поколения (N — H)-(1 — k) особей, полученных на этапе скрещивания, и (N—H)k мутировавших особей (или особей из предыдущего поколения, если мутация не дала увеличения приспособленности).

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

д2+д22

700

600

500

400

300

200

100

0

12 13 14 15 16 17 п

Рис. 1. Зависимость продолжительности 0 решения задачи (1) от размерности и

0,5

0,45 0,4 0,35 0,3 Є 0,25 0,2 0,15 0,1 0,05 0

і

і

ш

_

шэд

12 13 14 15 16 17 п

Рис. 2. Зависимость длительности 0 отработки алгоритмов TS, SA, GA от размерности п

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

3.4. Оценка точности субоптимальных решений. Для оценки отклонения Д совокупностей субоптимальных решений от точной совокупности применялась формула

д =

avg І тіп р((Ф,Q);(W,Q'))

(Ф ,б)єМ V Ф ’

avg (р((Ф,Q);(0,0)))

(Ф ,0)еЫ

(11)

где М - точное множество эффективных оценок, М' — множество оценок, найденное метаэв-ристическим алгоритмом, avg - операция вычисления среднего значения, р((Ф, Q); ф', Qr))

- расстояние между двумя оценками, вычисляемое как тах(|Ф - ^'|^ - Q'|). Соответственно р((Ф, Q); (0, 0)) - расстояние между оценкой (Ф, Q) и оценкой (0, 0).

4. Результаты вычислительных экспериментов

В процессе проведения серии вычислительных экспериментов установлено, что среднее

время 0 отработки алгоритма построения полной совокупности Парето-оптимальных стратегий обслуживания для бикритериальной проблемы (1) составляет 0.1 микросекунды при п = =12 и возрастает до 10 минут при п = 17. Соответствующая диаграмма представлена на рис. 1.

Среднее время 0 отработки алгоритмов TS, SA, GA для п < 18 не превосходит 0.45 секунды, и его зависимость от размерности п представлена на рис. 2.

Среднее значение отклонения Д совокупностей субоптимальных решений от точных совокупностей составило менее 2% и в интегрированном виде проиллюстрировано на рис. 3.

Список литературы

1. Синий А.В., Федосенко Ю.С. Базовые математические модели снабжения топливом земснарядов в крупномасштабных районах русловой добычи нерудных строительных материалов // Международный научно-промышленный форум «Великие реки — 2004». Генеральные доклады, тезисы докладов. Н.Новгород.: ННГАСУ, 2004. С. 68-470.

2. Подиновский В.В., Ногин В.Д. Парето-опти-мальные решения многокритериальных задач. М.: Наука, 1982. 255 с.

3. Беллман Р., Дрейфус С. Прикладные задачи динамического программирования. М.: Наука, 1965. 457 с.

2,1 1,8

1,5

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

0,9

0,6

0,3

TS SA GA

Рис. 3. Среднее значение отклонения Д, соответствующего алгоритмам TS, SA, GA

4. Klamroth K., Wiecek M. Dynamic Programming Approaches to the Multiple Criteria Knapsack Problem // Technical Report #666. Dept. of Math. Sc., Clem-son University. Clemson, SC, 1998.

5. Коган Д.И. Динамическое программирование и дискретная многокритериальная оптимизация. Н. Новгород: Изд-во Нижегородского госуниверси-тета, 2005. 260 с.

6. Glover F., Laguna M. Tabu Search // Modern Heuristic Techniques for Combinatorial Problems. 1993. P. 70-150.

7. Kirkpatrick S., Gelatt C. D., Vecchi M. P. Optimization by Simulated Annealing // Science. 1983. Vol. 220. No 4598. P. 671-680.

8. Holland J.H. Adaptation in Natural and Artificial Systems. The University of Michigan Press, 1975.

9. Коган Д.И., Федосенко Ю.С., Дуничкина Н.А. Задачи обслуживания линейно рассредоточенных стационарных объектов перемещающимися процессорами II // VI Московская международная конференция по исследованию операций (ORM 2010), Москва, 19-23 октября 2010 г.: Труды. М.: МАКС Пресс, 2010. С. 298-299.

BICRITERIA MODEL AND SYNTHESIS ALGORITHMS OF OPTIMAL COMPROMISE STRATEGIES FOR SINGLE PROCESSOR SERVICING OF A LINEAR GROUP OF STATIONARY OBJECTS

N.A. Dunichkina

A discrete model of single-stage servicing of a group of stationary objects is considered. The objects are located along a one-dimensional working zone of a mobile processor. Each object is associated with a pair of monotonically increasing penalty functions. Synthesis problems are formulated in the criteria plane of a full set of effective estimates and corresponding Pareto-optimal service strategies. Recurrence relations of dynamic programming allowing us to build the entire Pareto domain are derived. Special attention is paid to the synthesis algorithms of suboptimal servicing strategies.

Keywords: discrete model of servicing, Pareto-optimal strategies, dynamic programming, metaheuristic algorithms.

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