Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Современные алгоритмы оптимизации автоматизированных производств. Учебное пособие.pdf
Скачиваний:
0
Добавлен:
08.09.2026
Размер:
2 Мб
Скачать
☆
МИНОБРНАУКИ РОССИИ
————————————
Федеральное государственное автономное
образовательное учреждение высшего образования
«Омский государственный технический университет»
СОВРЕМЕННЫЕ АЛГОРИТМЫ ОПТИМИЗАЦИИ
Учебное текстовое электронное издание
локального распространения
Рекомендовано редакционно-издательским советом
Омского государственного технического университета
Омск
Издательство ОмГТУ
2023
———————————————————––––—————————————
Сведения об издании: 1, 2
© ОмГТУ, 2023
1
Составители:
В. Г. Хомченко, Т. В. Гоненко, Е. А. Чигринова
Рецензент К. В. Хацевский, д-р техн. наук
Современные алгоритмы оптимизации автоматизированных производств :
учеб. пособие / Минобрнауки России, Ом. гос. техн. ун-т ; сост.: В. Г. Хомченко, Т. В. Гоненко, Е. А. Чигринова. – Омск : Изд-во ОмГТУ, 2023. – 1 CD-ROM (2,09 Мб). – Систем. требования: процессор с частотой 800 МГц и выше ; 128 Мб RAM и более ; сво­бодное место на жестком диске 300 Мб и более ; Linux / Windows XP и выше ; MacOS X
10.4 и выше ; CD/DVD-ROM-дисковод ; ПО для просмотра pdf- и mp4-файлов. – Загл. с титул. экрана.
Изложены основы теории оптимизации и методы ее практической реализации
в виде соответствующих алгоритмов. Кратко описаны классические методы линейно­го и нелинейного математического программирования и их алгоритмическое вопло­щение. На примерах объяснены принципы многокритериальной оптимизации. Уделе­но внимание современным алгоритмам поиска оптимальных решений, полученных в подражание процессам, происходящим в природе.
Издание предназначено для студентов всех форм обучения по направлению под-
готовки магистров 15.04.04 «Автоматизация технологических процессов и произ­водств».
Редактор О. В. Маер
Компьютерная верстка Ю. П. Шелехиной
Для дизайна этикетки использованы материалы
В. Г. Хомченко, Т. В. Гоненко
––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––
Сводный темплан 2023 г. © ОмГТУ, 2023 Подписано к использованию 17.10.23. Объем 2,09 Мб.
2
ОГЛАВЛЕНИЕ
ВВЕДЕНИЕ ......................................................................................................... 4
1. Критерии оценки качества проектных решений при создании систем
и средств автоматизации. Методы оптимизации ............................................ 8
1.1. Понятие оптимального проектирования.
Критериальные, штрафные и целевые функции ............................. 8
1.2. Пространство критериев и параметров. Нормализация
пространства критериев и параметров ............................................ 14
1.3. Классификация методов оптимизации проектных решений ......... 17
Вопросы для самопроверки ............................................................................. 20
2. Детерминированные методы оптимизации................................................ 21
2.1. Линейное математическое программирование ............................... 21
2.2. Нелинейное математическое программирование ........................... 31
2.2.1. Однопараметрические целевые функции ............................. 31
2.2.2. Многопараметрическая оптимизация ................................... 46
Вопросы для самопроверки ............................................................................. 54
3. Многокритериальная оптимизация ............................................................. 55
3.1. Основные положения многокритериальной оптимизации ............ 55
Вопросы для самопроверки ............................................................................. 62
4. Стохастические методы решения оптимизационных задач .................... 63
4.1. Метод Монте-Карло ........................................................................... 63
4.2. Генетические алгоритмы ................................................................... 64
4.3. Муравьиные алгоритмы..................................................................... 74
4.4. Жадные алгоритмы ............................................................................ 84
4.5. Алгоритм роя частиц ......................................................................... 88
Вопросы для самопроверки ............................................................................. 92
ЗАКЛЮЧЕНИЕ ................................................................................................. 93
БИБЛИОГРАФИЧЕСКИЙ СПИСОК ............................................................. 95
3

ВВЕДЕНИЕ

