Научная статья на тему 'Метод анализа логистических моделей'

Метод анализа логистических моделей Текст научной статьи по специальности «Математика»

CC BY
255
68
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
АЛГОРИТМЫ / АНАЛИЗ МОДЕЛЕЙ / ЛОГИСТИКА / ГРАФЫ / ALGORITHMS / MODEL ANALYSIS / LOGISTICS / GRAPHS

Аннотация научной статьи по математике, автор научной работы — Тарасов С.А., Тарасов Ю.С.

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

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

METHOD OF THE LOGISTIC MODEL ANALYSIS

The analysis method for the logistic models described in terms of the graph theory is offered. The model analysis algorithms, developed in accordance with the proposed method, lead to the considerable reduction of the set task computing complexity.

Текст научной работы на тему «Метод анализа логистических моделей»

Литература

1. Гольденвейзер А.Л. Теория упругих тонких оболочек. - М.: Наука, 1976.

2. Огибалов П.М., Колтунов М.А. Оболочки и пластины. - М.: Изд-во МГУ, 1969.

3. Андреев А.Н., Немировский Ю.В. Многослойные анизотропные оболочки и пластины. Изгиб, устойчивость и колебания. - Новосибирск: Наука, 2001.

4. Зенкевич О. Метод конечных элементов в технике. - М.: Мир, 1975.

5. Норри Д., Ж. де Фриз. Введение в метод конечных элементов. - М.: Мир, 1981.

6. Матвеев А.Д. Некоторые подходы проектирования упругих многосеточных конечных элементов / Ин-т вычислительного моделирования СО РАН. - Красноярск, 2000. - Деп. в ВИНИТИ № 2990-В00.

7. Матвеев А.Д. Многосеточное моделирование композитов нерегулярной структуры с малым коэффициентом наполнения // ПМТФ. - 2004. - № 3.

8. Самуль В.И. Основы теории упругости и пластичности. - М.: Высш. шк., 1982.

УДК 519.163 С.А. Тарасов, Ю.С. Тарасов

МЕТОД АНАЛИЗА ЛОГИСТИЧЕСКИХ МОДЕЛЕЙ

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

Ключевые слова: алгоритмы, анализ моделей, логистика, графы.

S.A. Tarasov, Yu.S. Tarasov

METHOD OF THE LOGISTIC MODEL ANALYSIS

The analysis method for the logistic models described in terms of the graph theory is offered. The model analysis algorithms, developed in accordance with the proposed method, lead to the considerable reduction of the set task computing complexity.

Key words: algorithms, model analysis, logistics, graphs.

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

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

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

Определения

Графом С называется пара множеств (V, Е), где V - непустое конечное множество, а Е - произвольное множество, образованное произвольными парами элементов из V. Элементы множества V будем называть вершинами графа, а элементы множества Е - ребрами графа.

Вершины V и V1 называются смежными (инцидентными), если образуемая ими пара (V, V) е Е.

Петлей называется ребро, соединяющее вершину саму с собой.

Кратными называются различные ребра, соединяющие две данных вершины.

Простой граф - граф, не содержащий в себе петель и кратных ребер.

Степень вершины V - число ребер, инцидентных с вершиной V, обозначается deg(v).

Маршрутом в графе С называется чередующаяся последовательность вершин и ребер у0, ег, р1, ..., , V,-, в которой = VI), где (1 < I < £).

Длиной маршрута называют количество содержащихся в нем ребер.

Цепь - маршрут без повторяющихся ребер.

Вершины V и V1 называются связанными, если существует маршрут такой, что у0 = V и = V1. Отметим очевидное следствие данного определения. Пусть V, V', V" - вершины графа, при этом если пары вершин (V, V) и ( V', V") являются связанными, то вершины V, V"также являются связанными.

Матрица Кирхгофа [1] - одно из представлений графа с помощью матрицы. Пусть С простой граф с |У(С)| = п, тогда матрица Кирхгофа К = (к^)пхп,

