Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

korobov

.pdf
Скачиваний:
13
Добавлен:
15.03.2015
Размер:
2.85 Mб
Скачать

221

Для построения контура допустимой области следует приравнять нулю функции gi(x1;x2) (6.14) и построить соответствующие нулевые линии уровня этих функций. Нулевые линии уровня g2(x1;x2) и g2(x1;x2) являются прямыми, способ построения их элементарен и поэтому не требует пояснений.

Нулевая линия уровня g1(x1;x2) = 0 — кривая. Для построения ее достаточно вычислить координаты трех-четырех точек этой кривой и провести с помощью лекала эту линию (рис. 6.6). В произвольных точках этих линий следует построить соответствующие градиенты и после этого заштриховать допустимую область, которая вполне определится (см. рис. 6.6).

Далее, задаваясь произвольным значением линейной целевой функции (6.11), например, равным 100, строим соответствующую прямую уровня (см. рис. 6.6). Затем по градиенту f определяем направление возрастания этой функции и строим допустимую линию уровня, соответствующую максимуму функции (6.11), которая проходит через точку М пересечения граничных линий g2(x1;x2)=0; g1(x1;x2)=0. Эта линия уровня не рассчитывается, а строится параллельным переносом линии уровня 4x1 + 5x2=100 в направлении вектора f, так как линии уровня всякой линейной функции параллельны. Координаты точки М, которая является пересечением кривой линии g1(x1;x2)=0. с прямой g2(x1;x2)=0, являются оптимальным планом задачи.

Для вычисления координат оптимальной точки М следует решит нелинейную систему уравнений:

(3 − 0,045x1 )x1

+

(4 − 0,071x2 )x2

80,

 

 

 

 

x1

+

 

5x2

 

 

 

(6.15)

 

 

125.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Неотрицательное

решение

этой

системы: .x1=10; x2=23. Таким

o6разом,

для

х1

 

g2

f(M)

 

 

 

 

 

maxf(x1x2)

 

 

 

 

 

 

g1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

g2(x1,x2)=0

 

 

 

 

 

 

 

25

 

 

 

 

g1(N)

 

 

 

20

 

N1

 

 

ϕ (N)

 

 

 

 

 

ϕ

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

N

 

 

maxϕ(x1,x2)

 

 

15

 

 

 

 

 

 

 

 

 

 

 

 

g1(x1,x2)=0

 

 

 

 

 

D

 

 

 

 

 

 

f(x1x2)=100

 

 

 

 

 

 

 

10

 

 

 

 

 

 

ϕ(x1,x2)=80

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

f

 

g3

 

5

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

g3(x1,x2)=0

 

0

5

10

 

15

20

25

30

 

 

 

 

x1

 

 

 

 

 

Рис.6.6

 

 

 

 

222

обеспечения максимальной прибыли необходимо производить 10 единиц продукции вида PI и 23 единицы продукции вида Р2 При этом максимальная прибыль составит:

maxf(M) =4 10 + 5 23=155 денежных единиц.

 

Теперь изменим условия задачи. Представим

себе, что целевая функция нелинейна

и имеет следующий вид:

 

