Xreferat.com » Рефераты по информатике и программированию » Анализ на чувствительность двойственных оценок

Анализ на чувствительность двойственных оценок

Размещено на /

Введение


Под термином «программирование» понимают выбор программных действий для решения задачи.

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

Задачи нелинейного программирования возникают в естественных и физических науках, техники, экономики, в сфере деловых отношений и в науке управления государством. Преобразование реальной задачи в задачу нелинейного программирования в значительной мере является искусством, направляемым теорией. Теория точно указывает, какая из многих возможных формулировок задачи решается наиболее эффективно, а какая не может быть решена вовсе [1].

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

Наиболее изученным разделом математического программирования является линейное программирование. Для решения задач линейного программирования разработан целый ряд эффективных методов, алгоритмов и программ [2].

Анализ линейного программирования имеет статическое оптимальное решение, по этому, как только изменяются исходные условия, полученное решение теряет свою актуальность. Анализ чувствительности задачи линейного программирования как раз и связан с исследованием возможных изменений полученного оптимального решения в результате изменений исходных данных задачи. Анализ чувствительности – это процесс, который реализуется после того, как получено оптимальное решение [1].

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


1. Теоретическая часть


1.1 Общая и основная задачи линейного программирования


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


n

L = ∑ cjxj (1.1)

j=1


при условиях


n

∑ aijxj ≤ bi (i=1,k) (1.2)

j=1

n

∑ aijxj = bi (i=k+1,m) (1.3)

j=1

xj ≥ 0 (j=1,l ,l ≤ n), (1.4)


где aij, bi, cj – заданные постоянные величины и k ≤ m.

Функция (1.1) называется целевой функцией задачи (1.1) – (1.4), а условия (1.2) – (1.4) – ограничениями данной задачи.

Стандартной или симметричной задачей линейного программирования называется задача, которая состоит в определении максимального значения функции (1.1) при выполнении условий (1.2) и (1.4), где k=m и l=n.

Канонической или основной задачей линейного программирования называется задача, которая состоит в определении максимального значения функции (1.1) при выполнении условий (1.3) и (1.4), где k=0 и l=n.

Совокупность чисел X=(x1, x2, … , xn), удовлетворяющих ограничениям задачи (1.2) – (1.4), называется допустимым решением или планом.

План X*=(x1*, x2*, … , xn*), при котором целевая функция задачи (1.1) принимает свое максимальное (минимальное), значение, называется оптимальным.

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


1.1.1 Алгоритм симплексного метода

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

Указанный переход возможен, если известен какой-либо исходный план. Рассмотрим задачу (1.1) - (1.4), где


Анализ на чувствительность двойственных оценок;Анализ на чувствительность двойственных оценок;Анализ на чувствительность двойственных оценок;…; Анализ на чувствительность двойственных оценок; Анализ на чувствительность двойственных оценок;…;

Анализ на чувствительность двойственных оценок; Анализ на чувствительность двойственных оценок.


Так как


Анализ на чувствительность двойственных оценок,


то опорный план согласно признаку оптимальности будет иметь вид:


Анализ на чувствительность двойственных оценок


В опорном плане присутствует (n-m) – нулей. Этот план определяется системой единичных векторов P1,…,Pm, которые образуют базис m- мерного пространства, следовательно, некоторые из векторов Анализ на чувствительность двойственных оценок могут быть представлены в виде линейной комбинации векторов данного базиса. Пусть


Анализ на чувствительность двойственных оценок.


Положим


Анализ на чувствительность двойственных оценок; Анализ на чувствительность двойственных оценокАнализ на чувствительность двойственных оценок.


Так как P1,…,Pm являются единичными векторами, то Анализ на чувствительность двойственных оценок и


Анализ на чувствительность двойственных оценок а Анализ на чувствительность двойственных оценок, (1.5)


где Δj – критерий остановки, j=Анализ на чувствительность двойственных оценок.

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

Теорема 1. (Признак оптимальности опорного плана) Опорный план


Анализ на чувствительность двойственных оценок


для задач (1.3), (1.4) является оптимальным, если все оценки


Анализ на чувствительность двойственных оценок.


