1. ECVET Training for Operatorsof IoT-enabledSmart Buildings (VET4SBO)
2018-1-RS01-KA202-000411
Ниво 2
Модул 2: Стратегии за оптимизация с цел
съответствие на критериите за качество на услугата
Раздел 2.1 Въведение в методите и стратегиите за
оптимизация
2. Въведение в методите и стратегиите за
оптимизация
• СЪДЪРЖАНИЕ
– Определение за оптимизация или математическо
програмиране в математиката,компютърнитенауки
и операционните изследвания.
– Роля на оптимизациятапри инженернитесистеми.
– Традиционниградиентнобазирани алгоритмиза
оптимизация и техните ограничения.
– Неградиентнаоптимизация,предимстваи
недостатъци.
– Метаевристина оптимизация,предимствапри
приложението й в инженернитесистеми.
https://pixabay.com/illustrations/business-
search-seo-engine-2082639/
3. Въведение в методите и стратегиите за
оптимизация
• В математиката, компютърните науки и операционните
изследвания математическата оптимизация или
математическотопрограмиране означава да се избере най-
добрият елемент (в зависимост от определен критерий) от
определен набор алтернативи[1].
» [1] Xin-She Yang, Metaheuristic Optimization, DOI: 10.4249/scholarpedia.11472.
4. Въведение в методите и стратегиите за
оптимизация
• В най-простия случай задачата на
оптимизацията се свежда до
увеличаване или намаляване на
реалната функция чрез системен избор
на въвежданитестойности от един
определен набор и изчисляване на
стойносттана функцията.
https://pixabay.com/illustrations/seo-search-
engine-optimization-1906466/
5. Математическа оптимизация
• Обобщаването на оптимизационната теория и
техниките за други формулировки
представлява широк дял от приложната
математика.
• По-общо казано, оптимизацията включва
намиране “на най-добрите възможни”
стойности на някаква обективна функция в
определена област (или входни данни),
включително различните видове обективни
функици и области.
Nicoguaro,Minimum search of Simionescu's
function,
https://en.wikipedia.org/wiki/Mathematical_optim
ization#/media/File:Nelder-Mead_Simionescu.gif
6. Определяне на задачата на оптимизацията
• Определянето на задачата на оптимизацията
включва:
– Изберете променливите да проекта
и техните граници
– Формулирайте целта (най-доброто?)
– Формулирайте пречките (ограничения?)
– Изберете адекватен алгоритъм за оптимизация
https://pixabay.com/illustrations/
digital-marketing-1563467/
7. Примери за оптимизация
• Целта на оптимизацията може да се представи най-добре с помощта на
практически примери. Те са избрани от различни области на науката,
технологията, инженеринга и математиката (STEM)[2].
• Във всеки пример трябва да се открият оптималните стойности на
зададените променливи, за да се оптимизират (увеличат или намалят)
общите разходи, които може да са свързани с разходите за производство,
печалбата, енергията, труда, разстоянието, статистическата грешка и др.
• Колкото повече променливи участват, толкова по-сложно става
проектирането.
» [2] Kamran Iqbal, Fundamental Engineering Optimization Methods, Second Edition, ISBN: 978-87-403-
0489-3.
10. Класическа деривативна оптимизация
• Според една от теоремите states that оптимумите
на неограничени проблеми се откриват в
статичните точки, в които първият дериватив или
градиент на целевата функция е равен на нула.
11. Класическа деривативна оптимизация
• По-общо казано, оптимумът може да се открие в
критичната точка, където първият дериватил или градиент
на целевата функция е равен на нула или неопределен, или
на границата на набора от възможности.
• Едно уравнение (или група уравнения) доказва, че
деривативът(ите), който е равен(и) на нула във вътрешния
оптимум, се нарича “условие от първи ред” или набор
условия от първи ред.
12. Недеривативни методи за оптимизация
• Недеривативната оптимизация е дисциплина в
математическатаоптимизация, която не използва
деривативна информация в класическия смисъл, за да
открива оптималните решения.
• Понякога информацията относно дериватива на целевата
функция f е недостъпен, ненадежден или непрактичен за
получаване.
13. Методи и стратегии за оптимизация
• Градиентните алгоритми често водят до
локален оптимум.
• Неградиентните алгоритми обикновено се
доближават до глобалния оптитум, но
изискват значително количество
предположения за функциите.
• При решаване на оптимизационните
проблеми функциите на целта и пречките
често се наричат измерения на
ефективността.
IkamusumeFan, Optimization computes maxima and
minima,https://en.wikipedia.org/wiki/Derivative-
free_optimization#/media/File:Max_paraboloid.svg
14. Глобален срещу локален оптимум
• Класическите алгоритми за оптимизация откриват
локалните максимуми и минимуми на функцията
разходи в зависимост от началната точка на
търсенето.
• Известен алгоритъм за локално търсене е методът с
изкачване на хълм, който се използва за откриване
на локалните оптимуми. Изкачването на хълм обаче
не дава гаранция, че ще бъдат открити глобалните
оптимални решения.
• Един вид стратегия за търсене е усъвършенстването
да простите алгоритми за локално търсене.
Roberto Battiti , Iterated Local Search kicks a solution out
from a local minimum,
https://en.wikipedia.org/wiki/Iterated_local_search#/me
dia/File:Iterated_local_search.png
15. Многоцелева оптимизация
• Добавянетона повече от една цел към
проблема за оптимизацията усложнява
нещата.
• Например за оптимизиране на
структурния дизайн човек би искал
дизайнът да е едновременно лек и
стабилен.
• Когато две цели си противоречат, трябва
да се направи компромис.
Pareto front Author: Johann Dréo,
https://en.wikipedia.org/wiki/Multi-
objective_optimization#/media/File:Front_pareto.svg
16. Многоцелева оптимизация
• Може да има един възможно най-лек дизайн
и един възможно най-стабилен, както и
безбройно количество компромисни дизайни
между лекотата и стабилността.
• Наборът от компромисни дизайни, които не
могат да бъдат подобрени по отношение на
един критерий, без от това да пострада друг
критерий, се нарича набор на Парето.
• Кривата, очертана от съпоставката на лекота и
стабилност, е известна като Граница на
Парето.
Pareto front Author: Johann Dréo,
https://en.wikipedia.org/wiki/Multi-
objective_optimization#/media/File:Front_pareto.svg
17. Инженерна оптимизация
• Инженерната оптимизация е тази, която използва техниките за
оптимизация, за да постигне целите на инженерния дизайн.
• Понякога я наричат също оптимизация на дизайна.
The synthesis and optimization of the adaptivesoftrobotic gripper, from Milojevi ć A.Handroos H., Tomič M., Ćojbašić Ž, Novel Smart and CompliantRobotic Gripper: Design, Modelling,
Experiments and Control, IEEE Eurocon 2019 coference, Serbia.
18. Инженерна оптимизация
• Още примери за инженерна оптимизация:
– Разработване на фризби с оптимални размери, което да лети на
възможно най-далечно разстояние,
– Оптимизиране на ветроходен маршрут,
– Оптимизиране на велосипедна рамка,
– Оптимизиране на автомобилно шаси,
– Оптимизиране на потреблението на енергия и др.
• Различни софтуерни инструменти облекчават изчисленията
(например MATLAB от MathWorks).
19. Метаевристични методи за оптимизация
• Метаевристиката е процедура от най-високо ниво, чиято
цел е евристично да търси, генерира или избере
евристичен (за частично търсене) алгоритъм,който да даде
достатъчнодобро решение за оптимизационния проблем,
особено ако информацията е непълна или несъвършена,
или пък изчислителният капацитет е ограничен[3].
» [3] Metaheuristics, Wikipedia, the free encyclopedia,
https://en.wikipedia.org/wiki/Metaheuristic
20. Метаевристични методи за оптимизация
• Метаевристиката може да използва предположения как да
се реши оптимизационният проблем и така може да е от
полза при най-различни проблеми.
• В сравнение с алгоритмитеза оптимизация и итеративните
методи, метаевристиката не гарантира, че ще бъде открито
глобалнотооптимално решение при определен клас
предмети.
21. Въдховени от природата методи за
оптимизация
• Алгоритмите със стохастични (случайни) компоненти в
миналото често бяха наричани евристични. В по-съвременната
литература обаче има тенденция те да се наричат
метаевристични. Algorithms with stochastic components were
often referred to as heuristic in the past, though the recent
literature tends to refer to them as metaheuristics.
• Всички съвременни въдхновени от природата алгоритми
обикновено се наричат метаевристика[4].
» [4] Glover, Fred W., Kochenberger, Gary A. (Eds.), Handbook of Metaheuristics, 2003,
Springer.
22. Вдъхновени от природата методи за
оптимизация
• Дизайнът на вдъхновената от природата
метаевристика е много активна област на
изследване в наши дни.
• Много съвременни метаевристики и по-
специално еволюционните изчислителни
алгоритми са вдъхновени от природните
системи.
• Природата е източник на идеи, механизми и
принципи при проектирането на изкуствените
изчислителни системи, които трябва да се
справят със сложни изчислителни проблеми.
John Gould, From "Voyage of the Beagle“, Darwin's finches,
https://en.wikipedia.org/wiki/Evolutionary_computation#/m
edia/File:Darwin's_finches_by_Gould.jpg
23. Метаевристични методи за оптимизация
• По-широко казано, евристика означава да
нещо да се открие чрез метода на пробите и
грешките.
• Метаевристиката може да се опише като
“централна стратегия, която ръководи и
модифицира евристиката при създаването на
нови решения, които са извън рамките на
традиционно генерираните с цел постигане
на локална оптималност”.
By User:Amada44 - Own work, Public Domain,
https://commons.wikimedia.org/w/index.php
?curid=3369156
24. Метаевристични методи за оптимизация
• Всички метаевристични алгоритми се основаватна
известен компромис или приблизителност и на локалното
търсене.
• Качествени решения на трудните оптимизационни
проблеми могат да се намерят достатъчночесто, но няма
гаранция, че може да се стигне до оптимално решение.
25. Метаевристични методи за оптимизация
• Най-известни метаевристики[5]:
– Генетични алгоритми,
– Симулирано закаляване,
– Оптимизация по метода на мравките,
– Алгоритъм на пчелите,
– Оптимизация на роя частици,
– Табу търсене,
– Хармонично търсене,
[5] Sörensen, Kenneth; Sevaux, Marc; Glover, Fred (2017). "A History of Metaheuristics" (PDF). In Martí, Rafael; Panos, Pardalos; Resende, Mauricio
(eds.). Handbook of Heuristics. Springer. ISBN 978-3-319-07123-7.
26. Метаевристични методи за оптимизация
• Има надежда, че тези алгоритми ще работят през
повечето време, но не и винаги.
• Почти всички метаевристични алгоритми показват
тенденция да са подходящи за глобална
оптимизация.
27. Метаевристични методи за оптимизация
• Най-известни метаевристики[5]:
– Алгоритъм на светулките,
– Алгоритъм на кукувицата,
– Оптимизация на сивия вълк,
– Алгоритъм на прилепа,
– Меметичен алгоритъм,
– Изкуствени имунни системи,
– Метод на кръстосаната ентропия,
– Бактериално фуражиране и др.
[5] Sörensen, Kenneth; Sevaux, Marc; Glover, Fred (2017). "A History of Metaheuristics" (PDF). In Martí, Rafael; Panos, Pardalos; Resende, Mauricio
(eds.). Handbook of Heuristics. Springer. ISBN 978-3-319-07123-7.
29. Избор на метаевристичен метод за
оптимизация
• Може да е трудно или дори много
трудно да се избере подходящ
метаевристичен метод за даден
проблем.
• Често е възможно няколко метода
да предложат решение, но няма
гаранция, че ще се открие най-
доброто решение.
https://pixabay.com/illustrations/phrase-saying-all-roads-lead-to-
rome-484361/
31. Отказ от отговорност
За още информация относно проекта VET4SBO посетете сайта на проекта https://smart-building-operator.eu
или нашата страница https://www.facebook.com/Vet4sbo.
Свалете мобилното ни приложение https://play.google.com/store/apps/details?id=com.vet4sbo.mobile.
Този проект (2018-1-RS01-KA202-000411) е финансиран с подкрепата на Европейскатакомисия (Програма
Еразъм+). Публикацията изразява единствено вижданията на автора и Комисията не носи отговорност за
начина, по който може да бъде употребенаинформацията, съдържащасе в нея.