ϕ = (x1, х2) = (4 — 0,100x1)x1 + (5 — 0,126x22.

(6.16)

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

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

непроизводительных

затрат, связанных с

дальнейшим увеличением выпуска

продукции (расходы

по

хранению,

местной

транспортировки и т. д.). Задаваясь

произвольным значением

функции

(6.16), например числом 80, строим

соответствующую линию

уровня этой

функции (см. рис. 6.6). Вычисляем градиент

функции (6.16):

 

 

 

 

 

 

 

 

 

ϕ

 

ϕ

 

 

 

ϕ (x1

, x2 )=

,

 

= (4 − 0,200x1,5 − 0,252x2 ).

(6.17)

∂x

∂x

 

 

 

 

2

 

 

 

 

 

1

 

 

 

 

 

Построение ϕ в произвольной точке кривой ϕ (x1, x2) =80 показывает, что целевая функция (6.16) в допустимой области монотонно возрастает. Из рисунка ясно видно, что допустимая линия уровня, соответствующая максимуму этой функции, должна соприкасаться с граничной линией g1(x1;x2)=0 в некоторой точке N, в которой градиентыϕ (N) и g1(N) имеют одинаковое направление. Следовательно, координаты точки N должны удовлетворять нелинейной системе уравнений (6.10), которая для данного

примера будет иметь следующий вид:

 

4—0,200x1= λ(3— 0,090x1),

 

5— 0,252x2= λ (4—0,142x2),

(6.18)

(3 — 0,045x1)x1 + (4 — 0,071x2) x2 = 80.

 

Неотрицательное решение этой системы

 

x1=12,8; x2=17,9

является оптимальным планом выпуска продукции P1 и Р2 с нелинейной целевой функцией (6.16), при этом максимальная прибыль составляет:

maxϕ(x1, x2) = ϕ(12,8; 17,9) ≈ 84

денежных единиц.

 

Снова несколько изменим

условия задачи. Представим

себе, что целевая

функция имеет вид:

 

 

ψ( x1, x2) = (4 — 0,125 x1) x1 + (5 — 0,250x2)x2.

(6.19)

Эта функция отличается от функции (6.16) только тем, что прибыль на единицу продукции уменьшается с увеличением количества ее быстрее, чем в предыдущем случае. Вычислим градиент этой функции

 

ψ

 

ψ

 

 

 

ψ (x1, x2 )=

,

 

= (4 − 0,25x1;5 − 0,50x2 ).

(6.20)

∂x

∂x

 

 

 

2

 

 

 

 

1

 

 

 

 

 

Приравняем составляющие градиента нулю

 

4 — 0,25x1= 0,

 

 

 

 

 

 

 

5 — 0,50x2= 0.

 

 

 

 

 

 

(6.21)

Решением этой системы является внутренняя точка D допустимой области (см. рис. 6.6) с координатами x1=16; x2=10. Эта точка и будет оптимальным планом выпуска продукции видов P1 и Р2, при этом

maxψ(x1, x2) = ψ(16,10) = 57 денежных единиц.

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

223

линейном программировании допустимая область всегда является выпуклым многоугольником. Область называется выпуклой, если любой отрезок, соединяющий две точки области, целиком принадлежит этой области. В нелинейном программировании допустимая область может быть и не выпуклой. На рис. 6.6 криволинейный заштрихованный пятиугольник не выпуклый. Например, любой отрезок, соединяющий две точки граничной кривой g1(x1, x2)=0, не будет принадлежать области (кроме его концов). В линейном программировании экстремум целевой функции может достигаться только на границе допустимой области. В нелинейном же программировании он может достигаться и во внутренних точках области (см. рис. 6.6, точка D).

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

Ми N ) .

6.2.Понятие о классических методах оптимизации

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

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

Классические методы оптимизации применяются преимущественно по отношению к гладким функциям.

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

Функцию от п переменных х1, x2, ..., хп мы будем обозначать кратко через f(X), где X=(х1, x2, ..., хп) вектор или точка n-мерного пространства.

Говорят, что функция f(X) достигает локального максимума в точке Х0, если

f(X)≤.f(X0) для любой точки X из сколь угодно малой окрестности точки Х0. Аналогично определяется локальный минимум функции f(X) в точке Х0. В окрестности этой точки должно быть f(X)≥f(X0 ).

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

Для объединения понятий максимума и минимума употребляется слово экстремум. Классическая теория экстремума не указывает на конкретные способы отыскания

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

Если локальный экстремум достигается в некоторой внутренней точке Х0 области, то в этой точке градиент функции равен нулю f(X0) = 0. Обратное утверждение не всегда

224

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

При решении экстремальных задач нас, конечно, интересует нахождение абсолютного экстремума.

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

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

следующем.

 

 

 

 

 

Надо составить систему уравнений

 

f (X ) = 0,

f (X ) = 0,...,

f (X ) = 0.

(6.22)

x

x

2

x

n

 

1

 

 

 

Решения системы (6.22)

называются стационарными

точками функции f(X).

Далее следует найти все стационарные точки и вычислить значения функции f(X) в этих стационарных точках. Оптимальным решением задачи является та стационарная точка, в которой функция имеет наибольшее значение в случае задачи максимизации и наименьшее значение при минимизации функции.

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

 

 

Требуется найти числа х 0

0 ,…,x

0

, без ограничений их по знаку, при которых

 

 

 

1

2

n

 

 

заданная функция

 

 

 

 

 

 

Z=f(X)

 

 

 

(6.23)

принимает

наибольшее (наименьшее)

 

значение,

при условии, что точка X0=

0

0

,…,x

0 ) удовлетворяет неопределенной системе уравнений

1

2

 

