русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Понятие о симплекс-методе


Дата добавления: 2015-07-09; просмотров: 1520; Нарушение авторских прав


 

 

Графический метод прост и нагляден, однако практическое его применение ограничивается задачами, в которых всего две основные переменные величины; при трех переменных ее графическое построение вообще неосуществимо. Если условия задач линейного программирования непротиворечивы, области их допустимых решений образуют выпуклый многогранник в n-мерном пространстве. При этом оптимальное решение, если оно существует, обязательно достигается в некоторой вершине многогранника, и чтобы найти решение задач линейного программирования, достаточно перебрать лишь планы, соответствующие вершинам многогранника допустимых решений. Эти планы называются опорными планами. Симплекс-метод (СМ) позволяет осуществлять упорядоченный перебор вершин многогранника; после определения одной из вершин, этот метод помогает установить, является ли найденный план оптимальным, т.е. достигнут ли в этой вершине максимум (минимум) целевой функции. Если план не оптимален, происходит переход к следующей вершине и т.д.

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

Дана система линейных ограничений — неравенств:

 

а11 х1+а12 х2+…+а1n xn£b1,

a21 x1+a22 x2+…+a2n xn£b2, (4.4)

………………………………….

am1 x1+am2 x2+…+amn xn £bm,

 

и целевая функция

 

f(x)=C0+C1 x1+C2 x2+…+Cn xn. (4.5)

 

Требуется найти такое неотрицательное решение

 

xi³0 (где i=1,…, n), (4.6)

 

при котором целевая функция (4.5) принимает экстремальное значение.

Для определенности рассмотрим случай максимизации (4.5). Решение начинается с допустимого значения опорного плана (базиса). Для этого от системы (4.4) перейдем к системе уравнений путем введения дополнительных неотрицательных переменных:

 

xn+1³0, xn+2³0,…, xn+m ³ 0; (4.7)



 

a11 x1+a12 x2+…+a1n xn+xn+1=b1,

a21 x1+a22 x2+…+a2n xn+xn+2 =b2,

…………………………………………………………..

am1 x1+am2 x2+…+amn xn+xn+m=bm.

 

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

Итак, (4.7) принимаем за базисные, а (4.6) — за свободные, которые мы принимаем равными нулю.

Выражаем (4.7) через (4.6), получаем:

 

хn+1=b1–(a11x1+a12x2+…+a1nxn),

хn+2=b2–(a21x1+a22x2+…+a2nxn),

……………………………….. (4.8)

хn+m=bm–(am1x1+am2x2+…+amnxn).

 

Целевая функция (4.5) переписывается в виде:

 

f(x)=c0–(–c1x1c2x2–…–cnxn)= c0–(с¢1х1+с¢2x2+…+ с¢nxn), (4.9)

 

где с¢1= –c1, с¢2= –c2, с¢n= –cn .

Из системы ограничений (4.8) и целевой функции (4.9) находим первое базисное решение:

хn+1=b1,

хn+2=b2,

……….

хn+m=bm,

при этом f(x)=c0.

Можно сформулировать следующий признак оптимальности: в оптимальном решении задачи линейного программирования на отыскание максимума (4.5) необходимо и достаточно, чтобы все коэффициенты её с¢j были неотрицательными. Если хотя бы один из с¢j отрицателен, то путём перевода соответствующей переменной из свободной в базисную, значение (4.5) можно увеличить.

Тогда для улучшения первого базисного решения нужно перейти ко второму по определенному правилу, при этом (4.9) должно возрасти.

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

Допустим, что среди с¢j есть отрицательные. Из них выбираем наибольшее по абсолютной величине, т.к. введение в базис соответствующей свободной переменной способствует большему увеличению (4.5). Пусть таковым является с¢j. Следовательно, хj необходимо из свободных перевести в базисные. Однако, хj можно увеличивать только до тех пор, пока впервые не обратится в нуль какая-либо из (4.7), а остальные сохранят свои неотрицательные значения. Находим значения (4.7) из системы (4.8) при условии, что , а все остальные свободные переменные по прежнему нули.