Ídeg(vi) если I = } -1 если (р1, у}) е Е(д)

0 иначе.

Определитель матрицы А = [а1,])пхп равен Т!]=1(-1)1+1 х а-!,] х

Дополнительный минор М^ - определитель матрицы, полученной из исходной путем вычеркивания ¿-й строки и у'-го столбца.

Алгебраическим дополнением а^ матрицы А называется число, равное (—1)1+1МЬ), где М^ - дополнительный минор.

Полюсы и срезы в графах

Введем вспомогательное понятие - срез вершины графа. Фиксируем произвольную вершину V графа С. Множество всех смежных вершин для V назовем первым срезом графа С для вершины V. Обозначим это множество 51(у). Во второй срез Б2(р) включим все смежные вершины из 51(у), исключая саму вершину V и вершины из 51(^). Далее продолжаем описанный процесс и формируем очередной срез из смежных вершин предыдущего среза, исключая саму вершину V и все вершины, включенные в какой-либо из ранее сформированных срезов. Процесс формирования срезов естественно заканчивается, когда не останется ни одной не включенной в срезы вершины. Множество всех срезов для вершины V графа С обозначим 5(у). По аналогии |5(^)| - количество срезов для вершины V.

Полный массив всех срезов для всех вершин графа обозначим М и разберем подробнее его структуру. Первый индекс структуры М нумерует список срезов для каждой вершины. Срезы упорядочены в соответствии с вышеприведенным определением, то есть первым идет Б1(р1 ), вторым Б2(р1 ) и т.д., где /-индекс текущей строки в структуре М.

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

Полюсом графа по выбранной шкале весов назовем вершину с минимальным значением индекса по-люсности.

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

Веерные остовы

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

Определим следующие функции:

1. ^1(б(р), к, п) - возвращает множество ребер, инцидентных с п-й вершиной в к-м срезе объекта Б(р) и вершинами, расположенными в срезе к-1 объекта

2. ^2(Б(р), г) - возвращает число вершин в ¿-м срезе объекта 5(у).

3. [3(Б(р), к) = Пп=(1М,к)к,п) - возвращает прямое произведение множеств, полученных при помощи функции fl для всех вершин, расположенных в к-м срезе объекта 5(у).

4. f4■(S(p)) = Пк=\з&)\к) - возвращает прямое произведение множеств, полученных при помощи функции f3 для всех срезов объекта 5(у), кроме первого.

Для графа в(У, Е) определим Т(р) = ^4(Б(р)), где р е У, тогда элемент £ е Т(р) является последовательностью ребер графа С, то есть (ея. Определим множество Р, такое, что р е Р о (р', р") е ь, где (V , V" еУ) а ((р', р") = (р", р)).

Теорема. Граф 6(Р, £), остов графа в(У, Е) для VI е Т(р) и Ур еУ, где С - неориентированный связный граф.

Доказательство теоремы сводится к доказательству следующих утверждений:

1. Р = V.

2. р' и р"являются связанными для любых р', р" е Р.

3. Граф С, не содержит циклов.

Доказательство утверждения 1. Предположим, что Р Ф V. В силу определения множества Р, Р ФУ о (Зр' еУ Ар' Р), что равносильно утверждению Р с У, и не одно ребро, инцидентное вершине р\ не содержится в £. Для любой вершины, включенной в объект 5(у), в £ содержится как минимум одно ребро, инцидентное с ним. В силу определения объекта Б(р) в него входят все вершины графа при условии, что граф связный. Таким образом, мы приходим к противоречию между утверждениями р' Б(р) Ар' еУ и Уа еУ ^ а е Б(р).