n

 

 

 

 

 

 

g1(X)=0; g2(X)=0;…, gm(X)=0,

 

 

 

(6.24)

вообще говоря, нелинейной. Экстремум функции (6.23) при условиях (6.24) называется относительным экстремумом. Как уже говорилось выше, все функции f(X), gi(X) от X=(x1,

x2, . . ., хп) считаются гладкими.

Если точка Х0 является некоторой точкой локального экстремума функции (6.23) и если в этой точке градиенты g1(X0), g2(X0),…, gm(X0) линейно независимы, то в этой

точке имеет место соотношение:

 

f(X0) = λ1 g1(X0) +λ2 g2(X0)+…+ +λm gm(X0),

(6.25)

где коэффициенты λ1,λ2,…, λm – действительные числа.

Таким образом, всякая точка локального минимума функции (6.23) должна удовлетворять системе, состоящей из п уравнений вида:

f (X )

= λ 1

g1

(X )

+ λ 2

g2

(X )

+ ...+ λ m

gm (X )

 

 

 

 

 

 

 

 

,

 

x1

x1

x1

x1

 

 

 

 

 

 

f (X )

= λ 1

g1

(X )

+ λ 2

g2

(X )

+ ...+ λ m

gm (X )

 

 

 

 

 

 

 

 

,

 

x2

x2

x2

x2

(6.26)

 

 

 

 

..............................................................................

 

 

 

 

 

 

 

 

 

 

 

 

 

 

f (X )

= λ 1

g1

(X )

+ λ 2

g2

(X )

+ ...+ λ m

gm (X )

 

 

 

 

 

 

 

 

 

xn

xn

xn

xn

 

 

 

 

 

 

и m уравнений (6.24), представляющих условия задачи. Итак, мы имеем систему п + m уравнений (6.24) — (6.26) с п+m неизвестными x1, x2, . . ., хп, λ1,λ2,…, λm. Условия (6.24) — (6.26) являются только необходимыми, но недостаточными условиями локального

225

экстремума функции (6.23) при условиях (6.24). Это значит, что могут существовать точки, которые являются решениями системы (6.24) — (6.26), но в них функция (6.23) не будет иметь относительного локального экстремума. Поэтому для определения абсолютного экстремума целевой функции необходимо найти все решения системы (6.24)

— (6.26), затем подсчитать значения функции (6.23) для каждого из этих решений и выбрать среди них то, которое дает наибольшее (наименьшее) значение. Числа λi, которые не обязательно находить, называются множителями Лагранжа, а описанный метод нахождения относительного экстремума получил название метода множителей

Лагранжа.

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

К сожалению, не существует вычислительного метода для получения всех решений любых нелинейных систем, поэтому практическое применение классических методов оптимизации оказывается полезным лишь в случае, когда система имеет единственное решение. Это условие выполняется при минимизации выпуклых функций и максимизации вогнутых функций. Прежде чем дать определение выпуклой и вогнутой функции, уясним понятие выпуклого множества точек X=(x1, x2, . . ., хп) в n-мерном эвклидовом1 пространстве.

Всякая точка Х отрезка, соединяющего точки Х1, Х2, выражается через эти точки следующим образом:

X = (1λ)X1 + λX 2 (0 λ 1).

(6.27)

Каждой точке отрезка соответствует определенное значение λ, заключенное между нулем и единицей. Выражение (6.27) называется выпуклой комбинацией точек

Х1, Х2.

Множество точек называется выпуклым, если оно содержит любую выпуклую комбинацию любых двух точек Х1 и Х2 из этого множества. Таким образом, выпуклое множество содержит отрезок, соединяющий любые две точки из этого множества.

Определение выпуклой и вогнутой функции имеет смысл только тогда, когда она задана на выпуклом множестве.

Функция f(X), заданная на выпуклом множестве, называется выпуклой, если для любых двух точек Х1 и Х2 этого множества и любого λ, заключенного между нулем и единицей (0≤λ≤1),значения функции от выпуклой комбинации Х = (1-λ)X1+λX2 не превосходит выпуклую комбинацию значений функции в точках X1 и Х2 при том же значении λ. Сказанное выражается в виде следующего неравенства:

f [(1λ )X1 + λ X 2 ](1λ ) f (X1 ) + λ f (X 2 ).

(6.28)

Аналогичным образом определяется вогнутая функция. Функция f(X), заданная на выпуклом множестве, называется вогнутой, если для любых двух точек Х1 и Х2 этого множества и любого λ 0≤λ≤1