Тогда будем иметь:

 

,

, (4.10)

………………….

.

Первой обратится в нуль та из (4.7) , для которой отношение свободного члена к коэффициенту при переменной, вводимой в базис, является наименьшим (обозначим это отношение через q).

Отыскиваем минимальное симплексное отношение, т.е. min q.

min q = min (4.11)

 

При этом отыскиваем отношения только к положительным коэффициентам, т.к. если какое-либо aij<0, то увеличение xi вызывает лишь возрастание базисной переменной xn+t, а при atj=0 переменная xn+t не меняется. Допустим, что min q,будет в i-ом уравнении, т.е. minq = , тогда aij будем называть генеральным элементом, установив который, нужно переходить ко второму базисному решению. Для этого xj из свободных переводим в базисные, а xn+t наоборот. Для того чтобы xj из свободных перевести в базисные, нужно исключить его из всех остальных уравнений системы, кроме i-го уравнения.

Разделим все члены i-го уравнения системы на генеральный элемент (4.11):

.

Уравнение, полученное в результате деления обеих его частей на генеральный элемент, будем называть направляющим. Например, для того, чтобы исключить xj из t-го уравнения нужно умножить направляющую строку на (–atj);

Затем полученные выражения почленно складываем с соответствующими членами t-го уравнения системы.

Аналогично, исключается xj из остальных уравнений и из функции цели (4.9).

В результате вычислений получим второе базисное решение:

xn+1=b1 ,

xn+2=b2 ,

,

……………..…

xn+m=bm .

При этом функция цели принимает значение:

 

f(x)=c0 с¢j .

 

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

 

Алгоритм вычислений в симплексных таблицах.

1. Составляем симплексную таблицу, заполняя ее коэффициентами из системы ограничений и функций цели (коэффициенты функции цели записываются в таблицу с противоположными знаками, кроме c0). Знаки коэффициентов системы ограничений при заполнении таблицы не изменяются. Строка симплексной таблицы, содержащая коэффициенты целевой функции с¢1, с¢2,…, с¢n или cj , называется индексной.

2. В индексной строке анализируем коэффициенты с¢1, с¢2,…, с¢n. Если хотя бы один из них отрицателен, то полученное решение оптимальным не является (при решении на максимум). Из отрицательных коэффициентов индексной строки выбираем наибольший по абсолютной величине. Тот столбец, в котором этот факт обнаружился, будем называть ключевым.

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

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

4. На пересечении ключевого столбца и ключевой строки находится генеральный элемент.

5. Определив генеральный элемент, переходим к составлению второй симплексной таблицы, при этом выполним следующие действия:

а) свободную переменную из ключевого столбца (xj) переводим в базисные, а базисная переменная xn+t перейдёт в свободные.

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

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

 

В результате указанного алгоритма получим вторую симплексную таблицу.

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

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

При решении задач в симплексных таблицах возможны следующие упрощения при вычислениях:

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

 

Метод искусственного базиса

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

Для простоты изложения рассмотрим систему из трёх ограничений:

 

,

, (4.12)

.

 

Требуется найти такое неотрицательное решение xj³0 (j=1,2,3), при котором (4.13) получает экстремальное значение:

 

. (4.13)

 

Приводим к канонической форме:

 

,

, (4.14)

.

 

В таком виде (4.14) не позволяет получить исходное базисное решение, т.к. в третьем уравнении дополнительная переменная x5, с коэффициентом (–1), а во втором уравнении нет вообще неотрицательной переменной, входящей только в одно это уравнение.

Для получения базисного решения рекомендуется во все ограничения типа ³ и = вводить искусственные переменные yk.

От (4.14) перейдем к (4.15):

 

а11х1+а12х2+а13х3+х4=b1,

а21х1+а22х2+а23х3+у1=b2, (4.15)

а31х1+а32х2+а33х3х5+у2=b3.

 