Доказательство утверждения 2. Данное доказательство следует из доказательства первого утверждения. Пусть р' и р" - произвольные вершины графа С. Очевидно, что р е У, р" е У, р' е Р, р" е Р, р е 5(г), р" е 5(г). В силу конструктивного определения ь, данное множество ребер обеспечивает связность любой вершины, расположенной в ¿-м срезе объекта 5(у), с какой-либо вершиной из ¿-1 среза, где г е {2,3,..., \5(^)\]. Таким образом, множество ребер £ обеспечивает связность любой вершины с вершиной р (вершиной, расположенной в первом срезе объекта 5(^)). Из связности графа С следует, что если любая вершина связана с вершиной р, то связаны любые вершины. Что и требовалось доказать.

Доказательство утверждения 3. Предположим, что граф С содержит циклы. Из этого следует, что в £ з {е', е"}, такие, что (е = (р, р ')) А (е" = = (р", р'")) А ({е', е } с Е) А ({р, р", р'"} сУ) а (р' Ф р" Ф р "), при этом р"' расположено в ¿-м срезе объекта 5(у), а р' и р" в ¿-1 срезе. Что противоречит описанию функции /3, используемой при формировании £. Результатом вычисления функции /3 в рассматриваемой ситуации будет множество, содержащее в себе объекты V 2 е' и V 2 е", при том, что £ ' п ь" == 0. Таким образом, утверждение 3 доказано.

Объединение доказательств утверждений 1, 2, 3 является доказательством теоремы.

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

В соответствии с графическим представлением определим множества V = [р1, р2, рЭ, у4, р5, у6, у7, у8, р9, р10} и Е = {г1, г2, гЭ, г4, г5, г6, г7, г8, г9, г10, г11, г12, г1Э}, где г1 = (р1, р2), г2 = (р1, рЭ), гЭ = (у2, р4), г4 = (рЭ, р4), г5 = (рЭ, р6), г6 = (р4? р7), г7 = (у2, р5), г8 = (р5, р9), г9 = (р6, у7), г10 = (у7, р8), г11 = (р6, р8), г12 = (р8, р10), г1Э = (у9, р10). При этом будем считать {у, V) = (V', V). Построим множество веерных графов относительно вершины у1. В качестве исходных данных необходимо определить объект 5(^1).

2 р4 р7 5(р1) = р1 ^Э р8 р10 у6 р9

Таким образом:

Т(р1) = /Э(Б(у1),5)х /Э(Б(у1), 4) х /Э(Б(у1),Э) х /Э(Б(у1),2). /Э(Б(р1), 5) = /1(Б(р1), 5,1) = {г12, г1Э} х 0 = {{г12), (г1Э)}. /Э(Б(у1),4) = /1(Б(у1),4,1) х /1(Б(у1),4,2) х /1(Б(у1),4,э)={г6, г9} х х {г10, г11} х {г8} = {{г6, г10, г8), (г6, г11, г8), (г9, г10, г8), (г9, г11, г8>}. /Э(Б(р1), Э) = /1(Б(р1), Э,1) х /1(Б(р1), Э,2) х /1(Б(р1), Э,Э)={гЭ, г4} х {г7} х х {г5} =

{{гЭ, г7, г5>, {г4, г7, г5>}. /Э(Б(у1), 2) = П(Б(у1), 2,1) х /1(Б(у1), 2,2) = {г1} х {г2} = {{г1, г2>}

Т(у1) = {{г12>, {г1Э>} х {{г6, г10, г8>, {г6, г11, г8>, {г9, г10, г8>, {г9, г11, г8>} х х {{гЭ, г7, г5>, {г4, г7, г5>} х {{г1, г2>} = {{г12, г6, г10, г8, гЭ, г7, г5, г1, г2>, {г12, г6, г10, г8, г4, г7, г5, г1, г2>, {г12, г6, г11, г8, гЭ, г7, г5, г1, г2>, {г12, г6, г11, г8, г4, г7, г5, г1, г2>, {г12, г9, г10, г8, гЭ, г7, г5, г1, г2>, {г12, г9, г10, г8, г4, г7, г5, г1, г2>, {г12, г9, г 11, г8, гЭ, г7, г5, г1, г2>, {г12, г9, г11, г8, г4, г7, г5, г1, г2>, {г1Э, г6, г10, г8, гЭ, г7, г5, г1, г2>, {г1Э, г6, г10, г8, г4, г7, г5, г1, г2>, {г1Э, г6, г 11, г8, гЭ, г7, г5, г1, г2>, {г1Э, г6, г 11, г8, г4, г7, г5, г1, г2>, {г1Э, г9, г10, г8, гЭ, г7, г5, г1, г2>, {г1Э, г9, г10, г8, г4, г7, г5, г1, г2>, {г1Э, г9, г 11, г8, гЭ, г7, г5, г1, г2>,

{г1Э, г9, г 11, г8, г4, г7, г5, г1, г2>} Сформировать множество Р на основе любого элемента из Т(у1) не представляет трудности. В результате получается 16 остовов.

Заключение

Представленный метод не формирует множество всех остовов графа. Для понимания этого факта можно рассмотреть результат вычисления Т(р6). Формирование Т(у6) производится на основе Б(р6) = рЭ р1

У 2

р6 у7 у4 _ р5, так как вершины р7 и р8 расположены в одном срезе, ни один элемент из Т(р6) не бу-Р9

р8 р10

дет содержать в себе ребро г10. Также на основе рассматриваемого графа построим остов в(У, Е) где Е = {г2, гЭ, г5, г6, г7, г8, г9, г12, г1Э}. Данный остов не будет являться элементом множества, образованного объединением множеств веерных остовов, для всех вершин графа. Для полноты представления приведем расчет алгебраического дополнения к элементу матрицы Кирхгофа, которое, согласно теореме Кирхгофа-Трента[1], равно числу всех возможных остовов в графе. Матрица Кирхгофа для рассматриваемого графа имеет следующий вид:

000000 1 0 0 0 0 0 0 -10 0 0 0 0 0 -1 0 0 0 2 0 0 0 -1 0 0 Э -1 -10 0 ' 0 -1 Э -10 0 0 -1 -1 Э 0 -1 -1 0 0 0 2 -1 0 0 0 -1 -1 2

Алгебраическое дополнение к элементу к1Л = (-1)1+1 х М1Л = 68. Таким образом, мощность множества всех возможных остовов равна 68. Это значит, что при анализе коммуникационной компоненты модели,

К(С) =

2 -1 -1 0

-1 2 0 -1

-1 0 Э -1

0 -1 -1 Э

0 -1 0 0

0 0 -1 0

0 0 0 -1

0 0 0 0

0 0 0 0

0 0 0 0

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

Авторы выражают благодарность заведующему кафедрой логистики Красноярского государственного аграрного университета д-ру экон. наук В.Ф. Лукиных за постановку задачи [4,5], для решения которой и была разработана концепция полюсов и веерных остовов.

Литература

1. Кристофидес Н. Теория графов - алгоритмический подход. - М.: Мир, 1978.

2. Асанов М.О., Баранский В.А., Расин В.В. Дискретная математика: графы, матроиды, алгоритмы. -Ижевск: НИЦ «Регулярная и хаотичная динамика», 2001.

3. ЛорьерЖ.-Л. Системы искусственного интеллекта: пер с фр. - М.: Мир, 1991.

4. Тарасов С.А., Тарасов Ю.С. Метод определения полюсов графа мезорайонов логистической инфраструктуры мегаполиса // Логистика - Евразийский мост: мат-лы VIII Междунар. науч.-практ. конф. (2013 г., Красноярск); Краснояр. гос. аграр. ун-т. - Красноярск, 2013.

5. Модель векторов развития логистической инфраструктуры Красноярской городской агломерации / П.Г. Швалов, С.А Тарасов, Ю.С. Тарасов [и др.] // Управление экономическими системами. - 2013. - № 6 (54).

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