Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Численные методы решения задач оптимизации. Учебное пособие

.pdf
Скачиваний:
4
Добавлен:
07.09.2026
Размер:
1 Мб
Скачать
☆
МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ
РОССИЙСКОЙ ФЕДЕРАЦИИ
Федеральное государственное бюджетное образовательное учреждение
высшего профессионального образования
«Пензенский государственный университет
архитектуры и строительства»
А.Н. Кошев, В.В. Кузина
РЕШЕНИЯ ЗАДАЧ ОПТИМИЗАЦИИ
Рекомендовано Учебнометодическим объединением вузов РФ
по образованию в области строительства в качестве учебного пособия
для студентов, обучающихся по программе бакалавриата
по направлению 270800 «Строительство»
Пенза 2012
УДК 519.6 (075.8) ББК 22.193я73
К76
Рецензенты: кафедра «Математическое обеспечение
и применение ЭВМ» Пензенского государственного университета (заве дующий кафедрой доктор технических наук, профессор П.П. Макарычев); доктор технических наук, профессор И.А. Прошин (зав. кафедрой «Автома тизация и управление» ПГТА)
К76
Кошев А.Н.
Численные методы решения задач оптимизации: учеб. по собие / А.Н. Кошев, В.В. Кузина. – Пенза: ПГУАС, 2012. – 132 с. ISBN 9785928208370
Пособие посвящено теоретическим основам и практической реализации
алгоритмов численных методов оптимизации.
В части I рассмотрены численные методы решения задач оптимизации, эле
менты линейного, выпуклого и нелинейного программирования.
Часть II представляет собой практикум, который содержит лабораторные работы по учебному курсу «Численные методы и методы оптимизации» и примеры реализации методов оптимизации в системе MathCAD. Приведен ряд практи ческих задач и алгоритмы их решения.
Даны контрольные вопросы и задания к каждой теме.
Учебное пособие подготовлено на кафедре «Информационновычислительные системы» и предназначено для студентов, обучающихся по направлению подго товки 230400 «Информационновычислительные системы» лавр») всех форм обучения. Использование пособия рекомендуется при изучении дисциплин Б2.В.3 «Дополнительные главы математики. Численные методы и методы оптимизации» математического и естественнонаучного цикла по ФГОС 3го поколения, ЕН.В.1 «Численные методы и методы оптимизации» по ФГОС 2го поколения, но может быть полезно студентам, обучающимся по направлению 270800 «Строительство» и аспирантам всех направлений, в образовательных программах которых предусмотрено изучение численных методов и методов оптимизации для решения инженерных и экономических задач.
Пензенский государственный университет
ISBN 9785928208370
архитектуры и строительства, 2012
Кошев А.Н., Кузина В.В., 2012
(квалификация «бака
2
ПРЕДИСЛОВИЕ
Предлагаемое учебное пособие посвящено численным методам решения задач оптимизации. Особое внимание уделено изложению сути методов и алгоритмов их реализации, рекомендациям по их при менению. Авторы считают этот аспект наиболее важным для самостоя тельного изучения. Благодаря большому количеству примеров и разобранных задач, поясняемых графическими иллюстрациями алго ритмов вычислений и полученных результатов, данное пособие может быть использовано не только как учебное, но и как методическое при выполнении лабораторных и курсовых работ, а также при проведении практических занятий.
Данное пособие было подготовлено на основе педагогического опыта авторов, как результат обобщения лекционных и практических занятий со студентами специальности 230201 «Информационные сис темы и технологии» в Пензенском государственном университете архитектуры и строительства.
Учебное пособие состоит из двух частей.
Часть I представляет собой теоретический курс, который состоит из лекционного материала, дополненного примерами, контрольными вопросами и заданиями к самостоятельной работе по каждой теме.
Часть II является практикумом и содержит лабораторные работы по учебному курсу «Численные методы и методы оптимизации» с рекомендациями по их выполнению, а также примеры реализации вычислительных методов в системе MathCAD, что должно способ ствовать лучшему усвоению и закреплению знаний, полученных при изучении теоретического материала.
Предложен примерный перечень тем для курсовых работ.
Желающие углубить свои знания в этой области математики могут обратиться к списку дополнительной литературы, который при веден в конце издания.
В предлагаемой книге мы постарались учесть те замечания и предложения, которые были высказаны нашими рецензентами и коллегами. Всех их искренне благодарим. Особую признательность авторы выражают И.Г. Гвоздевой за помощь в программировании некоторых алгоритмов.
3
СПИСОК ИСПОЛЬЗУЕМЫХ ОБОЗНАЧЕНИЙ
g
()
x
(,)
()
f
()
f
()
f
()
f
()
f
f
И СОКРАЩЕНИЙ
n
R – nмерное евклидово арифметическое пространство
n
R – множество принадлежит nR , т.е. является его подмно
жеством
x  – x принадлежит множеству , т.е. является его элементом
x – длина (модуль), евклидова норма вектора x
A – евклидова норма матрицы A
T
A
– матрица, транспонированная к матрице A
Δ
z – приращение функции z
x или

x
– производная функции  по направлению e

e
rad
– градиент функции
,,,
xx x

12
ab – скалярное произведение векторов a и b
min
X
функции
x ,
max
X
x на множестве X
xx – задача минимизации функции
min,
–
x
минимальное и максимальное значения
жестве
2

2
H(x) f x

()


xx

ij

– матрица Гёссе
МО – методы оптимизации ЗВП – задача выпуклого программирования ЗЛП – задача линейного программирования ЗМП – задача математического программирования ЗНП – задача нелинейного программирования
n
x на мно
4
ВВЕДЕНИЕ
Предмет и задачи курса
Методы оптимизации (МО) составляют один из разделов науки об исследовании операций.
Задачу оптимизации можно определить как задачу поиска наилуч шего решения из множества возможных решений (альтернатив) на основе некоторого критерия оптимальности. Такой выбор может быть осуществлен различными способами. Один из подходов заключается в количественной оценке каждого возможного решения и выборе наилучшего (минимального или максимального) варианта решения.
Предмет и содержание курса по методам оптимизации заключается в изучении теории и методов решения задач отыскания экстремумов функций на множествах, определенных линейными и нелинейными ограничениями, заданными в виде числовых равенств и неравенств.
МО широко используются на практике, и прежде всего при решении задач:
оптимального проектирования:
– выбор наилучших технологических режимов, элементов
конструкций, структуры технологических цепочек, условий экономической деятельности;
– повышение доходности и т.д.;
оптимального управления:
– построение линейных и нелинейных математических мо
делей объектов управления;
– распределение материальных и финансовых ресурсов; – минимизация невязок различной структуры модели и реаль
ного объекта, а также многих других задач из технических, экономических, строи тельных и социальных областей знаний, таких, как управление запаса ми, трудовыми ресурсами, транспортными потоками, техническими системами и т.п.
МО находят применение при решении таких задач, для которых оптимальное развитие рассматриваемого процесса или явления можно сформулировать как достижение экстремума некоторого показателя. Поиск оптимального решения является одной из существенных проблем в исследовании операций. Наибольшими возможностями обладает математическое моделирование.
5
В задачу математического моделирования входит установление связей между входными и выходными параметрами процесса. Часто соотношения, устанавливающие эти связи, имеют сложный характер, не позволяющий применять аналитические методы исследования. В этом случае используют методы численного анализа с последующей реализацией этих методов на компьютере.
Математическое моделирование
Математическое моделирование можно рассматривать не только как приложение к определенной науке, но и как самостоятельный метод познания, имеющий свою специфику и методологию. Математи ческое и компьютерное моделирование, как основа имитационного мо делирования, моделей визуализации и пр., помогает развитию аб страктных представлений об изучаемом процессе или явлении и позво ляет глубже и правильнее реализовывать принципы фундаментальных исследований сложных научных и научнотехнических проблем.
Создание компьютерных моделей – сложный и высокотехно логичный процесс. В большинстве случаев компьютерная модель строится на основе известных естественнонаучных законов и развитых математических теорий. Математическое описание в компьютерном моделировании играет зачастую ключевую роль. Таким образом, про слеживается диалектическая связь между математическим и компью терным моделированием.
Симбиоз математического и компьютерного моделирования можно назвать информационным моделированием, включающим в себя классическое определение информатизации как средства переработки, передачи и хранения информации. Информационное моделирование можно представить в виде схемы (рис.1).
Каждая из составляющих такой структурной схемы имеет свои индивидуальные принципы разработки и свойства. Но только собран ные все вместе блоки информационной модели становятся мощным инструментом исследования объекта.
Структура каждого блока сама по себе достаточно сложна и требует отдельного рассмотрения. Остановимся на наиболее общих характе ристиках составляющих информационной модели.
Объект – это некоторая совокупность естественнонаучных, техни ческих, экономических, социальных и пр. знаний об изучаемом фе номене, необходимая для построения математической модели, то есть некоторой абстракции реального явления, записанной в математи
6
ческих терминах и символах. Математическая модель при этом должна достаточно полно учитывать влияние основных факторов, определяю щих объект, и связей между этими факторами. Математическая модель лежит в основе компьютерной модели, которая определяется разрабо танным по математической модели алгоритмом и его компьютерной реализацией – программой.
Рис. 1. Общая схема информационного моделирования
Алгоритм – это формальное описание последовательности стан дартных операций, которые необходимо выполнить над исходными данными для решения задачи из конкретного класса. Среди главных свойств алгоритма можно выделить следующие. Свойство определен
ности, т.е. понятности для исполнителя, благодаря чему выполнение
алгоритма носит «механический» характер. Свойство результативности, что дает возможность получить решение задачи за конечное число шагов. И, наконец, свойство независимости от исходных данных, что позволяет использовать алгоритм не для одной конкретной задачи, а для класса определенных задач, для решения которых разработан алгоритм.
Программа – это компьютерная реализация алгоритма на языке программирования, то есть перевод алгоритма на язык символов, понятный для ЭВМ. Современные компьютерные и программные средства дают возможность осуществлять не только программирование математического решения задачи, но и статическую и динамическую визуализацию решения, что позволяет глубже проникать в причины и следствия рассматриваемого явления и, следовательно, более эффек тивно управлять этим явлением или процессом.
7
Модели
Процесс принятия решений в исследовании операций состоит из
следующих этапов:
построение качественной модели исследуемого процесса или
1)
явления;
построение математической модели: выделение целевой функ
2)
ции (критерия оптимизации) и ограничений на параметры опти мизации;
исследование влияния переменных на целевую функцию и
3)
функции ограничений; корректировка модели;
сопоставление результатов расчетов и экспериментов и
4)
проверка адекватности модели реальному явлению;
оптимизация или оптимальное математическое управление
5)
процессом или явлением.
Классификация МО и задач
математического программирования
Термин «математическое программирование» объединяет классы задач по отысканию экстремумов функций нескольких переменных определенного вида при заданных ограничениях на свободные пере менные (независимые переменные, параметры оптимизации), в мате матической записи которых участвуют функции того же вида.
Существуют различные способы классификации задач математи ческого программирования (ЗМП). Чаще всего за основу классифика ции выбирают тип исследуемой функции (целевой функции, критерия оптимизации) и характер допустимого множества. Именно эти особен ности задачи оптимизации определяют выбор методов ее решения.
Различают задачи безусловной оптимизации, когда на входные переменные не накладывается никаких ограничений, и задачи условной
оптимизации: с ограничениями типа равенства и ограничениями типа неравенства, описывающими множество допустимых значений пара
метров оптимизации.
По виду целевой функции и функций ограничений задачи матема тического программирования подразделяют на задачи линейного про
граммирования (ЗЛП) и задачи нелинейного программирования (ЗНП),
к которым, в свою очередь, относятся: задачи выпуклого, квадратич ного, дробнолинейного, сепарабельного, геометрического програм мирования.
8
В ЗЛП линейными являются и целевая функция, и ограничения.
f
()
j
Если целевая функция линейна, то область определения ее совпадает с
мерным арифметическим пространством
n
n
R , и она может не дости
гать конечного экстремума в области определения. Поэтому в задаче оптимизации с линейной целевой функцией, как правило, должны присутствовать ограничения на свободные переменные.
Задача оптимизации является нелинейной, если нелинейной является целевая функция или хотя бы одна из функций в записи ограничений.
Среди ЗНП выделяется класс задач выпуклого программирования
ЗВП), которые рассматриваются в разд. 4. В ЗВП целевая функция и
(
ограничения являются выпуклыми функциями, определенными на выпуклом множестве.
В задаче квадратичного программирования ограничения линейные, а целевая функция является многочленом второй степени.
В задаче дробнолинейного программирования ограничения линей ные, а целевая функция представляет собой отношение двух линейных функций. Задача должна включать ограничения, поскольку область
определения целевой функции не совпадает с
n
R .
В задаче сепарабельного программирования целевая функция и ограничения являются сепарабельными функциями, представляющими собой сумму функций одной переменной
n
( ) ( ), , , ...,
xxxxxx

ij n
1
j

12
.
В задаче геометрического программирования целевая функция и ограничения являются позиномами, т.е. функциями вида
n
m
fx c x x x x x x
где коэффициент 0, 1, 2, , казатели степеней
не только целыми неотрицательными, как у полиномов). Область
(

ij nj
i
1
ci m , а у функций ,1,2,,
i
a могут быть любыми действительными числами
ij
j
a
ij
, , , ..., , 0
1

12
,
a
ij
x
j
n , по
определения таких функций ограничена строго положительными вещественными числами.
По размерности задачи математического программирования можно разделить на одномерные и многомерные.
9
К отдельному классу задач относят задачи дискретного программи
рования, в которых параметры оптимизации могут принимать
дискретное, в частности конечное, множество значений. Среди них –
задачи целочисленного программирования.
Выделяют классы задач параметрического, стохастического и
динамического программирования.
В задачах параметрического программирования целевая функция или функции ограничений либо и то, и другое зависят от некоторых параметров.
Если в целевой функции или в функциях ограничений на пере менные содержатся случайные величины, то такая задача относится к
задаче стохастического программирования.
Задача динамического программирования – задача, процесс нахож
дения решения которой является многоэтапным.
10
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]