Теперь в (4.15) есть неотрицательные переменные х4, у1, у2 с положительными коэффициентами =1, каждая из которых входит только в одно уравнение; решив уравнения (4.15) относительно х4, у1, у2, получим уравнения с неотрицательными свободными членами. При этом коэффициенты при х4, у1, у2 образуют единичную матрицу и поэтому, являясь линейно независимыми образуют базис.

Вторым этапом преобразования является введение искусственных переменных уk с коэффициентом М в целевую функцию. Для того, чтобы искусственные переменные не вошли в оптимальное решение, М придается произвольно большое значение, превосходящее любые величины, с которыми их придется сравнивать в процессе решения задачи. При этом, при минимизации функции цели берем (+М), при максимизации (–М). Рассмотрим случай минимизации, тогда (4.13) запишется в виде (4.16):

f(x)=c0+c1x1+c2x2+c3x3+M(y1+y2)®min (4.16)

 

Из системы (6.15) определим y1 и y2:

y1 = b2 – (a21 x2 + a22 x2 + a23x3)

y2 = b3 – (a31 x1 + a32 x2 + a33 x3 x5)

 

Введем полученные выражения в (4.16):

f(x) = c0 + c1 x1 + c2 x2 + c3 x3 + M [ b2 – (a21 x1 + a22 x2 +a23 x3) +

+ b3 – (a31 x1 + a32 x2 + a33 x3 x5)].

 

После преобразований получим:

 

f(x) = c0 + (b2+b3)M – { [(a21 + a31)M c1] x1 + [(a22+a32)M c2] x2 +

+ [(a23+a33)Mc3] x3 Mx5}. (4.17)

 

Из (4.15) и (4.17) заполняется первая симплексная таблица 10 с базисными переменными x4, y1, y2.

 

Таблица 10

Базисные переменные Свободные члены x1 x2 x3 x4 x5 у1 у2 CКC θ
x4 b1 а11 а12 а13    
у1 b2 а21 а22 а23    
у2 b3 а31 а32 а33 –1    
f(x) c0+ +(b2+ b3) M (а2131)Mc1 (а2232)Mc2 (а2333)Mc3 –M    

 

Дальнейшее решение проводится по известному алгоритму симплексного метода.

При решении задач на минимум могут встретиться следующие случаи:

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

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

3) Если все искусственные переменные выведены из базиса, но имеется хотя бы один коэффициент в индексной строке больше 0, то минимум лежит в бесконечности.

Экономического смысла искусственные переменные не имеют. Поэтому при расчетах столбцы с искусственными переменными в симплексную таблицу можно не включать.

 

Пример: Решить симплекс-методом задачу, если её модель имеет вид:

f(x)=18x1 + 15x2 + 5x3 → min;

x1 + 4,3x2 + 2,6x3 ³ 640,

5x1 + 1,5x2 + 3x3 ³ 800,

3x1 + 3,9x2 + 4,3x3 £ 860,

xj ³ 0; j=1, 2, 3.

Для получения базисного решения задачу приводим к канонической форме и вводим в первое и второе ограничения искусственные переменные:

 

 

x1 + 4,3x2 + 2,6x3 – x4 + y1 = 640,

5x1 + 1,5x2 + 3x3 – x5 + y2= 800,

3x1 + 3,9x2 + 4,3x3 + x = 860.

 

f(x)= 18x1 + 15x2 + 5x3 + M(y1 + y2) =

=1440 M .

Заполняем симплексную таблицу 11:

 

Таблица 11

Базис-ные пере-мен-ные Свободные члены х1 х2 х3 х4 х5 х6 СКС q
у1 4,3 2,6 –1 646,9
у2® 1,5 –1 808,5
х6 3,9 4,3 872,2
f(x) 1440м 6м–18 5,8м–15 5,6м–15 –м –м 1455,4м–48  
у1® –1 0,2 485,2
х1 0,3 0,6 –0,2 161,7
х6 2,5 0,6 387,1
f(x) 480м+2880 4м–9,6 2м–4,2 –м 0,2м–3,6 495,2м+2862,6  
х2 0,5 –0,25 0,05 121,3
х1 0,45 0,075 –0,215 125,31
х6® 0,75 0,45 23,2
f(x) 0,6­ –2,4 –3,12 4027,08  
х2 –0,625 –0,175 –0,5 109,7  
х1 –0,2625 –0,4175 –0,45 114,87  
х3 0,75 0,45 23,2  
f(x) –2,85 –3,39 –0,6 4013,16  

