Методы оптимизации. Учебное пособие-2
.pdf
МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ
Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования
«МОСКОВСКИЙ ГОСУДАРСТВЕННЫЙ СТРОИТЕЛЬНЫЙ УНИВЕРСИТЕТ»
МЕТОДЫ ОПТИМИЗАЦИИ
Рекомендовано Учебно-методическим объединением вузов РФ по образованию в области строительства
в качестве учебного пособия для студентов, обучающихся по программе бакалавриата по направлению 270800 «Строительство»
(30.06.2014 № 102-15/841)
Москва 2014
УДК 519.8:517.2 ББК 22.11
М54
Рецензенты:
доктор физико-математических наук, профессор И.М. Петрушко, Национальный исследовательский университет МЭИ; доктор технических наук, профессор В.Н. Иванов,
Российский университет дружбы народов; доктор технических наук, профессор Е.М. Зверяев, Институт прикладной математики им. М.В. Келдыша РАН
Авторы:
О.А. Васильева, Е.А. Ларионов, А.Ю. Лемин, В.И. Макаров
М54 Методы оптимизации : учебное пособие / О.А. Васильева и др. ; М-во образования и науки Росс. Федерации, Моск. гос. строит. ун-т. Москва : МГСУ, 2014. 96 с.
ISBN 978-5-7264-0864-4
Рассмотрены методы решения задач оптимизации: методы нахождения условного и безусловного экстремума функций многих переменных, методы решения задач линейного, квадратичного и динамического программирования. Приведены необходимые сведения из других разделов математики. Подробно разобраны многочисленные примеры, приведены контрольные вопросы и задачи для самостоятельного решения.
Для студентов строительных и экономических специальностей.
УДК 519.8:517.2 ББК 22.11
ISBN 978-5-7264-0864-4 |
© ФГБОУ ВПО «МГСУ», 2014 |
Предисловие
Многие вопросы управления предприятиями промышленности, транспорта, строительства, сельского хозяйства, распределения различных ресурсов сводятся к задачам нахождения минимумов или максимумов функций, зависящих от нескольких переменных. Такие задачи нахождения экстремумов обычно называют задачами оптимизации, а минимизируемую или максимизируемую функцию – целевой функцией. Важными инструментами нахождения оптимальных стратегий являются методы математического программирования: линейного программирования, нелинейного программирования, выпуклого программирования, а также динамического программирования, в основе которого лежит принцип оптимальности Р. Беллмана: оптимальное управление в любой момент времени не зависит от предыстории системы и определяется целью управления и состоянием системы в этот момент.
В данном учебном пособии рассмотрены вопросы, связанные с решением задач оптимизации, построением оптимальных стратегий управления, математическим программированием, приведены контрольные вопросы, задачи для самостоятельного решения.
Учебное пособие предназначено для студентов строительных и экономических специальностей.
1. ПОСТАНОВКА ЗАДАЧ ОПТИМИЗАЦИИ
1.1. Общие понятия и определения
Математическое моделирование (описание) задач управления предприятиями промышленности, строительства транспорта, сельского хозяйства, распределения различных ресурсов как правило приводит к задачам нахождения минимумов или максимумов функций, зависящих от нескольких переменных, удовлетворяющих некоторым ограничениям. В одной и той же ситуации указанные максимизируемые или минимизируемые функции и ограничения, накладываемые на переменные, могут быть различными в зависимости от цели, достижение которой желательно. Рассмотрим следующий пример планирования выпуска продукции.
Пример 1. Завод выпускает два вида деталей A и B, каждая из которых последовательно обрабатывается на четырех станках. Ниже в таблице приведено время обработки деталей на каждом из станков, ресурс времени работы станков в течение месяца и цена, по которой может быть реализована одна деталь.
|
|
|
|
|
Таблица |
|
|
|
|
|
|
|
|
тип |
время |
время |
время |
время |
цена |
|
детали |
обработки |
обработки |
обработки |
обработки |
детали |
|
|
на 1 станке |
на 2 станке |
на 3 станке |
на 4 станке |
|
|
|
|
|
|
|
|
|
A |
1,0 |
0,5 |
1,0 |
1,5 |
3 |
|
|
|
|
|
|
|
|
B |
1,5 |
2,0 |
0,5 |
0,5 |
5 |
|
|
|
|
|
|
|
|
ресурс |
400 |
350 |
200 |
300 |
|
|
времени |
|
|
|
|
|
|
|
|
|
|
|
|
|
4
При составлении месячного плана выпуска деталей типа A и B могут быть поставлены следующие цели:
1)составить месячный план выпуска деталей типа A и B, при котором общее количество произведенных деталей будет максимальным;
2)составить месячный план выпуска деталей типа A и B, при котором доход завода будет максимальным, и будет изготовлено не менее 100 деталей типа B;
3)составить месячный план выпуска деталей типа A и B, при котором будет выпущено максимальное число комплектов, если каждый комплект содержит две детали типа A и четыре детали типа B.
Три различные цели, достижение которых желательно, приводят к трем различным задачам оптимизации. Обозначим через x1 и x2 количество планируемых к выпуску деталей A и B и сформулируем соответствующие задачи оптимизации.
1) В первом случае требуется произвести наибольшее суммарное число деталей A и B, то есть, максимизировать функцию
F1(x1, x2) = x1 + x2.
При этом, время работы 1 станка будет равно 1∙x1 + 1,5x2. Поскольку время работы первого станка не должно превышать 400 часов, следует установить ограничение x1 + 1,5x2 ≤ 400.
Учитывая ограничения на время работы остальных станков, получим следующую систему неравенств
x1 + 1,5x2 ≤ 400 0,5x1 + 2x2 ≤ 350 x1 + 0,5x2 ≤ 200 1,5x1 + 0,5x2 ≤ 300
5
Поскольку число производимых деталей не может быть отрицательным, то к последней системе неравенств, следует добавить неравенства x1 ≥ 0, x2 ≥ 0.
Таким образом, мы приходим к следующей задаче оптимизации: Найти максимум функции
F1(x1, x2) = x1 + x2.
при следующих ограничениях
x1 + 1,5x2 ≤ 400 0,5x1 + 2x2 ≤ 350 x1 + 0,5x2 ≤ 200 1,5x1 + 0,5x2 ≤ 300 x1 ≥ 0
x2 ≥ 0
2) В этом случае требуется составить план, при котором завод получит максимальный доход, поэтому следует найти максимум функции F2(x1, x2) = 3x1 + 5x2.
Система ограничений должна включать в себя уже сформулированные выше неравентва и требование того, что деталей типа B должно быть произведено не менее 100 штук (x2 ≥ 100).
Таким образом, мы приходим к следующей задаче оптимизации: Найти максимум функции
F2(x1, x2) = 3x1 + 5x2.
при следующих ограничениях
x1 + 1,5x2 ≤ 400 0,5x1 + 2x2 ≤ 350 x1 + 0,5x2 ≤ 200 1,5x1 + 0,5x2 ≤ 300 x2 ≥ 100
x1 ≥ 0, x2 ≥ 0
6
3) В третьем случае ставится цель выпустить максимальное число комплектов, каждый из которых содержит 2 детали типа A и четыре детали типа B. Обозначим это число x3. Тогда число x1 произведенных деталей типа A будет равно 2x3 (x1 = 2x3), а число x2 произведенных деталей типа B будет равно 4x3 (x2 = 4x3). Задача выпустить максимальное число комплектов равносильна задаче максимизировать величину x3, т.е. найти максимум функции
F3(x1, x2, x3) = x3.
Система ограничений должна включать в себя уже сформулированные выше неравенства, условие о том, что переменная x3 (как x1 и x2) не может принимать отрицательные значения, и выражения, связывающие переменных x1, x2 и x3.
Таким образом, мы приходим к следующей задаче оптимизации: Найти максимум функции F3(x1, x2, x3) = x3
при следующих ограничениях
x1 + 1,5x2 ≤ 400 0,5x1 + 2x2 ≤ 350 x1 + 0,5x2 ≤ 200 1,5x1 + 0,5x2 ≤ 300 x1 = 2x3
x2 = 4x3
x1 ≥ 0, x2 ≥ 0, x3 ≥ 0
Задача оптимизации в этом случае может быть сформулирована в другом (существенно более простом) виде. Подставим выражения переменных x1 и x2 через x3 в систему ограничений. Получим
2x3 + 6x3 ≤ 400 x3 + 8x3 ≤ 350 2x3 + 2x3 ≤ 200 3x3 + 2x3 ≤ 300 x3 ≥ 0
7
Выбирая из первых четырех неравенств сильнейшее, мы приходим к следующей задаче оптимизации.
Найти максимум функции
F3(x1, x2, x3) = x3, |
|
|
350 |
при ограничениях |
0 x3 |
|
|
|
|
|
9 |
Задача имеет очевидное решение x3 = 38 (количество комплектов
– целое число).
Последний случай демонстрирует важность правильного выбора переменных при формулировке задачи оптимизации.
Введем основные определения, связанные с задачами оптимизации.
Определение 1. Функция n переменных, относительно которой ставится задача оптимизации, называется целевой функцией.
Пример 2. Рассмотрим задачу оптимизации: найти минимум функции двух переменных F(x1, x2) = (x1 – 1)2 + x22.
F(x1, x2) = (x1 – 1)2 + x22 → min
при следующих ограничениях
x1 + x2 ≤ 1, x1 ≥ 0, x2 ≥ 0
В этой задаче целевой функцией будет функция
F(x1, x2) = (x1 – 1)2 + x22.
Определение 2. Ограничения, накладываемые на переменные x1, x2,... xn, определяют область, в которой рассматривается задача оптимизации. Любая точка этой области называется допустимым решением задачи.
В рассмотренном выше примере система ограничений имеет вид:
8
x1 + x2 ≤ 1, x1 ≥ 0, x2 ≥ 0
Определение 3. Допустимое решение ~ , ~ ,... ~ , на котором x1 x2 xn
достигается наибольшее (в случае задачи на максимум) или наименьшее (в случае задачи на минимум) значение целевой функции,
называется оптимальным решением.
В примере 2 оптимальным решением будет |
~ |
~ |
0. |
x1 |
1, x2 |
Поскольку целевая функция принимает неотрицательные значения, а в указанной точке (1, 0) функция равна 0, то в этой точке она принимает наименьшее значение, кроме того точка принадлежит области допустимых значений, определяемых системой неравенств.
Постановка задачи оптимизации, представляющей математическую модель практической задачи, состоит из трех шагов:
1)выбор переменных, значения которых могут варьироваться в практической задаче;
2)определение зависимости целевой функции от выбранных переменных;
3)составление ограничений на выбранные переменные, задающих область допустимых решений.
1.2Контрольные вопросы
1.Как определяется целевая функция?
2.Может ли целевая функция не зависеть от одной или двух из трех переменных задачи оптимизации?
3.Как определяется допустимое решение задачи оптимизации?
4.Что называется оптимальным решением задачи оптимизации?
9
1.3.Задачи
1.Построить область допустимых решений задачи оптимизации
–x12 + 2x1x2 – 2x22 → min
2x1 + x2 ≤ 10 x1 ≤ 3
x1 ≥ 0, x2 ≥ 0
2. Построить область допустимых решений задачи оптимизации
2x1 +4x2 → max
–x1 + x2 ≤ 4 x1 ≤ 1
x1 ≥ 0, x2 ≥ 0
3. Является ли точка (2, 3) допустимым решением, сформулированной ниже, задачи оптимизации?
2x1 +7x2→min
2x1 + 3x2 ≤ 20
3x1 + 8x2 ≤ 18 x1 ≥ 0, x2 ≥ 0
10