f [(1λ )X1 + λ X 2 ](1λ ) f (X1 ) + λ f (X 2 ).

(6.29)

Если умножить обе части неравенства (6.28) на — 1, то оно превратится в неравенство вида (6.29). Из этого следует, что если f(X) — выпуклая функция, то — f(X) — вогнутая, и наоборот.

Если неравенства (6.28) или (6.29) выполняются на всем выпуклом множестве как строгие неравенства со знаками < или >, то функция называется строго выпуклой или

строго вогнутой.

226

Линейная функция

 

Z = c1x1 + c2x2 + . . . + спхп

(6.30)

является выпуклой (и вогнутой) на всем эвклидовом пространстве однако линейная функция не является ни строго выпуклой, ни строго вогнутой. Это значит, что условия (6.28) и (6.29) выполняются для линейной функции только со знаками равенства.

Сумма выпуклых (вогнутых) функций есть выпуклая (вогнутая) функция.

Существуют дифференциальные признаки выпуклости и вогнутости гладких функций. Эти признаки являются простыми только для функций одной и двух переменных.

 

1 n-мерное пространство называется

эвклидовым, если расстояние между двумя точками

 

X '=(x ' , x

'

, . . ., х ' ) и X ''=(x '' , x

'' , . . ., х '' )

 

определяется следующим образом

1

2

 

 

 

n

 

 

1

2

 

 

 

n

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