Ответ: x1=115; x2=110; x3=20

f(x)min=4020.

 

Пример: Предприятие располагает тремя группами основного оборудования и может выпускать изделия четырех видов (А, Б, В, Г). Лимитирующим фактором является основное оборудование, плановый фонд времени которого задан и не может быть превышен. Известны и нормы времени на обработку каждого вида изделия на оборудовании каждой группы. Известна величина прибыли на единицу отдельных изделий и план производства должен обеспечить наибольшую сумму прибыли. Исходные данные в таблице 12.

 

Таблица 12

Группы оборудования Норма времени на одно изделие (мин) Месячный фонд времени (мин)
А Б В Г
I
II
III
Прибыль на единицу изделия (тг) 0,4 0,2 0,5 0,8  

 

Обозначим: х1 — количество изделий А; х2 — количество изделий Б; х3 — количество изделий В; х4 — изделие Г.

Составим математическую модель задачи:

 

f(x)=0,4 х1 +0,2 х2+0,5 х3 +0,8 х4 → max;

хi≥0, i=1,4 .

 

Прежде чем решать задачу симплекс-методом приведем модель к канонической форме, введем в задачу три дополнительных неотрицательных переменных величины x5, x6, x7, тогда:

 

f(x)=0,4 х1 +0,2 х2+0,5 х3 +0,8 х4 +0 х5 +0 х6 +0 х7 → max;

 

По своему экономическому содержанию дополнительные переменные означают неиспользуемое в плане время работы оборудования. Для решения задач симплекс-методом используется таблица 13.

В ней легко выделить три последовательно расположенные части (итерации), соответствующие трем планам задачи. Первый план получен непосредственно на исходных данных. В строках таблицы 12 записаны значения табличных исходных данных. В самой верхней части таблицы записаны коэффициенты целевой функции — прибыль на единицу каждого изделия. Дополнительным переменным соответствуют нулевые коэффициенты (неиспользуемое время оборудования не приносит прибыли). Те же нулевые коэффициенты записаны в столбце C против каждой расположенной переменной. Заполнение Zj–Cj имеет свои особенности: величина Z для j столбца получается как сумма произведений величин столбца C на соответствующие коэффициенты столбца j. Поскольку в первоначальном плане в столбце C находятся только 0, то величина Z для столбца плана, столбцов всех переменных будет =0 и, следовательно, Zj–Cj=–Cj. Поэтому в строке Zj–Cj первоначального варианта фактически построены коэффициенты целевой функции с обратным знаком.

 

 

Таблица 13

Ресурсы и продук-ция Базис С План 0,4 0,2 0,5 0,8 Θ
х1 х2 х3 Х4 х5 х6 х7
Вариант 1 (базис)
I х5
II х6
III х7
Zj–Cj       –0.4 –0.2 –0.5 –0.8  
                     
Вариант 2
I х4 0.8 1/8 2/8 ½ 1/8  
II х6
III х7 47/8 –2/8 20/8 –1/8
Z′j–Cj     –0.3 –0.1  
                       
Вариант 3
I х4 0.8 1/24 11/24 1/8 –1/24  
II х2 0.4 5/3 1/3 1/3  
III х7 –241/24 13/24 –1/8 447/24  
Z″j–Cj     0.5 0.1 0.1  
                       

 

Переменные величины в первой части таблицы имеют определенные числовые значения: х1 =0, х2=0, х3=0, х4=0, х5=24000, х6=12000, х7=30000. Все основные переменные приравнены к нулю и не входят в базис задачи, а дополнительные переменные получают свои предельные значения, с исходными уравнениями. Это отвечает такому плану, при котором ничего не производится, то есть прибыль отсутствует. Этот план не является оптимальным. Для получения прибыли представлены основные переменные, обозначающие виды изделий.

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

