Научная статья на тему 'Алгоритм оптимизации схем вексельного обращения'

Алгоритм оптимизации схем вексельного обращения Текст научной статьи по специальности «Математика»

CC BY
137
52
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
АНАЛИЗ / ВЫБОР / ПРОЕКТ / СОГЛАСОВАНИЕ / THE ANALYSIS / A CHOICE / THE PROJECT / THE COORDINATION

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

Рассматриваются задачи определения простой схемы вексельного обращения минимальной сложности и объема заключающаяся в построении эквивалентной простой схемы вексельного обращения с минимальным числом дуг

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

ALGORITHM OF OPTIMIZATION OF SCHEMES OF THE BILL REFERENCE ON

Problems of definition of the simple scheme of the bill reference of the minimal complexity and volume consisting in construction of the equivalent simple scheme of the bill reference with the minimal number of arches are considered

Текст научной работы на тему «Алгоритм оптимизации схем вексельного обращения»

УДК 658.12

АЛГОРИТМ ОПТИМИЗАЦИИ СХЕМ ВЕКСЕЛЬНОГО ОБРАЩЕНИЯ ПО СЛОЖНОСТИ

С.А. Баркалов, С.А. Пузырев

Рассматриваются задачи определения простой схемы вексельного обращения минимальной сложности и объема заключающаяся в построении эквивалентной простой схемы вексельного обращения с минимальным числом дуг

Ключевые слова: анализ, выбор, проект, согласование

Постановка задачи

Рассмотрим методы решения задачи определения вексельной схемы, имеющей минимальный объем (или максимальный коэффициент сжатия по объему). 1Эта задача сводится к определению циркуляции [1], имеющей максимальный объем

У(х) = Е ху (1)

(у)6 и при ограничениях

Е ху = Е хк1 , 1 = 1,п (2)

0 < ху < су , (1,]) 6 и (3)

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

дуга (у)бУ, если (у)бИ и ху < су

дуга (у)бУ, если (],1)бИ и ху > 0

Другими словами, множество дуг графа Н содержит все ненасыщенные дуги графа в и все дуги (1,]), такие что обратные дуги (1,]) принадлежат графу в, причем циркуляции по этим дугам положительны.

Примем длину дуги (у)бУ равной 1у = (+1), если (у)бИ и равной 1у = (-1), если (у)бИ.

Замечание. Если (у) 6 И и ху < су , и в то же время (]Д)бИ и ху > 0, то длина дуги (у) в графе Н принимается равной 1.

Теорема 1. Необходимыми и достаточными условиями оптимальности циркуляции х является отсутствие контуров положительной длины в графе

Н.

Необходимость. Пусть х - оптимальная циркуляция и ц - контур графа Н, имеющий положительную длину. Увеличим циркуляцию по дуге (у)бц на 5>0, если 1у = (+1) и уменьшим на 5>0, если 1у = (-1). Легко видеть, что в исходном графе в мы по-прежнему получим циркуляцию. Однако величина объема этой циркуляции увеличилась на 1 (ц)*8, где 1 (ц) - длина контура ц в графе Н, что противоречит оптимальной циркуляции х. Доста-

Баркалов Сергей Алексеевич - ВГАСУ, д-р техн. наук, профессор, (4732) 76-40-07

Пузырев Сергей Александрович - Университет МВД РФ, канд. экон. наук, доцент, e-mail: puzurev@mail.ru

точность. Пусть х - циркуляция, такая что в графе Нх отсутствуют контуры положительной длины, а х° - оптимальная циркуляция. Циркуляцию х° можно получить из циркуляции х путем вариации циркуляций по контурам графа Нх. Однако, все эти вариации не увеличивают объема [2] циркуляции х, так как в графе Нх отсутствуют контуры положительной длины. Поэтому х - оптимальная циркуляция.

Идея алгоритма состоит в последовательном определении циркуляций максимального объема в подграфах графа в, состоящих из 2,3 и т.д. до п вершин.

Описание алгоритма.

Пусть получена циркуляция х (к), имеющий максимальный объем в подграфе из к вершин. Добавим еще одну вершину. Опишем алгоритм определения циркуляции максимального объема в подграфе из (к+1) вершин. Для этого разделим вершину 1к+1 на две вход 0 и выход х. Вход 0 соединим дугами (0,1), если (1к+1,1)бИ. Вершину 1 соединим с выходом дугой (1,х), если (1,1к+1)бИ. Пропускную способность дуги (0,1) примем равной с1к+1 1 , а дуги (1^) примем равной с1,1к+1. Строим граф Нк+1, соответствующий графу вк+1 (заметим, что дуги (0,1) и (1^) всегда будут иметь длины (+1)).