Теорема 2. (Признак неограниченности сверху) Если Анализ на чувствительность двойственных оценок для некоторого Анализ на чувствительность двойственных оценок и среди чисел Анализ на чувствительность двойственных оценок нет положительных (Анализ на чувствительность двойственных оценок), то задачи (3), (4) являются неограниченными сверху на множестве плана.

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

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


Таблица 1

Симплексная таблица

i базис Cбаз P0 С1 С2 Cr Сm Cm+1 Ck Cn




P1 P2 Pr Pm Pm+1 Pk Pn
1 P1 C1 b1 1 0 0 0 a1m+1 a1k a1n
2 P2 C2 b2 0 1 0 0 a2m+1 a2k a2n
r Pr Cr br 0 0 1 0 arm+1 ark arn
m Pm Cm bm 0 0 0 1 amm+1 amk amn
m+1
F0 D1 D2 Dr Dm Dm+1 Dk Dn

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

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

В таблице 1.1 первые m строк определяются исходными данными задачи, а показатели (m+1)-ой строки вычисляют. В этой строке в столбце вектора P0 записывается значение целевой функции, которое она принимает при данном опорном плане, а в столбце вектора Pj – значение


Анализ на чувствительность двойственных оценок.


Значение F0 равно скалярному произведению вектора Р0 на вектор сбаз:


Анализ на чувствительность двойственных оценок.


После заполнения таблицы (1.1) исходный опорный план проверяют на оптимальность. Для этого просматривают элементы (m+1) – ой строки таблицы. В результате может иметь место один из следующих трех случаев:

1) Значения Δj больше или равны нулю для всех Анализ на чувствительность двойственных оценок;

2) Δj<0 для некоторого j и все соответствующие этому индексу величиныАнализ на чувствительность двойственных оценокaij<0 для Анализ на чувствительность двойственных оценок;

3) Δj<0 для некоторых индексов j, и для каждого такого j по крайней мере одно из чисел aij>0.

В первом случае на основании признака оптимальности исходный опорный план является оптимальным. Во втором случае целевая функция не ограничена сверху на множестве планов, а в третьем случае можно перейти от исходного плана к новому опорному плану, при котором значение целевой функции увеличится. Этот переход от нового опорного плана к другому осуществляется исключением из исходного базиса какого-нибудь из векторов и введением в него нового вектора, исходя из максимальной абсолютной величины отрицательных чисел Δj. Если таких чисел несколько, то в базис вводится вектор, имеющий тот же индекс, что и максимум из чисел cj , где Δj<0.

Пусть Анализ на чувствительность двойственных оценок, остальные Δj і 0, следовательно, в базис вводится вектор Pk. Для того чтобы определить вектор, подлежащий исключению из базиса, находим минимальное значение отношения: Анализ на чувствительность двойственных оценок.

Пусть это достигается для некоторого i=r. Тогда из базиса исключается вектор Рr, а число ark называют разрешающим (генеральным) элементом. Столбец и строку, на пересечении которых находится элемент ark называют направляющими (генеральными).

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


Анализ на чувствительность двойственных оценок(1.6)

Анализ на чувствительность двойственных оценок(1.7)


После вычисления aij и bi согласно формулам (1.6) и (1.7) их значения заносят в новую таблицу. Элементы (m+1)-ой строки вычисляются на основе их определения. После заполнения новой симплекс-таблицы просматривают элементы (m+1)-ой строки. Если все Анализ на чувствительность двойственных оценок≥0, то новый опорный план является оптимальным. Если же среди указанных чисел имеются отрицательные, то, используя описанную выше последовательность действий, находят новый опорный план. Этот процесс продолжают до тех пор, пока либо не получают оптимальный план задачи, либо не устанавливают ее неразрешимость


1.2 Двойственная задача линейного программирования


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

Рассмотрим следующую задачу линейного программирования.


Анализ на чувствительность двойственных оценок(1.8)


при условиях


Анализ на чувствительность двойственных оценок(1.9)

Анализ на чувствительность двойственных оценок(1.10)


Определение. Задача, состоящая в нахождении минимального значения функции


Анализ на чувствительность двойственных оценок(1.11)