Первый вопрос: какую из основных переменных вводить в базис, т.е. выпуск какого изделия запланировать в первую очередь? Поскольку задача решается на принципах прибыли, целесообразнее начать с наиболее прибыльного изделия, то есть с изделия Г, иначе говоря, переменной х4, в строке Zj–Cj соответствует наибольшее по абсолютной величине число 0,8. Т.о., на первом этапе в базис вводится переменная х4. Определим, в каком количестве может быть предусмотрен выпуск изделий Г. Это зависит от объема ресурсов и нормативов затрат на оборудование. Оборудование первой группы может обработать 3000 изделий Г(24000:8). Оборудование второй группы для выпуска этого изделия не используется. Фонда оборудования третьей группы хватит на обработку 30000 изделий Г. Очевидно, что больше 3000 изделий Г изготовить не удастся, так как лимитирует фонд оборудования первой группы. Поэтому х4=3000 вводится вместо х5, которая выводится из базиса. Подчеркнем число 8, находящееся на линии столбца х4 (вводимой переменой) и х5 (выводимой переменной). Это число называется направляющим элементом.

Строка х4 получается путем деления исходного варианта на 8. Именно в этом соотношении (1:8) переменная х4 заменяет переменную х5. В плане строки х4 должно быть поставлено число 3000(24000:8). В столбце C проставляется цифра 0,8 — прибыль за изделие Г. После расчета строки х4 пересчитывается столбец «план». Выпуск изделий Г загрузит не только оборудование первой группы, поэтому фонд времени должен быть пересчитан. Вторая группа не используется, поэтому план остается такой же — 12000. Фонд времени оборудования третьей группы уменьшается. Первоначально он составлял 30000. На изготовление изделия Г затрачивается 8 минут, всего производится 3000 изделий Г. Остается неиспользованным резерв времени 30000–1×3000=27000.

Все данные для этого экономического расчета имеются в таблице. Эти три цифры расположены своеобразным треугольником, две вершины которого еще в «старом» плане, а третья в «новом». При расчете из числа, стоящего в вершине прямого угла, вычли произведение двух других чисел. Остаток фонда времени х7=27000 записывается в строке нового плана. Следующее число в графе «план» – 2400 — прибыль при данном варианте, равном произведению выпуска изделий Г на временную прибыль (0,8×3000=2400). После столбца «план» пересчитываются основные столбцы симплексной таблицы. Следует иметь ввиду, что в столбце всех переменных, входящих в базис, на линии чисел строк и столбцов всегда находится единица, а остальные элементы = 0. Поэтому сразу можно заполнить столбец х4, х6, х7 (таблица 13). Остальные столбцы подлежат пересчету по правилу треугольника.

Для того чтобы рассчитать коэффициент, нужно в симплексной таблице найти три числа: 1.Число, стоящее на месте этого коэффициента в предыдущем варианте; 2. Число, стоящее в той же строке предыдущего варианта, но в столбце вводимой переменной; 3. Число, находящееся в новом варианте в строке вновь вводной переменной (элементы этой строки перерассчитать в первую очередь). Указанные три числа в таблице образуют прямоугольный треугольник. Для определения искомого коэффициента нужно из первого числа (оно находится в вершине прямого угла) вычесть произведение двух других чисел. Рассчитываем для второго варианта коэффициенты столбца х1. Первый из них х1 (1/8) получен ранее, следующий находится в строке х6: в предыдущем варианте в той же строке х6, но в столбце вводимой переменной х4 и равен 0. Наконец, третье число находится уже в новом варианте в столбце х1, на линии ее со строкой вводимой переменной х4 — число 1/8.

Производим вычисление: 3–0×1/8=3 (так вычисляется вся строка).

Показатель Z′j–Cj=0,8×1/8–0,4=–0,3.

По окончании пересчета получаем вариант 2, при котором производится 3000 изделий Г и остаются резервы времени по вторым и третьим группам оборудования.

