Добавил:
ivanov666
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Прикладная математика. Решение задач с применением табличного процессора Excel. Учебное пособие
.pdf
4. Построить сглаживающий сплайн третьего порядка, аппроксими-
i
m10
4
,
m10
2
,
рующий табличную зависимость, если погрешности
заданы в узловых
i
точках, т.е. должны выполняться условия: niyxS
0 1 2 3 4
-1 0 2 3
1 2 4 1
0,05 0,02 0,01 0,02 0,05
x
i
y
i
i
В качестве краевых условий выбрать условия: .0)(,0)(
Построить графики полученных решений. В заданиях m – порядко-
вый номер студента в журнале.
iii
,0,)(
.
0
xSxS
n
41

2. ЛИНЕЙНОЕ ПРОГРАММИРОВАНИЕ
f
R
,
y,x
)y(f)x(f)yx(f
Математическое программирование – это область прикладной математики, которая занимается изучением экстремальных задач и разработкой
методов их решения. В общем случае задача математического программирования (задача оптимизации) состоит в нахождении оптимального (максимального или минимального) значения целевой функции из области допустимых решений, которая определяется заданными ограничениями:
Найти )x,...,x,x(fmax(min)
при условиях:
n21
b)x,...,x,x(
21
ini
,
m,i 1 , где
компоненты решения, Rb
задачи (оптимальным решением) является такое значение )x,...,x(x
и
– задают целевую функцию и ограничения; Rx
i
– правые части ограничений. Решением этой
i
,
–
j
**
1
*
n
которое доставляет экстремум целевой функции и при этом выполняются
все ограничения.
Ограничения
«=» (равно). При этом, если целевая функция f и все ограничения
также могут быть вида «» (больше или равно) и
i
яв-
i
ляются линейными функциями, то задача является задачей линейного программирования, если же хотя бы одна из указанных функций – нелинейная, то задача является задачей нелинейного программирования. Если дополнительно все компоненты решения принимают целочисленные значения, такая задача является задачей целочисленного программирования.
Рассмотрим определение линейной функции: Функция f является
линейной, если для любых значений
функции выполняется условие
и
из области определения
.
2.1. Постановка задач линейного программирования
В общем случае задача линейного программирования (ЛП) формулируется следующим образом:
n
j
1
Найти
n
xc)x(Fmin(max)
j
1
n
m,mi,bxa
ijij
1 ,
21
j
1
при условиях:
jj
ijij
2
1 .
n
m,i,bxa
j
1
1 ,
ijij
1
m,mi,bxa
Причем ограничения вида неравенств и всегда можно свести к ограничениям типа равенства введением так называемых дополнительных пере-
менных. Тогда, если предположить, что )n,j(x
j
10 , общую задачу ЛП
можно представить в канонической форме:
n
xc)x(Fmin
j
1
42
jj

при ограничениях:
)x(Fmax
),n(3
2
r
)mr
(
n
j
m,i,b,bxa
1
iijij
10 , n,j,x
j
10 . (1)
Случай нахождения
дится к нахождению
)x(Fmin
отдельно не выделяется, т.к. он сво-
, причем
)x(Fmin)x(Fmax
.
Допустимым решением называется любое неотрицательное решение )n,j(x
j
10 , удовлетворяющее системе ограничений задачи ЛП.
Область допустимых решений ограничена выпуклым многогранником.
Переменные, входящие с единичными коэффициентами только в одно
уравнение системы ограничений задачи, представленной в канонической
форме, и с нулевыми – в остальные и целевую функцию, называются базисными. Остальные переменные называются небазисными (свободными)
переменными. Базисным решением или опорным планом задачи в каноническом виде называется решение, полученное при нулевых свободных
переменных. Базисное решение задачи ЛП определяет координаты вершин
многогранника решений. Оптимальное решение находится среди вершин
многогранника. Отсюда один из методов решения задач ЛП: Найти координаты всех вершин многогранника решений, для чего надо решать большое количество простых систем из двух уравнений. Далее необходимо вычислить значение целевой функции в вершинах многогранника и сравнить
эти значения. Этот путь трудоемкий. Для решения задач ЛП в частных
случаях применяется графический метод
. Универсальным мето-
дом решения задач ЛП является симплекс-метод, который непосредственно применяется к задаче в канонической форме.
Если существует оптимальное решение задачи ЛП, то существует и
оптимальное базисное решение, которое может быть получено с помощью
симплекс-метода. Основная идея симплекс-метода заключается в последовательном улучшении отправного базисного решения, вплоть до оптимального решения за конечное число шагов. При этом если задача не обладает базисными решениями или целевая функция не ограничена на многограннике решений, то симплекс-метод позволяет установить это в процессе решения.
2.2. Симплекс-метод решения задачи ЛП
Рассмотрим алгоритм симплекс-метода для решения задачи ЛП в
канонической форме (1). Алгоритм симплекс-метода включает следующие
основные шаги:
1) выбор начального базисного решения;
2) переход от одного базисного решения к другому базисному решению с лучшим значением целевой функции. Если базисное решение улучшить нельзя, то оно является оптимальным, алгоритм завершается.
Из системы ограничений задачи (1)
неизвестных
выразим
через остальные и примем их за базисные переменные
43
x,...,x
, а осталь-
1
r