= n (x''j

− x'j )2

 

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

X ''−X '

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

j=1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Функция f (x ) одной переменной

х

является

 

выпуклой на

отрезке [a,b], если в

любой точке этого отрезка f ''(x)≥0.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Функция f(x1, x2) двух переменных x1, x2, заданная на выпуклом множестве ω

плоскости x10x2, является выпуклой, если в любой точке множества ω

 

 

 

 

 

 

 

2 f (x1, x2 )

 

 

 

 

2 f (x1 , x2 )

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

≥ 0

 

 

 

 

 

 

 

≥ 0

 

 

 

 

 

 

 

 

 

2

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

или

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

∂x1

 

 

 

 

 

 

∂x2

 

 

 

 

 

 

 

 

 

 

 

и

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(6.31)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2 f (x1, x2 ) 2 f (x1 , x2 )

 

2 f (x1

, x2 )

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

∂x2

 

∂x2

 

 

 

∂x ∂x

 

 

 

≥ 0.

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

1

 

 

 

2

 

 

 

 

1

 

 

 

 

 

 

 

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

f"(x)≤0,

2 f (x , x

2

)

≤ 0 и

2 f (x , x

2

)

≤ 0.

1

 

 

 

1

 

 

∂x2

 

 

 

∂x

2

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

2

 

 

 

 

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

Любой локальный минимум выпуклой функции является ее абсолютным минимумом. Абсолютный минимум строго выпуклой функции достигается в единственной

точке выпуклого множества, на котором она задана.

Точка минимума выпуклой функции f(X) является одновременно точкой максимума вогнутой функции - f(X). Поэтому все, что сказано в отношении к минимуму выпуклой функции, справедливо по отношению к максимуму вогнутой функции.

Ценой увеличения расчетов можно oбoбщить метод множителей Лагранжа на случай, когда переменные ограничены. Такой случай рассмотрим на конкретном примере.

227

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

f j (x j ) = (a j k j x j )x j ,

где aj>0, kj>0 — постоянные коэффициенты.

Известны также производственные мощности Mj предприятий Пj.

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

Математическая модель этой задачи будет следующей. Требуется найти абсолютный максимум целевой функции

 

n

 

 

 

 

 

 

 

 

 

 

f (X ) = (a j

k j xj )xj

 

 

 

 

 

(6.32)

 

j=1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

n

 

 

 

 

 

 

 

при условиях:

 

xj = N;

0 xj

M j .

 

(6.33)

 

 

 

 

j=1

 

 

 

 

 

 

 

Конкретизируем задачу. Пусть n =5; N=1000. Параметры aj, kj и Mj заданы в табл.

6.2.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Т а б . 6.2

 

Наименова-

 

 

 

Предприятия

 

 

 

 

ние

 

 

 

 

 

 

 

 

 

 

 

 

 

П1

П2

 

П3

 

П4

П5

 

 

параметров

 

 

 

 

 

aj

 

 

20

18

 

22

 

19

21

 

 

 

 

 

 

 

 

 

 

 

 

 

 

kj

 

 

0,020

0,015

 

0,022

 

0,018

0,016

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Mj

 

 

250

260

 

240

 

270

200

 

 

 

 

 

 

 

 

 

 

Определим тип целевой функции (6.32). Вторая

производная по хj от каждого

слагаемого этой функции

 

 

 

 

 

 

 

 

 

[(a j k j xj )xj ]''= −2k j < 0.

Поэтому функция (6.32) является строго вогнутой функцией, как сумма строго вогнутых функций, во всем n-мерном пространcтве. Эта функция имеет единственный максимум на любом выпуклом множестве точек Х= (x1, x2, ..., хп), в частности на выпуклом множестве, определяемом линейными ограничениями (6.33).

На первом этапе решим задачу (6.32) — (6.33) при отсутствии ограничений 0xjMj. Точка максимума f(X) должна определиться по методу множителей Лагранжа, как результат решения системы уравнений

f (X ) = λ

g(X ), ( j = 1,2,...,n); g(X ) = 0

(6.34)

xj

xj

 

При условиях нашей задачи получаем:

a j

2k j

xj = λ, ( j = 1,2,3,4,5),

x1 + x2 + x3 + x4 + x5 = N.

 

 

Находим

 

 

 

 

 

 

x

 

=

a j

λ

, (j = 1,2,3,4,5)

 

j

 

 

 

 

 

2k j

 

 

 

 

 

и, подставляя его в последнее уравнение системы (6.35),получаем

5

a j

5

1

 

 

λ

 

= 2N

k j

k j

j=1

j=1

 

и из последнего соотношения находим выражение множителя Лагранжа

 

5

a

 

 

 

 

 

 

 

j

 

2N

 

 

k j

 

λ =

j=1

 

 

 

.

 

 

 

 

 

 

 

5

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

k j

 

 

 

j=1

 

 

228

(6.35)

(6.36)

(6.37)

Затем, подставляя значение λ (6.37) в выражения (6.36), получаем все значения xj, при которых функция (6.32) имеет абсолютный максимум.

Произведя указанные расчеты по формулам (6.37) и (6.36), получаем: λ=12,734; x1=181,6; x2=175,6; x3=210,6; x4=174,1; x5=258,3.

Все значения xj получились положительными, но значение х5 = 258,3 получилось больше мощности предприятия П5 M5=200. Зафиксируем значение x5 = 200 и найдем максимум функции (6.32) при условии

x1+ x2+ x3+ x4 = 800,

точно таким же образом, как на первом этапе, по формулам (6.37) и (6.36) при N=800 и n=4. В результате расчета получаем на втором этапе:

λ =12,198; x1= 195,0; x2 = 193,4; х3 = 222,8;

x4=188,8.

Полученные значения неизвестных условиям задачи (6.32), (6.33) удовлетворяют. Таким образом, имеем оптимальное распределение (с округлением до единицы) заказа между предприятиями

x1= 195;

x2 = 193;

х3 = 223; x4=189,

x5=200.

При этом максимальный доход составляет maxf(X)=16375.

6.3. Задача сепарабельного программирования

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

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

Табл.6.3

Наименование

Предприятия

229

параметров

П1

П2

П3

аj

25

15

20

kj

0,05

0,01

0,02

 

 

 

 

Mj

200

350

150

В качестве переменных x1, x2, x3, приняты искомые величины объема производства продукции каждого вида в тысячах единиц. Функция, отражающая суммарную прибыль от реализации продукции всех видов, имеет вид :

 

 

2

 

 

 

2

 

 

 

 

1

 

2

 

 

f (X ) = (6x

3x

 

) + (4x

 

2x

 

) +

2x

 

 

x

 

.

(6.38)

 

 

 

 

 

 

1

1

 

2

 

2

 

 

3

 

3

 

3

 

 

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

x1 + 2x2 + x3 4;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(6.39)

 

x1 0; x2 0; x3 0.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Итак, требуется максимизировать функцию (6.38) при условиях (6.39).

 

1Подготовлен к публикации А.Б.Ловковым.

 

 

 

 

 

Пусть сетка точек для х1 и х2 имеет вид (0; 0,4; 0,7; 1), а для х3 - (0; 1; 1,5; 2;

3), так

что

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x1

= 0y1 + 0,4y2

+ 0,7y3 +1y4 ;

 

 

 

 

 

 

 

 

 

 

x2

= 0y5 + 0,4y6

+ 0,7y7

+1y8 ;

 

 

 

 

 

 

 

 

(6.40)

 

x3

= 0y9 +1y10

+1,5y11 + 2y12

+ 3y13.

 

 

 

 

 

 

 

 

 

Тогда ограничения сепарабельной модели можно записать в виде:

 

0y

1

+ 0,4y

2

+ 0,7y

3

+1y

4

+ 0y

5

+ 0,8y

6

+1,4y

7

+ 2y

8

+

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

+ 0y9

+1y10

+1,5y11 + 2y12

+ 3y13 4,

 

 

 

 

 

 

 

 

 

y1 + y2 + y3 + y4 = 1,

 

 

 

 

 

 

 

 

 

 

 

 

(6.41)

 

y5 + y6 + y7 + y8 = 1,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

y9 + y10 + y11 + y12 + y13 = 1,

 

 

 

 

 

 

 

 

 

 

 

y , y

 

,..., y

 

0.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

13

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Целевая функция сепарабельной модели примет вид:

 

 

g(Y) = 0y1 +1,92y2

+ 2,73y3 + 3,00y4

+ 0y5

+1,28y6

+1,82y7 +

(6.42)

 

+ 2,00y8 + 0y9

+1,67y10 + 2,25y11 + 2,67y12

+ 3,00y13 max.

 

 

 

Оптимальным

решением

является

 

следующий

 

набор переменных: y4=1,

y7=1,

y11=0,8,

 

 

 

y13=0,2,

 

которому

соответствует

значение целевой

функции 7,15. Это

эквивалентно значениям х1=1,

х2=0,7, х3=0,8 1,5+0,2 2=1,6 и значению целевой функции

(6.38), равному 7,17. В то же время, следует указать на то, что точное оптимальное решение имеет вид х1=0,875, х2=0,625, х3=1,875 со значением (6.38) равным 7,25. Как видно, решение, полученное методами сепарабельного программирования, находится достаточно близко от точного решения.

230

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

f (Y) = (0,05x

0,00005x2 )+ (0,04x

2

0,00005x

2 ).

(6.43)

 

 

1

1

 

2

 

Система ограничений имеет вид:

 

 

 

 

2x1

+ 3x2

950,

 

 

 

 

4x1

+ 2x2

800,

 

 

 

(6.44)

 

x1

70,

 

 

 

 

 

 

 

 

 

 

x2 150.

Это означает, что используются два вида ресурсов, и объем выпуска продукции первого вида ограничен сверху, а второго вида - снизу.

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

Таким образом, необходимо минимизировать целевую функцию (6.43) при условиях (6.44)

Пусть сетка точек для х1 и х2 имеет вид (0; 50; 125; 170; 200).

С целью линеаризации функцию (6.43) удобно представить в виде суммы двух функций одного аргумента

f (x1, x2 ) = f1 (x1 ) + f2 (x2 ),

(6.45)

где

f1 (x1 ) = 0,05x1 0,00005x12 ;

f2 (x2 ) = 0,04x2 0,00005x22 .

Расчет коэффициентов Fk приведен в табл.6.4

Табл.6.4

Хk

 

Xk+1

Xk+1- Хk

 

f(Xk)

f(Xk+1)

f(Xk+1)- f(Xk)

Fk

 

 

 

0

 

50

50

 

0

2,4

2,4

0,0480

 

 

 

50

 

125

75

 

2,4

5,5

3,1

0,0413

 

 

 

 

 

 

f1(X)

 

125

 

170

45

 

5,5

7,1

1,6

0,0356

 

 

 

 

 

 

 

 

 

 

 

 

170

 

200

30

 

7,1

8,0

0,9

0,0300

 

 

 

0

 

50

50

 

0

1,9

1,9

0,0380

 

 

 

50

 

125

75

 

1,9

4,2

2,3

0,0307

 

F2(X)

125

 

170

45

 

4,2

5,4

1,2

0,0267

 

 

 

 

 

 

170

 

200

30

 

5,4

6

0,6

0,0200

 

 

 

 

Представим х1 и х2 в виде сумм

 

 

 

 

 

 

 

x1 = z1 + z2 + z3 + z4

;

 

 

 

 

(6.46)

 

 

x2 = z5 + z6 + z7 + z8 ,

 

 

 

 

 

 

 

 

 

 

 

где

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]