УДК 519.6: 681.3
Г езалов С.К. ©
Кандидат технических наук, доцент, Азербайджанский технический университет
МОДЕЛИРОВАНИЕ КРАТЧАЙШЕГО ПУТИ ТРАНСПОРТНОГО МАРШРУТА ПРИ ЗАДАНИИ ИСХОДНЫХ ДАННЫХ В ВИДЕ НЕЧЕТКИХ ЧИСЕЛ
Аннотация
Для решения задачи маршрутизации на транспортной сети, при задании продолжительностей путей по отдельным дугам сети в виде нечетких чисел использован метод нечеткого критического пути, применяемый обычно для решения задач сетевого планирования и управления проектируемого комплекса работ. Основные временные характеристики сетевого графа вычисляются на основе решения дискретных минимаксных задач с линейными ограничениями-неравенствами. Разработаны численные алгоритмы построения критических путей, допустимых по директивному сроку длительности путей и кратчайшего по времени пути.
Ключевые слова: задача маршрутизации, сетевой граф, критический путь, метод нечеткого критического пути.
Введение
Задача выбора маршрута на транспортной сети (задача маршрутизации) является одной из основных задач транспортной логистики. В современных условиях реализация логистических принципов направлена на ускорение продвижения товароматериальных потоков за счет взаимодействия различных видов транспорта, развитие интермодальных и мультимодальных перевозок грузов, внедрение терминальных технологий. В соответствии с определениями, рекомендованными Европейской Конфедерацией Министров Транспорта, интермодальной перевозкой является доставка грузов в одной и той же грузовой единице или транспортном средстве с использованием нескольких видов транспорта без переформирования грузовой единицы, а мультимодальной - перевозка грузов, по меньшей мере, двумя различными видами транспорта. Формирование транспортных логистических систем с такими функциональными возможностями позволяет создавать интегрированные цепи поставок на основе единой системы ответственности и экономической заинтересованности участников логистических процессов и клиентской среды [1].
По определению [2,3] логистика - наука о планировании, организации, управлении и контроле движения материальных и информационных потоков в пространстве и во времени от их первичного источника до конечного потребителя, а логистическая система (ЛС) - это сложная организационно завершенная (структурированная) экономическая система, которая состоит из элементов- звеньев, взаимосвязанных в едином процессе управления материальными и сопутствующими потоками.
Важнейшими с точки зрения логистики особенностями интермодальных перевозок является возможность создавать различные варианты при построении логистических цепей поставок, расширять границы логистической цепи до конечных потребителей, позволяя реализовать принципы доставки «от двери до двери», осуществляя интеграцию потоковых процессов.
Классическими методами решения задач управления проектами являются методы сетевого планирования и управления (СПУ) [4-7]. Сетевой график (сетевая модель, логическая сеть)-наглядное изображение в виде ориентированного графа, отображающее технологическую связь между работами. Исходная информация о проекте должна содержать перечень всех работ с указанием для каждой работы ее продолжительности (в классическом случае это детерминированное число) и списка непосредственно последующих работ. Ориентированные
© Гезалов С.К., 2015 г.
дуги графа - сетевого графика - обычно интерпретируют работы. Вершины графа, соединенные дугами, называют событиями. Одно и то же событие - вершина может служить началом одних и концом других дуг-работ. Событие выражает готовый результат: все работы, входящие в событие, окончены. Оно также выражает логическую связь между работами, заключающуюся в следующем: а) работы, входящие в данное событие, непосредственно предшествуют работам, выходящим из него; б) ни одна выходящая из данного события работа не может начинаться до окончания всех работ, входящих в это событие.
Для сети всегда существует правильная нумерация (такая, что из вершины с большим номером не идет дуг в вершины с меньшими номерами). Поэтому будем считать, что события занумерованы таким образом, что нумерация является правильной. Для установления правильной нумерации вершин сети пользуются методом вычеркивания дуг [4].
Длиной каждой работы (i,j) будем называть ее продолжительность tj . Под длиной пути (iJi ), (j1,j2 ), • ••, (jk,j ) из i в j будем понимать продолжительность выполнения всей последовательности работ, составляющих этот путь (в четком случае это число t^ + tj-2 + + tjj). Счет времени ведется от наступления начального события-вершины i1, т.е. время наступления события i1 равно нулю. Временем 7j наступления (свершения) любого события j считается время окончания всех работ, входящих в j. Минимальное (т.е. наиболее ранее) время возможного наступления события j равно максимальной длине пути из it в j . Оно же,
следовательно, является наиболее ранним временем начала работ, выходящих из j. Обозначим ™(0)
это время 7j .
Критическим временем проекта называют максимальное время наступления последнего (завершающего) события проекта in. Другими словами, критическое время - это минимальное количество времени, необходимое для выполнения всего комплекса работ. По указанному выше, критическое время равно максимальной длине пути из it в in . Любой путь (последовательность работ) из ij_ в in имеющий максимальную длину (т.е. продолжительность, равную критическому времени) называют критическим путем.
Целью СПУ является построение календарного графика определяющего
последовательность выполнения работ (в соответствии с перечнем работ, последующих за каждой работой), моменты начала и окончания каждой работы, определение резервов работ
( i,j ), определяемых равенством = 7j(1) — 7® — tt- ( 7j(1) -наиболее позднее время наступления события j), и выявление «критических» работ проекта с резервом д^- = 0.
При решении задачи маршрутизации на транспортной сети будем считать заданным множество Р допустимых путей (р) доставки груза из начального пункта i1 в конечный пункт in через те или иные вершины - узлы и дуги сетевого графа. Прибытие в пункт i (вершину -узел i, i Ф i1) назовем событием i. Каждая из дуг (i,j) (условно называемая работой) соединяет два возможных (с точки зрения состояния дорог и транспортных средств передвижения) последовательных пункта i и j определенного маршрута (пути) реР. Однако при этом не требуется выполнение вышеуказанного условия б) для каждого события, предъявляемого в СПУ. Несмотря на это, как будет показано в настоящей работе, с помощью метода критического пути можно построить наикратчайший по времени путь, отсеивая по одному критическому пути вычеркиванием его дуг, не входящих в оставшиеся пути и получая при этом новый сетевой граф. На конечном числе шагов данной процедуры получается путь из i1 в in с однозначно определенными дугами между каждой парой его вершин (узловых пунктов транспортной сети), имеющий минимальную продолжительность.
В случае, когда продолжительности работ заданы точно, решение задачи календарного планирования осуществляется методом критического пути (МКП). Поскольку в момент планирования достаточно сложно иметь точную информацию о будущих длительностях работ на основании их предыстории, очень важно учесть нечеткую неопределенность исходных данных.
В методах нечеткого критического пути (МНКП) длительности работ задают нечеткими величинами, а вычисление нечетких временных окон для характеристик работ выполняется на
основе принципа расширений Заде [8]. В статьях [9,10] нечеткие временные характеристики работ предлагается оценивать с помощью классических формул метода критического пути (т.е. обычным МКП) путем замены обычных арифметических операций над нечеткими величинами соответствующими расширенными арифметическими операциями.
Однако, в отличие от нечетких ранних сроков выполнения работ, вычисление поздних нечетких поздних сроков выполнения работ таким способом приводит к получению временных окон, которые шире, чем в действительности (си., например [11-12]). Аналогичная ситуация имеет место также с нечеткими резервами работ, что вызвано особенностью операции расширенного вычитания, которая не является обратной расширенному сложению. Это усложняет задачу нахождения резервов и анализа критических путей и работ сетевой модели.
Таким образом, вопреки мнению авторов [13], в случае нечетких продолжительностей работ невозможно использовать МКП в таком виде, как он существует для четких продолжительностей.
Варианты МНКП, где введены характеристики путевой и резервной критичности работ и на этой основе предложен обобщенный МНКП, описаны в [14-16]. Дальнейшим развитием МНКП является предложенный в [17] метод вычисления нечетких временных окон для резервов и поздних сроков начала и завершения работ на основе декомпозиции сетевого графа и выделения существенных наборов длительностей работ на а -уровнях, который обеспечивает корректную оценку как времени поздних начала и завершения работ, так и резервов времени. Используемые при этом алгоритмы расчета требуют очень большого объема вычислений. К тому же, точность этих вычислений зависит от числа рассматриваемых а -уровней, и от исходных множеств всех возможных наборов потенциальных длительностей работ на каждом а-уровне.
В данной работе показано применение метода критического пути для построения оптимального (кратчайшего по времени) пути доставки груза из начального пункта в конечный при задании продолжительностей работ в виде треугольных нечетких чисел (ТНЧ) LR - типа. Приведены функции принадлежности основных временных характеристик работ и путей: нечеткие раннее и позднее время начала и окончания работы, нечеткая длина критического пути, нечеткая длина пути неначальной вершины в завершающую и нечеткий резерв времени. Даны формулы расчета всех этих времен характеристик. Разработаны алгоритмы построения критических путей, кратчайшего по времени пути и путей, удовлетворяющих директивному сроку.
1. Метод нечеткого критического пути.
Рассмотрим проект, состоящий из набора операций (работ). Зависимость между операциями задается в виде сети (сетевого графика), представляющего собой ориентированный граф (U, D), \и\ = п , без петель и с правильной нумерацией вершин (U-множество вершин графа с общим числом элементов п; D - множество соединяющих их дуг). Среди множества вершин U выделим вход сети i1 и выход сети in. Применительно к транспортной сети i1 и in -это начальный и конечный пункты доставки груза.
Будем рассматривать нечеткий случай задачи сетевого планирования и управления (СПУ), когда относительно продолжительности работ (i,j) имеется нечеткая информация ^%..(t), где ^.$..:R+ [0,1] - функция принадлежности нечеткой продолжительности tij работы
(i,j), i,j £ U; “R+ - пространство положительных вещественных чисел.
Нечеткая информация относительно продолжительности работ (в нашем случае, отрезок пути между двумя вершинами - пунктами следования) может быть получена от экспертов и/или путем обработки данных о состоянии путей сообщения (дорог) между пунктами следования из ii в in.
Обозначим U1 -множество событий, непосредственно предшествующих событию i, т.е. множество вершин j сети, для которых существует дуга (j, i) ; U* - множество событий, непосредственно следующих за событием i, т.е. множество вершин j сети, для которых существует дуга (i,j).
По определению [18], пересечением нечетких множеств А и В в универсальном множестве 4 называется нечеткое множество АПВ с функцией принадлежности вида
МлпвМ = Ш1п{Дб(8),Мв(8)}, 8 G 4. (1)
Нечеткое раннее время свершения события i (обозначим его в виде нечеткого множества tf) означает одновременное наступление (т.е. пересечение) всех нечетких ранних времен свершения работ А^, соответствующих дугам (j,i), j £ Uf, представляющее собой нечеткое мно-жество В[ с функцией принадлежности дв.(£), вычисляемой по формуле (1)
«в&(0 = minyeyr [/%&(0]
(2)
Л. А. Заде [19] предложил принцип обобщения в основе которого лежит определение образа нечеткого множества при обычном (четко описанном) отображении. Применение этого принципа позволяет расширить область определения арифметической операции сложения на класс нечетких подмножеств числовой оси ^. А именно, суммой А = Ах + А2 двух нечетких множеств А-l и А2 с функциями принадлежности ^(х), д2(х):^1 ^ [0,1] называют образ пары (А1,А2) при отображении d:^1 х ^ ^ Я1 , D(ri,r2) = r = r1 + r2 , при этом «6(х) определяется в виде:
Мл(г) = sup^e^i 9in(pi(ri),p2(r2)) (3)
ri+r2=r
При любом фиксированном j нечеткое раннее время свершения события i представляется суммой двух нечетких множеств Ауд и t- . В соответствии с принципом обобщения в форме (3), с учетом формулы (2), функция принадлежности нечеткого раннего времени tf свершения i — го события, i £ U, имеет вид (ранние времена события iL -входа в сеть является четким числом, равным нулю, т.е. «$-(t) = 1 при t = 0 и «$-(t) = 0 при t > 0, [20,21]: 1 1
Mt-(t)
шах
(t/,t/i),ye?i 1 ma-(t'+ty;)=t
шт
Уе?-
шт
Mtyi(tyi));Mt- (ty)]- (4)
Аналогичным образом получаются следующие формулы: для нечеткой длины критического пути
МЛ = 9aX{tn|tn=T}[p$-(tn)]; (5)
для нечеткой длины максимального пути от вершины i £ U до выхода сети i = n (соответствующая длина для выхода сети является четкой и равной нулю, т.е. «max(t) = 1 при t = 0 и «““(t) = 0 при t > 0) —
Mmax(t) =
max
min
9in
j(t/,tiy),ye?f| rnax(t'+ti;-)=t|y 1
для нечеткого позднего времени t+ свершения события i £ U —
p$+(t) = max{(r,t;)|r-ty=t] 9in[P'f(^); pynax(ty)]; для нечетких полных резервов времени At события i £ U —
(«у,М) ;«"“(*,)]; (6)
(7)
«Ati(t)
max
{(У1А)|У1-9=0
9in
После элементарных преобразований формулы соответственно в виде [21]:
«t+СМ «t-(tf)]-
(4)-(8) могут
(8)
быть
записаны
«t-(t)
9in
max
Уe?Г
max
9in
min max 9in
L У£?& ty+tyi<tL
= 9in
«t'i(tyi); «$7(ty)) «tyt(tyi);«$7(ty))
max max
у£У( ty<t
min maxj9in
yeУI- ty<t ^ '
«$..(t —ty);«$7(ty))_
v,Emoatx-,](«$y.(ty'));«$7(ty))1
(9)
Дг(0 = min [^t@(tn);maxtnSt^g@(tn)];
(10)
дтах(0 = min
тгах max jmin ^„(t — ty)); д™12* (ty)}:
.^„(ty)); Mhnj(fy))]
min max e min | max _уга&+ t.st \ауг[о,а-а
; (11)
^$+(t) = maxr min^fCT); д™а*(7 — t)];
max$. min $&
Mtf(t + tt); д$; (ti)]i
(12)
(13)
Дд$&(0
В формулах (9), (11) при вычислении max B,(t)'
min min 2 (t) ДЛЯ каждого допустимого у при фиксированном t происхо-дит оптимизация по у y
одной переменной (ty) при нахождении max By(t) и оптимизация по двум переменным (ty, tyi)
при нахождении min 2y(t), что позволяет реализовать более простые и эффективные алгоритмы У
для вычисления (t) и ^haj(t). Роль By(t) в (9) и (14) играют соответственно max jmin (д$..^ — ty); (ty))} и max jmin ^„(t — ty)); д™01* (ty)},
а роль 2y (t) соответственно
maxemin
maxemin
w@(ty))|и tIJyma-tJ] (^f.'(t‘y)); ^rij(ty))|-
Величину ду = Дд$&(0) г [0,1], i г ! , можно интерпретировать как степень
принадлежности -го события критическому пути. События i с параметром ду, равным единице или близким к ней, можно считать критическими.
2. Расчет временных характеристик сетевого графа при задании продолжительностей работ нечеткими числами.
Будем полагать, что продолжительности работ в сетевом графе заданы нечеткими числами ty Lft - типа. Функция принадлежности таких чисел имеют треугольный вид (поэтому их обычно называют треугольными нечеткими числами - ТНЧ):
{(x — ai)/(a2 — ax), ax < x < a2 (x — a3)/(a2 — a3), a2 < x < a3 (14)
0, в остальных случаях
Треугольные нечеткие числа с функцией принадлежности (ФП) вида (14) представляют кортежом из трех чисел: (а^ а2, а3)<к. Используется также представление вида 2 = (s, m^ m2), где s -модальное значение ТНЧ, mx,m2- левый и правый коэффициенты нечеткости ТНЧ, при этом 2 называют «нечетким числом s».
Рис. 1. Графическое представление ТНЧ
Параметры этих двух представлений связаны соотношением
s = а2, т1 = а2- аъ т2 = а3 - а2 (15)
и обратно
а2 = s, а1 = s — т1, а3 = s +т2 (16)
Левую ветвь ФП (1.14) обозначают у.д1, а правую - ^дК (от англ. слова «Left» -левый и «Right» -правый).
С учетом соотношений (15)-(16) ФП (14) можно записать как
г x-(s-m1)
VaM = <
m1
x-(s+m2) -m2 ’
s — т1 < 8 < s;
s < 8 < s + т2 ;
О, в остальных случаях.
(14' )
Функции принадлежности (9)-(13) будем вычислять последовательно в порядке следования их нумерацией 9,10,...,13, поскольку в каждой последующей из этих формул может использовать одна из предыдущих. В формулах (9), (11) вычисление величин 3j(t) и 2j(t) сводится к решению дискретных максиминных задач с линейными ограничениями, которые легко сводится к минимаксным задачам. Для решения минимаксных задач с ограничениями общего вида (линейными и нелинейными) предназначена функция >тт1та8 в системе MATLAB 7 [23].
Поэтому рассмотрим сначала вычислительную процедуру расчета ФП, определяемых левыми частями формул (10), (12), (13).
Начнем с расчета ФП, определяемой левой частью формулы (10), предполагая уже вычисленной ФП g%.Qtj) определяющую ТНИ tj = (а1^’а2^’а3^’ад^) . При фиксированных j Е U- t Е R1 значение g$j(t) вычисляется непосредственно по аналитической
(трапециевидной) форме записи ФП gtjQtj) (обозначим его через Cj(t)), а значение величины Dj(t) = та8г и$р-.Qtj') определяется следующим образом:
((.t — а1^')1{а2^ — а^)’ а^ <t< 02j
Dj (t) =
1’
0’
o2j <t< а4 j в остальных случаях
Откуда находим
МО = [та8jЕU@ Cj(t); тЬ#^ Dj(t)] (17)
Аналогичным способом вычисляются ФП в левых частях формул (12), (13).
Вычисление ФП, определяемых формулами (9) и (11) связано с решением дискретных минимаксных задач с ограничениями.
В общем виде дискретная минимаксная задача с ограничениями формулируется следующим образом [24]. Пусть Е [0: N]’ X = (8Ъ ... ’8п) - функции, заданные и
непрерывно дифференцируемые на некотором открытом множестве П' С Еп (Еп - евклидово пространство размерности п). Предположим также, что задано выпуклое замкнутое множество
П С а'.
Требуется найти точку X* = П, для которой
.9faX]/j(4*) = infxenmaxie[0:N]fi(X)
(18)
Поставленная минимаксная задача сводится к минимизации на множестве П функции
D(X) = maXie[0N]fi(X). (19)
Очевидно, что дискретная минимаксная задача
.тЙ/КХЧ = supx£§ тщф¥] >i(X) (20)
Сводится к задаче (18) с функцией
D(X) = -maXig[o;N](-/i(X)) (21)
Точка X*, удовлетворяющая необходимому условию минимума функции d(X) на П,
называется стационарной точкой. Для того чтобы точка X* £ П была точкой минимума d(X) на
П, необходимо, а в случае выпуклости d(X) на П и достаточно, чтобы [23]
(dft(X*) \
inf max I —-----, Z — X* 1 = 0,
zen i£R(x*)\ ©X )
где R(X) = {i £ [0:N]/fi(X) = p(X)}.
Алгоритм нахождения стационарных точек функции d(X) на П при условии непрерывной дифференцируемости функций >.(x) на П разработан в [24] и реализуется функцией >minimax в программной системе MATLAB [23].
В формуле (9) при фиксированных j £ Uf и t £ R1 вычисление величины Bj(t) сводится к дискретной максиминной задаче вида (20) от одной переменной x1 = tj (n = 1) с двумя функциями /iQtjR = p$..(t — tj) и /2(tj) = Pt-(tj) (N = 2) и множеством ограничений
П = (Z £Е1/(A1,Z) + b1< 0 (N1 = 1),
где Z = (z1), A1 = (1), (A1,Z) = z1t b1 = —t. Вычисление же величины Aj(t) в формуле (9) к дискретной максиминной задаче вида (20) от двух переменной x1 = tj и x2 = tji (n = 2) с двумя функциями >1(tj, tji) = pf'.(tji) и f2(tj, tjf) = ^ij(tj') (N = 2) и множеством ограничений
П = (Z £Е2/(A1,Z) +b1< 0 (N1 = 1),
где Z = (z1,Z2), A1 = (1,1), (A1, Z) = Z1 +Z2, -1 = —t.
В формуле (11) вычисление величин Bj(t) и Aj(t) при фиксированных j £ U* и t £ R1 сводится как и в (9) к аналогичным дискретном минимаксным задачам с тем отличием, что tji заменяется на tij и pt-(tj) - на phax(tj).
Замечание Функция принадлежности > (x) для ТНЧ имеет форму треугольника. В вершинах треугольника производная > (x) теряет свойство непрерывности из-за разрыва типа скачка. Эту особенность функции_принадлежности ТНЧ можно устранить, сглаживая ее углы дугами окружности сколь угодно малого радиуса, касающейся сторон этого угла (рис. 2-3).
Рис. 2. Сглаживание ФП в окрестности вершины В
Рис. 3. Сглаживание ФП в окрестности вершины A
Пусть функция принадлежности р(х) ТНЧ имеет форму треугольника ABC со сторонами АВ и ВС, описываемыми уравнениями прямых у = к1х + Ъ1 и у = к2х + Ъ2 и углами а1 и а2 при вершинах А и С, лежащих на оси 8. Очевидно, что at = arc tgat (i = 1,2) и угол а при вершине В равен ± — (а1 + а2).
Отложим на сторонах угла при вершине В отрезки ВЕ и BF, равные £ (г — сколь угодно малое положительное число). впишем окружность в А СВР с центром в точке О ,
являющейся пересечением биссектрис углов при вершинах этого треугольника.
Радиус r вписанной окружности (рис.2) определяется равенством
r = £/(tg-------+ ctg----) , а координаты ( х0,у0 ) центра окружности О - системой
2 А
уравнений
r-tg
®i ( •1 + (a2 - аг)2
2
-Ъг \-Хо
1
к2
(Г •
1-7
(а1 + а2) tg 2
+ (а3 - а2)2
)
+
2
-Ъ2 )-Хо
+
1-
1-
r-tg^C+f^
•1 + (а2 - ai)2
г.гдЩ.2й
• 1 + (а3 -а2)2
2
у0
2
у0
Дуги KL определяется уравнением окружности (х - х0')2 + (у - уо)2 = г2 при х° < х < х< , у° <у < у<, где
хк=ТЛ1
r-tg-
(ai±a22
• 1+(а2-а1)2
Ъ1), хь
=-(i
к2 \
r-tg-
(01 + 02)
• 1+(аз~а2)2
у° = 1-
г-гдЩой
у< = 1-
r ■ tg (а1 + а2)
• 1 + (а.-а1)2 " •1 + (а3- а2)2
Решение данной системы уравнений можно получить в системе MATLAB с помощью функции fsolve , входящей в вычислительный блок OptimizationToolЪoх , задавая начальное приближение х = а2, у = а1, поскольку при малом £ точка О близка к точке В.
Для окружности, вписанной в А AEF с AE=EF = Ъ имеем r = г sin—-■ tg ——, а
координаты (х0,у0) центра О этой окружности (рис. 3) определяется из решения системы уравнений
(а1-х0)2 +у02 =
(г - х0)2 + у02
(-7)
\sin—j (___r__)
\sin—4^)
Решение этой системы уравнений получается при начальном приближении х0 = а1, Уо = 0.
Дуга KL определяется уравнением окружности при
г • ctg — < х < — (■ 3 2 fciV
ctg?±
• l+(a2 -ai)2
’i)
и
0 < у <
ctg^L
• l+(a2-ai)2
tt ~ .^r . «2 . ^—«2
Для окружности малого радиуса, касающейся сторон угла С имеем г = £ sin— tg----,
2 4
а координаты (хо,уо) центра окружности получаются путем решения системы уравнений
2
(а3 -хо)2 +Уо2
ы
(£
Хо)2 + Уо2 =
± — а2
sin
которое строится при начальном приближении хо = а3, уо = 0. Дуга KL окружности определяется уравнением при
/ ^ «2
^ «2 ^ ^ 1 ( ct^22 г • ctg — < х < — ( 2 ==
3 2 fc2 VVl+(a3—a2)2
-2Z
и
0 < у <
ct^
«2
• l+(a3—a2)2
Как было указано в конце раздела 1, в случае нечеткого задания продолжительностей работ в виде нечетких чисел событие i можно считать критическим, если значение ФП Рд$;(0,
определяемое по формуле (13), при t = 0 равно единице или близки к единице.
Критический путь можно определять как путь, удовлетворяющий следующим двум условиям:
1) проходит только через критические события-вершины;
2) длина (длительность) пути равна (или наиболее близка) критическому времени Т, определяемому формулой (5).
Критических путей на сетевом графе, как в четком, так и в нечетком случае может быть несколько. Длина пути равна сумме длин его составляющих дуг. При задании
продолжительностей работ треугольными нечеткими числами (ТНЧ) для вычисления длины пути используется операция сложения нечетких чисел LP - типа [22] PLR и BLR, заданных параметрически в виде PLR =< а1,а1,Д1 ><R и SLR =< а2,а2,р2 ><R . Это операция
обозначается через PLR + BLR = CLR =< а, а,р ><R , где параметры а, а и Р результата определяется следующим образом:
а = Oi + а2, а = ai + а2, Р = Р1 + Р2 (22)
3. Сравнение треугольных нечетких чисел.
Для нахождения критического пути необходимо уметь сравнивать друг с другом два ТНЧ. Любое ТНЧ вида < s, m1,m2 > является частным случаем трапециевидных нечетких интервалов (ТНИ) вида (s1,s2,rn1, ш2), где s1 и s2 - нижнее и верхнее модальные значения, ш1и ш2 - левый и правый коэффициенты нечеткости. При s1 = s2 ТНИ превращается в ТНЧ. Поэтому правило сравнения нечетких чисел LP - типа легко получается из правила сравнения нечетких интервалов LP - типа, приведенных в [13].
Рассмотрим два ТНЧ: Р = (р, а,Р) и Q = (q, у, Ё), где р и q - модальные значения нечетких чисел Р и Q, а (а,Р) и (у, Ё) - пары нечетких коэффициентов этих нечетких чисел. Обозначим через pR(4) и р^У) функции принадлежности Р и Q, зависящие от переменных х и у из ^1 соответственно. Практически для обсуждения относительных положений двух нечетких чисел LP - типа достаточно четырех показателей:
1) Pos (р > q) - возможность того, что х больше или равно у;
2) Pos (р > q) - возможность того, что х больше у;
3) Wee (р > q) - необходимость того, что х больше или равно у;
4) Wee (р > q) - необходимость того, что х больше у. (23)
Здесь Pos и Nec - сокрушения от англ. Possibility (возможность) и Necessity (необходимость).
Показатели (23) обычно обозначаются через PSE,PS,NSE и NS соответственно.
Принимая во внимание, что переменные х и у ограничены носителями supp рр(х) = (р — а,р + Р) и supp Pq(y) = (q — у, q + Ё) , равенство между нечеткими числами P и Q устанавливается с помощью следующих трех показателей:
i) Pos(x = у) - возможность присвоения общего значения переменным х и у;
ii) NqQP) - оценка достоверности того, что при некотором заданном значении
переменной у можно присвоить это же значение переменной х.
iii) Nec (х = у) - достоверность того, что переменным х и у можно присвоить одно и то же значение, совместимое с интервалами (р — а,р + Р) и (q — у, q + S) (каким бы оно ни было). (24)
Показатели (24) выражаются через показатели (23) с помощью соотношений [13]:
Pos(х = у) = minQPos (р > q), 1 — Nec (р > q)R;
NqQP) = minQNec (q >р), 1 — Pos (q > р));
Nec(х = у) = min (Nec (р > ql 1 — Pos (р > ч) Z
( у) min(i —Pos (q >р), Nec (q > р) )'
(25)
Таким образом, четыре показателя сравнения нечетких чисел, определяемые в (23), содержат всю информацию для обсуждения как равенства, так и неравенства двух нечетких чисел. Эти показатели представляются в виде следующих функций от модальных значений и коэффициентов нечеткости чисел Pn и Qn:
Pos (р > q) = тах(0,тт(1,1 + (р — q)/(P + у)));
Nec (р > q) = тах(0, min(1, (р — q + у)/(а + у)));
Pos (р > q) = тах(0, min(1, (р — q + Р)/(Р + Ё)));
Nec (р > q) = mах(0, min(1, (р — q)/(a + Ё))). (26)
Эти формулы не справедливы тогда, когда суммы коэффициентов нечеткости в знаменателях вышеприведенных выражений равны нулю. В случае равенства нулю этих сумм в формулах (26) при условии р = q, на основании соответствующих рекомендаций для сравнения нечетких интервалов [13], приходим к следующим утверждениям:
а) если Р + у = 0, то при вычислении величины Pos (р > q) коэффициенты Р и у можно заменить любыми положительными числами;
б) если а + Ё = 0, то при вычислении величины Nec (р > q) коэффициенты а и Ё можно заменить любыми положительными числами;
в) если а + у = 0, то Nec (р > q) = 0;
г) если Р + Ё = 0, то Pos (р > q) = 0. (27)
В рассматриваемой нами задаче маршрутизации на транспортной сети для нечетких чисел, описываемых функциями принадлежности (9)-(13) модальные значения р и q двух нечетких чисел могут быть различны, и при этом может оказаться, что суммы нечетких чисел коэффициентов в знаменателях формул (26) будут равны нулю. При условии р ф q в случаях а)-г) для вычисления четырех показателей (23) в случаях а)-г) следует решать соответственно следующие уравнения относительно переменной u:
а) RP iir) = Lv ^-f) = Pos(р > q) (28i)
б) Lp pi) = Rq pi) = Nec (р > q); (28,)
в) Lp l0^) = 1 — Lq l-10) = Nec (р > q), (283)
г) 1- Rp pf) = Rq pi-) = Pos(р > q). (284)
Здесь Lp, Lq и Rp, Rq - левые и правые части функций принадлежности рр(х) и Рп(у~). Равенства из (27) Nec (р > q) при а + у = 0 и Pos(р > q) = 0 при Р + Ё = 0 при условии р = q вытекают как следствия из уравнений (283) и (284) соответственно.
4. Вычисление критических путей, допускаемых по директивному сроку длительности путей и кратчайшего по времени пути.
Алгоритм 1. (построения критического пути).
1. Выделим множество путей из в in, проходящих через события-вершины i, для которых функция принадлежности дд$.(t) имеет при t = 0 значение Дд%.(0), равное или близкое к единице. Будем считать это множество путей подозрительным на наличие в нем критического пути и обозначим его через Рпод.Кр., а входящие в него пути через Pj(j = 1,... ,_/0).
2. Вычислим по формуле (5) длину критического пути (критическое время), т.е. путь, длина которого представляется нечетким числом Г с функцией принадлежности (5).
3. По правилу суммирования нечетких чисел (22) вычислим длину 7j- каждого пути Pj(j = 1, ...,j0) как сумму длин составляющих дуг.
С помощью трех показателей (24) сравним нечеткие числа р = 7) с нечетким числом Q = Г. Обозначим через v1,v2,v3 показатели i, ii, iii (21) сравнения Pj с Q. Пусть vk)(k = 1,2,3)- значение показателя vk для пары Pj, Q (см. табл. 1).
Таблица 1
Нечеткие числа (р)) Показатели равенства Р) = Q Суммарные баллы
Vi V2 V3
Vii V21 V31 *i
Vi2 V22 V32 *2
• • • • • •
^ Vi/n V2/n V3/n */o
Если некоторое нечеткое число Ру в столбе "v^' имеет значение Vkj', не меньше всех остальных значений Vkj, то ему начисляется 1 балл. В столбе “баллы” указывается суммарный (по столбцам) балл 8j каждого числа Pj.
Путь Pj* с длиной Pj*, имеющей наибольший балл, будем считать критическим путем. Таких путей во множестве Рдоп.Кр может быть один или несколько.
Алгоритм 2 (нахождения допустимых по директивному сроку длительности путей).
1. Положим Я: = 0, k: = 0, U(0) = U, D(0) = D, где U и D - вершины и дуги сетевого графа, соответствующего заданной транспортной сети, и Г(0) = (U(0), D(0)) - сетевой граф с правильной нумерацией вершин.
2. На графе Г(к) = (U(k), D(k)) найдем с помощью алгоритма 1 некоторый критический путь pjk) длины 7j(*k). Если Я = 1, то идем на п. 4.
3. По правилу сравнения нечетких чисел сравним 7j*k) с 7Д, где 7Д - заданный в виде нечеткого числа директивный срок пути из i1 в in.
Если 7j(*k) < 7д , то все пути на графе r(k) являются путями, удовлетворяющими заданному директивному сроку. Все эти пути будут также путями на исходном графе Г(0), поскольку r(k) < Г(0) Vk = 1,2,... .
Полагаем Я: = 1, печатаем последовательно все вершины пути pjk).
4. На графе r(k) вычеркнем дуги критического пути pjk), не принадлежащие остальным путям. Оставшийся сетевой граф после установления в нем правильной нумерации обозначим r(k+1) = (u(k+1), D(k+1)).
Если на графе r(k+1) нет ни одного пути из i1 в in, то при Я = 1 идем на п.5, а при Я = 0 печатаем “поставленная задача не имеет решения” и идем на п.5. Иначе полагаем k: = k + 1 и идем на п.2.
5. Конец.
В результате данного алгоритма либо будут с помощью критических путей построены и напечатаны все пути допустимые по директивному сроку длительности либо будет указано, что “поставленная задача не имеет решения”.
Алгоритм 3 (построения кратчайшего по времени пути).
1. Положим к = 0.
2. На графе r(fc) = (!(fc), D(fc)) найдем с помощью алгоритма 1 некоторый критический (fc)
путь Pjt .
3. На графе r(fc) вычеркнем дуги критического пути pjfc), не принадлежащие остальным путям. Оставшийся сетевой граф после установления в нем правильной нумерации обозначим r(fc+l).
Если на графе r(fc+l) нет ни одного пути из il в in, то путь pjfc) будет кратчайшим по времени путем. Печатаем последовательно все его вершины.
4. Конец.
Выводы
1. С помощью метода нечеткого критического пути МНКП, используемого при решении задачи планирования и управления комплекса работ проекта, можно решать задачу маршрутизации в транспортной сети, заключающуюся в нахождении кратчайшего по времени пути из начального пункта в конечный. Отсеивая по одному критическому пути сетевого графа путем вычеркивания дуг, не принадлежащих остальным путям, через конечное число шагов получаем граф, содержащий единственный путь, являющийся кротчайшим по времени путем на исходном сетевом графе.
2. В случае нечетких оценок продолжительностей работ невозможно использовать метод критического пути (МКП) в таком виде, как он существует для четких продолжительностей.
3. При задании продолжительностей работ в виде нечетких чисел LR - типа вычисление функций принадлежности основных временных характеристик сетевого графа сводится к решению дискретных минимаксных задач с линейными ограничениями неравенствами.
4. На основе правил сложения нечетких чисел и показателей равенства и неравенства двух нечетких чисел разработаны алгоритмы вычисления критических путей, допустимых по директивному сроку длительностей путей и кратчайшего по времени пути.
Литература
1. Управление грузовыми потоками в транспортно-логистических системах/ Л.Б. Миротин, В.А. Гудков, В.В. Зырянов и др. Под ред. Л.Б. Миротина. М.: Горячая линия - Телеком, 2010.-704 с.
2. Модели и методы теории логистики/ Под ред. В.С. Лукинского - СПб: Питер, 2003. - 203 с.
3. Тихомирова А.Н., Сидоренко Е.В. Математические модели и методы в логистике: Учебное пособие.
- М.: НИЯУ МИФИ, 2010. - 320 с.
4. Зуховицкий С.И., Рудчик И.А. Математические методы сетевого планирования. - М.: Наука, 1965.
- 296 с.
5. Ермольев Ю.М., Мельник И.М. Экстремальные задачи на графах.- Киев: Наукова думка, 1968. - 176 с.
6. Майника Э. Алгоритмы оптимизации на сетях и графах/Пер. с англ.-М.: Мир, 1981.- 323 с.
7. Таха Х. Введение в исследование операций: В 2-х кн. Кн. 2: Пер. с англ. - М.: Мир, 1985. - 496 с.
8. Zade L.A. Fuzzy logic, neural networks and soft computing// Commun. ACM. - 1994, 37, №3, p.77-84.
9. Chanas S., Radosinski E. A model of activity performance time in the light of fuzzy sets theory// Probl. Organizacji.- 1976, №2, p. 268-276.
10. Prade H. Using fuzzy set theory in a scheduling problem a case study// Ibid. - 1979, 2, p.153-165.
11. Rommelfanger H.J. Network analysis and information flaw in fuzzy environment// Ibid. 1994, 67, p. 119128.
12. Fargier H., Galvagnen V., Dubois D. Fuzzy PERT in series-parallel graph//Eurofuse Workshop on Scheduling and Planning. - Mons (Belgium): Univ., 2000. - p. 6-8.
13. Дюбуа Д., Прад А. Теория возможностей. Приложения к представлению знаний в информатике: Пер. с фр. -М.: Радио и связь, 1990. - 288 с.
14. Slyeptsov A.I., Tyshchuk T.A. Generalized fuzzy critical path conception for network planning problem// Ibid. - p. 2-5.
15. Slyeptsov A.I., Tyshchuk T.A. Project network planning on the basis of generalized fuzzy critical path method// The State of the Art in Computation Intelligence/ P. Sincak (Eds.) With Foreword by L.A. Zadeh. - Heidelberg; New-York: Phisica - Vere. 2000. - p. 133-139.
16. Слепцов А.И., Тыщук Т.А. Обобщенный метод нечеткогокритического пути: анализ, синтез, эксперименты// Проблемы управления и информатики, 2001, №2, с. 140-149.
17. Слепцов А.И., Тыщук Т.А. Метод расчета характеристик операций в задачах нечеткого сетевого планирования и управления// Кибернетика и системный анализ, 2003, №3, с. 58-71.
18. Орловский С. А. Проблемы принятия решений при нечеткой исходной информации. - М.: Наука, 1981. - 201 с.
19. Zadeh L.A. Fuzzy Sets // Information and Control, 1965, vol. 8, pp. 338-353.
20. Акимов В.А., Балашов В.Г., Заложнев А.Ю. Метод нечеткого критического пути - В сб.: Управление большими системами.- М.: Институт проблем управления, 2003. - с. 5-10.
21. Врублевская С.С., Федорова И.В., Шиянов Б.А. Алгоритм вычисления нечеткого критического пути// Вестник Воронежского госуд. технического ун-та, 2007, т.3, №7, с. 93-100.
22. Леоненков А.В. Нечеткое моделирование в сфере MATLAB и Fuzzy TECH. - СПб.: БХВ -Петербург, 2005. - 736 с.
23. Ануфриев И.Е., Смирнов А.Б., Смирнова Е.Н. MATLAB 7 - СПб: БХВ - Петербург, 2005. - 1104 с.
24. Демьянов В.Ф., Малоземов В.И. Введение в минимакс. -М.: Наука, 1972. - 368 с.