ные переменные – за свободные. Далее базисные переменные исключим из
)x(Fmin
)njr(
1
)x(Fmin
)rk
(
целевой функции и задачу ЛП представим в виде:
min)xc...xc(c)x(F
110
nnrr
,
при ограничениях:
...
11
),xa...xa(bx
nnrr
111111
(2)
).xa...xa(bx
nnrrrrrr
Из системы ограничений задачи (2) определим начальное базисное
решение: свободные переменные 0
bx
,…,
11
1
r
bx
. В итоге начальное базисное решение найдено
rr
),...,,b,...,b(x
00
. При этом значение
1
nr
x...x , базисные переменные
c)x(F
. Задача состоит в том,
0
чтобы отправляясь от начального базисного решения, найти оптимальное.
Далее возможны два случая:
1) Все числа
можно заметить, что при значениях 0
при условии 0
nr
c ,…, 0
1r
1
x...x . Исходное базисное решение является и оп-
c . Тогда из целевой функции задачи (2)
n
1 nr
x,...,x
достигается
тимальным. Задача ЛП решена.
2) Среди коэффициентов
циенты, пусть 0
c ,
j
бодных, кроме значения
x , можно уменьшить (улучшить) значение целе-
j
c,...,c
имеются положительные коэффи-
nr
1
. Тогда, не меняя значений всех сво-
вой функции за счет увеличения
только до тех пор, пока все базисные переменные из (2) 0
гая, что все 0
x,...,x кроме значения
1 nr
,xabx
jj111
...
.xabx
jjrrr
x . Но значение jx можно увеличить
j
x,...,x . Пола-
x , получим:
j
1
r
Здесь возможны два случая:
а) Все значения 0
bx
,…,
11
bx
. Если взять значение
rr
1
a,...,a . Тогда при любом значении jx имеем
jrj
x достаточно большим, то
j
. Задача ЛП не имеет решения.
б) Среди значений
1
Пусть некоторый коэффициент 0
увеличить более чем на величину
0
x , т.к.
k
шее значение: )a/b(min
rk1
xabx
. Найдем среди значений 0
jjkkk
= 0
jkk
a,...,a
имеются положительные значения.
jrj
a ,
jk
a/b . В противном случае получится
jkk
a/b . Коэффициент jia называется
jii
. Тогда значение
a/b наимень-
jkk
x нельзя
j
44

разрешающим элементом. Далее положим: 0
j
x ,…, 0
1r
x ,
1j
x ,
j
x ,…, 0
0
1j
x . Значения остальных переменных определяются так:
n
,abx
0
j
111
...
,abx
0
jiii
...
.abx
0
При этом значение целевой функции
rjrr
ccc)x(F
. Таким
j
00
образом, значение целевой функции уменьшилось (улучшилось). Следовательно, в новом базисном решении переменная
переменной, а переменная
примем:
x – свободной. Теперь за базисные переменные
i
x,...,x,x,x,...,x
. Это означает, что они, как и целевая функ-
111
riji
x становится базисной
j
ция, должны быть выражены через остальные. Для этого из i-го уравнения
системы ограничений задачи (2) выражаем переменную
...
a
ni
a
)x
n
ji
x
b
j
a
a
ri
i
ji
1
(
a
r
1
ji
x
...x
i
a
ji
x в виде:
j
и используя последнее выражение для переменной
x , исключаем ее из
j
системы ограничений и целевой функции задачи (2). За один шаг мы добились уменьшения значения целевой функции. Один коэффициент целевой
функции задачи (2) стал меньше нуля. Далее данный алгоритм повторяется до тех пор, пока все коэффициенты целевой функции не станут отрицательными. При этом каждый раз получаем новое базисное решение, последнее полученное базисное решение будет оптимальным.
Задача ЛП применяется на практике для составления оптимального
плана выпуска продукции, в транспортной логистике и во многих других
областях. Два математика, Канторович Леонид Витальевич и Леонтьев Василий Васильевич – лауреаты Нобелевской премии по экономике, являются одними из создателей ЛП. Математик Канторович Л.В. в 1975 году получил Нобелевскую премию «За вклад в теорию оптимального распределения ресурсов». Леонтьев В.В. создал теорию межотраслевого анализа,
получил Нобелевскую премию «За развитие метода «затраты – выпуск» и
за его применение к важным экономическим проблемам».
2.3. Составление оптимального плана выпуска продукции
Сформулируем задачу составления оптимального плана выпуска
продукции с целью получения максимальной прибыли как задачу ЛП:
Пусть
x является искомым планом производства
j
-го вида продук-
ции, где
n,j 1 ; jc – доход, получаемый от реализации одной единицы
45

продукции j-го вида;
i
i
j
с
a – количество сырья
ji
-го вида, необходимое для
изготовления продукции j-го вида;
b – запасы
i
-го вида сырья;
m,i 1
Для решения поставленной задачи построим ее математическую модель.
В качестве целевой функции F принимается суммарная прибыль,
получаемая от реализации продукции, она должна быть максимальной:
max
11
xcxcF
nn
(3)
В математическую модель задачи включаются следующие ограничения:
1) Расход сырья каждого вида на выпуск суммарной продукции не
должен превышать его запасов
b :
i
bxaxaxa
nn
11212111
bxaxaxa
nn
22222121
(4)
.bxaxaxa
2211
mnmnmm
2) Количество продукции не может быть отрицательной величиной,
т.е. 0
x ,
j
n,j 1
. Построенная математическая модель в виде (3)–(4) на-
зывается прямой задачей ЛП. Таким образом, математическая формулировка прямой задачи следующая: Найти вектор )x,...,x,x(x
, удовле-
n21
.
творяющий системе ограничений (4) с учетом условий 0
x ,
j
n,j 1
и
обеспечивающий максимум функции (3).
2.4. Двойственная задача ЛП
Каждой задаче ЛП можно поставить в соответствие другую задачу,
сформулированную по определенным правилам так, что решение одной из
этих задач вытекает из решения другой. Такие задачи называются взаимно
двойственными. Рассмотрим правила составления двойственной задачи
ЛП с учетом математической модели прямой задачи (3) – (4):
1. Если прямая задача на максимум, то двойственная к ней – на ми-
нимум, и наоборот.
2. Коэффициенты
целевой функции прямой задачи являются сво-
бодными членами ограничений двойственной задачи.
3. Свободные члены
b ограничений прямой задачи являются коэф-
i
фициентами целевой функции двойственной задачи.
4. Матрицы ограничений прямой и двойственной задач являются
транспонированными друг другу.
5. Если прямая задача на максимум, то ее система ограничений представляется в виде неравенств типа . Двойственная задача решается на
минимум, и ее система ограничений имеет вид неравенств типа
.
6. Число ограничений прямой задачи равно числу переменных двойственной, а число ограничений двойственной – числу переменных прямой.
46

7. Все переменные в обеих задачах неотрицательны.
n
m
)y(G)x(
F
8. Между переменными прямой и двойственной задач имеется следующее соответствие:
x...xx...x
mnnn
.
y...yy...y
mnmm
Решение двойственной задачи целесообразно при условии
или когда условие 0
x выполняется не для всех переменных в исходной
j
11
11
задаче.
В качестве иллюстрации применения двойственной задачи ЛП рассмотрим задачу оптимального распределения ресурсов, тесно связанную с
прямой задачей ЛП (3) – (4), и построим, с учетом выше приведенных правил (1 –8), ее математическую модель:
)m,i(y
Припишем единице каждого i- го вида сырья оценку
i
1
. Эти
оценки должны удовлетворять следующим условиям:
1) Общая оценка количества всех видов сырья, используемых в про-
изводстве должна быть минимальной:
minybybybG
2211
mm
. (5)
2) Суммарная оценка всех видов сырья, расходуемого на выпуск
единицы продукции любого вида, должна быть не ниже прибыли от реализации единицы продукции данного вида. В противном случае предприятие
откажется от выпуска данного вида продукции. Оценка сырья – это количество прибыли, которую можно получить с единицы сырья. Математически ограничения двойственной задачи можно записать в следующем виде:
mm
,cyayaya
11221111
3) Оценки
i
m,i,y
10
.
...
2211
(6)
.cyayaya
nmmnnn
Таким образом, математическая формулировка двойственной за-
дачи следующая: найти вектор )y,...,y(y
ограничений (6) с учетом условий
i
, удовлетворяющий системе
m1
m,i,y
10
и обеспечивающий мини-
мум функции (5).
Можно решать прямую задачу (3) – (4) на получение максимальной
прибыли или двойственную (5) – (6) на минимизацию общей стоимости
имеющегося сырья.
Между решениями прямой и двойственной задачи имеется ряд важных соотношений:
1) Значение целевой функции задачи (3) – (4) при любом допустимом
решении
– (6) при любом ее допустимом решении )y,...,y(y
)x,...,x(x
не превышает значения целевой функции задачи (5)
n1
:
m1
.
47

2) Если одна из задач обладает оптимальным планом, то и другая за-
.Gmin
F
max
j
дача обладает оптимальным планом, причем
3) Если целевая функция одной из задач двойственной пары не ограничена на множестве планов, то система ограничений другой – противоречива.
4) Положительную оценку имеют лишь те виды сырья, которые полностью используются в оптимальном плане:
Если ,y
*
i
0 то
n
j
*
bxa
i
jij
1
, m,i 1 , где
*
x и
j
*
y – компоненты опти-
i
мального решения, соответственно, прямой и двойственной задач ЛП.
5) Двойственные оценки характеризуют дефицитность используемого сырья. Большей оценке соответствует наиболее дефицитное сырье.
6) Если данный вид продукции вошел в оптимальный план, то оценка
ресурсов, затрачиваемых на производство единицы продукции, равна прибыли от ее реализации и производство рентабельно:
m
Если ,x
7) Если 0
0
то
j
x , то
j
i
1
cya
jiji
,
n,j 1
.
-е ограничение в двойственной задаче выполня-
ется как неравенство. Оценка ресурсов, затрачиваемых на выпуск единицы
этой продукции, выше прибыли от ее реализации.
Двойственная задача возникает как задача оптимального использова-
ния ресурсов. Двойственные оценки ресурсов
ками. Величина двойственной оценки
*
y в оптимальном решении двойст-
i
y называют теневыми оцен-
i
венной задачи численно равна изменению целевой функции при изменении соответствующего свободного члена
b системы ограничений прямой
i
задачи на единицу:
*
При одновременном изменении ресурсов всех видов на величину
*
ii
.yb/)x(F
b
i
можно оценить их суммарное влияние на значение целевой функции при
условии неизменности двойственных оценок:
m
ybF
i
1
Таким образом, экономические свойства оценок
ii
.
*
y оптимального
i
плана следующие:
1) Мера дефицитности ресурсов и продукции.
2) Мера влияния ограничений на целевую функцию.
3) Инструмент определения эффективности отдельных вариантов.
Двойственные оценки выступают как инструмент балансирования затрат и результатов, тем самым гарантируя рентабельность оптимального
плана.
48