Определим путь максимальной длины, соединяющий вход с выходом (рис.1). Если такой путь существует и его длина 1>0, то увеличиваем или уменьшаем циркуляции по соответствующим дугам графа вк+1. Затем снова строим граф Нк+1 (для полученной циркуляции), определяем путь максимальной длины в полученном графе и изменяем циркуляцию, если длина этого пути положительна. Если длина пути неположительна, то получена циркуляция [3] максимального объема в графе вк+1.

Рис.1. Граф максимальной длины

Обоснование алгоритма. Покажем, что изменение циркуляции в графе вк+1 по цепи, соответ-

ствующей пути максимальной длины в графе Нк+1, не приводят к появлению контуров положительной длины в графе Нк. Действительно, изменение циркуляции в графе вк+1 приводит либо к насыщению некоторых дуг в графе, либо к появлению положительной циркуляции по некоторым дугам, либо к ненасыщенности некоторых дуг, либо к нулевым циркуляциям по некоторым дугам. В первом случае в графе Нк исчезает дуга, во втором - может появиться дуга с отрицательной длиной, в третьем - в графе Нк появляется дуга с положительной длиной, а в четвертом - в графе Нк исчезает дуга. Опасность представляет появление дуг с положительной длиной. Пусть после изменения циркуляции в графе вк+1 по дугам, соответствующим пути максимальной длины в графе Нк+1 появилась дуга (У) положительной длины 1у = +1. длины (-1)

Пусть благодаря этому в графе Нк появился контур (ц,У) положительной длины 1 = 1 (ц) +1 > 0. Но в этом случае длина пути (0,ц,1,х) больше, чем длина пути (0ДД,х), так как 1 (ц) > -1. А это противоречит тому, что путь (0,ц,1,х) имеет максимальную длину. Таким образом, граф Нк+1 не имеет контуров положительной длины и поэтому циркуляция в графе вк+1 имеет максимальный объем.

Пример 1 Граф вексельного обращения приведен на рис. 2. Пропускные способности дуг указаны в скобках.

Рис. 2.Граф вексельного обращения

1. Берем вершины 1 и 2. Циркуляция равна 0.

2. Берем вершины 1, 2, 3. Циркуляция равна 0.

3. Берем вершины 1, 2, 3,4. Циркуляция равна 0.

4. Берем вершины 1, 2, 3, 4, 5 : Существу-

ет единственный контур (1,2,3,4,5,1), циркуляция по которому

х12=х23=х34=х45=х51=4, а объем циркуляции равен W5=4*5=20.

5. Берем все вершины. Строим граф в6.

Циркуляция в графе вк обеспечивается

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

симальной длины ц1=(6,5,1,2,3,4,6), 1(ц1)=6 выделен на рис.2 толстыми дугами, по нему можно пропустить циркуляцию величины 1. Скорректированные величины циркуляции приведены на рис3.

ции

Объем циркуляции увеличился на 6 и стал равным 26.

Снова определяем путь максимальной длины. Таких путей два: ц2= (6,5,1,6) и ц3= (6,3,4,6) длины которых равны 3. По пути ц2 можно увеличить циркуляцию на 1 единицу, а по пути ц3 - на две единицы (рис.3). Получаем циркуляцию, объем которой увеличился на 9 единиц и составил 26+9=35.

Определяем путь максимальной длины ц4=(6,3,2,6), длина которого 14=1 > 0. Получаем новую циркуляцию (рис. 5), объем которой увеличился на 3 единицы и составил 35+3=38.

Определяем путь ц5=(6,5,4,3,2,6), длина 15=-1 < 0. Поэтому полученная циркуляция (рис. 5) имеет максимальный объем. После проведения соответствующих взаимозачетов по контурам получаем вексельную схему (рис. 6), объем которой равен 14. Коэффициент сжатия по объему составляет (38+14)/14=35/7, а коэффициент сжатия по сложности Кп=10/5=2.

Рис. 6. Вексельная схема

Рассмотрим еще один алгоритм решения задачи, в основе которого лежит понятие сбалансированного графа.

Определение 1. Граф в называется сбалансированным, если:

Есу = Еск1 , 1=1,п , (.4)

} к

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

С = Е су (5)

(У)бИ