при условиях


Анализ на чувствительность двойственных оценок(1.12)

Анализ на чувствительность двойственных оценок(1.13)


называется двойственной по отношению к задаче (1.8)–(1.10).

Задачи (1.8)–(1.10) и (1.11)–(1.13) образуют пару задач, называемую в линейном программировании двойственной парой.


1.2.1 Правила составления двойственной задачи

Двойственная задача по отношению к исходной составляется согласно следующим правилам:

Целевая функция исходной задачи (1.8)–(1.10) исследуется на максимум, а целевая функция двойственной (1.11)–(1.13) –на минимум.


Анализ на чувствительность двойственных оценок


Матрица, составленная из коэффициентов при неизвестных в системе ограничений (1.9) исходной задачи (7.1)–(7.3), и аналогичная матрица в двойственной задаче (1.8)–(1.10) получаются друг из друга транспонированием (т.е. заменой строк столбцами, а столбцов – строками).


Анализ на чувствительность двойственных оценок


Число переменных в двойственной задаче (1.11)–(1.13) равно числу соотношений в системе (1.9) исходной задачи (1.8)–(1.10), а число ограничений в системе (1.12) двойственной задачи–числу переменных в исходной задаче.

Коэффициентами при неизвестных в целевой функции (1.11) двойственной задачи (1.11)–(1.13) являются свободные члены в системе (1.9) исходной задачи (1.8)–(1.10) а правыми частями в соотношениях системы (1.12) двойственной задачи – коэффициенты при неизвестных в целевой функции (1.8) исходной задачи.

Если переменная Анализ на чувствительность двойственных оценок, исходной задачи (1.8)–(1.10) может принимать только лишь положительные значения, то j-е условие в системе (1.12) двойственной задачи (1.11)–(1.13) является неравенством вида «Анализ на чувствительность двойственных оценок». Если же переменная Анализ на чувствительность двойственных оценок может принимать как положительные, так и отрицательные значения, то j-е соотношение в системе (1.12) представляет собой уравнение. Аналогичные связи имеют место между ограничениями (7.2) исходной задачи (1.8)–(1.10) и переменными двойственной задачи (1.11)–(1.13) , т.е. если i-е соотношение в системе (1.9) исходной задачи является неравенством, то i-я переменная двойственной задачи Анализ на чувствительность двойственных оценок. В противном случае переменная Анализ на чувствительность двойственных оценок может принимать как положительные, так и отрицательные значения.


1.2.2 Правила анализа на чувствительность двойственной оценки

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

Рассмотрим пару двойственных задач.

Исходная задача: найти максимум функции


Анализ на чувствительность двойственных оценок(7.7)


при условиях


Анализ на чувствительность двойственных оценокАнализ на чувствительность двойственных оценок (7.8)

Анализ на чувствительность двойственных оценок (7.9)


Двойственная задача: найти минимум функции


Анализ на чувствительность двойственных оценок(7.10)


при условиях


Анализ на чувствительность двойственных оценокАнализ на чувствительность двойственных оценок(7.11)


Предположим, что задача (7.7)–(7.9) имеет невырожденные опорные планы и хотя бы один из них является оптимальным.

Максимальное значение целевой функции (7.7) задачи (7.7)–(7.9) будем рассматривать как функцию свободных членов системы линейных уравнений (7.8): Анализ на чувствительность двойственных оценок.

Теорема. В оптимальном плане двойственной задачи (7.10), (7.11) значение переменной Анализ на чувствительность двойственных оценок численно равно частной производной функции Анализ на чувствительность двойственных оценок по данному аргументу, т. е.


Анализ на чувствительность двойственных оценок(7.12)