Самое ценное в научном и техническом
образовании – это развитие универсального
мыслительного аппарата, который будет служить
вам на протяжении всей жизни.
Джордж Форсайт (George Forsythe)
В современных условиях существенно повысилась ответственность
лиц, принимающих решения, за качество и своевременность выполнения проектных работ. При принятии технических (инженерных), производ­ственных и организационных решений приходится учитывать много фак­торов часто противоречивых, противоположные интересы сторон, участ­вующих в разработке проектов, и многое другое.
В связи с этим в последние десятилетия все большее значение приоб-
ретают методы математической поддержки процесса принятия решений.
Любое инженерное решение должно сопровождаться предваритель-
ным поиском такого сочетания значений параметров объекта проектиро­вания, которое при его оптимальном функционировании в процессе экс­плуатации обеспечивало бы наибольший технико-экономический эффект.
Именно создание методов поиска таких значений параметров и явля­ется предметом исследования теории оптимизации. Понятно, что и разра­ботка нового, и выбор известного метода оптимизации существенным об­разом зависят от природы проектируемого объекта или процесса и от при­нятой для их описания математической модели.
Как правило, экстремумы математических моделей инженерных задач не представляется возможным найти методами прямого дифференцирова­ния ввиду их сложности, тем более что часто эти модели являются и не дифференцируемыми. Это вынуждает проектировщиков прибегать к ис­пользованию численных методов.
Конкретные численные решения проектной задачи являются резуль­татом работы соответствующей программы, созданной на основе предва-
4
рительно разработанного алгоритма решения этой задачи и реализованной с использованием того или иного машинного языка.
Можно утверждать, что алгоритм является в определенном смысле
интерфейсом, соединяющим, стыкующим теоретические основы решения конкретной проектной задачи, ее математическую модель, и их програм­мным воплощением в кодах машинного языка. Алгоритм решения опти­мизационных задач есть инвариантное по отношению к тому или иному машинному языку описание последовательности получения численного результата, в общем случае независящее от семантики применяемого ма­шинного языка высокого уровня.
В настоящем пособии принята вербальная (словесная) форма алго­ритмической интерпретации теоретических основ методов оптимизации, не претендующая на строгую их трактовку. Это объясняется тем, что сту­денты на практических занятиях и при выполнении соответствующих за­даний должны самостоятельно, применяя стандартные начертания симво­лов, принятые для изображения операторов на блок-схемах алгоритмов, разработать подробные алгоритмы, пригодные для машинной реализации, используя вербальное представление алгоритмов лишь в качестве основы. Алгоритм, представленный блок-схемой, при реализации в машинных ко­дах часто требует более глубокого понимания будущего вычислительного процесса, чем его словесное представление. Это понимание и должен де­монстрировать студент в ходе разработки блок-схемы алгоритма.
Понятно, что в современных условиях большинство методов оптимиза­ции ориентировано на применение вычислительной техники. В некоторых программных продуктах имеются встроенные функции поиска оптимумов критериев. Например, в программном обеспечении MathCAD представлены встроенные функции Minimize (f, x1, …, xn) и Maximize (f, x1, …, xn), позво­ляющие находить значения параметров x1, …, xn, при которых функция f(x1, …, xn) имеет локальные экстремумы – соответственно минимумы и мак­симумы. В случае если функция f(x1, …, xn) есть математическая модель того или иного объекта либо процесса, эти ее экстремальные значения в зависи-
5
мости от постановки задачи и будут представлять собой оптимальные зна­чения критериев качества исследуемых объектов или процессов.
Учебная дисциплина «Современные алгоритмы оптимизации автома-
тизированных производств» в определенном смысле обобщает ряд специ­альных дисциплин, изучаемых студентами, на уровне как бакалаврской, так и магистерской подготовки. В ходе изучения данной дисциплины осуществляется подготовка студентов-магистрантов направления «Авто­матизация технологических процессов и производств» и других родствен­ных направлений в области методов поиска оптимальных проектных ре­шений при разработке систем и средств автоматизации технологических процессов и производств и, в частности, приобретение практических навыков и умений в составлении алгоритмов наиболее востребованных методов оптимизации.
При изложении учебной дисциплины ставятся и решаются следую-
щие задачи:
− приобретение студентами-магистрантами необходимых знаний
и навыков формирования критериев для оценки качества проектных ре­шений и выявления существенных параметров, влияющих на качествен­ные показатели;
− приобретение навыков разработки математических моделей, уста-
навливающих функциональные связи между критериями качества и опре­деляющими их параметрами в аналитической или иной формах;
− практическое овладение навыками алгоритмизации математических
моделей с целью поиска оптимальных проектных решений на основе как считающихся классическими, так и современных численных методов;
− практическое овладение методами разработки вычислительных
программ для решения оптимизационных задач на основе созданных сту­дентами алгоритмов с использованием языков высокого уровня, в част­ности пакетов С++, С#, Pithon и других (предполагается, что студенты владеют одним из упомянутых или другими языками высокого уровня; здесь сознательно не упомянуты MathCAD и Excel, имеющие встроенные
6
функции для поиска локальных экстремумов, поскольку цель пособия – изложить методы разработки алгоритмов (с последующим самостоятель­ным составлением вычислительных программ) для численного поиска оп­тимальных решений инженерных задач, а не использовать готовые про­граммы с программным решением в виде «черного ящика»);
− получение навыков коллективной работы при поиске оптимальных
проектных решений в области автоматизации технологических процессов и производств.
Поскольку многие инженерные задачи, как правило, представляются сложными полимодальными многопараметрическими математическими мо­делями, отличаются большими массивами входных данных, наличием раз­нообразных дополнительных условий проектирования и развитыми логиче­скими соотношениями, предлагаемые в программных продуктах встроенные функции, как правило, не могут быть использованы в достаточно больших инженерных проектах. Решение таких задач подразумевает необходимость разработки алгоритмического обеспечения для конкретного класса проектов. В связи с этим авторы пособия считают, что инженер должен быть готов к самостоятельному составлению достаточно сложных алгоритмов оптими­зации и к последующей их программной реализации.
Вполне естественно, что прежде чем приступать к поиску значений параметров, доставляющих оптимум тому или иному критерию, необхо­димо аналитически описать объект и процесс проектирования, т. е. со­здать их адекватную математическую модель, отражающую функцио­нальную связь принятого критерия качества и определяющих его свобод­ных параметров синтеза.
7
1. КРИТЕРИИ ОЦЕНКИ КАЧЕСТВА ПРОЕКТНЫХ РЕШЕНИЙ ПРИ СОЗДАНИИ СИСТЕМ И СРЕДСТВ
АВТОМАТИЗАЦИИ. МЕТОДЫ ОПТИМИЗАЦИИ
Конструктор достигает совершенства
не тогда, когда ему нечего добавить к сво-
ему детищу, а тогда, когда нечего удалить.
Джон Бентли (Jon Bentley).
Жемчужина программирования, 2002 г.
1.1. ПОНЯТИЕ ОПТИМАЛЬНОГО ПРОЕКТИРОВАНИЯ. КРИТЕРИАЛЬНЫЕ,
ШТРАФНЫЕ И ЦЕЛЕВЫЕ ФУНКЦИИ
При разработке большинства инженерных проектов ставится задача поиска оптимального варианта проектируемого объекта или процесса по тому или иному одному критерию или одновременно по нескольким кри­териям, по которым так или иначе можно оценить качество принимаемого проектного решения.
Проектирование средств и систем автоматизации также всегда вклю­чает в себя элементы оптимизации – стремление получить лучший вари­ант из возможных. Это стремление реализуется либо поиском оптималь­ного варианта структуры объекта (структурная оптимизация), либо варьи­рованием значений параметров объекта при заданной структуре (парамет­рическая оптимизация).
В настоящем учебном пособии рассматриваются вопросы параметри­ческой оптимизации.
Объектами оптимального проектирования в области автоматизации технологических процессов и производств могут быть:
− элементы систем автоматизации (микропроцессорные устройства,
программируемые логические контроллеры, интерфейсные устройства си­стем управления и т. п.);
8
− системы управления технологическими процессами и производ-
ствами (информационно-измерительные системы, системы выработки управляющих воздействий, исполнительные механизмы, программное обеспечение и т. п.);
− робототехнические комплексы;
− алгоритмы работы систем управления отдельными производствами
и предприятием в целом;
− компоновка технологического основного и вспомогательного обо-
рудования автоматизированных производств;
− планы размещения систем управления в производственных подраз-
делениях и многое другое.
В качестве критериев качества проекта при создании средств и систем
автоматизации могут выступить как технические, так и экономические показатели:
− стоимость проектируемого изделия;
− помехоустойчивость;
− производительность робототехнического комплекса;
− потребляемая изделием мощность;
− габариты и масса изделия;
− трудозатраты, необходимые для изготовления изделия;
− точность позиционирования предмета манипулирования роботом;
− быстродействие проектируемого устройства;
− надежность и ремонтопригодность проектируемого изделия;
− количество типовых и оригинальных элементов, включаемых в со-
став проектируемых систем и средств автоматизации;
− параметры переходных процессов при решении задач регулирования;
− затраты на транспортировку предметов труда и многое другое.
Таким образом, критериями оптимальности (эффективности, полезно-
сти) могут быть любые полезные признаки объекта или процесса, по кото­рым в данной проектной ситуации целесообразно оценивать их качество.
9
Критерии оптимальности, как правило, зависят от параметров двух типов:
− параметры, которые в процессе проектирования объекта разработ-
чик не может изменять. Они чаще всего задаются условиями проектиро­вания заранее и остаются неизменными в процессе поиска оптимального решения. К таким параметрам можно отнести, например, технические ха­рактеристики объекта автоматизации, заданную технологическим процес­сом циклограмму работы исполнительных механизмов машины-автомата, скорость срабатывания тех или иных средств автоматизации, постоянные времени различных устройств систем автоматизации, напряжение питания в сети, выбранную предварительно фирму-изготовитель средств и систем автоматизации и т. п. Такие параметры называют назначаемыми, задавае­мыми, а иногда априорными;
− параметры, которые в процессе проектирования объекта разработ-
чик может изменять: может выбирать, находить такие их значения, кото­рые бы доставляли оптимум (минимум или максимум) критерию оценки качества проектного решения. Такие параметры называют свободными, варьируемыми, параметрами управления и т. п. В качестве свободных па­раметров можно привести, например, коэффициенты усиления пропорци­ональной, интегральной и дифференциальной составляющих при исполь­зовании ПИД-регуляторов, выборе программируемых контроллеров и ис­полнительных механизмов, их технические характеристики и т. д. Соб­ственно поиск значений именно свободных параметров, доставляю-
щих оптимум (минимум или максимум) принятым критериям каче­ства, и составляет задачу оптимизации.
На основании изложенного критериальную функцию можно предста­вить в общем виде следующим образом:
= (, 
где =[ , … ,
]
– вектор критериев;
10
)
, (1.1)
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]