Содержательно это означает, что все векселя можно взаимозачесть и после взаимозачетов схема вексельного обращения будет иметь нулевой объем.

Любой граф можно превратить в сбалансированный, добавив вершину (п+1). Эта вершина соединяется с вершиной 1 дугой (п+1,1), если вершина 1 имеет положительный дисбаланс

& = Есу - Еск1 > 0 } к

При этом пропускная способность дуги (п+1,1) равна Ш.

Вершина 1 соединяется дугой (1,п+1) с вершиной (п+1), если вершина 1 имеет отрицательный дисбаланс

& = Есу - Еск1 < 0

Пропускная способность дуги (1,п+1) равна дисбалансу Ш.

Получили сбалансированный (п+1) - вершинный граф. В содержательном плане вершина (п+1) может соответствовать некоторому органу (банк или государство), который выступает гарантом оплаты векселей. Такая расширенная схема вексельного обращения имеет объем равный сумме пропускных способностей всех вершин.

Задача. Определить циркуляцию {уу} из вершины (п+1) в вершину (п+1), насыщающий исходящие (а значит и заходящие) дуги и имеющий минимальную стоимость

У = Е уу

(У)

Пусть {уу°} поток минимальной стоимости. Определим

ху°= су - уу° , (У)бИ

Очевидно, что {ху°} является циркуляцией, объем которой

W = С - У

Отсюда следует, что эта циркуляция имеет максимальный объем.

Алгоритмы определения потока минимальной стоимости известны. Опишем один из них.

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

К-шаг. Пусть уже определена некоторая циркуляция {уу (к-1)}. Определим граф Н аналогично тому, как это делалось выше, то есть дуга (У)бУ (множество дуг графа Н, если (У)бИ и уу (к-1) < су или если (У)бИ и у]1 (к-1) > 0. В первом случае длина дуги (1,]) равна (+1), а во втором (-1). Определим контур минимальной длины из вершины (п+1) в вершину (п+1). Изменяем циркуляцию по этому контуру на максимально возможную величину 5, причем уу =5, если 1у=+1 и уу = -5, если 1у = -1.

Алгоритм заканчивается, когда получена циркуляция {уу}, насыщающая дуги исходящие и заходящие в вершину (п+1). Эта циркуляция имеет минимальный объем.

Пример 2. Рассмотрим граф из примера.1. На рис. 7 приведен (п+1) - вершинный сбалансированный граф.

1 шаг. Контур минимальной длины ц1= (7,2,3,7). Его длина 11=3. Определяем циркуляцию величины Дц1) = шт(с72,с23,с37)= 4.

у72 =у23 =у37 = 4. Ее объем равен 12.

граф

2 шаг. Определяем цикл минимальной длины ц2= (7,6,5,7). Его длина 1(ц2)=3. Определяем циркуляцию величины Дц2) = шт(с76,с65,с57)= 1.

у76 =у65 =у57 = 1. Ее объем равен 3.

3 шаг. Определяем цикл минимальной длины ц3= (7,2,3,4,7). Его длина равна 4. Определяем циркуляцию величины Дц3) = т1п(2,3,8,1)= 1.

у72 =у23 =у34 =у47 = 1. Ее объем равен 4.

4 шаг. Определяем цикл минимальной длины ц4= (7,6,5,1,7). Его длина 1(ц4)=4. Определяем циркуляцию величины Дц4) = т1п(2,5,9,3)= 2.

у76 =у65 =у51 =у17 = 2. Ее объем равен 8.

5 шаг. Определяем цикл минимальной длины ц5= (7,2,6,5,1,7). Его длина 1(ц5)=5. Определяем циркуляцию величины Дц5) = т1п(1,4,3,7,1)= 1.

у72 =у26 =у65 =у51 =у17 = 1. Ее объем равен

5.

Получили циркуляцию (см. рис. 7), насыщающие дуги, инцидентные вершине 7, имеющую минимальный объем У = 12+3+4+8+5=32.

Если не учитывать вершины 7, то получена простая схема вексельного обращения с минимальным объемом W0=32-18=14, совпадающим со схемой рис.6.

Оптимизация схем вексельного обращения по сложности

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

Рассмотрим задачу определения простой схемы вексельного обращения минимальной сложности. Будем считать заданной схему весельного обращения минимального объема, задача построения [3] которой была рассмотрена в предыдущем параграфе. Задача заключается в построении эквивалентной простой схемы вексельного обращения с минимальным числом дуг (каждая дуга соответствует одной вексельной операции). Определим двудольный граф в(Х,У) следующим образом. Число вершин п множества Х равно числу векселедателей в простой схеме вексельного обращения, а число вершин т множества У равно числу векселедержателей в этой схеме.