Последнее равенство означает, что изменение значений величин Анализ на чувствительность двойственных оценок приводит к увеличению или уменьшению Анализ на чувствительность двойственных оценок. Это изменение Анализ на чувствительность двойственных оценок определяется величиной Анализ на чувствительность двойственных оценок и может быть охарактеризовано лишь тогда, когда при изменении величин Анализ на чувствительность двойственных оценок значения переменных Анализ на чувствительность двойственных оценок в оптимальном плане соответствующей двойственной задачи (7.10), (7.11) остаются неизменными. Поэтому представляет интерес определить такие интервалы изменения каждого из свободных членов системы линейных уравнений. (7.8), в которых оптимальный план двойственной задачи (7.10), (7.11) не меняется. Это имеет место для всех тех значений Анализ на чувствительность двойственных оценок, при которых столбец вектора Анализ на чувствительность двойственных оценок последней симплекс-таблицы решения задачи (7.7)–(7.9) не содержит отрицательных чисел, т. е. тогда, когда среди компонент вектора нет отрицательных. Здесь Анализ на чувствительность двойственных оценок — матрица, обратная матрице В, составленной из компонент векторов базиса, который определяет оптимальный план задачи (7.7)–(7.9).


Анализ на чувствительность двойственных оценок


Таким образом, если найдено решение задачи (7.7)–(7.9), то нетрудно провести анализ устойчивости двойственных оценок относительно изменений Анализ на чувствительность двойственных оценок. Это, в свою очередь, позволяет:

1. проанализировать устойчивость оптимального плана задачи (7.10), (7.11) относительно изменений свободных членов системы линейных уравнений (7.8),

2. оценить степень влияния изменения Анализ на чувствительность двойственных оценок, на максимальное значение целевой функции задачи (7.7)–(7.9), что дает возможность определить наиболее целесообразный вариант возможных изменений Анализ на чувствительность двойственных оценок.


Вывод

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

линейный симплекс программирование двойственный


2. Практическая часть


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


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


Таблица 2

Исходные данные

Вид сырья Нормы затрат сырья Наличие ресурса


A B C
1 грузовик 1 1 1 430
2 Легковой автомобиль 3 0 2 460
3 мотоцикл 1 4 0 420
4 Цена ед. продукции 3 2 5

Требуется:

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

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

выявить изменения общей стоимости изготовляемой продукции, определяемой оптимальным планом ее производства при уменьшении количества ресурса I типа на 130 единиц и увеличения количества ресурсов II и III типа на 120 и 110 единиц.

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


2.2 Математическая модель исходной задачи


Пусть xj – количество изделий j –го вида; aij – затраты времени на единицу продукции вида j на оборудовании i-го типа, cj – стоимость единицы изделия вида j, si – общий фонд рабочего времени на оборудовании типа i.

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


L = 3x1 + 2x2 + 5x3 → max


Ограничения:


Анализ на чувствительность двойственных оценокx1 +x2 +x3 + x4=430

3x1 + 2x3 + x5 = 46

Анализ на чувствительность двойственных оценокx1 + 4x2 +x6 =420

xj ≥ 0 , j = 1,6


Составляется матрица из коэффициентов при неизвестных в системе ограничений исходной задачи.


А=Анализ на чувствительность двойственных оценок


2.3 Математическая модель двойственной задачи


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

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

Найти минимум функции:


Анализ на чувствительность двойственных оценок


Ограничения:


Анализ на чувствительность двойственных оценок


И составляется аналогичная матрица, которая получается транспонированием (т.е. заменой строк столбцами, а столбцов – строками).


АТ=Анализ на чувствительность двойственных оценок


2.4 Нахождение решения исходной задачи


Задача записывается в форме основной задачи линейного программирования.

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

L = 3x1 + 2x2 + 5x3 → max


Ограничения:


Анализ на чувствительность двойственных оценокx1 +x2 +x3 + x4=430

3x1 + 2x3 + x5 = 46

Анализ на чувствительность двойственных оценокx1 + 4x2 +x6 =420

xj ≥ 0 , j = 1,6


Сначала проверяется, можно ли решить задачу симплексным методом:

m < n; bi ≥ 0, i= 1,3; задача записана в форме основной задачи линейного программирования. Имеется исходный опорный план X =(0,0,0,0,430,460,420). Далее заполняется первая симплексная таблица

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

Поможем написать работу на аналогичную тему

Получить выполненную работу или консультацию специалиста по вашему учебному проекту
Нужна помощь в написании работы?
Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Пишем статьи РИНЦ, ВАК, Scopus. Помогаем в публикации. Правки вносим бесплатно.

Похожие рефераты: