метопт-пми / 3 / методы оптимизации 3
.docxМИНОБРНАУКИ РОССИИ
Санкт-Петербургский государственный
электротехнический университет
«ЛЭТИ» им. В.И. Ульянова (Ленина)
Кафедра МО ЭВМ
отчет
по лабораторной работе №3
по дисциплине «Методы оптимизации»
Тема: Решение прямой и двойственной задач.
Студентка гр. 3384 |
|
|
Преподаватель |
|
Мальцева Н. В. |
Санкт-Петербург
2025
Цель работы.
Сформулировать задачу линейного программирования, решить её с помощью программы, а также построить и исследовать прямую и двойственную задачи.
Задание. (Вариант 1)
Пусть для выращивания некоторой культуры применяется m видов удобрений соответственно в количестве Bi единиц, где i=1,2,…,m. Вся посевная площадь разбита на n почвенно-климатических зон, каждая по dj единиц, где j=1,2,…,n. Пусть aij - количество i-го удобрения, вносимого на единицу площади j-ой зоны, а cj - повышение средней урожайности, получаемой с единицы площади j-ой зоны. Составить такой план распределения удобрений между посевными зонами, который обеспечивал бы максимальный суммарный пророст урожайности.
Исходные данные для этой задачи сведены в табл. 1. Имеется 400 ц фосфорных, 300 ц азотных и 100 ц калийных удобрений. Требуется построить математическую модель этой задачи для симплекс-метода.
Замечание: рекомендуется через xj обозначить площадь, которую необходимо удобрить в j-ой зоне.
Таблица 1
зоны |
посевная площадь, га |
Затраты удобрений на 1 га, ц |
прирост урожайности на 1 га, ц |
||
фосфорные |
азотные |
калийные |
|||
1 |
100 |
2 |
1 |
1 |
12 |
2 |
150 |
1 |
2 |
5/4 |
14 |
3 |
200 |
1 |
1/2 |
0 |
10 |
Выполнение работы.
Содержательная постановка задачи.
Сельскохозяйственное предприятие планирует повысить урожайность выращиваемой культуры на трёх зонах, имеющих различную продуктивность. Для этого имеются ограниченные запасы трёх видов удобрений: фосфорных, азотных и калийных. Известна еще агрономическая нормативность: для каждой зоны определён расход каждого вида удобрений на один гектар для достижения оптимального эффекта. Также, для каждой зоны известен ожидаемый прирост урожайности культуры в результате корректного внесения удобрений по этим нормам.
Задача состоит в том, чтобы определить, какую площадь в пределах каждой из трёх зон следует обработать имеющимися ресурсами, чтобы суммарный прирост урожая со всей обработанной площади был максимальным. При этом необходимо соблюсти два основных типа ограничений: ресурсные (количество удобрений), площади (нельзя удобрить земли больше, чем есть).
Формальная постановка задачи и ее решение.
Сформулируем целевую функцию, где xj - площадь j-ой удобряемой зоны.
Тогда допустимое множество будет иметь такой вид:
Причем первые три неравенства - ограничения на число удобрений, а другие на площадь удобряемых зон.
Введем исходные данные в программу и найдем решение.
Рисунок 1 – постановка прямой задачи
Рисунок 2 – решение прямой задачи
Найденная
оптимальная точка имеет координаты
, а значение функции в ней равно
.
Постановка двойственной задачи и ее решение.
Целевая функция будет иметь вид (y)=BTy min, а допустимое множество: (ATy)j cj.
Тогда целевая функция будет такой:
Допустимое множество таким:
Введем данные двойственной задачи в программу и найдем решение.
Рисунок 3 – постановка двойственной задачи
Рисунок 4 – решение двойственной задачи
Значение целевой функции для двойственной задачи совпадает со значением для прямой, значит оптимальное решение было найдено верно.
Определение коэффициентов чувствительности.
Вычислим коэффициенты чувствительности исходной задачи по координатам правой части ограничений (вектора B). Для этого увеличим значение вектора B на 0,001 и решим задачу уже с новым значением. Построим таблицу, куда запишем все вычисленные данные для задачи, где i -значение вектора, который был увеличен.
Таблица 2 – вычисление коэффициента чувствительности по вектору B
|
B = B + ei |
x1 |
x2 |
x3 |
i () |
|
i=1 |
400.001 |
100 |
0 |
200 |
3200 |
0 |
i=2 |
300.001 |
100 |
0 |
200 |
3200 |
0 |
i=3 |
100.001 |
99.993 |
0.001 |
200 |
3200.011 |
10.667 |
i=4 |
100.001 |
100 |
0 |
200 |
3200 |
0 |
i=5 |
150.001 |
100 |
0 |
200 |
3200 |
0 |
i=6 |
200.001 |
9.999 |
0.001 |
200.001 |
3200.009 |
9.333 |
Сравним полученный вектор чувствительности с оптимальной точкой для двойственной задачи.
Небольшие расхождения объясняются численными погрешностями, так как слишком малый шаг может вызывать ошибки округления.
Теперь вычислим коэффициенты чувствительности по координатам вектора C. Аналогично увеличим вектор C на 0,001, решим задачу и построим таблицу.
Таблица 3 - вычисление коэффициента чувствительности по вектору С
|
С = С + ei |
x1 |
x2 |
x3 |
i () |
|
i=1 |
12.001 |
100 |
0 |
200 |
3200.1 |
100 |
i=2 |
14.001 |
100 |
0 |
200 |
3200 |
0 |
i=3 |
10.001 |
100 |
0 |
200 |
3200.2 |
200 |
Сравним полученный вектор чувствительности с оптимальной точкой для исходной задачи.
Значения данных векторов полностью совпадают. Следовательно вектор коэффициентов чувствительности исходной задачи по координатам вектора C совпадает с оптимальной точкой прямой задачи.
Анализ полученных результатов.
Полученные оптимальные решения прямой и двойственной задач предоставляют интерпретацию эффективности использования ресурсов. Решение прямой задачи определяет оптимальное распределение удобрений: необходимо полностью использовать площади первой и третьей зон, тогда как вторая зона исключается из плана обработки. Данный результат обусловлен тем, что норма внесения калийных удобрений во второй зоне является сравнительно высокой при умеренном приросте урожайности, что делает её менее эффективной в условиях ограниченных ресурсов.
Решение двойственной задачи, выраженное через теневые цены, отражает экономическую значимость каждого вида ресурсов. Нулевые значения для фосфорных и азотных удобрений указывают на их достаточность и отсутствие влияния на целевую функцию при малом изменении их объёма. В то же время ненулевая теневая цена для калийных удобрений свидетельствует о их дефицитности: каждый дополнительный центнер ресурса позволяет увеличить общий прирост урожая. Совпадение оптимальных значений целевых функций прямой и двойственной задач подтверждает корректность решения и соответствует теореме двойственности, что доказывает оптимальность полученного плана и объективность оценки ресурсов.
Анализ коэффициентов чувствительности расширяет понимание устойчивости решения. Чувствительность к изменению запасов удобрений количественно (по вектору B) подтверждает, что именно увеличение объёма калийных удобрений повысит целевую функцию. Чувствительность к коэффициентам прироста урожайности по зонам (по вектору С), совпадающая с оптимальными площадями обработки, показывает, что повышение эффективности первой или третьей зоны приведёт к пропорциональному росту общего результата.
В результате проведённого анализа можно сформулировать, что для повышения общей урожайности необходимо в первую очередь устранить дефицит калийных удобрений, а также рассмотреть возможность расширения обрабатываемой площади в третьей зоне или агротехнического повышения её эффективности. Использование второй зоны в текущих условиях является нецелесообразным.
Выводы.
В ходе лабораторной работы была успешно решена прямая задача линейного программирования. Оптимальное решение определило распределение переменных, при котором значение целевой функции достигает максимума. Для проверки корректности решения была построена и решена двойственная задача, причём совпадение значений целевых функций прямой и двойственной задач подтвердило выполнение теоремы двойственности и верность найденного решения.
Анализ решения двойственной задачи выявил наличие дефицитного ресурса, увеличение запаса которого положительно влияет на значение целевой функции, в то время как другие ресурсы не являются ограничивающими. Расчёт коэффициентов чувствительности показал устойчивость решения и его согласованность с оптимальными точками обеих задач.
Таким образом, выполненная работа демонстрирует полный цикл решения задачи линейного программирования. Полученные результаты подтверждают, что найденный план является оптимальным и обоснованным с точки зрения теории двойственности, а анализ чувствительности даёт практическое понимание влияния отдельных параметров модели на конечный результат.