Обозначим а1 - сумму, которую должен оплатить 1-ый векселедатель, Ь] - сумму, которую должен получить ]-ый векселедержатель, О - множество векселедателей, от которых ]-ый векселедержатель согласен иметь векселя, Ш - множество векселедержателей, согласных иметь векселя 1-го векселедателя, ху - сумму, которую должен отдать 1-ый векселедатель ]-му векселедержателю, 1б ОЪ Задача заключается в определении ху > 0, 1б О , ] = 1,т, минимизирующих сложность схемы вексельного обращения

т

Б(х) = Е Е 1[ху] (6)

]=1 1бО

где 1[х]=1, если х>0 и 1[х]=0, если х=0.

При ограничениях

Е ху = Ь , ]=1,т (7)

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

1бО]

Е ху = а1 , 1=1,п (8)

]бШ

Задача (7) - (8) является нелинейной задачей транспортного типа. Опишем алгоритм ее решения, в основе которого лежит метод ветвей и границ.

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

Для этого заменим функцию 1[ху] , где ху < т1п(а1,Ь]) линейной функцией

кЦ ху = ху / тт(ш,Ъ|) (9)

Очевидно, что ку ху < 1[ху] , при ху < т1п(а1,Ь]).

Рассмотрим следующую транспортную задачу: минимизировать

т

К(х) = Е Е ку хЦ (10)

]=1 1бО

при ограничениях (7), (8).

Очевидно, что ее решение дает оценку снизу критерия (6).

Если для всех 1,] имеет место ху =0, либо ху = т1п(а1,Ь]), то оценка является достижимой.

Описание алгоритма.

Определяем ку , 1бО, ]=1,т и решаем транспортную задачу.

Выбираем ху , такое что 0 < ху < тт(а1,1у).

Разбиваем множество решений на два подмножества. В первом подмножестве ху =0, а во втором ху >0.

Получаем нижние оценки для каждого подмножества, решая соответствующие транспортные задачи. При этом для первой задачи (ху =0) берем ку = да, а для второй (ху >0) берем ку =0, ху = т1п(а1,Ь]), Ь]'= Ьу - т1п(а1,Ь]).

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

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

Задача решается в два этапа. На первом этапе делается попытка определить схему вексельного обращения, содержащую вексельные операции только высокой надежности. Для этого определяется сеть, состоящая из (п+т+2) вершин (п векселедателей, т векселедержателей, вход 0 и выход ъ). Вход соединяется с каждой вершиной 1, соответствующей векселедателю 1, дугой (0,1) пропускной способности С01 =а1. Каждая вершина ], соответствующая векселедержателю, соединяется с выходом ъ дугой (],ъ) пропускной способности С]г =Ь]. Наконец, вершина 1 (соответствующая векселедателю 1) соединяется с вершиной ] (соответствующей векселедержателю ]) дугой в том и только том случае, если вексельная операция между векселедателем 1 и векселедержателем ] имеет высокую надежность. В

полученной сети определяется поток максимальной величины. Если этот поток насыщает входные и выходные дуги, то есть величина потока Дх) = Е а1 = Е Ь

1 }

Задача решена, то есть построена вексельная схема максимальной надежности. В противном случае переходим к второму этапу.

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

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

Литература

1.Вагнер Г. Основы исследования операций. М.: Мир, 1972. Т. 1 - 3.

2.Буркова И.В., Михин П.В., Попок М.В., Семенов П.И., Шевченко Л.В. Модели и методы оптимизации планов проектных работ. - М., 2005. 103 с. (Научное издание / Институт проблем управления им. В.А. Трапезникова РАН).

3.Баркалов С.А. Теория и практика календарного планирования в строительстве. - Воронеж, ВГАСА, 1999. - 216 с.

Воронежский государственный архитектурно - строительный университет, Московский университет МВД России

ALGORITHM OF OPTIMIZATION OF SCHEMES OF THE BILL REFERENCE ON COMPLEXITY

S.A. Barkalov, S.A. Puzyrev

Problems of definition of the simple scheme of the bill reference of the minimal complexity and volume consisting in construction of the equivalent simple scheme of the bill reference with the minimal number of arches are considered

Keywords: the analysis, a choice, the project, the coordination

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