![](/user_photo/_userpic.png)
книги из ГПНТБ / Говар В.М. Математическое программирование учеб. пособие
.pdf
|
|
|
|
|
|
- 1 5 0 - |
|
|
|
|
|
} |
|
. A • |
( I - |
Ju ) В =Ь С Ю ; 30; 0; 7; |
0; |
0; |
0) * |
( I - J * |
)> |
||||
'(25;0;0;I7,5; |
15; 0; 0) = (25-15Д. ; 3 |
0 ; |
0; |
17,5 |
- I0.5JL; |
|||||||
15 - I5ck; 0; 0) |
= (X x ; X £ ; X 3 ; Х^; Ц; |
X 6 ; |
при 0 ^ і , ^ |
I |
||||||||
|
При |
t =16 |
максимум функции |
цели находится в выпуклой обо! |
||||||||
лочке вершины В и С, го |
есть |
|
|
|
|
|
|
|||||
Л .В + ( |
I - |
А |
) |
С = А |
. (25;0;0; |
17,5^15;-0; |
0) + ( І - А ) |
|||||
(0; |
0; 0; |
30; |
40; 0; 50) = (25 А ; 0; 0; |
30 - І2 . 5 . Х ; |
40-25.Х; |
|||||||
0; |
50 - 5ОА)= |
|
(Х г ; Х 2 ; Х 3 ; \ ; Ц; |
Х& ; Ху) при 0 < |
|
і. |
- 151 - У^п р а н е н и я
Даны системы ограничений вида ( I ) . Для каждого значения параметра t , изменяющегося на отрезке ( L ; J * ) » найти решение задачи, оптимизирующее значение функции цели вида (2), при усло вии неотрицательности переменных, входящих в систему ограничений
каждой |
задачи. |
|
|
|
|
|
|
|
|
|||
|
|
Пример I . |
|
|
|
|
|
|
|
|||
|
|
2 |
X j + 3 Х 2 |
+ 2,6 х 3 |
|
é |
2900 + 5 t |
у |
||||
(I) |
|
4 |
X j • |
5 Х 2 |
+ 3 |
х 3 |
|
^ |
3500 + 5 t |
, |
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2,4 |
X j + 4 х 2 |
+ 2 |
Х 3 |
^ |
2600 + 4 t |
, |
||||
|
|
8,4 |
|
X j + 4 х 2 |
t 2 |
X j |
<£ |
2750 + 3 ѣ |
, |
|||
|
|
|
|
где |
t |
€ |
(-60; 60]. |
|
|
|||
(2) |
|
= |
+ |
I 6 x 2 + Ш |
3 |
~~* m d x |
|
|||||
|
|
Пример 2 |
|
|
|
|
|
|
|
|||
|
|
2*1 + |
|
7 x 2 . |
5 |
|
29 • |
4 t |
|
, |
|
|
(I) |
|
*l* |
|
x 2 |
^ |
|
|
|
|
|
|
|
|
7Xj + 2x2 |
=z |
29 + 3 t |
|
, |
|
|
|||||
|
|
|
|
|
||||||||
|
|
|
|
|
-é. |
12 + 2 t |
|
, |
|
|
||
|
|
|
|
где' |
t e |
( - 5; 5) . |
|
|
|
|||
(2) |
L(2)'= |
|
2Xj. + |
|
|
m |
l |
n |
|
|
||
|
|
Пример 3 |
|
|
|
|
|
|
|
|||
|
|
3Xj + 2X2 |
4, |
30 + 4 t |
|
, |
|
|
||||
|
- |
4Xj + |
X 2 |
Ä |
|
4 + i |
|
, |
|
|
|
|
(I) |
< |
4Xj + |
x 2 |
? |
|
12+ 3 |
t |
, |
|
|
|
|
|
|
- X j |
|
|
S- |
6 + 2 t |
, |
|
|
|
||
|
|
|
|
ГД® |
te |
( 0; 30) . |
|
|
|
|
|
|
|
|
|
|
- |
152 |
- |
|
|
|
|
|
|
|
|
|
|
(г) |
I |
|
(X) |
|
* |
3xj |
+ |
|
x 2 |
|
—> |
rmn |
|
|
|
|
||||
|
|
|
Пример |
4 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
2 |
Xj |
+ |
1,7 |
x 2 |
+ |
2,1 |
x3 |
+ |
2 |
хч |
|
^ |
125 |
+ |
b t |
, |
|||
CD) h , 5 * l |
+ |
3 |
x 2 |
+ 4 |
x3 |
t |
5 |
x 4 |
|
^ |
210+ |
|
I O t , |
|||||||
|
|
Xj |
+ |
1,1 |
x 2 |
* |
1,3 |
x3 |
+ |
|
Хц. |
^ |
70 |
- |
t |
, |
||||
|
|
где |
|
|
t £ |
( |
- |
2» |
10 ) |
|
|
|
|
|
|
|
||||
(2) |
L |
С » |
|
- |
8Xj + |
8х2 |
+ |
7х3 |
+ |
І0Х4 |
max |
|
|
|||||||
|
|
|
Пример |
5 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
4 |
Xj |
- |
9х 2 |
|
Ä |
18, |
|
|
|
|
|
|
|
|
|
|
|||
|
- |
Xj |
•< |
|
х 2 |
|
^ |
|
3, |
|
|
|
|
|
|
|
|
|
|
|
CD |
2 |
Xj |
+ |
ЗХ2 |
|
^ |
24, |
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||
|
2 |
Xj |
+ |
|
х 2 |
|
•? |
|
9. |
|
|
|
|
|
|
|
|
|
|
|
(2) |
|
L СХ) |
= СЗ + t )Xj |
+ (4 |
+ |
2 t |
) х 2 - |
mux |
|
|
||||||||||
|
|
где |
|
|
t 6 |
|
Cd5 |
) |
|
|
|
|
|
|
|
|
|
|||
|
|
|
Пример fa |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
Xj |
- |
4X2 |
|
|
|
0, |
|
|
|
|
|
|
|
|
|
|
||
(I.) |
2 |
Xj |
+ |
3x2 |
|
:> |
I I , |
|
|
|
|
|
|
|
|
|
|
|||
|
Xj |
+ |
2X2 |
^ |
12, |
|
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||
|
2 |
Xj |
- |
|
x 2 |
|
г |
- I , |
|
|
|
|
|
|
|
|
|
|
||
(2) |
L |
<X> |
* |
(5 |
+ 2 t ) |
Xj + |
(3 |
+ t |
) |
x 2 - ^ |
lT»-n |
|
|
|||||||
|
|
где |
|
t |
e |
|
|
(0; |
6) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
- |
153 |
- |
|
|
|
|
Пример 7 |
|
|
|
|
|
|
|
|
|
|
г- |
2Xj |
|
+ |
х 2 |
|
А. |
|
|
|
(I) |
|
|
|
|
х 2 |
|
4- |
10, |
|
|
|
|
х 2 |
|
- |
2х2 |
|
^_ |
|
|
|
|
{ |
X I |
|
+ |
2х2 |
|
|
|
8, |
|
(2) |
(X) |
= |
(3 |
- |
2 t ; |
Х І |
+ |
(4 |
t t ) |
|
|
где |
|
t e |
(-1; |
I ] |
|
|
|
|
|
|
Пример S |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
4 |
1 5 , |
|
|
|
|
2xT |
|
|
x 2 |
.-5- |
°' |
|
|
||
|
|
|
|
|
|
|
||||
|
|
|
- |
|
2Xj |
^ |
|
b, |
|
|
|
|
|
|
|
2x0 |
|
10, |
|
|
|
(2) |
L (X) |
= |
( |
2 |
+1) |
xj |
+ |
(3 |
+ 3 Ѣ ; |
«ІПі П , |
|
где |
t<? |
( 0 ; Ю ) |
|
|
|
|
-20-ЗП0
-154 -
§іо. ДИСКРЕТНОЕ ПРСГТАММЕРОЬШЕ
Дискретное программирование - один из наиболее молодых, |
|||
перспективных и бурно развивающихся разделов |
математического |
||
программирования. Методами дискретного программирования могут |
|||
быть решены такие задачи, как, например, задачи планирования |
|||
перевозок, задачи |
размещения и специализации |
производства,задачи |
|
теории расписаний, |
задачи |
о наилучшем распределении памяти ЭВМ |
|
и т . д . |
|
|
|
Наиболее изученными |
задачами этого класса является целочис |
ленные задачи линейного программирования, то есть задачи линей ного программирования, в которых на переменные наложены дополни
тельные |
требования неотрицательности. |
|
|
|
|
|||||
Запишем общую задачу целочисленного линейного программиро |
||||||||||
вания |
|
|
|
|
п |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Найти (10.1) I |
(X) = 1_ С |
X,—» mùx |
(или |
rnwi |
) |
||||
при следующих ограничениях: |
1 |
|
|
|
|
|
|
|||
(10.2) |
TZ |
х^ é |
Ü-L |
, |
где |
L = 1,2, |
m |
, |
|
|
(10.3) |
x j , è |
о |
|
, |
где y |
= 1,2, |
n , |
|
|
|
(10.4) |
х^ |
- целое |
|
, |
где |
j_ |
= 1,2, |
. . . . n, |
( n, |
n ] |
|
В том случае, когда условия целочисленности наложены на |
|
все |
переменные, мы имеем дело с полностью целочисленной задачей |
|
линейного программирования, при этом |
Й = п когда не требова |
|
ния |
целочисленности наложены на отдельные переменные - с частич |
|
н о |
целочисленной задачей линейного программирования, при этом |
|
я, |
^ п . |
|
|
Если в системе ограничений (10.2) |
среди коэффициентов ил |
-155-
и BJ_ есть дробные числа, іо каждое неравенство или уравнение
с дробньии коэффициентами можно привести к общему знаменателю и затем обе части неравенства или уравнения умножить на этст об
щий знаменатель, тогда все коэффициенты при неизвестных, а так
же свободные члены станут целыми. Поэтому, не нарушая общности рассуждений, можно предполагать все коэффициенты системы СIP•2) целыми числами.
Целочисленное линейное программирование находит широкое применение в экономике, так как зачастую по самому смыслу эко номической задачи требуется, чтобы ее решение было целочислен ным. Таковой является и общая задача производственного планиро вания при определении номенклатуры выпуска неделимых видов продукции.
Методы последовательного улучшения плана и последователь ного уточнения оценок приводят к целочисленному решению лишь для немногих задач. Округление полученных'нецелочисленных-реше ния часто не приводит к желаемому результату, так как получен ный при этом план монет не удовлетворить исходной системе огра ничений.
Б общем случае для отыскания оптимального целочисленного решения задачи линейного программирования требуются специальные методы. Они заключаются в подборе дополнительных линейных ограни чений к обычным ограничениям задачи линейного программирования, обеспечивающих целочисленность решения.
Одним из таких методов, приводящих к целочисленному решению за конечное число итераций, является метод, предложенный амери канским математиком Гомори.
|
|
|
- |
|
156 |
- |
|
|
|
|
|
|
Определение. |
|
|
|
|
|
|
|
|
|
|||
Каждое число X моино единственным способом разложить на |
||||||||||||
два слагаемых |
|
|
|
|
|
|
|
|
|
|
||
(10.5) |
|
X =[ |
X ] |
+ <{ X } , |
|
|
|
|
|
|||
где £ X J - наибольшее |
целое |
число, |
непревосходящее |
^ |
, а |
|||||||
{ х } |
- |
дробная часть |
|
числа |
X |
, |
удовлетворяющая |
условию |
||||
Например, |
£ 5 , 6 ] |
= 5 , |
.( |
Ъ,ьу |
= 0 , 6 , |
|
|
|||||
|
|
|
[ - 4 , 3 ] |
= |
- 5 , |
< - 4 , 3 } |
= |
0,7 . |
|
|
||
Рассмотрим |
алгоритм Гомори для решения полностью целочис |
|||||||||||
ленной |
задачи линейного |
программирования, |
то есть задачи |
( 1 0 . I ) - |
||||||||
- ( 1 0 . 4 ) . |
Этот |
алгоритм |
основан |
на теореме, позволяющей |
"отсекать |
|||||||
оптимальный нецелочисленный оперный план задачи линейного про |
||||||||||||
граммирования, |
не "отсекая" |
ни одного целочисленного |
плана. Если |
найденный оптимальный план не является целочисленным, то состав ляется дополнительное линейное ограничение, которому удовлетво
ряет любое |
целочисленное решение из допустимого множества планов, |
но заведомо |
не удовлетворяет полученное. После введения этого |
ограничения в задачу план становится недопустимым, и решение опять продолжается до получения оптимума.
Алгоритм Гомори-
I . Методами последовательного улучшения плана или последо
вательного уточнения оценен решаем задачу линейного программиро
вания вида |
( 1 0 . I ) - |
( 1 0 . 3 ) |
до |
получения |
оптимального |
решения на |
|
"к"-ой и іерации. |
|
|
|
|
|
|
|
Если |
полученные |
при этом |
свободные |
члени B J ( K ) , |
В ^ ^ ^ , . . , , |
||
в , , . ^ , С о ^ - целые, то найденное решение |
яиляегся |
и онтималь- |
|||||
ным планом |
исходной |
задачи |
( І 0 . І ) - ( І 0 . 4 ) . |
Если не среди чисел |
|
- |
157 |
- |
|
ijM, |
, . . . , в,п^к ^ |
есіь |
нецелые, |
то переходим ко второму |
іункіу |
алгоритма. |
|
|
|
2. |
Пусть нецелым является в> |
югда окаймляем симплѳк- |
|:ную таблицу с полученным оптимальным, но нецелочисленным реше
нием, |
строкой |
|
|
(к), |
|
|
|
|
|
|
|
|
|
lfio.6) |
УІ = |
n |
у |
-J |
Чі |
"іг |
и единичным |
столбцом |
вп + т + \ |
• -В (Ю.6) |
является неотри |
||
цательной целочисленной |
переменной. |
|
îОчевидно, что после этого симплексная таблица перестает
[быгь допустимой. |
|
|
і |
|
|
i |
3- Условимся называть |
большой итерацией последовательность |
i |
|
|
'преобразований, необходимых |
либо для получения из имеющейся оп |
тимальной таблицы с нецелочисленным решением последующей опти мальной таблицы, либо для выявления несовместности исходных огра
ничений вида (I0.2J.- |
|
|
|
|
|
||
! |
Последовательно |
преобразуем |
симплексную таблицу, полученную |
||||
I |
|
|
|
|
|
|
|
после |
окаймления |
ее |
строкой |
У- |
и столбцом |
Cnrrnt-i |
методом |
последовательного |
уточнения |
оценок до тех |
пор, пока эта |
таблица |
не станет опять допустимой или не выявится несовместность исход
ных ограничений, то есть выполняем большую итерацию. |
При этом |
на первом шаге большой итерации из базиса обязательно |
выводиі- |
ся у { Если после проведения большой итерации полученный оптималь
ный план является целочисленным, то и задача .(Ю«І) - (Ю.ч) ре шена. Если хе оптимальный план является нѳцелочиеденным и не об наруживается неразрешимость задачи из-за несовместности условий, то вновь переходим ко второму пункту адгориіма.
|
|
|
|
- |
158 |
- |
|
|
Процесс повторяется либо до получения оптимального целочиі |
||||||
ленного |
решения, |
либо до выявления несовместности исходных огр] |
|||||
ничений. |
|
|
|
|
|
|
|
|
Примечания ко второму пункту алгоритма: |
|
|||||
а) |
Если все в ^ к ^ - целые, |
a С о ^ - нецелое число, то к таб |
|||||
лице приписываем |
вместо |
У^ |
строку Уо, то есть |
|
|||
СЮ.7) |
Уо = - { |
СоС")} |
- |
( - . { C j M y x j . - { C 2 |
W } х 2 |
||
- |
j C n ^ J - Хп^ |
, |
где Уо имеет неотрицательное |
целочисленное |
|||
значение; |
|
|
|
|
|
||
б) |
В этом случае, |
когда |
в оптимальном нецелоаисленном плане иыі |
||||
ется несколько |
дробных |
свободных членов, то выбор числа і для |
введения соответствующего "отсекающего" неравенства (10.8) или
(10.9), |
где |
|
|
|
(10.8) |
{*Ц(К)} h * {аіг}*2+ |
~- |
+ |
{ аЩ± |
(10.9) |
{Ст ("> ] Х т + { С 2 ^ } х 2 |
+ . . . |
+ |
{ С л ( к ) ^ { С о ( К ) } , |
можно производить различными способами. С этим выбором связан
обьем вычислений, необходимый до получения оптимального целочис ленного плана. Однако накопленный к настоящему времени опыт при
мѳнѳния алгоритма не позволяет с уверенностью рекомендовать луч •им какое-либо единственное правило. Известны примеры небольших
задач, для решения которых необходимо выполнение многочисленных больших итераций. Наряду с этим встречались задачи большой раз
мерности, анализ которых потребовал сравнительно небольшой вы числительной работы. Если в линейном программировании наблюда ется относительно жесткая зависимость между размерностью задачи
• количеством итераций необходимых для ее решения, то для цело численных задач такой зависимости нет. Можно предполагать, что
![](/html/65386/283/html_JtCUHitExz.rPDu/htmlconvd-3MTsSa160x1.jpg)
- 159 -
родолжительность решения целочислѳнно.й задачи определяется не юлько ее размерностью, но и более юнкими структурными особвн-
іостями |
многогранника ограничений, |
связанными с |
расположением |
|||
j нем целочисленных точек. Выявление таких |
особенностей пред- |
|||||
зтавляет |
большой теоретический и практический интерес, |
поэтому |
||||
для первоначального ознакомления можно рекомендовать выбор | |
||||||
либо |
как |
минимального номера, для |
которого |
в ^ к ^ |
- нецелое, либо |
|
номер |
і |
выбирается для свободного |
члена с |
наибольшей |
дробной |
|
частью. |
|
|
|
|
|
|
Примечания к третьему пункту алгоритма |
|
|
|
|||
а) Признаком отсутствия целочисленного решения служит |
появление |
в симплексной таблице хотя бы одной строки с дробным свободным
членом и целыми остальными коэффициентами, так как в этом случив соответствующее уравнение не имеет решения в целых числах; б) Если дополнительная переменная Ук является свободной для не
которого промежуточного решения, то уравнение Ук = 0 входит л число ограничений, определяющих это решение. Как только пѳрѳмвм»
ная Ук вновь вводится |
в базис, |
то ее значение оказывается бел- |
|
различным для основных переменных задачи, |
поэтому строка и сіол- |
||
бец соответствующие Ук, могут |
быть вычеркнуты при дальнѳйаѳм |
||
решении. |
|
|
|
При решении задач |
целочисленного линейного программировано |
||
в симплексных таблицах |
индексную строку, соответствующую коэффв- |
||
циентам функции цели, |
удобнее |
записывать |
в верху таблицы. |