Теперь выясняем, является ли данный вариант плана оптимальным или он может быть улучшен. Для этого просматриваем строку Z′j–Cj, если она содержит отрицательные числа, то план можно улучшить. В этой строке два отрицательных числа. Они указывают, что план может быть улучшен, введением в базис переменных х1 или х3 (в их столбцах находятся отрицательные числа). Отрицательные числа не только свидетельствуют о возможности увеличения прибыли, но и показывают, насколько может быть увеличена общая ее сумма при введении в план того или иного изделия. Так, на данном этапе расчета введение в базис переменной х1 (изделия A) приведет к увеличению общей прибыли на 0,3 в расчете на каждую вводимую единицу изделия А, а введение переменной х3 — лишь на 0,1. Эти цифры могут быть противоречащими исходным условиям задачи, согласно которым изделие А приносит 0,4 прибыли, а изделие В — 0,5, но на этом этапе расчета, введение в план изделий А и В вытеснит известное количество ранее вводимых изделий Г, чтобы высвободить для вновь вводимых часть времени оборудования, первой группы. Анализ данных строки Z′j–Cj показывает, что наибольший по модулю — 0.3, поэтому целесообразно ввести в базис х1.

Установим, сколько единиц продукции А может быть включено в план с учетом того, что он уже содержит выпуск изделия Г. Для этого (аналогично первому этапу расчета) числа из строки «план» делим на общие (только положительные) коэффициенты из строки вводимой переменной х1, и из полученных частных выбираем наименьшее: 3000:1/8=24000; 12000:3=4000; 27000:47/8=4600. Наименьшим частным является второе. Оно указывает, что в новый план может быть введено не больше 4000 изделий А, так как лимитирующим фактором является наличие оборудования второй группы. Отсюда х1 — вместо х6. На линии х1 и х6 находим новый направляющий элемент «3». Вычисляем значение строки вновь вводимой переменной х1, путем деления элементов строки х6 предыдущего варианта на «3». Затем перерассчитываем столбец «план». Вычисляем: х4=3000–1/8×4000=2500;

х7=27000–47/8×4000=3500.

Оставшиеся коэффициенты рассчитываем по уже известному правилу треугольника. Просматриваем в новом плане строку Z″j–Cj. В ней содержатся только нули и положительные элементы. Отсутствие отрицательных чисел означает, что план оптимальный, в который входят лишь два вида изделия (изделие А и изделие Г) из исходных значений. Дальнейшее введение новых изделий в план не приведет к увеличению прибыли.

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

 

Контрольные вопросы и упражнения

 

1. Какой переход от одного базисного плана к другому реализует симплекс-метод?

2. Что называется итерацией симплекс-метода?

3. В каком случае задача линейного программирования будет иметь решение?

4. Сформулируйте условие оптимальности плана задачи линейного программирования.

5. Решить симплекс-методом следующие задачи линейного программирования:

 


6. Построить модели следующих задач и решить их симплекс-методом:

а) Завод изготавливает продукцию двух видов р1 и Р2. Для изготовления этой продукции требуется четыре вида ресурсов: R1, R2, R3, R4. Другие исходные данные задачи сведены в таблице 14. Требуется определить план выпуска продукции р1 и Р2, при котором доход предприятия оказался бы максимальным.

б) Для откорма птицы из двух компонентов К1 и К2 необходимо приготовить смесь, в которой питательного вещества V1 содержалось бы не менее 12ед., V1 не менее 24ед., V3 не менее 26ед. Другие исходные данные задачи сведены в таблицу 15. Требуется определить количество компонентов К1 и К2, которое обеспечит заданную питательность смеси при минимальной ее стоимости.

 

Таблица 14

Вид ресурсов Расход ресурсов на единицу продукции Запас ресурсов
Р1 Р2
R1
R2
R3
R4
Доход, тенге  

 

Таблица 15

Питательные вещества Количество питательных веществ в 1 кг компонента
К1 К2
V1
V2
V3
Стоимость 1 кг компонента, тенге

 

 



<== предыдущая лекция | следующая лекция ==>
Каноническая форма задач линейного программирования | Двойственность в линейном программировании


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.253 сек.