2.5. Пример решения задачи ЛП
i
Предприятие выпускает два вида продукта:
P и 2P . Для их изготов-
1
ления используются три вида сырья, запасы которых ограничены и состав-
580
ляют:
b
1
,
на производство единицы каждого вида продукта
680
b
2
, 430
b ед. Известны затраты каждого вида сырья
3
a , где
ij
– порядковый
номер сырья, j – порядковый номер продукта, 31,i ,
матрицы
a приводятся в нижеследующей таблице:
ij
42
A .
44
23
21,j
. Значения
Требуется составить оптимальный план производства продукции с
целью получения максимальной прибыли, если известна прибыль от реа-
40,30
лизации единицы каждого вида готового продукта
cc
21
.
Построим математическую модель задачи, как задачу ЛП. Пусть
00
x,x – количество выпускаемой продукции вида
21
P и 2P , соответ-
1
ственно. Тогда затраты на производство продукции с использованием сырья первого вида запишется в виде:
третьего вида:
23 xx
. Тогда ограничения по сырьевым ресурсам запи-
21
42 xx
, второго вида:
21
44 xx
21
шутся в виде:
21
,xx
58042
21
21
,xx
68044
.xx
43023
Суммарная прибыль готовой продукции должна быть наибольшей:
4030 .
maxxx)x,x(F
2121
Для решения задачи симплекс-методом приведем ее к каноническому виду, т.е. ограничения типа неравенства приводятся к ограничениям
типа «равно» путем добавления дополнительных (избыточных) переменных 000
x,x,x . Избыточная переменная – это количество сырья,
543
которое может остаться в производстве в неиспользованных излишках:
,
321
,xxx
58042
421
521
,xxx
68044
.xxx
43023
Необходимо требовать условие неотрицательности всех переменных:
0
x ,
i
. Целевая функция примет вид:
51,i
0004030 .
maxxxxxx)x,x,x,x,x(F
5432154321
Определяем количество базисных элементов. Количество базисных
элементов равно рангу системы ограничений, т.е. числу линейно независимых уравнений в системе. Каждая базисная переменная входит только в
49

одно уравнение системы с коэффициентом 1. В целевой функции базисные
переменные отсутствуют. Если ограничения заданной системы до приведения ее в каноническую форму имели вид , то в качестве первоначальных базисных переменных выбираются дополнительные (избыточные) переменные
x,x,x . В других случаях, когда присутствуют ограничения
543
типа и = , для определения первоначального базиса следует поставить и
решить вспомогательную задачу, например, методом искусственного базиса.
Составим первую симплекс-таблицу:
Базис X1 X2 X3 X4 X5 План План/X2
X3 2 4 1 0 0 580 580/4=145
X4 4 4 0 1 0 680 680/4=170
X5 3 2 0 0 1 430 430/2=215
F -30
-40
0 0 0
0
Последняя строка симплекс-таблицы является оценочной строкой. В
этой строке в первоначальной таблице записывают коэффициенты целевой функции с противоположными знаками. Эти коэффициенты называются целевыми оценками. Целевые оценки, соответствующие избыточным
переменным
x,x,x , в оптимальном плане являются оценками ресурсов и
543
характеризуют дефицитность сырья. Целевые оценки должны быть неотрицательными. Если в последней строке имеются отрицательные ко-
эффициенты, то такой план не является оптимальным. Каждая симплекс-таблица соответствует некоторому опорному плану, базисному решению – вершине многогранника решений. Отправляясь от начального базисного решения, первоначальной симплекс-таблицы, переходят к другому
базисному решению, симплекс-таблице с увеличением значения целевой
функции вплоть до оптимального решения.
Так как в оценочной строке имеются отрицательные коэффициенты,
план не является оптимальным. Выбирается столбец с наименьшей оценкой (оценка -40, столбец X2), а затем разрешающий элемент (РЭ) – по
наименьшему отношению свободных членов (столбец План) к положительным коэффициентам разрешающего столбца X2. Минимальное отношение находится в строке X3. Таким образом, разрешающий элемент (РЭ)
находится на пересечении столбца X2 и строки X3 и равен 4. Далее формируется следующая симплекс-таблица, в которой базисная переменная
X3 заменяется переменной X2. Переменная X2 является базисной переменной, и поэтому во всех клетках столбца X2 должен быть 0, кроме клетки на пересечении со строкой X3 (клетки с РЭ), где должна быть 1. Все
элементы разрешающей строки разделим на РЭ (4). Все остальные элементы новой симплекс-таблицы, включая и строку с целевыми оценками, определяются по правилу прямоугольника. Для этого выбираются из старой
симплекс-таблицы четыре числа, которые расположены в вершинах прямоугольника, всегда включая при этом разрешающий элемент (РЭ):
50
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]
