Adaptace v algoritmu diferenciální evoluce

Rozměr: px
Začít zobrazení ze stránky:

Download "Adaptace v algoritmu diferenciální evoluce"

Transkript

1 OSTRAVSKÁ UNIVERZITA V OSTRAVĚ PŘÍRODOVĚDECKÁ FAKULTA KATEDRA MATEMATIKY Adaptace v algoritmu diferenciální evoluce Doktorská disertační práce Autor: Mgr. Radka Poláková Vedoucí práce: doc. Ing. Josef Tvrdík, CSc. 2014

2

3 UNIVERSITY OF OSTRAVA FACULTY OF SCIENCE DEPARTMENT OF MATHEMATICS Adaptation in differential evolution algorithm Ph.D. Thesis Author: Mgr. Radka Poláková Supervisor: doc. Ing. Josef Tvrdík, CSc. 2014

4

5 Já, níže podepsaná studentka, tímto čestně prohlašuji, že text mnou odevzdané závěrečné práce v písemné podobě i na CD nosiči je totožný s textem závěrečné práce vloženým v databázi DIPL2. Prohlašuji, že předložená práce je mým původním autorským dílem, které jsem vypracovala samostatně. Veškerou literaturu a další zdroje, z nichž jsem při zpracování čerpala, v práci řádně cituji a jsou uvedeny v seznamu použité literatury. V Ostravě dne podpis studentky

6

7 Děkuji mému vedoucímu práce docentu Josefu Tvrdíkovi za podnětné rady při výzkumu během doktorského studia i při tvorbě této závěrečné práce. Velký dík patří také mé rodině, která se mnou měla během sepisování práce velikou trpělivost a která mi v tomto procesu byla neocenitelnou podporou. V neposlední řadě také děkuji mému tatínkovi za přečtení práce a pomoc při odstranění jazykových chyb. Radka Poláková

8

9 ABSTRAKT Optimalizace je úloha objevující se ve spoustě oblastí lidské činnosti. Jedním z velmi úspěšných stochastických algoritmů pro globální optimalizaci je relativně mladý algoritmus diferenciální evoluce. Jedná se o algoritmus jednoduchý a populární. Efektivita tohoto algoritmu však velmi záleží na nastavení jeho vstupních parametrů. Často se stává, že při jeho praktickém použití je největším problémem nastavení vhodných hodnot vstupních parametrů. Z tohoto důvodu se od vzniku algoritmu objevila v literatuře řada návrhů adaptivních verzí tohoto algoritmu. Vzhledem k tomu, že existují různě náročné optimalizační problémy a také, že každý z adaptivních návrhů se jeví jako vhodný jen pro nějakou podskupinu optimalizačních problémů, stále vznikají nové verze algoritmu. Úkolem disertační práce je studium algoritmu diferenciální evoluce, existujících adaptivních mechanismů navržených k adaptaci jeho řídících parametrů a konvergence tohoto algoritmu. Dalším z cílů práce je vlastní návrh na adaptaci parametrů algoritmu nebo modifikace algoritmu, která zvýší jeho efektivitu. Kapitola 1 je úvodem do problematiky, kapitola 2 zpřesňuje cíle disertační práce, kapitola 3 se věnuje definici problému globální optimalizace. Kapitola 4 obsahuje krátký přehled nejznámějších optimalizačních algoritmů. V kapitole 5 je podrobně popsán samotný algoritmus diferenciální evoluce. V kapitolách 6 a 7 jsou popsány nejznámější adaptivní verze a modifikace algoritmu diferenciální evoluce. Kapitola 8 se věnuje základním otázkám konvergence algoritmu diferenciální evoluce. V kapitole 9 je popsáno porovnávání efektivity optimalizačních algoritmů. V kapitole 10 je uvedena definice optimalizačního problému s vázanými extrémy a popis některých známých mechanismů k řešení problémů tohoto typu. Kapitola 11 se věnuje

10 původním výsledkům autorky, porovnáním stávajících adaptivních verzí studovaného algoritmu a návrhům vlastních adaptivních verzí a modifikací diferenciální evoluce. Klíčová slova: globální optimalizace, stochastický algoritmus, diferenciální evoluce, adaptace v diferenciální evoluci, konvergence diferenciální evoluce, globální optimalizace s vázanými extrémy.

11

12 ABSTRACT As optimization is the task appearing in many fields of human activity, the global optimization deserves an attention of computer scientists since 1980s. There are many stochastic algorithms that perform the global optimization task. Differential evolution algorithm is simple yet very powerful stochastic algorithm for the global optimization that is relatively young. It is well-known, that efficiency of any stochastic algorithm strongly depends on the setting of its control parameters. It is often the case that the setting of suitable values of input parameters is the most time-consuming process in real-world global optimization problems. It was the motivation for development of several adaptive versions of differential evolution that have appeared in literature recently. As there are various optimization problems and each adaptive design is suitable only to a certain subset of optimization problems, new versions of the differential evolution algorithm are appearing permanently in literature. The aim of the thesis is to study the existing adaptive mechanisms proposed for differential evolution algorithm and the problem of convergence of this algorithm. Additional aim of the thesis is to propose a novel adaptation mechanism which increases the efficiency of differential evolution. Chapter 1 is introduction, Chapter 2 specifies the aims of thesis more precisely, and Chapter 3 formulates the definition of the global optimization problem. Chapter 4 provides a brief survey of evolutionary algorithms. The algorithm of differential evolution is described in detail in Chapter 5. The state-of-the-art of adaptive versions and the modifications of differential evolution algorithm are described in Chapters 6 and 7. Chapter 8 addresses basic questions about convergence of the differential evolution

13 algorithm. Experimental comparison of efficiency of optimization algorithms is explained in Chapter 9. The definition of constrained optimization problem and the description of some known methods for solving of these problems are introduced in Chapter 10. Chapter 11 provides origin results of author, new proposals of adaptive versions and modifications of the algorithm are presented and experimentally compared with existing adaptive versions of differential evolution. Keywords: global optimization, stochastic algorithm, differential evolution, adaptation in differential evolution, convergence of differential evolution algorithm, global optimization of constrained problems.

14

15 Obsah 1 Úvod 17 2 Cíle disertační práce 19 3 Problém globální optimalizace 20 4 Evoluční algoritmy 22 5 Diferenciální evoluce (DE) Mutace Křížení Binomické křížení Exponenciální křížení Adaptace parametrů Adaptace parametrů DE Algoritmus jde Soutěživá DE Algoritmus JADE Algoritmus SADE Algoritmus EPSDE Algoritmus CoDE Algoritmus SHADE Adaptace velikosti populace v DE Algoritmus ODE 64 8 Konvergence algoritmu diferenciální evoluce 67 15

16 9 Porovnávání efektivity algoritmů, sady testovacích problémů Optimalizační problémy s vázanými extrémy Některé mechasnismy pro algoritmy k optimalizaci problémů s vázanými extrémy Algoritmy pro optimalizační problémy s vázanými extrémy založené na DE Původní výsledky Porovnání EPSDE a soutěživé DE Efektivita adaptivních verzí DE, aplikace ODE na adaptivní verze DE Navržené adaptivní přístupy v DE Comp3jDE Soutěživá DE s oživením populace Návrhy algoritmů pro optimalizační problémy s vázanými extrémy Závěr a zhodnocení práce 123 Použitá literatura 125 Seznam prací autorky 136 Seznam obrázků 139 Seznam tabulek 140 Seznam algoritmů

17 1 Úvod V mnoha oborech lidské činnosti se řeší tzv. problém globální optimalizace. Podstatou tohoto problému je minimalizovat nebo maximalizovat nějakou známou funkci. Často se jedná o funkce, pro které nelze použít analytický způsob hledání optima, např. když funkce není diferencovatelná. V takovéto situaci existuje možnost použít nějaký stochastický optimalizační algoritmus a pokusit se nalézt optimum pomocí něho. Jedním ze stochastických algoritmů řešících problém globální optimalizace je i diferenciální evoluce. Jedná se o relativně mladý stochastický algoritmus, byl navržen Stornem a Pricem v roce 1995 [49, 50], tento algoritmus patří mezi algoritmy evoluční. Experimentální výzkumy ukazují, že jde o algoritmus, který často konverguje (najde přijatelné řešení problému) rychleji, než jiné stochastické algoritmy. Jeho rychlost konvergence, a tedy i efektivita, však silně závisí na nastavení parametrů. Pokusné nastavování parametrů algoritmu na hodnoty vhodné pro aktuálně řešený problém může být zdlouhavé a navíc k efektivitě algoritmu mohou v každé fázi evoluce přispívat různá nastavení algoritmu. Od navržení algoritmu byla z těchto důvodů předložena spousta jeho adaptivních variant či modifikací. Z nichž nejznámější a v praxi nejpoužívanější jsou [6, 30, 43, 44, 55, 59, 71, 79]. Diferenciální evoluce byla původně navržena jako algoritmus pro řešení jednoduchých optimalizačních problémů, tedy problémů, jejichž jedinou podmínkou pro hledaný extrém je definice oblasti, v níž se má extrém nacházet, přesto však existují také modifikace algoritmu určené k řešení optimalizačních problémů s vázanými extrémy [3, 20, 28, 52], tedy optimalizační problémy, u nichž je hledaný globální extrém kromě oblasti v níž má být nalezen, omezen ještě dalšími podmínkami, které musí splňovat. 17

18 V předkládané práci je podrobně popsán algoritmus diferenciální evoluce a jeho nejznámější adaptivní varianty [6, 30, 43, 44, 55, 59, 71, 79]. Dále je zde popsán vlastní návrh na adaptaci parametrů algoritmu diferenciální evoluce v kap a také návrh úpravy algoritmu lépe využívající poskytnutý výpočetní čas v kap V práci jsou dále popsány vlastní návrhy úpravy algoritmu diferenciální evoluce pro řešení optimalizačních problémů s vázanými extrémy. Autorka se v práci věnuje také diskuzi otázek konvergence algoritmu diferenciální evoluce. 18

19 2 Cíle disertační práce Této disertační práci byly při zadávání vytýčeny následující cíle. Studium algoritmu diferenciální evoluce. Studium dříve navržených adaptivních verzí algoritmu diferenciální evoluce. Studium konvergence algoritmu diferenciální evoluce a jevů s ní souvisejících. Návrh alternativního adaptivního přístupu v diferenciální evoluci. Implementace navrženého přístupu a jeho porovnání na testovacích problémech s dříve navrženými přístupy. 19

20 3 Problém globální optimalizace Problém globální optimalizace je problém nalezení souřadnic takového bodu v definičním oboru funkce, ve kterém má funkce globální extrém neboli globální optimum, tedy globální minimum či globální maximum. Úlohu nalezení globálního minima můžeme formulovat následovně. Mějme reálnou funkci f : S R, S R d. (1) Funkci f nazýváme účelovou funkcí, d je dimenze problému. Omezíme se na situaci, kdy globální minimum hledáme ve spojité oblasti d S = [a j, b j ]; a j < b j, j = 1, 2,..., d (2) j=1 a účelovou funkci f umíme vyhodnotit v každém bodě x z oblasti S. Bod x je bod globálního minima účelové funkce f v oblasti S, jestliže pro něj platí x S f(x ) f(x). (3) Spočívá-li problém optimalizace v nalezení bodu globálního maxima, jednoduše úlohu maximalizace účelové funkce f(x) převedeme na úlohu minimalizace funkce g(x) = f(x). Existují obecně známé analytické postupy, jak nalézt řešení takto definovaného problému a zdálo by se, že jeho řešení bude vždy jednoduché. Často je ale nutné řešit optimalizační problém pro účelovou funkci, pro níž je použití analytické metody obtížné nebo zcela nemožné. Jedná se o účelové funkce, které mají v řešené oblasti více lokálních minim, nebo účelové funkce, které nejsou diferencovatelné. 20

21 Analýza problému globální optimalizace [1] ukazuje, že neexistuje deterministický algoritmus pro řešení obecné úlohy tohoto problému v polynomiálním čase. K řešení optimalizačního problému se proto využívají stochastické algoritmy, zejména evolučního typu. Stochastické algoritmy nenaleznou přesné řešení problému globální optimalizace, ale dokáží se k řešení problému většinou přiblížit s přijatelnou přesností. 21

22 4 Evoluční algoritmy Nedeterministický algoritmus využívající náhodu, zkušenost, intuici a analogii se nazývá stochastický algoritmus nebo také heuristika. Takový algoritmus však na rozdíl od deterministického algoritmu nezajišt uje nalezení řešení. Stochastické algoritmy se používají také k řešení optimalizačních problémů. Stochastické algoritmy k řešení optimalizačních problémů však nezaručují poskytnutí přesného řešení takového problému, často jsou ale schopné se k tomuto řešení přiblížit a poskytnout tak řešení sice nepřesné, ale prakticky použitelné. Heuristiky k řešení optimalizačních problémů často vznikají na základě znalostí týkajících se přírodních nebo sociálních systémů, většina z nich v sobě obsahuje jakousi formu procesu učení. Z běžně známých stochastických optimalizačních algoritmů v sobě proces učení neobsahuje pouze algoritmus slepého náhodného prohledávání [19]. Algoritmus simulovaného žíhání [19] je modelem pomalého ochlazování tuhého tělesa, algoritmus tabusearch [19] modeluje hledání předmětu člověkem. Velká část stochastických optimalizačních algoritmů pracuje najednou se skupinou potenciálních řešení problému, tedy s více body z prohledávaného prostoru S současně. Každý z těchto bodů mění svou polohu v prohledávaném prostoru a posouvá se tak vždy na lepší pozici vzhledem k pozici předchozí a vzhledem k typu optimalizační úlohy. Mezi stochastické algoritmy využívající poznatků výzkumů různých sociálních skupin patří např. PSO [10], SOMA [78], algoritmus mravenčí kolonie [12] a také algoritmus ABC [18]. Algoritmus PSO využívá znalostí získaných studiem ptačích a rybích hejn. Algoritmus SOMA modeluje chování smečky divokých zvířat pronásledující kořist a algoritmus mravenčí kolonie 22

23 využívá k hledání optima model chování a spolupráce mravenců v mraveništích. Algoritmus ABC pracuje jako model včelího roje. Další třídou stochastických algoritmů řešících optimalizační problém a pracujících najednou se skupinou potenciálních řešení problému, tedy s více body z prohledávaného prostoru S současně, jsou algoritmy evoluční. Tyto algoritmy jsou v podstatě jednoduchými modely evoluční teorie vývoje populací, využívají poznatků předních vědců v oblasti biologie a genetiky, Johanna Gregora Mendela a Charlese Darwina. Množina potenciálních řešení se v nich nazývá populace. Populace se v těchto algoritmech vyvíjí z generace na generaci s využitím operátorů křížení, mutace, výběru a migrace. Každý prvek populace je v každém okamžiku běhu algoritmu jedním z možných řešení optimalizačního problému. K evolučním algoritmům se řadí např. genetické algoritmy [19], evoluční strategie [19], evoluční programování [19], řízené náhodné prohledávání, tzv. algoritmus CRS [42] a také algoritmus diferenciální evoluce. 23

24 5 Diferenciální evoluce (DE) Diferenciální evoluce (DE) [16, 41, 49, 50] je efektivní a velmi jednoduchý algoritmus. Vzhledem k jeho jednoduchosti a s ní spojené jednoduchosti jeho implementace se jedná o v praxi velmi široce využívaný algoritmus. Algoritmus DE byl navržen v polovině devadesátých let, jedná se tedy o relativně mladý algoritmus. Těší se poměrně vysokému zájmu nejen po stránce využití k řešení konkrétních optimalizačních problémů, ale i po stránce využití při vývoji nových algoritmů řešících optimalizační problém. DE pracuje s uspořádanou N-ticí bodů z prohledávané oblasti S, které se říká populace bodů a bývá označována P. Každý z bodů populace P je adeptem na řešení optimalizačního problému. Populace bodů se za běhu algoritmu vyvíjí. Tedy z g-té generace populace P se vyvine (g+1)-ní generace populace P. Na proces vývoje populace může být nazíráno i tak, že každý prvek populace se vyvíjí hledá si v po sobě jdoucích generacích populace neustále lepší a lepší umístění v prohledávané oblasti S, tedy posouvá se do místa s nižší hodnotou účelové funkce f (za předpokladu její minimalizace). Vývoj prvků populace a tedy vývoj populace probíhá s využitím evolučních operátorů mutace, křížení a výběru. Přesněji, nejdříve se vytvoří počáteční generace P 0 populace P, která se skládá z N bodů. Každý z bodů počáteční generace P 0 je vybrán náhodně (s využitím rovnoměrného rozdělení) z oblasti S. Ve všech bodech, které se takto stanou prvky počáteční generace populace P, se spočítá hodnota účelové funkce f. Poté se opakuje cyklus, v jehož těle se k aktuální generaci P g populace bodů P vytváří nová generace Q g. Když je Q g kompletní, stává se Q g následující generací P g+1 populace. Opakování cyklu probíhá až do splnění ukončovací podmínky. 24

25 Nová generace Q g se uvnitř zmíněného cyklu tvoří následujícím způsobem. Ke každému bodu x i aktuální generace P g je vytvořen pokusný bod (konkurent) y, který vznikne postupnou aplikací operací mutace a křížení s využitím některých bodů P g. Poté je vyhodnocena účelová funkce f v tomto nově získaném bodě y. Do nové generace Q g populace pak vstupuje lepší (ve smyslu řešené optimalizace) z dvojice: původní bod x i, jeho konkurent y. Tedy platí-li podmínka f(y) f(x i ), vstupuje do nové generace Q g populace nově vytvořený bod y, v opačném případě do generace Q g vstupuje původní bod x i, tedy y jestliže f(y) f(x i,g ) x i,g+1 = jinak. x i,g (4) Diferenciální evoluce je v pseudokódu zapsána v Algoritmu 1. 25

26 Algoritmus 1 Diferenciální evoluce 1: vygeneruj počáteční generaci P 0 = (x 1, x 2,..., x N ) populace P ; 2: vypočítej hodnotu účelové funkce ve všech bodech generace P 0 ; 3: g=0; 4: repeat 5: Q g = P g ; 6: for i = 1 to N do 7: vytvoř pokusný bod y k bodu x i ; 8: vypočítej hodnotu účelové funkce v bodě y; 9: if f(y) f(x i ) then 10: do Q g vlož na místo bodu x i bod y; 11: end if 12: end for 13: P g+1 = Q g ; 14: g=g+1; 15: until ukončovací podmínka; 26

27 Pokusný bod y, tzv. konkurent, k bodu x i se v DE vytváří pomocí operací mutace a křížení. Společně s návrhem algoritmu bylo předloženo několik druhů mutace a dva typy křížení [49, 50], další návrhy na mutace se objevily v pozdějších pracech různých autorů [17, 41, 79]. Při vytváření konkrétního pokusného bodu y se využívá jeden konkrétní typ mutace a jeden konkrétní typ křížení. Mutací vznikne mutant u, křížením pak z mutanta u a původního bodu x i vznikne pokusný bod y. Kombinaci konkrétního typu mutace a konkrétního typu křížení budeme nazývat DE-strategií. DEstrategii lze jednoznačně popsat zkratkou ve tvaru DE/a/b/c, kde a je použitý typ mutace, b je počet diferencí náhodně vybraných bodů (r 2 r 3 apod.) přičítaných v mutaci a, c je zkratka použitého křížení. Parametr příslušející k operaci mutace, resp. křížení budeme označovat F, resp. CR. Při splnění ukončovací podmínky se cyklus v němž se opakuje tvorba další generace populace P ukončí a výstupem algoritmu je pak nejlepší bod poslední vytvořené generace populace P, nejlepší ve smyslu optimalizačního problému. Tedy za předpokladu minimalizace účelové funkce f je řešením problému ten prvek poslední vytvořené generace populace P, v němž je hodnota účelové funkce f nejnižší. 5.1 Mutace Mutací vzniká k bodu x i populace jeho mutant u. Pro DE bylo navženo mnoho typů operace mutace [17, 50, 41, 79]. Zde uvádíme jen některé z nich. Předpokládejme, že r 1, r 2, r 3, r 4, r 5 jsou navzájem různé body, náhodně vybrané z aktuální generace P g populace, různé od bodu x i, F > 0 je vstupní parametr, x best je nejlepší bod aktuální generace P g populace. Tedy x best je takový bod aktuální generace P g populace, že pro něj platí, že hodnota 27

28 7 6 u 5 r 1 4 x r 2 1 r x 1 Obrázek 1: Mutace rand/1 v prostoru dimenze d = 2 účelové funkce f je v něm menší nebo rovna hodnotám účelové funkce v ostatních bodech aktuální generace P g populace. Typy mutace: rand/1 [50] u = r 1 + F (r 2 r 3 ) (5) Tato mutace je v praxi nejčastěji používanou mutací. Jak mutace pracuje, je zřejmé z obrázku 1. rand/2 [50] u = r 1 + F (r 2 r 3 ) + F (r 4 r 5 ) (6) Mutace rand/2 je téměř shodná s mutací rand/1, jen se v ní k náhodně vybranému bodu r 1 z aktuální generace P g populace přičítají F -násobky 28

29 dvou diferenčních vektorů na rozdíl od mutace rand/1, kde se k vektoru r 1 přičítá pouze F -násobek jediného diferenčního vektoru. best/1 [50] u = x best + F (r 1 r 2 ) (7) best/2 [50] u = x best + F (r 1 r 2 ) + F (r 3 r 4 ) (8) V mutacích best/1 a best/2 se F -násobek resp. F -násobky diferenčních vektorů nepřičítají k náhodně vybranému bodu, ale k nejlepšímu bodu populace x best. current-to-best/1 [13] u = x i + F (x best x i ) + F (r 1 r 2 ) (9) current-to-best/2 [13] u = x i + F (x best x i ) + F (r 1 r 2 ) + F (r 3 r 4 ) (10) V mutacích current-to-best/1 a current-to-best/2 je zahrnuto tzv. aritmetické křížení, a proto se v DE používají také samostatně, bez dalšího křížení. Pak negenerují mutanta u, ale přímo pokusný bod y. Aritmetickým křížením vzniká ze dvou bodů bod třetí takovou lineární kombinací, že součet koeficientů v lineární kombinaci je roven 1, zde x i + F (x best x i ) = (1 F ) x i + F x best. rand-to-best/1 [50, 43] u = r 1 + F (x best r 1 ) + F (r 2 r 3 ) (11) 29

30 rand-to-best/2 [50] u = r 1 + F (x best r 1 ) + F (r 2 r 3 ) + F (r 4 r 5 ) (12) randrl/1 [17] u = r 1 + F (r 2 r 3) (13) Mutace randrl/1 vychází z mutace rand/1. V mutaci randrl/1 se, na rozdíl od mutace rand/1, tři body náhodně vybrané z aktuální generace P g populace setřídí podle hodnoty účelové funkce a k nejlepšímu z nich (ve smyslu optimalizační úlohy) se přičte F -násobek vektoru, který vznikne rozdílem zbývajících dvou bodů z vybrané trojice bodů. Platí tedy, že f(r 1 ) f(r 2 ), f(r 3 ), a současně platí, že (r 1, r 2, r 3 ) je permutací (r 1, r 2, r 3 ). Kaelo a Ali v [17] experimentálně ověřili, že využití mutace randrl/1 ve srovnání s mutací rand/1 zvyšuje rychlost výpočtu algoritmu DE až o 30% a to bez snížení spolehlivosti výpočtu. current-to-rand/1 [30] y = x i + rand(0, 1) (r 1 x i ) + F (r 2 r 3 ) (14) rand(0, 1) je náhodné číslo z rovnoměrného rozdělení na intervalu (0, 1). V tomto typu mutace je také zahrnuto tzv. aritmetické křížení. Většinou se při jejím použití žádné další křížení neaplikuje, mutace current-to-rand/1 tudíž přímo generuje pokusný bod y. current-to-pbest/1 [79] u = x i + F (x pbest x i ) + F (r 1 r 6 ) (15) 30

31 x pbest je náhodně vybraný bod z podmnožiny aktuální generace P g populace, která obsahuje 100p% lepších prvků. p (0, 1] je vstupní parametr a jeho autory doporučená hodnota je p (0.05, 0.2] ([79]). Bod r 6 se náhodně vybírá z P g A, kde A je archív, do něhož se ukládají body, které byly v populaci nahrazeny svými (úspěšnými) konkurenty. 5.2 Křížení Křížením se v DE vytváří pokusný bod y, potomek rodičů mutanta u a bodu populace x i a to záměnou některých souřadnic bodu x i za hodnoty příslušných souřadnic mutanta u. V diferenciální evoluci se používají dva typy křížení, binomické a exponenciální, oba navržené Stornem a Pricem [50]. Binomické křížení je v praktických aplikacích DE používáno častěji než křížení exponenciální Binomické křížení Binomické křížení DE/././bin probíhá podle následujícího předpisu: u j jestliže U j CR nebo j = l y j = x ij jestliže U j > CR a zároveň j l, (16) j {1, 2,... d}. l je náhodně vybraný prvek z {1, 2,..., d}. U j, j {1, 2,... d} jsou rovnoměrně rozdělené nezávislé náhodné proměnné z [0, 1]. CR [0, 1] je vstupní parametr, parametr křížení, ovlivňující počet souřadnic bodu y, které jsou převzaty z mutanta u. Všimněme si, že tento počet je vždy nejméně 1, dokonce i když CR = 0. Tzn., že při vytváření bodu y z bodu x i je vždy zajištěna změna alespoň jedné souřadnice bodu x i. 31

32 Z předpisu, kterým se toto křížení řídí, je zřejmé, že křížené souřadnice bodu x i jsou náhodně vybírány z rovnoměrného rozdělení. Schematicky je binomické křížení znázorněno na obrázku 2. Označíme-li p m pravděpodobnost, že se hodnota jedné konkrétní souřadnice bodu x i změní na hodnotu odpovídající souřadnice mutantu u, pak můžeme říct, že tato pravděpodobnost p m je u binomického křížení v lineárním vztahu s parametrem křížení CR. Vztah mezi touto dvojicí parametrů odvodila Zaharie v [74, 76] a lze jej vyjádřit následujícím výrazem. p m = CR (1 1/d) + 1/d. (17) x i x i,1 x i,2 x i,3 x i,4 x i,5 x i,6 x i,7 x i,8 x i,9 x i,10 u u 1 u 2 u 3 u 4 u 5 u 6 u 7 u 8 u 9 u 10 y u 1 x i,2 u 3 x i,4 u 5 x i,6 x i,7 u 8 x i,9 x i,10 Obrázek 2: Binomické křížení (d = 10) Exponenciální křížení Exponenciální křížení DE/././exp pracuje následujícím způsobem. Počáteční pozice křížení p 0 se vybere náhodně z množiny {1, 2,..., d}, L po sobě jdoucích souřadnic (za d-tou souřadnicí následuje první) je převzato z mutanta u, ostatní souřadnice přecházejí do pokusného bodu y z původního bodu x i. Pravděpodobnost nahrazení první složky v posloupnosti 1, 2,..., L, tj. složky na pozici p 0 je rovna CR. Pravděpodobnost nahrazení k-té složky 32

33 v posloupnosti 1, 2,..., L (L d) klesá exponenciálně s rostoucím k. Exponenciální křížení je schematicky znázorněno na obrázku 3. Křížení tohoto typu je velmi podobné dvoubodovému křížení z genetických algoritmů [19]. x i x i,1 x i,2 x i,3 x i,4 x i,5 x i,6 x i,7 x i,8 x i,9 x i,10 u u 1 u 2 u 3 u 4 u 5 u 6 u 7 u 8 u 9 u 10 y x i,1 x i,2 x i,3 x i,4 x i,5 u 6 u 7 u 8 u 9 x i,10 Obrázek 3: Exponenciální křížení (d = 10) Vztah mezi pravděpodobností křížení p m (pravděpodobnost, že se hodnota jedné konkrétní souřadnice bodu x i změní na hodnotu odpovídající souřadnice mutantu u) a vstupním parametrem CR je pro exponenciální křížení nelineární a závisí také na dimenzi problému d. Vztah mezi těmito třemi veličinami Zaharie odvodila v [74, 76] a je popsán následující rovnicí CR d dp m CR + dp m 1 = 0. (18) Vztah proměnné p m a parametru křížení CR je pro d = 30 graficky znázorněn na obrázku 4. Je zřejmé, že je-li p m [1/d, 1] má polynom (18) v intervalu [0, 1] jediný kořen. Je-li p m = 1/d, pak CR = 0 a v takovém případě, by se pokusný bod y rovnal původnímu bodu x i, což je nežádoucí. V druhém krajním bodě intervalu [1/d, 1] je situace následující, pro p m = 1 je CR = 1 a křížení pak pracuje tak, že mutant u zcela nahradí původní bod x i, do pokusného bodu přechází všechny souřadnice mutantu u. Naposledy zmíněné lze získat také binomiálním křížením s parametrem CR = 1. Tento fakt je 33

34 exponenciální CR binomické p m Obrázek 4: Porovnání závislosti CR na pravděpodobnosti mutace p m pro binomické a exponenciální křížení, d = 30 34

35 potřeba si uvědomovat především při současném použití obou typů křížení v případných navrhovaných adaptivních verzích algoritmu DE. 35

36 6 Adaptace parametrů Eiben [14] zavádí dělení řízení hodnot parametrů evolučních algoritmů na následující tři typy: deterministické způsob řízení hodnot parametrů, ve kterém se uplatňují pravidla pro nastavení hodnot závislá např. na čase, tzn. již před spuštěním algoritmu víme, že parametr bude např. na začátku běhu algoritmu mít hodnotu vysokou, uprostřed běhu algoritmu hodnotu nižší a na konci běhu algoritmu nejnižší; k nastavení hodnot parametrů se využívají deterministická pravidla a nevyužívá se žádná forma zpětné vazby z vyhledávacího procesu, adaptivní tento typ řízení hodnot parametrů využívá zpětnou vazbu z vyhledávacího procesu, tedy parametry jsou upravovány za základě hodnot charakteristik popisujících okamžitý stav vyhledávacího procesu, samo-adaptivní toto řízení hodnot parametrů spočívá v tom, že parametry se vyvíjí spolu s prvky populace, parametry jsou zakódovány spolu s prvky populace, na takto zakódované parametry jsou společně s body aplikovány evoluční operátory; takový systém vede k tomu, že lepší hodnoty parametrů generující lepší jedince body přežívají spolu s těmito lepšími body. 6.1 Adaptace parametrů DE Parametry algoritmu diferenciální evoluce jsou: velikost populace N, typ mutace, parametr mutace F, typ křížení, parametr křížení CR a ukončovací podmínka. Efektivita algoritmu při řešení konkrétního optimalizačního 36

37 problému velmi závisí na nastavení jeho parametrů a to jak na zvolené DEstrategii (kombinaci konkrétní mutace a konkrétního typu křížení) použité ke generování pokusného bodu, tak i na hodnotách parametrů F a CR a na velikosti populace N. Storn a Price doporučovali nastavit F = 0.8 a CR = 0.5. Oni sami ale již v práci, která DE představovala [50], používali 0.5 F 1 a 0 CR 1. Také velikost populace N v některých testovacích úlohách nastavovali nižší než sami doporučovali, tedy nižší než 10d. Zaharie odvodila kritický interval pro řídící parametry DE, zajišt ující fakt, že průměrný populační rozptyl bude neklesající [73]. Ukázala, že platí vztah 2pF 2 2p N + p2 N > 0 (19) kde p = max(1/d, CR). Z tohoto vztahu pak plyne, že průměrný populační rozptyl (střední hodnota populačního rozptylu) bude neklesající, jestliže F > 1/N. Praktický význam tohoto výsledku je ale omezený, poněvadž nepřináší zásadně novou informaci ve srovnání s obvykle užívanou minimální hodnotou F = 0.5. Ze zkušeností plyne, že různým optimalizačním problémům odpovídá různé optimální nastavení parametrů DE. Je samozdřejmě možné pokusit se toto optimální nastavení parametrů algoritmu DE pro řešení konkrétního optimalizačního problému nalézt metodou pokus-omyl, tento proces však bývá velmi zdlouhavý. Navíc často různým fázím vyhledávacího procesu odpovídá různé optimální nastavení DE. Další možnost tedy je měnit hodnoty parametrů za běhu algoritmu, případně je přizpůsobit aktuální situaci ve vyhledávacím procesu, nebo je nechat vyvíjet z generace na generaci společně s body populace, tedy možnost parametry DE nějakým způsobem adaptovat. 37

38 Fakta, týkající se nejednotných doporučení k nastavení parametrů algoritmu DE, velká časová náročnost nalezení vhodných hodnot parametrů DE před jeho aplikací na konkrétní optimalizační problém a fakt, že různým fázím vyhledávacího procesu mohou odpovídat různá optimální nastavení vedly ke vzniku mnoha různých adaptivních verzí algoritmu DE. Ve zbývající části této kapitoly uvádíme ty z nich, které se řadí k nejznámějším. V prvních sedmi následujících podkapitolách jsou popsány adaptivní verze DE, ve kterých se adaptuje DE-strategie, hodnoty parametrů mutace a křížení, případně obojí. Závěr kapitoly se věnuje adaptaci velikosti populace. 6.2 Algoritmus jde Tento samo-adaptivní přístup v DE navrhli Brest a kol. v [6]. Je v něm použita jediná DE-strategie, a to strategie DE/rand/1/bin a adaptují se pouze hodnoty parametrů F a CR. Hodnoty těchto dvou parametrů jsou na začátku procesu hledání optima inicializovány náhodně pro každý bod x i (1 i N) počáteční generace populace a žijí s příslušným jedincem populace. V každé další generaci mohou být změněny s pravděpodobnostmi τ 1 a τ 2. Pokud tato změna nastane a s využitím nových hodnot parametrů F a CR je vytvořen úspěšný pokusný bod y, nová kombinace hodnot parametrů se stává novou kombinací hodnot parametrů příslušných k danému bodu x i, tedy bodu, který je nyní roven úspěšně vytvořenému pokusnému bodu y. V opačném případě, tj. s využitím nových hodnot parametrů F a CR je vytvořen pokusný bod y, který není úspěšný, pak hodnoty parametrů F a CR příslušné k bodu x i zůstávají nezměněny, tedy s bodem x i přežívají dál staré hodnoty parametrů F a CR. 38

39 Každá nová hodnota parametru křížení CR je zde vybírána z rovnoměrného rozdělení na intervalu [0, 1] a každá nová hodnota parametru mutace F z rovnoměrného rozdělení na intervalu [F l, F u ], kde F l a F u jsou vstupní parametry algoritmu. Autoři doporučují nastavit je takto: τ 1 = τ 2 = 0.1 a F l = 0.1 a F u = 0.9. Samo-adaptivní verze diferenciální evoluce jde je v pseudokódu zapsána v Algoritmu 2. 39

40 Algoritmus 2 jde 1: vygeneruj počáteční generaci P 0 = (x 1, x 2,..., x N ) populace P ; 2: vypočítej hodnotu funkce f ve všech bodech generace P 0 ; 3: přiřad ke každému bodu x i dvojici parametrů F a CR; 4: g=0; 5: repeat 6: Q g = P g ; 7: for i = 1 to N do 8: uchovej původní hodnoty parametrů F a CR bodu x i ; 9: s pravděpodobností τ 1 změň F bodu x i ; 10: s pravděpodobností τ 2 změň CR bodu x i ; 11: vytvoř pokusný bod y k bodu x i, použij jeho F a CR; 12: vypočítej hodnotu účelové funkce v bodě y; 13: if f(y) f(x i ) then 14: do Q g vlož na místo bodu x i bod y; 15: else 16: pro x i nastav F a CR na původní hodnoty; 17: end if 18: end for; 19: P g+1 = Q g ; 20: g=g+1; 21: until ukončovací podmínka; 40

41 6.3 Soutěživá DE Tento adaptivní přístup v DE navrhnul v roce 2006 Tvrdík, [59, 60]. Pracuje se v něm s několika konkrétními nastaveními algoritmu DE. Tato nastavení spolu v průběhu hledání řešení optimalizačního problému soutěží. Čím je nastavení úspěšnější, tím má větší šanci být vybráno ke generování aktuálně potřebného pokusného bodu y. V tomto přístupu se neadaptuje velikost populace N. Podrobný popis mechanismu adaptace následuje. Mějme H nastavení algoritmu DE. Před každým vytvořením pokusného bodu y se vybere náhodně jedno z těchto H nastavení. Každé z H nastavení DE může být vybráno s pravděpodobností q h, 1 h H. h-té nastavení DE je úspěšné, generuje-li pokusný bod y k původnímu bodu x i aktuální generace populace P takový, že f(y) f(x i ). Pravděpodobnosti q h jsou upravovány podle podílů úspěchů všech H nastavení v předchozích krocích takto: q h = n h + n 0 H k=1 (n, h {1, 2,..., H} (20) j + n 0 ) n h je aktuální počet úspěchů h-tého nastavení, n 0 > 1 je konstanta zabraňující příliš velkým změnám q h způsobeným náhodným úspěchem h-tého nastavení DE. Když se nějaká z q h (h {1, 2,..., H}) sníží tak, že platí q h < δ pro δ > 0 (δ je vstupní parametr algoritmu), pak jsou hodnoty q h (h {1, 2,..., H}) znovu nastaveny na své počáteční hodnoty, q h = 1/H, h {1, 2,..., H}, a také hodnoty n h, 1 h H jsou znovu nastaveny na 0. Tímto se předchází degeneraci procesu adaptace. Vstupními parametry algoritmu soutěživé DE tedy jsou: velikost populace N, parametry soutěže δ a n 0 a sada použitých nastavení DE (DEstrategie spolu s hodnotami parametrů F a CR), z níž pak plyne hodnota parametru H. Soutěživá DE je v pseudokódu zapsána v Algoritmu 3. 41

42 Algoritmus 3 Soutěživá DE 1: vygeneruj počáteční generaci P 0 = (x 1, x 2,..., x N ) populace P ; 2: vypočítej hodnotu funkce f ve všech bodech generace P 0 ; 3: nastav pravděpodobnosti q h na hodnoty 1/H; 4: g=0; 5: repeat 6: Q g = P g ; 7: for i = 1 to N do 8: vyber z H-nastavení DE s ohledem na q h (h = 1, 2,..., H); 9: vytvoř y k bodu x i s použitím vybraného nastavení DE; 10: vypočítej hodnotu účelové funkce v bodě y; 11: if f(y) f(x i ) then 12: do Q g vlož na místo bodu x i bod y; 13: zvětši příslušnou četnost úspěchů n h o 1; 14: přepočítej pravděpodobnosti q h ; 15: end if 16: end for 17: P g+1 = Q g ; 18: g=g+1; 19: until ukončovací podmínka; 42

43 Doporučená nastavení parametrů algoritmu soutěživé DE jsou: n 0 = 2, δ = 1/(5 H); velikost populace autor doporučuje nastavit v rozmezí od N = 20 do N = 5 d pro problémy s menší dimenzí a N 100 pro problémy s větší dimenzí. Na doporučeních týkajících se výběru nastavení DE soutěžících v tomto algoritmu se pracuje od jeho navržení [34, 59, 62, 63]. Podle autora se zatím nejefektivněji jeví varianta algoritmu nazvaná b6e6rl [59]. Tato varianta algoritmu soutěživé DE využívá 12 různých nastavení DE, platí tedy, že H = 12. Polovina z těchto 12-ti nastavení DE využívá DE-strategii DE/randrl/1/bin a druhá polovina DE-strategii DE/randrl/1/exp. V polovině z šesti nastavení využívajících DE-strategii DE/randrl/1/bin je parametr F nastaven na hodnotu 0.5 a ve zbývající polovině na hodnotu 0.8. Stejně tak v polovině z šesti nastavení využívajících DE-strategii DE/randrl/ 1/exp je parametr F nastaven na hodnotu 0.5 a ve zbývající polovině na hodnotu 0.8. Každé ze tří použitých nastavení DE využívajících tutéž DEstrategii a tutéž hodnotu parametru F se liší nastavením hodnoty parametru CR. Pro binomální křížení jsou, jak s hodnotou 0.5, tak s hodnotou 0.8 parametru F, použity tyto tři hodnoty parametru CR: 0, 0.5, 1. Pro křížení exponenciální jsou, jak s hodnotou 0.5, tak s hodnotou 0.8 parametru F, použity tři hodnoty parametru CR: CR1, CR2, CR3. Hodnoty CR1, CR2, CR3 jsou kořeny polynomu (18) pro p m postupně nastavené na p m1, p m2, p m3, kde p m2 = 1 + 1/d 2, p m1 = 1/d + p m 2 2, p m3 = p m (21) 2 Hodnoty p m1, p m2, p m3 jsou znázorněny na obrázku 5 vyjadřujícím závislost CR a p m pro d = 30. Přehledně jsou nastavení DE použitá v b6e6rl popsána v tabulce 1. 43

44 CR p m1 p m2 p m p m Obrázek 5: Závislost CR na pravděpodobnosti mutace p m pro exponenciální křížení a hodnoty p m1, p m2, p m3, d = 30 44

45 Tabulka 1: Nastavení DE soutěžící v b6e6rl h h-té nastavení DE použitá DE-strategie F CR 1 DE/randrl/1/bin DE/randrl/1/bin DE/randrl/1/bin DE/randrl/1/bin DE/randrl/1/bin DE/randrl/1/bin DE/randrl/1/exp 0.5 CR1 8 DE/randrl/1/exp 0.5 CR2 9 DE/randrl/1/exp 0.5 CR3 10 DE/randrl/1/exp 0.8 CR1 11 DE/randrl/1/exp 0.8 CR2 12 DE/randrl/1/exp 0.8 CR3 Algoritmus b6e6rl se v červnu 2013 zúčastnil soutěže organizované v rámci mezinárodního kongresu CEC2013 [68]. Algoritmy soutěžily za podmínek definovaných v [24] na třech úrovních dimenze, d = 10, d = 30 a d = 50. Účastníků soutěže, kteří splnily všechny stanovené podmínky, bylo celkem 21. Algoritmy založené na diferenciální evoluci se umístily na 4. [54], 7. [8], 8. [2], 9. [33], 10. [68], 11. [77], 14. [5], 15. [15] a 18. [11] místě. Algoritmus b6e6rl se tedy v této soutěži umístil na 10. místě. Nejúspěšnější adaptivní verzí DE v této soutěži byla varianta nazvaná SHADE. Této adaptivní verzi DE se budeme věnovat v kapitole

46 6.4 Algoritmus JADE Algoritmus JADE [79] autorů Zhanga a Sandersona, je další z adaptivních verzí algoritmu diferenciální evoluce. V tomto přístupu se adaptují hodnoty parametrů F a CR, pracuje se v něm s jedinou DE-strategií DE/current-topbest/1/bin a využívá se archív A. Mutace current-to-pbest/1 (15) je jakýmsi zobecněním mutace current-to-best/1 (9), při jejímž využití má diferenciální evoluce sklony k předčasné konvergenci (kap. 8). Praděpodobnost nastoupení tohoto jevu se autoři algoritmu JADE pokusili snížit zavedením archívu A a výběru jednoho z bodů množiny 100p% lepších prvků populace, který nahrazuje využití pouze jediného nejlepšího prvku populace. p (0, 1] je vstupní parametr a autory doporučená hodnota je p (0.05, 0.2]. Archív A je inicializován jako prázdná množina a během procesu hledání optima se do něj ukládá každý bod x i populace, k němuž byl vytvořen úspěšný pokusný bod y a který byl tudíž v populaci právě tímto pokusným bodem nahrazen. Archív A je po každé generaci upraven tak, aby jeho velikost byla nejvýše N. Případné zmenšení rozsahu archívu A se provádí vypuštěním potřebného počtu prvků, vypouštěné prvky jsou vybrány náhodně. Adaptace parametrů F a CR se provádí následujícím způsobem. Hodnoty obou parametrů jsou v každé generaci populace nezávisle generovány pro každý bod x i aktuální generace populace P g samostatně. Hodnoty parametru CR jsou generovány z normálního rozdělení se střední hodnotou µ CR a směrodatnou odchylkou 0.1, po vygenerování jsou ořezány do intervalu [0, 1]. Hodnoty parametru F jsou generovány z Cauchyho rozdělení s parametry (µ F, 0.1). Je-li vygenerovaná hodnota F > 1, F je nastaveno na hodnotu F = 1, v případě, že vygenerovaná hodnota F < 0, se F generuje znovu. V každé generaci se do množiny S CR uloží všechny úspěšné hodnoty 46

47 parametru CR a do množiny S F všechny úspěšné hodnoty parametru F. Obě množiny jsou na začátku vytváření každé jednotlivé generace znovu vyprázdněny (S CR =, S F = ). Hodnoty µ CR a µ F jsou na začátku běhu algoritmu nastaveny na hodnotu 0.5 a po každé generaci jsou upravovány s využitím hodnot uložených v množinách S CR a S F následujícím způsobem. µ CR (1 c) µ CR + c mean A (S CR ), µ F (1 c) µ F + c mean L (S F ), (22) kde c je parametr algoritmu, c [0, 1], mean A je aritmetický průměr, neboli Lehmerův průměr (23) prvního řádu, tj. mean L1 (24), a mean L je Lehmerův průměr druhého řádu, tj. mean L2 (25). Lehmerův průměr druhého řádu je ve výpočtu nové hodnoty µ F na rozdíl od výpočtu nové hodnoty µ CR, kde je použit Lehmerův průměr prvního řádu, zřejmě použit kvůli faktu, že hodnoty z množiny S F jsou hodnoty generované z Cauchyho rozdělení, toto rozdělení nemá střední hodnotu a aritmetický průměr je odhadem střední hodnoty. Lehmerův průměr řádu ρ je pro y = (y 1, y 2,..., y n ) definován takto: n s=1 mean Lρ (y) = (y s) ρ n s=1 (y. (23) ρ 1 s) Lehmerův průměr řádu 1 pro množinu S F (mean L1 (S F )) je tedy definován takto: mean L1 (S F ) = F F S F F S F 1 (24) a je roven aritmetickému průměru. Lehmerův průměr řádu 2 pro množinu S F (mean L2 (S F )) je definován následovně: F S mean L2 (S F ) = F F 2 F S F F. (25) Struktura právě popsané adaptivní varianty diferenciální evoluce je v pseudokódu zapsána v Algoritmu 4. 47

48 Algoritmus 4 JADE 1: vygeneruj počáteční generaci P 0 = (x 1, x 2,..., x N ) populace P ; 2: vypočítej hodnotu funkce f ve všech bodech generace P 0 ; 3: inicializuj archív A = ; 4: nastav parametr µ F Cauchyho rozdělení (µ F = 0.5); 5: nastav parametr µ CR normálního rozdělení (µ CR = 0.5); 6: g=0; 7: repeat 8: Q g = P g ; 9: vyprázdni množinu S F (S F = ); 10: vyprázdni množinu S CR (S CR = ); 11: for i = 1 to N do 12: vyber F z Cauchyho rozdělení (Cauch(µ F, 0.1)); 13: vyber CR z normálního rozdělení (N(µ CR, 0.1)) ; 14: vytvoř y k bodu x i (s využitím DE/current-to-pbest/1/bin); 15: vypočítej hodnotu účelové funkce f v bodě y; 16: if f(y) f(x i ) then 17: x i vlož do archívu A; 18: do Q g vlož na místo bodu x i bod y; 19: hodnotu F vlož do S F ; 20: hodnotu CR vlož do S CR ; 21: end if 22: end for 23: if velikost A je větší než N then 24: zmenši archív (na velikost N); 25: end if 26: uprav µ F (pro Cauchyho rozdělení, s využitím S F ); 27: uprav µ CR (pro normální rozdělení, s využitím S CR ); 28: P g+1 = Q g ; 29: g=g+1; 30: until ukončovací podmínka; 48

49 6.5 Algoritmus SADE V této adaptivní verzi algoritmu DE [43] se adaptují DE-strategie tvorby pokusného bodu y i hodnoty parametrů mutace a křížení a to vzhledem k jejich předcházejícím úspěchům v rámci evoluce. V algoritmu se využívá sada K DE-strategií, která zahrnuje strategie s různými charakteristikami. Před generováním pokusného bodu y se vybere jedna ze strategií z uvedené sady K DE-strategií a to v závislosti na aktuálních pravděpodobnostech výběru strategií p k, 1 k K, které se upravují podle úspěchů strategií v LP předchozích generacích. Pravděpodobnosti p k, 1 k K jsou inicializovány na hodnotu 1/K a v průběhu evoluce se upravují následujícím způsobem. V každé generaci G se zjist uje počet úspěšných pokusných bodů generovaných k-tou strategií ns k,g a také počet pokusných bodů neúspěšně vygenerovaných k-tou strategií nf k,g. Tyto hodnoty se pamatují z posledních LP generací a uchovávají se v tzv. paměti úspěchů a neúspěchů. Po prvních LP generacích (naplňování paměti) se v každé další generaci pravděpodobnosti p k výběru strategií upraví na základě obsahu pamětí úspěchů a neúspěchů. Pro každou generaci G, G > LP, je pak pravděpodobnost výběru k-té strategie p k,g = S k,g K m=1 S m,g (26) kde S k,g = G 1 g=g LP ns k,g G 1 g=g LP ns k,g + G 1 g=g LP nf k,g + ɛ, 1 k K, (27) S k,g reprezentuje podíl pokusných bodů úspěšně generovaných k-tou strategií za posledních LP generací. Nastavení ɛ = 0.01 předchází možnosti 49

50 nulového podílu úspěchů. Zřejmě větší podíl úspěchů v předchozích LP generacích vede k větší pravděpodobnosti aplikování dané DE-strategie v generaci G. Dále se v algoritmu SADE adaptivně nastavují hodnoty parametrů F a CR. Hodnoty parametru F se generují z normálního rozdělení N(0.5, 0.3). Hodnoty parametru CR k, k = 1, 2,..., K se vybírají z normálního rozdělení N(CRm k, 0.1), CRm k se zde upravuje na základě hodnot CR k, které vedly v předchozích generacích ke generování úspěšného pokusného bodu. CRm k je pro každou z použitých DE-strategií (k = 1, 2,..., K) inicializována na hodnotu 0.5. Posledních LP hodnot CR k, které vedly v přechozích generacích ke generování úspěšného pokusného bodu k-tou DE-strategií se ukládá do paměti CRMemory k. Po inicializaci paměti se hodnoty CRm k upravují tak, že se nastaví na hodnotu, která je rovna mediánu hodnot uložených v danou chvíli v paměti CRMemory k. V SADE, navrženém, popsaném a testovaném v [43], Qin, Huang a Suganthan použili následující čtveřici DE strategií: DE/rand/1/bin, DE/randto-best/2/bin, DE/rand/2/bin, DE/current-to-rand/1. Využity byly tedy mutace rand/1 (5), rand-to-best/2 (12), rand/2 (6), current-to-rand/1 (14) a pouze binomické křížení (kap ). Struktura adaptivní varianty SADE je v pseudokódu popsána v Algoritmu 5. 50

51 Algoritmus 5 SADE 1: vygeneruj počáteční generaci P 0 = (x 1, x 2,..., x N ) populace P ; 2: vypočítej hodnotu funkce f ve všech bodech generace P 0 ; 3: nastav pravděpodobnosti p k, k = 1, 2,..., K na hodnoty 1/K; 4: inicializuj CRm k = 0.5 pro k = 1, 2,..., K; 5: inicializuj pamět úspěchů a neúspěchů; 6: inicializuj CRMemory k ; 7: inicializuj počítadla generací G = 0, g = 0; 8: repeat 9: Q g = P g ; 10: G = G + 1; 11: nastav ns k,g = 0, nf k,g = 0 pro k = 1, 2,..., K; 12: for i = 1 to N do 13: vyber r (1 r K) s ohledem na p k, k = 1, 2,..., K; 14: vygeneruj hodnotu F z normálního rozdělení N(0.5, 0.3); 15: if pamět CRMemory r je dostatečně velká then 16: uprav CRm r ; 17: end if 18: vygeneruj hodnotu CR z N(CRm r, 0.1); 19: vytvoř pokusný bod y k bodu x i ; 20: vypočítej hodnotu účelové funkce f v bodě y; 21: if f(y) f(x i ) then 22: do Q g vlož na místo bodu x i bod y; 23: zvětši příslušné ns r,g o 1; 24: ulož aktuální CR do CRMemory r ; 25: else 26: zvětši příslušné nf r,g o 1; 27: end if 28: end for 29: P g+1 = Q g ; 30: ulož ns k,g a nf k,g pro k = 1, 2,..., K; 31: if G > LP then 32: spočítej S k,g a p k,g pro k = 1, 2,..., K; 33: p k = p k,g pro k = 1, 2,..., K; 34: end if 35: g=g+1; 36: until ukončovací podmínka; 51

52 6.6 Algoritmus EPSDE Tento samo-adaptivní přístup navrhl Mallipeddi a kol. v roce 2011 [30]. Jedná se o přístup, u kterého se předpokládá existence množiny možných hodnot parametru F, množiny možných hodnot parametru CR a množiny možných DE-strategií. Připomeňme, že DE-strategií je míněna kombinace konkrétní mutace a konkrétního křížení. Do množiny možných DE-strategií se zařazují takové DE-strategie, o kterých je známo, že mají navzájem různé charakteristiky. V tomto přístupu se neadaptuje velikost populace N. Adaptace v algoritmu EPSDE spočívá v tom, že pro každý bod x i počáteční generace populace P je náhodně vybrána DE-strategie z množiny možných DE-strategií, hodnota parametru F z množiny možných hodnot tohoto parametru a hodnota parametru CR z množiny možných hodnot parametru CR. Takto vytvořená trojice parametrů DE (DE-strategie, F, CR) se stává trojicí parametrů příslušnou k bodu x i. Pro každý bod x i populace se pak pokusný bod y tvoří s využitím trojice parametrů k němu příslušné. V případě, že se takto vytvoří úspěšný pokusný bod y, tento bod y nahradí v populaci původní bod x i a stává se tak novým x i. Trojicí parametrů příslušnou k tomuto novému x i zůstává trojice parametrů DE právě přepsaného původního bodu x i. V opačném případě, tedy v případě, že pokusný bod y není úspěšný, se bodu x i přiřadí nová trojice parametrů jedním z následujících způsobů. Bud se vygeneruje stejně jako se to provádělo v počáteční generaci populace, nebo je nová trojice parametrů náhodně vybrána z trojic parametrů uložených v paměti úspěšných trojic parametrů. Každá z uvedených možností má stejnou pravděpodobnost. Každá úspěšná trojice parametrů se ukládá do paměti úspěšných trojic parametrů. Velikost této paměti je omezena hodnotou LP. S pamětí 52

53 úspěšných trojic parametrů se pracuje následovně. Na začátku vyhledávacího procesu je prázdná. Pokud má pamět úspěšných trojic parametrů při vkládání nějaké úspěšné trojice, zatím neobsažené v této paměti, již LP prvků, nová úspěšná trojice nahrazuje v paměti náhodně vybranou v ní uloženou trojici parametrů. LP je vstupní parametr algoritmu a doporučené nastavení je LP = N. Struktura právě popsané adaptivní varianty diferenciální evoluce je v pseudokódu zapsána v Algoritmu 6. Konkrétní varianta algoritmu EPSDE popsaná v [30] pracuje se třemi DE-strategiemi v množině možných DE-strategií. Jsou to DE/best/2/bin, DE/rand/1/bin, DE/current-to-rand/1/-. Množina možných hodnot parametru F je rovna množině {0.4, 0.5, 0.6, 0.7, 0.8, 0.9}. Množina možných hodnot parametru CR je rovna množině {0.1, 0.2, 0.3, 0.4, 0.5, 0, 6, 0.7, 0.8, 0.9}. 53

54 Algoritmus 6 EPSDE 1: vygeneruj počáteční generaci P 0 = (x 1, x 2,..., x N ) populace P ; 2: vypočítej hodnotu funkce f ve všech bodech generace P 0 ; 3: přiřad ke každému bodu trojici parametrů (DE-strategie, F, CR); 4: připrav pamět k ukládání úspěšných trojic parametrů; 5: g=0; 6: repeat 7: Q g = P g ; 8: for i = 1 to N do 9: vytvoř y k x i, použij jeho trojici (DE-strategie, F, CR); 10: vypočítej hodnotu účelové funkce f v bodě y; 11: if f(y) f(x i ) then 12: do Q g vlož na místo bodu x i bod y; 13: trojici param. bodu x i vlož do paměti úspěšných trojic parametrů; 14: else 15: k x i přiřad novou trojici parametrů; 16: end if 17: end for 18: P g+1 = Q g ; 19: g=g+1; 20: until ukončovací podmínka; 54

55 6.7 Algoritmus CoDE Algoritmus CoDE navrhl v roce 2011 Wang a kol. [71]. Tento adaptivní přístup je založen na velmi jednoduchém systému adaptace parametrů DE, DE-strategie a hodnot parametrů F a CR. Také zde se neadaptuje velikost populace N. V této verzi adaptace v DE je k dispozici r DE-strategií a r dvojic parametrů (F,CR), adaptace probíhá následovně. Vždy, při potřebě vytvoření nového pokusného bodu y, se vytvoří r pokusných bodů y 1,y 2,..., y r, každý s využitím jiné DE-strategie z r možných společně s náhodně vybranou dvojicí hodnot parametrů F a CR z r možných dvojic. Jako definitivní pokusný bod y se vybere a použije nejlepší z těchto r pokusných bodů, ve smyslu řešené optimaližační úlohy. V případě minimalizace dané účelové funkce, ten bod, v němž je hodnota účelové funkce nejnižší. V algoritmu popsaném a testovaném v [71] je r = 3 a jsou použity DE-strategie: DE/rand/1/bin, DE/rand/2/bin, DE/current-to-rand/1/- a dvojice hodnot parametrů (F,CR): (1,0.1), (1,0.9), (0.8,0.2). Strukturu adaptivní varianty CoDE zachycuje Algoritmus 7. Adaptivní variantou diferenciální evoluce CoDE se velmi podrobně zabývá Tvrdík v článku [64]. Důvodem tohoto výzkumu je velmi nepřesný a nejednoznačný popis algoritmu CoDE v [71]. V [64] je popsáno několik variant algoritmu CoDE, porovnány jsou na základní testovací sadě (kap. 9), podle provedených experimentů je nejefektivnější variantou verze označovaná v [64] CoDE0, která vznikla díky nepřesnému popisu původního návrhu adaptace. Tento fakt svědčí o tom, že výkonné stochastické algoritmy pro globální optimalizaci nemusí vznikat pouze na základě spojení optimalizačních prostředků, pro jejichž využití existuje racionální vysvětlení. 55

56 Algoritmus 7 CoDE 1: vygeneruj počáteční generaci P 0 = (x 1, x 2,..., x N ) populace P ; 2: vypočítej hodnotu účelové funkce ve všech bodech generace P 0 ; 3: g=0; 4: repeat 5: Q g = P g ; 6: for i = 1 to N do 7: vytvoř pokusné body y 1,y 2,..., y r k bodu x i ; 8: vypočítej hodnoty funkce f v bodech y 1,y 2,..., y r ; 9: jako y vyber nejlepší z bodů y 1,y 2,..., y r ; 10: if f(y) f(x i ) then 11: do Q g vlož na místo bodu x i bod y; 12: end if 13: end for 14: P g+1 = Q g ; 15: g=g+1; 16: until ukončovací podmínka; 56

57 6.8 Algoritmus SHADE Další adaptivní verzí diferenciální evoluce je algoritmus SHADE [55]. Jedná se o velmi mladý algoritmus, který navrhli Tanabe a Fukanaga v roce SHADE vychází z adaptivní verze JADE (kap. 6.4), používá všechny prostředky adaptace implementované v JADE (strategii DE/current-to-pbest /1/bin, archív A, adaptaci parametrů F a CR). V SHADE se však adaptace parametrů F a CR navíc opírá o tzv. historickou kruhovou pamět. Jedná se vlastně o dvě kruhové paměti, v každé z nich je vždy uloženo posledních k nově vypočítaných prvních parametrů jednoho z využívaných rozdělení pravděpodobnosti. Tyto paměti se označují M F a M CR, velikost obou pamětí je rovna H, autory doporučená hodnota je H = N. Na začátku procesu vyhledávání jsou paměti nastaveny takto: M Fj = 0.5, M CRj = 0.5, 1 j H. Každá z hodnot uložená do pamětí M F a M CR během vyhledávacího procesu je spočítána z hodnot parametru F (v případě M F ) nebo z hodnot parametru CR (v případě M CR ) úspěšně použitých v průběhu vytváření jediné generace populace P. Další věc, kterou se algoritmy JADE a SHADE liší, je nastavení parametru p pro mutaci current-to-pbest/1. V JADE je p nastaveno na konstantní hodnotu, naopak v SHADE se p před každým dalším vytvořením pokusného bodu y nastaví na novou hodnotu. Tato hodnota je vždy vybrána z rovnoměrného rozdělení na intervalu [1/N, 0.2]. Podobně jako v JADE, také v SHADE se před každým vytvoření nového pokusného bodu y generují nové hodnoty parametrů F a CR a to následovně. Vybere se náhodně index r, 1 r H, hodnota parametru F je pak náhodné číslo z Cauchyho rozdělení s parametry M Fr a 0.1 (Cauchy(M Fr, 0.1)) a hodnota parametru CR je generována z normálního rozdělení s parametry 57

58 M CRr a 0.1 (N(M CRr, 0.1)). Je-li pokusný bod y vytvořený s využitím těchto hodnot úspěšný, pak se příslušná hodnota parametru F uloží do množiny S F a hodnota parametru CR se uloží do množiny S CR. Tímto způsobem se stejně jako v JADE uloží všechny v jedné generaci úspěšně použité hodnoty parametrů F a CR. Na začátku výpočtu nové generace se S F a S CR rovnají. Po vytvoření celé této nové generace populace P se z hodnot uložených v množinách S F a S CR vypočítají nové hodnoty prvních parametrů příslušných rozdělení µ F a µ CR, které se uloží na aktuální k-tou pozici v kruhových pamětech M F a M CR. Hodnoty těchto prvních parametrů použitých pravděpodobnostních rozdělení µ F a µ CR, které se v JADE počítají jako průměry, se v algoritmu SHADE počítají jako vážené průměry a váží se velikostí rozdílu hodnoty účelové funkce v pokusném bodě y a hodnoty účelové funkce v bodě x i, který byl v populaci tímto úspěšným pokusným bodem y nahrazen. Hodnoty M Fk a M CRk se po ukončení vytváření nové generace počítají pouze v případě, že byl během této generace vytvořen alespoň jeden úspěšný pokusný bod, pak S F = {F 1, F 2,..., F SF } a S CR = {CR 1, CR 2,..., CR SF }. Poznamenejme, že platí S F = S CR. M Fk = mean WL (S F ) když S F, (28) M CRk = mean WA (S CR ) když S CR, (29) mean WL je vážený Lehmerův průměr řádu 2, tj. mean WL (S F ) = SF m=1 w m F 2 m SF m=1 w m F m, (30) a mean WA je vážený Lehmerův průměr řádu 1 (vážený aritmetický průměr), tj. mean WA (S CR ) = S CR m=1 w m CR m, (31) 58

59 kde a w m = f m SCR h=1 f h (32) f m = f(x m ) f(y m ), (33) y m je úspěšný pokusný bod a x m je bod populace, který byl bodem y m nahrazen. Na začátku výpočtu algoritmu je k = 1. V případě, že se do kruhových pamětí po ukončení vytváření dané generace zapisuje, k se po tomto zápisu nastaví o jedničku vyšší. V případě, že takto zvýšené k je větší než H, se k nastaví na hodnotu 1. S archívem A se v SHADE pracuje podobně jako v JADE. Do archívu se ukládá každý bod x i jehož pokusný bod y byl úspěšný, tedy lepší než x i. Při každém vepisování bodu do archívu A, který již dosáhl své maximální velikosti, se vybere náhodně prvek archívu A a ten je přepsán nově vkládaným bodem x i. Adaptivní varianta diferenciální evoluce SHADE je zapsána v pseudokódu v Algoritmu 8. 59

60 Algoritmus 8 SHADE 1: vygeneruj počáteční generaci P 0 = (x 1, x 2,..., x N ) populace P ; 2: vypočítej hodnotu účelové funkce f ve všech bodech generace P 0 ; 3: H = N (velikost historických kruhových pamětí M F a M CR ); 4: inicializuj archív A = ; 5: M F = (0.5,..., 0.5) (pro první parameter Cauchyho rozdělení), M CR = (0.5,..., 0.5) (pro první parameter normálního rozdělení); 6: k = 1; 7: g = 0; 8: repeat 9: S F =, S CR =, Q g = P g ; 10: for i = 1 to N do 11: vyber r náhodně z {1, 2,..., H}; 12: generuj F z Cauch(M Fr, 0.1) a CR z rozdělení N(M CRr, 0.1) ; 13: generuj p z rovnoměrného rozdělení na intervalu [1/N, 0.2]; 14: vytvoř y pro x i, použij strategii DE/current-to-pbest/1/bin; 15: spočítej f(y); 16: if f(y) f(x i ) then 17: do Q g vlož na místo bodu x i bod y; 18: end if 19: if f(y) < f(x i ) then 20: vlož x i do archívu A; 21: vlož F do S F a CR do S CR ; 22: end if 23: end for 24: if S F then 25: spočítej novou hodnotu prvního parametru pro obě rozdělení, ulož je do M Fk a M CRk ; 26: zvětši k o jedničku; 27: if k > H then 28: k = 1; 29: end if 30: end if 31: P g+1 = Q g ; 32: g=g+1; 33: until ukončovací podmínka; 60

61 6.9 Adaptace velikosti populace v DE Mezi adaptivní verze algoritmu diferenciální evoluce, ve kterých se adaptuje parametr velikost populace N, patří např. algoritmus nazvaný dynnp-de, který užívá mechanismus redukce velikosti populace [7]. Algoritmus dynnp- DE i mechanismus redukce velikosti populace navrhli v roce 2008 Brest a Maučecová. Mechanismus redukce velikosti populace pracuje následovně. Algorimus začne pracovat s populací velikosti N, po určitém čase t (po provedení t výpočtů účelové funkce) se velikost populace zmenší na polovinu původní velikosti, tedy N N/2. Po dalším časovém úseku délky t se velikost populace opět zmenší na polovinu a tento proces se stále opakuje až do využití celkového času poskytnutého algoritmu k výpočtu. Využitý princip zmenšování velikosti populace vychází z myšlenky, že v počátečních fázích výpočtu je zapotřebí dostatečně prozkoumat prohledávanou oblast S, zatímco v pozdějších fázích výpočtu algoritmu je již důkladné prohledávání celé oblasti S méně důležité a tudíž není zapotřebí tak veliká populace. V pozdějších fázích výpočtu lze využít populaci s menším počtem prvků a tím dovolit algoritmu, aby vytvořil více generací populace a měl tak možnost nalézt řešení přesnější. Tedy, čas T poskytnutý k výpočtu algoritmu je rozdělen na N p stejných částí, T/N p = t, hodnota parametru N p je rovna počtu navzájem různých hodnot parametru velikosti populace, které se rozhodneme v algoritmu využít. Algoritmus začne pracovat s populací velikosti N a po t-výpočtech účelové funkce upraví velikost populace na polovinu její aktuální velikosti N N/2. Tato úprava probíhá tak, že se populace P = (x 1, x 2,..., x N ) rozdělí na dvě podpopulace, P 1 = (x 1, x 2,..., x N/2 ) a P 2 = (x N/2+1, x N/2+2,..., x N ) a z těchto dvou podpopulací se vytvoří nová populace P, která bude tvořena 61

62 N/2 prvky. Prvkem nové populace P bude vždy lepší z dvojice x i a x N/2+i, pro 1 i N/2. Uvedený mechanismus redukce velikosti populace lze využít v jakékoli modifikaci či adaptivní verzi DE. V práci [57] navrhl Teo dvě verze samo-adaptivního mechanismu adaptace velikosti populace N v algoritmu differenciální evoluce. V první z nich využil metodiku absolutního kódování velikosti populace N, algoritmus nazval DESAP-Abs. V druhé využil metodiku relativního kódování velikosti populace N a algoritmus nazval DESAP-Rel. V obou navržených algoritmech se adaptuje nejen velikost populace N, ale i parametry mutace a křížení η F a η CR. K adaptaci velikosti populace je v obou verzích algoritmu použit pomocný parametr π. Oba algoritmy DESAP se chovají velmi podobně. S každým prvkem populace se vždy uchovávají i hodnoty η F, η CR a π. Na začátku běhu algoritmu se provede inicializace všech proměnných, vytvoří se počáteční populace o velikosti N = 10 d, parametry η F a η CR každého bodu populace se nastaví na náhodnou hodnotu z rovnoměrného rozdělení na intervalu [0, 1]. V algoritmu DESAP-Abs se π pro každého jedince populace nastaví na hodnotu N +c zaokrouhlenou na celé číslo, c je náhodná hodnota z normovaného normálního rozdělení N(0, 1). V algoritmu DESAP-Rel se pro každý prvek populace parametr π nastaví na hodnotu vybranou náhodně z rovnoměrného rozdělení na intervalu [ 0.5, 0.5]. Po provedení inicializace se v cyklu opakuje vytváření nové generace populace bodů až do vyčerpání času přiděleného běhu algoritmu (do splnění ukončovací podmínky). Nová generace populace se tvoří v cyklu po jednom prvku až do dosažení aktuální hodnoty parametru velikosti populace N. Každý z prvků se vytvoří následujícím způsobem. Nejdříve se vyberou náhodně tři prvky aktuální populace s indexy β 1, β 2 a β 3. Pak se s pravděpodobností η β 1 CR provede křížení jak vybraných bodů, tak jejich parametrů η F, η CR i π. Vytvoří se 62

63 tak nový bod y se svými hodnotami parametrů η F, η CR a π. Pak se provede mutace tohoto bodu y i jeho parametrů η F, η CR, π s pravděpodobností η β 1 F. Následně se jako prvek nové populace vybere lepší z bodů x β1 a y. Po vytvoření populace o velikosti N se spočítá nová hodnota parametru velikosti populace N n. Pro DESAP-Abs je N n rovna aritmetickému průměru z hodnot parametrů π všech bodů aktuální populace zaokrouhleného na celé číslo. Pro algoritmus DESAP-Rel se spočítá průměr π z hodnot parametrů π všech prvků aktuální generace populace P a N n se pak rovná hodnotě N(1 + π) zaokrouhlené na celé číslo. Jeli N n < N, pak se do další generace přesouvá pouze N n nejlepších prvků právě vytvořené populace. Je-li N n > N, pak se do právě vytvořené populace navíc (N n N)-krát přidá její nejlepší bod. Nakonec se změní hodnota parametru N na novou hodnotu, tj. na N n. Algoritmus se vrací na začátek cyklu a začne generovat další generaci populace P. Po otestování obou navržených modifikací DE adaptujících velikost populace a porovnání jejich účinnosti s účinností konvenční DE s různými nastaveními velikosti populace jejich autor vyslovil závěr, že účinnost konvenční DE a DE s adaptací velikosti populace jím navrženou je v podstatě srovnatelná. Teo dále konstatoval [57], že použití absolutního kódování v algoritmu DESAP vede k větší stabilitě výsledků než použití relativního kódování. 63

64 7 Algoritmus ODE Kromě mnoha adaptivních verzí algoritmu DE existují i jiné modifikace tohoto algoritmu. Jednou z nich je algoritmus ODE, který vznikl spojením DE a mechanismu OBL (z anglického: Opposition-based Learning). Tuto modifikaci algoritmu DE navrhl v roce 2008 Rahnamayan a kol. [44]. Při jejím návrhu se autoři nechali vést následující myšlenkou. Při řešení optimalizačního problému začne DE pracovat s populací počátečních řešení problému (náhodně vybraných z oblasti S) a snaží se tuto populaci zlepšovat směrem k optimálnímu řešení problému. Proces vyhledávání skončí, když populace splňuje předem danou ukončovací podmínku. Délka výpočtu algoritmu DE záleží, kromě jiného, na bodech vybraných pro počáteční generaci populace a např. na jejich vzdálenosti od skutečného řešení problému. Prověřením takzvaných protějších řešení může výpočet začít s vhodnějšími body z oblasti S a tudíž je šance na zkrácení výpočtu algoritmu, tedy na zvýšení rychlosti jeho konvergence. Stejnou myšlenku je možné aplikovat v každé z generací populace P. K přesnému popisu algoritmu ODE je nutné zavést pojmy protější číslo, protější bod a protější množina. Je-li x [a, b] reálné číslo, protějším číslem x čísla x v intervalu [a, b] budeme nazývat číslo x = a + b x. Je-li x = (x 1, x 2,..., x d ) bod d- dimenzionální oblasti Z = d j=1 [a j, b j ]; a j < b j, j = 1, 2,..., d, tedy x j R, x j [a j, b j ], j = 1, 2,..., d. Protějším bodem x bodu x vzhledem k oblasti Z budeme nazývat bod x = ( x 1, x 2,..., x d ), když x j je protější číslo čísla x j v intervalu [a j, b j ], j, 1 j d. Protější množinou OM množiny M vzhledem k oblasti Z budeme nazývat množinu protějších bodů všech bodů množiny M vzhledem k oblasti Z. 64

65 Popisovaná modifikace diferenciální evoluce ODE je v pseudokódu zapsána v Algoritmu 9. Algoritmus ODE [44] pracuje podobně jako algoritmus DE. Jen s tím rozdílem, že po vytvoření počáteční generace P 0 populace se vytvoří její protější množina OP 0 vzhledem k oblasti S a pro definitivní počáteční generaci populace P se použije N nejlepších z 2N bodů sjednocení množin P 0 a OP 0. Podobně se provede prověření protějších bodů po vytvoření každé další generace populace P s pravděpodobností J r, tentokrát však vzhledem k dynamické oblasti, v níž se nachází body aktuální generace populace P. Tato oblast se generuje jako nejmenší d-dimenzionální kvádr v němž leží body aktuální generace populace P. J r je vstupní parametr algoritmu a jeho autory doporučovaná hodnota je J r = 0.3. Na základě experimentálních porovnání Rahnamayan, Tizhoosh a Salama v práci [44] vyslovili závěr, že algoritmus ODE je vhodnější pro řešení optimalizačních problémů vyšších dimenzí. Celkový závěr uvedené práce je konstatování, že ODE je na autory použité sadě testovacích problémů efektivnější nebo alespoň stejně efektivní jako DE. Z výsledků práce [70] je ale patrné, že aplikací mechanismu OBL na zde testované adaptivní verze diferenciální evoluce se jejich efektivita nezvýší. 65

66 Algoritmus 9 ODE 1: vygeneruj počáteční generaci P 0 = (x 1, x 2,..., x N ) populace P ; 2: vypočítej hodnotu účelové funkce ve všech bodech generace P 0 ; 3: vygeneruj protější množinu OP 0 k množině bodů P 0 vzhledem k oblasti S; 4: vypočítej hodnoty účelové funkce ve všech bodech množiny OP 0 ; 5: vyber N nejlepších bodů z P 0 OP 0 a vytvoř tak definitivní počáteční generaci P 0 populace P ; 6: g=0; 7: repeat 8: Q g = P g ; 9: for i = 1 to N do 10: vytvoř pokusný bod y k bodu x i ; 11: vypočítej hodnotu účelové funkce v bodě y; 12: if f(y) f(x i ) then 13: do Q g vlož na místo bodu x i bod y; 14: end if 15: end for 16: P g+1 = Q g ; 17: g=g+1; 18: if rand(0, 1) < J r then 19: vytvoř protější množinu OP g k množině bodů P g ; 20: nová P g je množina N nejlepších bodů P g OP g ; 21: end if 22: until ukončovací podmínka; 66

67 8 Konvergence algoritmu diferenciální evoluce Konvergencí algoritmu DE se rozumí jeho přibližování se k řešení při běhu pro konkrétní optimalizační problém, tedy podoba závislosti chyby řešení na čase. Čas se v tomto případě nejčastěji udává v jednotkách počtu výpočtů optimalizované účelové funkce. Prvním z důvodů pro výběr této jednotky k měření času v oblasti optimalizačních algoritmů je častá jednoduchost těchto algoritmů a s tím související fakt, že výpočet hodnoty účelové funkce pak bývá jednou z časově nejnáročnějších operací optimalizačního algoritmu. Druhým důvodem pro výběr této jednotky pro měření času je potřeba možnosti porovnání optimalizačních algoritmů běžících na různých počítačích, případně v jiných prostředích. Konvergencí algoritmu DE se ale také rozumí tzv. teoretická konvergence algoritmu. Tento termín popisuje fakt, kdy za předpokladu nekonečného času poskytnutého výpočtu algoritmu, tedy nekonečného počtu možných provedení výpočtu optimalizované funkce, neboli nekonečného počtu G vytvořených generací populace P se nalezené řešení x G daného optimalizačního problému blíží skutečnému bodu globálního minima x optimalizované účelové funkce f s pravděpodobností 1. lim P (x G x ) = 1, (34) G x G je řešení algoritmu v G-té generaci populace P. S konvergencí DE, tak jako i jiných evolučních algoritmů, úzce souvisí jevy stagnace a předčasná konvergence. Tyto dva pojmy se v pracech týkajících se evolučních algorimů běžně používají, přestože jejich význam nebyl přesně stanoven. V oblasti teoretického výzkumu algoritmu diferenciální evoluce se také často zmiňuje pojem diverzita populace a s ní související 67

68 pojmy populační průměr a populační rozptyl [75]. Populace bodů v DE je množina d-rozměrných vektorů. Populace se vyvíjí v každém z d rozměrů nezávisle na ostatních rozměrech, proto je možné uvažovat pouze jediný z rozměrů a populaci vnímat jako jednorozměrnou náhodnou veličinu. Pak lze uvažovat i populační průměr a populační rozptyl. Pojem diverzita populace pak souvisí s populačním rozptylem, se snižujícím se populačním rozptylem se snižuje diverzita populace a naopak. Pojmy stagnace a předčasná konvergence se nejčastěji používají v následujícím významu. Pojem stagnace se pojí s výpočtem evolučního algoritmu pro konkrétní optimalizační problém a popisuje situaci, kdy se populace bodů neblíží (nekonverguje) k žádnému bodu, populace tedy neztratila diverzitu, ale nijak se dál nevyvíjí. Tzn. existuje G-tá generace P G populace P a platí, že každá z generací P G+1, P G+2, P G+3,... populace P následujících po G-té generaci P G je s generací P G totožná. Riziko nastoupení tohoto jevu při běhu DE ovlivňuje spousta faktorů. Jsou to hodnoty řídících parametrů DE, tedy N, F, CR, použitá strategie (kombinace mutace a křížení), ale i tvar účelové funce f a aktuální složení populace. Účelová funkce je však při řešení konkrétního optimalizačního problému dána a aktuální složení populace velmi závisí na náhodě. Uživatel je tedy schopen řídit pouze výběr strategie a hodnoty parametrů N, F a CR. Uvažujme zde nastavení DE s DE-strategií DE/rand/1/bin. Nastavením vhodné, tj. dostatečně vysoké, hodnoty parametru N lze stagnaci, jak v [21] uvádějí Lampinen a Zelinka, úspěšně předcházet. Nastoupení tohoto jevu totiž do značné míry souvisí s počtem všech možných různých pokusných bodů y, které lze k bodu x i vytvořit. Tento počet zase velmi úzce souvisí s počtem bodů v populaci. Čím menší je hodnota parametru N, tím větší je riziko stagnace algoritmu DE. V souvislosti s možností objevení se jevu stagnace se také nedoporučuje 68

69 volit hodnotu parametru mutace F rovnu 1, hodnotu parametru křížení CR se doporučuje volit různou od hodnot 0 a 1 [21]. Totiž, při nastavení CR = 0 lze z každé náhodně vybrané trojice bodů populace r 1, r 2, r 3 k bodu x i vytvořit pouze d různých pokusných bodů. Při nastavení CR = 1 se počet různých pokusných bodů y vytvořených k bodu x i pomocí vybrané trojice r 1, r 2 a r 3 dokonce rovná 1. Nastavení F = 1 (opět za předpokladu nastavení DE s DE-strategií DE/rand/1/bin) také snižuje počet možných různých pokusných bodů y k bodu x i v aktuální populaci. Představme si situaci, že se k bodu x i jako r 1, r 2, r 3 poprvé vybere uspořádaná trojice bodů (x A, x B, x C ) a jindy uspořádaná trojice bodů (x B, x A, x C ). Pak v případě, že F = 1, platí x A + F (x B x C ) = x B + F (x A x C ) a tedy dva různě vytvořené pokusné body se rovnají. Z výše uvedeného plyne, že nastavení F = 1 se z hlediska stagnace nedoporučuje, protože také snižuje počet všech možných různých pokusných bodů y, které lze k danému bodu x i vytvořit. Pojem předčasná konvergence se používá pro jev, který je charakterizován tím, že populace ztratila diverzitu a konverguje (blíží se) k bodu lokálního optima, nebo k jinému bodu, který není globálním optimem. Na tomto místě je zapotřebí zmínit, že důkaz teoretické konvergence algoritmu diferenciální evoluce zatím v literatuře nebyl předložen. Co se týká důkazu teoretické konvergence jiných stochastických optimalizačních algoritmů, tak např. v [65] Mišík předložil důkaz teoretické konvergence algoritmu CRS se soutěžícími heuristikami. Uvažujme algoritmus slepého náhodného prohledávání, jednoduchou úvahou lze ukázat, že se také jedná o teoreticky konvergentní optimalizační algoritmus. Otázkou však zůstává to, jak důležitá je existence formálního důkazu konvergence optimalizačního algoritmu pro jeho praktické využití. Vezměme tedy např. algoritmus slepého 69

70 náhodného prohledávání, který je teoreticky konvergentní, tento fakt však nijak nezvyšuje efektivitu tohoto algoritmu při jeho praktickém použití pro konkrétní optimalizační problém. 70

71 9 Porovnávání efektivity algoritmů, sady testovacích problémů Podle tzv. No Free Lunch teorému [72] neexistuje univerzálně nejlepší optimalizační algoritmus. Tzn., neexistuje optimalizační algotimus, který by v porovnání s ostatními pracoval nejefektivněji při řešení jakéhokoli optimalizačního problému. I tento fakt vede k neustálému zdokonalování existujících optimalizačních algoritmů a vývoji dalších nových. Protože existuje spousta optimalizačních algoritmů a stále vznikají další, existuje i potřeba je porovnávat, resp. porovnávat jejich efektivitu. K porovnávání efektivity optimalizačních algoritmů se využívají testovací problémy, častěji sady takovýchto testovacích problémů. Sadou testovacích problémů je množina optimalizačních problémů, u kterých je známo řešení. Pro každý z množiny optimalizačních problémů je definována účelová funkce f, d- rozměrná prohledávaná oblast S a bod x, který je bodem globálního minima účelové funkce f v oblasti S. Testovací problémy, resp. sady testovacích problémů se pak využívají tak, že všechny porovnávané algoritmy necháme po řadě řešit všechny testovací problémy, zpravidla v několika úrovních dimenze. Testované algoritmy jsou algoritmy stochastické, proto každý z porovnávaných algoritmů necháme každý z testovacích optimalizačních problémů řešit n-krát. Poté přichází na řadu statistické porovnání dosažených výsledků jednotlivých algoritmů pro každý z testovacích problémů. Experimentální porovnání dvou nebo více optimalizačních algoritmů se nejčastěji provádí na některé z širší komunitou uznávaných testovacích sad optimalizačních problémů. V každé z testovacích sad bývají obsaženy různě složité optimalizační problémy, a to jak z hlediska modality účelové funkce 71

72 f (unimodální i multimodální), tak i z hlediska její separability (separabilní i neseparabilní). Unimodální funkcí se rozumí funkce f, která má v prohledávané oblasti S jediné lokální minimum a to je tedy i globálním minimem. Multimodální funkcí se rozumí funkce, která má v prohledávané oblasti více než jedno lokální minimum. Funkce f je separabilní, když existují funkce f 1, f 2,..., f d a platí: d f(x) = f(x 1, x 2,..., x d ) = f j (x j ). (35) V opačném případě se jedná o funkci neseparabilní. Jedna z dříve často využívaných testovacích sad optimalizačních problémů sestává z šesti testovacích problémů. Jedná se o optimalizační problémy, které řeší optimalizační problém s účelovými funkcemi známými pod jmény De Jong, Ackley, Griewangk, Rastrigin, Schwefel, Rosenbrock. Uvedené optimalizační problémy jsou definovány následovně (účelová funkce f, prohledávaná oblast S, bod globálního minima x, hodnota účelové funkce v bodě globálního minima f(x )): j=1 První De Jongova funkce (unimodální, separabilní) d f(x) = x 2 j (36) j=1 x j [ 5.12, 5.12], x = (0, 0,..., 0), f(x ) = 0 Ackleyho funkce (multimodální, neseparabilní) f(x) = 20 exp d x 2 j d j=1 72

73 exp 1 d d cos 2πx j exp(1) (37) j=1 x j [ 30, 30], x = (0, 0,..., 0), f(x ) = 0 Griewankova funkce (multimodální, neseparabilní) f(x) = d x 2 d j 4000 j=1 j=1 x j [ 400, 400], x = (0, 0,..., 0), f(x ) = 0 ( ) xj cos + 1 (38) j Rastriginova funkce (multimodální, separabilní) f(x) = 10d + d [x 2 j 10 cos (2πx j )] (39) j=1 x j [ 5.12, 5.12], x = (0, 0,..., 0), f(x ) = 0 Rosenbrockova funkce (unimodální, neseparabilní) d 1 f(x) = [100(x 2 j x j+1 ) 2 + (1 x j ) 2 ] (40) j=1 x j [ 2048, 2048], x = (1, 1,..., 1), f(x ) = 0 Schwefelova funkce (multimodální, separabilní) f(x) = d j=1 x j [ 500, 500], x = (s, s,..., s), s = , f(x ). = d x j sin x j (41) 73

74 60 40 f(x) x x 1 Obrázek 6: Část grafu První De Jongovy funkce, d = f(x) x x Obrázek 7: Část grafu Ackleyho funkce, d = 2 74

75 f(x) x x 1 Obrázek 8: Část grafu Griewankovy funkce, d = f(x) x x Obrázek 9: Část grafu Rastriginovy funkce, d = 2 75

76 1500 f(x) x 2 x 1 Obrázek 10: Část grafu Rosenbrockovy funkce, d = 2 Obrázek 11: Část grafu Schwefelovy funkce, d = 2 76

Projekční algoritmus. Urychlení evolučních algoritmů pomocí regresních stromů a jejich zobecnění. Jan Klíma

Projekční algoritmus. Urychlení evolučních algoritmů pomocí regresních stromů a jejich zobecnění. Jan Klíma Urychlení evolučních algoritmů pomocí regresních stromů a jejich zobecnění Jan Klíma Obsah Motivace & cíle práce Evoluční algoritmy Náhradní modelování Stromové regresní metody Implementace a výsledky

Více

Jak se matematika poučila v biologii

Jak se matematika poučila v biologii Jak se matematika poučila v biologii René Kalus IT4Innovations, VŠB TUO Role matematiky v (nejen) přírodních vědách Matematika inspirující a sloužící jazyk pro komunikaci s přírodou V 4 3 r 3 Matematika

Více

Navrženy v 60. letech jako experimentální optimalizační metoda. Velice rychlá s dobrou podporou teorie

Navrženy v 60. letech jako experimentální optimalizační metoda. Velice rychlá s dobrou podporou teorie Evoluční strategie Navrženy v 60. letech jako experimentální optimalizační metoda Založena na reálných číslech Velice rychlá s dobrou podporou teorie Jako první zavedla self-adaptation (úpravu sebe sama)

Více

Markov Chain Monte Carlo. Jan Kracík.

Markov Chain Monte Carlo. Jan Kracík. Markov Chain Monte Carlo Jan Kracík jan.kracik@vsb.cz Princip Monte Carlo integrace Cílem je (přibližný) výpočet integrálu I(g) = E f [g(x)] = g(x)f (x)dx. (1) Umíme-li generovat nezávislé vzorky x (1),

Více

Numerické metody a programování. Lekce 8

Numerické metody a programování. Lekce 8 Numerické metody a programování Lekce 8 Optimalizace hledáme bod x, ve kterém funkce jedné nebo více proměnných f x má minimum (maximum) maximalizace f x je totéž jako minimalizace f x Minimum funkce lokální:

Více

Aplikovaná numerická matematika

Aplikovaná numerická matematika Aplikovaná numerická matematika 6. Metoda nejmenších čtverců doc. Ing. Róbert Lórencz, CSc. České vysoké učení technické v Praze Fakulta informačních technologií Katedra počítačových systémů Příprava studijních

Více

VYUŽITÍ PRAVDĚPODOBNOSTNÍ METODY MONTE CARLO V SOUDNÍM INŽENÝRSTVÍ

VYUŽITÍ PRAVDĚPODOBNOSTNÍ METODY MONTE CARLO V SOUDNÍM INŽENÝRSTVÍ VYUŽITÍ PRAVDĚPODOBNOSTNÍ METODY MONTE CARLO V SOUDNÍM INŽENÝRSTVÍ Michal Kořenář 1 Abstrakt Rozvoj výpočetní techniky v poslední době umožnil také rozvoj výpočetních metod, které nejsou založeny na bázi

Více

Evoluční algoritmy. Podmínka zastavení počet iterací kvalita nejlepšího jedince v populaci změna kvality nejlepšího jedince mezi iteracemi

Evoluční algoritmy. Podmínka zastavení počet iterací kvalita nejlepšího jedince v populaci změna kvality nejlepšího jedince mezi iteracemi Evoluční algoritmy Použítí evoluční principů, založených na metodách optimalizace funkcí a umělé inteligenci, pro hledání řešení nějaké úlohy. Populace množina jedinců, potenciálních řešení Fitness function

Více

PŘEDNÁŠKA 03 OPTIMALIZAČNÍ METODY Optimization methods

PŘEDNÁŠKA 03 OPTIMALIZAČNÍ METODY Optimization methods CW057 Logistika (R) PŘEDNÁŠKA 03 Optimization methods Ing. Václav Venkrbec skupina obecných modelů slouží k nalezení nejlepšího řešení problémů a modelovaných reálií přináší řešení: prvky konečné / nekonečné

Více

10. cvičení z PST. 5. prosince T = (n 1) S2 X. (n 1) s2 x σ 2 q χ 2 (n 1) (1 α 2 ). q χ 2 (n 1) 2. 2 x. (n 1) s. x = 1 6. x i = 457.

10. cvičení z PST. 5. prosince T = (n 1) S2 X. (n 1) s2 x σ 2 q χ 2 (n 1) (1 α 2 ). q χ 2 (n 1) 2. 2 x. (n 1) s. x = 1 6. x i = 457. 0 cvičení z PST 5 prosince 208 0 (intervalový odhad pro rozptyl) Soubor (70, 84, 89, 70, 74, 70) je náhodným výběrem z normálního rozdělení N(µ, σ 2 ) Určete oboustranný symetrický 95% interval spolehlivosti

Více

Úloha - rozpoznávání číslic

Úloha - rozpoznávání číslic Úloha - rozpoznávání číslic Vojtěch Franc, Tomáš Pajdla a Tomáš Svoboda http://cmp.felk.cvut.cz 27. listopadu 26 Abstrakt Podpůrný text pro cvičení předmětu X33KUI. Vysvětluje tři způsoby rozpoznávání

Více

Datové struktury 2: Rozptylovací tabulky

Datové struktury 2: Rozptylovací tabulky Datové struktury 2: Rozptylovací tabulky prof. Ing. Pavel Tvrdík CSc. Katedra počítačových systémů Fakulta informačních technologií České vysoké učení technické v Praze c Pavel Tvrdík, 2010 Efektivní algoritmy

Více

Dobývání znalostí. Doc. RNDr. Iveta Mrázová, CSc. Katedra teoretické informatiky Matematicko-fyzikální fakulta Univerzity Karlovy v Praze

Dobývání znalostí. Doc. RNDr. Iveta Mrázová, CSc. Katedra teoretické informatiky Matematicko-fyzikální fakulta Univerzity Karlovy v Praze Dobývání znalostí Doc. RNDr. Iveta Mrázová, CSc. Katedra teoretické informatiky Matematicko-fyzikální fakulta Univerzity Karlovy v Praze Dobývání znalostí Pravděpodobnost a učení Doc. RNDr. Iveta Mrázová,

Více

Hledání extrémů funkcí

Hledání extrémů funkcí Hledání extrémů funkcí Budeme se zabývat téměř výhradně hledáním minima. Přes nost nalezeného extrému Obecně není hledání extrému tak přesné jako řešení rovnic. Demonstrovat to můžeme na příkladu hledání

Více

1. Statistická analýza dat Jak vznikají informace Rozložení dat

1. Statistická analýza dat Jak vznikají informace Rozložení dat 1. Statistická analýza dat Jak vznikají informace Rozložení dat J. Jarkovský, L. Dušek, S. Littnerová, J. Kalina Význam statistické analýzy dat Sběr a vyhodnocování dat je způsobem k uchopení a pochopení

Více

Matematika pro informatiky

Matematika pro informatiky (FIT ČVUT v Praze) Konvexní analýza 13.týden 1 / 1 Matematika pro informatiky Jaroslav Milota Fakulta informačních technologíı České vysoké učení technické v Praze Letní semestr 2010/11 Extrémy funkce

Více

5. Lokální, vázané a globální extrémy

5. Lokální, vázané a globální extrémy 5 Lokální, vázané a globální extrémy Studijní text Lokální extrémy 5 Lokální, vázané a globální extrémy Definice 51 Řekneme, že f : R n R má v bodě a Df: 1 lokální maximum, když Ka, δ Df tak, že x Ka,

Více

Definice. Vektorový prostor V nad tělesem T je množina s operacemi + : V V V, tj. u, v V : u + v V : T V V, tj. ( u V )( a T ) : a u V které splňují

Definice. Vektorový prostor V nad tělesem T je množina s operacemi + : V V V, tj. u, v V : u + v V : T V V, tj. ( u V )( a T ) : a u V které splňují Definice. Vektorový prostor V nad tělesem T je množina s operacemi + : V V V, tj. u, v V : u + v V : T V V, tj. ( u V )( a T ) : a u V které splňují 1. u + v = v + u, u, v V 2. (u + v) + w = u + (v + w),

Více

a počtem sloupců druhé matice. Spočítejme součin A.B. Označme matici A.B = M, pro její prvky platí:

a počtem sloupců druhé matice. Spočítejme součin A.B. Označme matici A.B = M, pro její prvky platí: Řešené příklady z lineární algebry - část 1 Typové příklady s řešením Příklady jsou určeny především k zopakování látky před zkouškou, jsou proto řešeny se znalostmi učiva celého semestru. Tento fakt se

Více

V předchozí kapitole jsme podstatným způsobem rozšířili naši představu o tom, co je to číslo. Nadále jsou pro nás důležité především vlastnosti

V předchozí kapitole jsme podstatným způsobem rozšířili naši představu o tom, co je to číslo. Nadále jsou pro nás důležité především vlastnosti Kapitola 5 Vektorové prostory V předchozí kapitole jsme podstatným způsobem rozšířili naši představu o tom, co je to číslo. Nadále jsou pro nás důležité především vlastnosti operací sčítání a násobení

Více

Metaheuristiky s populacemi

Metaheuristiky s populacemi Metaheuristiky s populacemi 8. března 2018 1 Společné vlastnosti 2 Evoluční algoritmy 3 Optimalizace mravenčí kolonie Zdroj: El-Ghazali Talbi, Metaheuristics: From Design to Implementation. Wiley, 2009.

Více

Dijkstrův algoritmus

Dijkstrův algoritmus Dijkstrův algoritmus Hledání nejkratší cesty v nezáporně hranově ohodnoceném grafu Necht je dán orientovaný graf G = (V, H) a funkce, která každé hraně h = (u, v) H přiřadí nezáporné reálné číslo označované

Více

Základy umělé inteligence

Základy umělé inteligence Základy umělé inteligence Automatické řešení úloh Základy umělé inteligence - prohledávání. Vlasta Radová, ZČU, katedra kybernetiky 1 Formalizace úlohy UI chápe řešení úloh jako proces hledání řešení v

Více

Bakalářská matematika I

Bakalářská matematika I 1. Funkce Diferenciální počet Mgr. Jaroslav Drobek, Ph. D. Katedra matematiky a deskriptivní geometrie Bakalářská matematika I Některé užitečné pojmy Kartézský součin podrobnosti Definice 1.1 Nechť A,

Více

Časová a prostorová složitost algoritmů

Časová a prostorová složitost algoritmů .. Časová a prostorová složitost algoritmů Programovací techniky doc. Ing. Jiří Rybička, Dr. ústav informatiky PEF MENDELU v Brně rybicka@mendelu.cz Hodnocení algoritmů Programovací techniky Časová a prostorová

Více

Úvod do optimalizace, metody hladké optimalizace

Úvod do optimalizace, metody hladké optimalizace Evropský sociální fond Investujeme do vaší budoucnosti Úvod do optimalizace, metody hladké optimalizace Matematika pro informatiky, FIT ČVUT Martin Holeňa, 13. týden LS 2010/2011 O čem to bude? Příklady

Více

REGRESNÍ ANALÝZA V PROSTŘEDÍ MATLAB

REGRESNÍ ANALÝZA V PROSTŘEDÍ MATLAB 62 REGRESNÍ ANALÝZA V PROSTŘEDÍ MATLAB BEZOUŠKA VLADISLAV Abstrakt: Text se zabývá jednoduchým řešením metody nejmenších čtverců v prostředí Matlab pro obecné víceparametrové aproximační funkce. Celý postup

Více

AVDAT Nelineární regresní model

AVDAT Nelineární regresní model AVDAT Nelineární regresní model Josef Tvrdík Katedra informatiky Přírodovědecká fakulta Ostravská univerzita Nelineární regresní model Ey i = f (x i, β) kde x i je k-členný vektor vysvětlujících proměnných

Více

Kombinatorická minimalizace

Kombinatorická minimalizace Kombinatorická minimalizace Cílem je nalézt globální minimum ve velké diskrétní množině, kde může být mnoho lokálních minim. Úloha obchodního cestujícího Cílem je najít nejkratší cestu, která spojuje všechny

Více

Úvod do optimalizace Matematické metody pro ITS (11MAMY)

Úvod do optimalizace Matematické metody pro ITS (11MAMY) Úvod do optimalizace Matematické metody pro ITS (11MAMY) Jan Přikryl (volně dle M.T. Heathe) 10. přednáška 11MAMY úterý 22. března 2016 verze: 2016-04-01 16:10 Obsah Optimalizační problém 1 Definice 1

Více

ADAPTIVNÍ ALGORITMUS PRO ODHAD PARAMETRŮ NELINEÁRNÍCH REGRESNÍCH MODELŮ

ADAPTIVNÍ ALGORITMUS PRO ODHAD PARAMETRŮ NELINEÁRNÍCH REGRESNÍCH MODELŮ ADAPTIVNÍ ALGORITMUS PRO ODHAD PARAMETRŮ NELINEÁRNÍCH REGRESNÍCH MODELŮ Josef Tvrdík Katedra informatiky, Přírodovědecká fakulta, Ostravská univerzita, 30. dubna 22, 701 03 Ostrava e-mail: tvrdik@osu.cz

Více

Faster Gradient Descent Methods

Faster Gradient Descent Methods Faster Gradient Descent Methods Rychlejší gradientní spádové metody Ing. Lukáš Pospíšil, Ing. Martin Menšík Katedra aplikované matematiky, VŠB - Technická univerzita Ostrava 24.1.2012 Ing. Lukáš Pospíšil,

Více

Matematika (KMI/PMATE)

Matematika (KMI/PMATE) Úvod do matematické analýzy Funkce a její vlastnosti Funkce a její vlastnosti Veličina Veličina - pojem, který popisuje kvantitativní (číselné) vlastnosti reálných i abstraktních objektů. Funkce a její

Více

INVESTICE DO ROZVOJE VZDĚLÁVÁNÍ. Modernizace studijního programu Matematika na PřF Univerzity Palackého v Olomouci CZ.1.07/2.2.00/28.

INVESTICE DO ROZVOJE VZDĚLÁVÁNÍ. Modernizace studijního programu Matematika na PřF Univerzity Palackého v Olomouci CZ.1.07/2.2.00/28. INVESTICE DO ROZVOJE VZDĚLÁVÁNÍ Modernizace studijního programu Matematika na PřF Univerzity Palackého v Olomouci CZ.1.07/2.2.00/28.0141 Báze vektorových prostorů, transformace souřadnic Michal Botur Přednáška

Více

KOAGULAČNÍ PROCESY PŘI ÚPRAVĚ POVRCHOVÉ VODY

KOAGULAČNÍ PROCESY PŘI ÚPRAVĚ POVRCHOVÉ VODY UNIVERZITA PARDUBICE FAKULTA CHEMICKO-TECHNOLOGICKÁ KATEDRA CHEMICKÉHO INŽENÝRSTVÍ KOAGULAČNÍ PROCESY PŘI ÚPRAVĚ POVRCHOVÉ VODY BAKALÁŘSKÁ PRÁCE AUTOR PRÁCE: VEDOUCÍ PRÁCE: Jiří Vašíř Ing. Hana Jiránková,

Více

i=1 Přímka a úsečka. Body, které leží na přímce procházející body a a b můžeme zapsat pomocí parametrické rovnice

i=1 Přímka a úsečka. Body, které leží na přímce procházející body a a b můžeme zapsat pomocí parametrické rovnice I. Funkce dvou a více reálných proměnných 1. Úvod Značení: V textu budeme používat označení: N pro množinu všech přirozených čísel; R pro množinu všech reálných čísel; R n pro množinu všech uspořádaných

Více

Evolučníalgoritmy. Dále rozšiřována, zde uvedeme notaci a algoritmy vznikléna katedře mechaniky, Fakulty stavební ČVUT. Moderní metody optimalizace 1

Evolučníalgoritmy. Dále rozšiřována, zde uvedeme notaci a algoritmy vznikléna katedře mechaniky, Fakulty stavební ČVUT. Moderní metody optimalizace 1 Evolučníalgoritmy Kategorie vytvořená v 90. letech, aby se sjednotily jednotlivémetody, kterévyužívaly evoluční principy, tzn. Genetickéalgoritmy, Evolučnístrategie a Evoluční programování (v těchto přednáškách

Více

Algoritmizace diskrétních. Ing. Michal Dorda, Ph.D.

Algoritmizace diskrétních. Ing. Michal Dorda, Ph.D. Algoritmizace diskrétních simulačních modelů Ing. Michal Dorda, Ph.D. 1 Úvodní poznámky Při programování simulačních modelů lze hlavní dílčí problémy shrnout do následujících bodů: 1) Zachycení statických

Více

Užití systému Matlab při optimalizaci intenzity tepelného záření na povrchu formy

Užití systému Matlab při optimalizaci intenzity tepelného záření na povrchu formy Užití systému Matlab při optimalizaci intenzity tepelného záření na povrchu formy Radek Srb 1) Jaroslav Mlýnek 2) 1) Fakulta mechatroniky, informatiky a mezioborových studií 2) Fakulta přírodovědně-humanitní

Více

Binární vyhledávací stromy pokročilé partie

Binární vyhledávací stromy pokročilé partie Binární vyhledávací stromy pokročilé partie KMI/ALS lekce Jan Konečný 30.9.204 Literatura Cormen Thomas H., Introduction to Algorithms, 2nd edition MIT Press, 200. ISBN 0-262-5396-8 6, 3, A Knuth Donald

Více

ČVUT FEL X36PAA - Problémy a algoritmy. 5. úloha - Seznámení se se zvolenou pokročilou iterativní metodou na problému batohu

ČVUT FEL X36PAA - Problémy a algoritmy. 5. úloha - Seznámení se se zvolenou pokročilou iterativní metodou na problému batohu ČVUT FEL X36PAA - Problémy a algoritmy 5. úloha - Seznámení se se zvolenou pokročilou iterativní metodou na problému batohu Jméno: Marek Handl Datum: 4. 2. 2009 Cvičení: Pondělí 9:00 Zadání Zvolte si heuristiku,

Více

Základy matematické analýzy

Základy matematické analýzy Základy matematické analýzy Spojitost funkce Ing. Tomáš Kalvoda, Ph.D. 1, Ing. Daniel Vašata 2 1 tomas.kalvoda@fit.cvut.cz 2 daniel.vasata@fit.cvut.cz Katedra aplikované matematiky Fakulta informačních

Více

Inovace studia molekulární a buněčné biologie reg. č. CZ.1.07/2.2.00/

Inovace studia molekulární a buněčné biologie reg. č. CZ.1.07/2.2.00/ Inovace studia molekulární a buněčné biologie reg. č. CZ.1.07/2.2.00/07.0354 Tento projekt je spolufinancován Evropským sociálním fondem a státním rozpočtem České republiky Populační genetika (KBB/PG)

Více

oddělení Inteligentní Datové Analýzy (IDA)

oddělení Inteligentní Datové Analýzy (IDA) Vytěžování dat Filip Železný Katedra počítačů oddělení Inteligentní Datové Analýzy (IDA) 22. září 2014 Filip Železný (ČVUT) Vytěžování dat 22. září 2014 1 / 25 Odhad rozdělení Úloha: Vstup: data D = {

Více

Algoritmy pro spojitou optimalizaci

Algoritmy pro spojitou optimalizaci Algoritmy pro spojitou optimalizaci Vladimír Bičík Katedra počítačů Fakulta elektrotechnická České vysoké učení technické v Praze 10.6.2010 Vladimír Bičík (ČVUT Praha) Algoritmy pro spojitou optimalizaci

Více

Faculty of Nuclear Sciences and Physical Engineering Czech Technical University in Prague

Faculty of Nuclear Sciences and Physical Engineering Czech Technical University in Prague 1 / 40 regula Faculty of Nuclear Sciences and Physical Engineering Czech Technical University in Prague regula 1 2 3 4 5 regula 6 7 8 2 / 40 2 / 40 regula Iterační pro nelineární e Bud f reálná funkce

Více

Téma 22. Ondřej Nývlt

Téma 22. Ondřej Nývlt Téma 22 Ondřej Nývlt nyvlto1@fel.cvut.cz Náhodná veličina a náhodný vektor. Distribuční funkce, hustota a pravděpodobnostní funkce náhodné veličiny. Střední hodnota a rozptyl náhodné veličiny. Sdružené

Více

Normální (Gaussovo) rozdělení

Normální (Gaussovo) rozdělení Normální (Gaussovo) rozdělení Normální (Gaussovo) rozdělení popisuje vlastnosti náhodné spojité veličiny, která vzniká složením různých náhodných vlivů, které jsou navzájem nezávislé, kterých je velký

Více

8.3). S ohledem na jednoduchost a názornost je výhodné seznámit se s touto Základní pojmy a vztahy. Definice

8.3). S ohledem na jednoduchost a názornost je výhodné seznámit se s touto Základní pojmy a vztahy. Definice 9. Lineární diferenciální rovnice 2. řádu Cíle Diferenciální rovnice, v nichž hledaná funkce vystupuje ve druhé či vyšší derivaci, nazýváme diferenciálními rovnicemi druhého a vyššího řádu. Analogicky

Více

Náhodné (statistické) chyby přímých měření

Náhodné (statistické) chyby přímých měření Náhodné (statistické) chyby přímých měření Hodnoty náhodných chyb se nedají stanovit předem, ale na základě počtu pravděpodobnosti lze zjistit, která z možných naměřených hodnot je více a která je méně

Více

Numerická matematika 1

Numerická matematika 1 Numerická matematika 1 Obsah 1 Řešení nelineárních rovnic 3 1.1 Metoda půlení intervalu....................... 3 1.2 Metoda jednoduché iterace..................... 4 1.3 Newtonova metoda..........................

Více

Komplexní čísla, Kombinatorika, pravděpodobnost a statistika, Posloupnosti a řady

Komplexní čísla, Kombinatorika, pravděpodobnost a statistika, Posloupnosti a řady Předmět: Náplň: Třída: Počet hodin: Pomůcky: Matematika Komplexní čísla, Kombinatorika, pravděpodobnost a statistika, Posloupnosti a řady 4. ročník a oktáva 3 hodiny týdně PC a dataprojektor, učebnice

Více

Dnešní látka Variačně formulované okrajové úlohy zúplnění prostoru funkcí. Lineární zobrazení.

Dnešní látka Variačně formulované okrajové úlohy zúplnění prostoru funkcí. Lineární zobrazení. Předmět: MA4 Dnešní látka Variačně formulované okrajové úlohy zúplnění prostoru funkcí. Lineární zobrazení. Literatura: Kapitola 2 a)-c) a kapitola 4 a)-c) ze skript Karel Rektorys: Matematika 43, ČVUT,

Více

Praktická statistika. Petr Ponížil Eva Kutálková

Praktická statistika. Petr Ponížil Eva Kutálková Praktická statistika Petr Ponížil Eva Kutálková Zápis výsledků měření Předpokládejme, že známe hodnotu napětí U = 238,9 V i její chybu 3,3 V. Hodnotu veličiny zapíšeme na tolik míst, aby až poslední bylo

Více

Numerické metody 6. května FJFI ČVUT v Praze

Numerické metody 6. května FJFI ČVUT v Praze Extrémy funkcí Numerické metody 6. května 2018 FJFI ČVUT v Praze 1 Úvod Úvod 1D Více dimenzí Kombinatorika Lineární programování Programy 1 Úvod Úvod - Úloha Snažíme se najít extrém funkce, at už jedné

Více

0.1 Funkce a její vlastnosti

0.1 Funkce a její vlastnosti 0.1 Funkce a její vlastnosti Veličina - pojem, který popisuje kvantitativní (číselné) vlastnosti reálných i abstraktních objektů. Příklady veličin: hmotnost (m) čas (t) výše úrokové sazby v bance (i) cena

Více

0.1 Úvod do matematické analýzy

0.1 Úvod do matematické analýzy Matematika I (KMI/PMATE) 1 0.1 Úvod do matematické analýzy 0.1.1 Pojem funkce Veličina - pojem, který popisuje kvantitativní (číselné) vlastnosti reálných i abstraktních objektů. Příklady veličin: hmotnost

Více

Použití derivací L HOSPITALOVO PRAVIDLO POČÍTÁNÍ LIMIT. Monotónie. Konvexita. V této části budou uvedena některá použití derivací.

Použití derivací L HOSPITALOVO PRAVIDLO POČÍTÁNÍ LIMIT. Monotónie. Konvexita. V této části budou uvedena některá použití derivací. V této části budou uvedena některá použití derivací. Použití derivací L HOSPITALOVO PRAVIDLO POČÍTÁNÍ LIMIT Tvrzení je uvedeno pro jednostrannou itu zprava. Samozřejmě obdobné tvrzení platí pro itu zleva

Více

Optimalizace & soft omezení: algoritmy

Optimalizace & soft omezení: algoritmy Optimalizace & soft omezení: algoritmy Soft propagace Klasická propagace: eliminace nekonzistentních hodnot z domén proměnných Soft propagace: propagace preferencí (cen) nad k-ticemi hodnot proměnných

Více

Matematika I (KMI/PMATE)

Matematika I (KMI/PMATE) Přednáška první aneb Úvod do matematické analýzy Funkce a její vlastnosti Úvod do matematické analýzy Osnova přednášky pojem funkce definice funkce graf funkce definiční obor funkce obor hodnot funkce

Více

Vyhledávání. doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava. Prezentace ke dni 21.

Vyhledávání. doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava. Prezentace ke dni 21. Vyhledávání doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava Prezentace ke dni 21. září 2018 Jiří Dvorský (VŠB TUO) Vyhledávání 242 / 433 Osnova přednášky

Více

Modelování a simulace Lukáš Otte

Modelování a simulace Lukáš Otte Modelování a simulace 2013 Lukáš Otte Význam, účel a výhody MaS Simulační modely jsou nezbytné pro: oblast vědy a výzkumu (základní i aplikovaný výzkum) analýzy složitých dyn. systémů a tech. procesů oblast

Více

0.1 Úvod do lineární algebry

0.1 Úvod do lineární algebry Matematika KMI/PMATE 1 01 Úvod do lineární algebry 011 Lineární rovnice o 2 neznámých Definice 011 Lineární rovnice o dvou neznámých x, y je rovnice, která může být vyjádřena ve tvaru ax + by = c, kde

Více

7. Rozdělení pravděpodobnosti ve statistice

7. Rozdělení pravděpodobnosti ve statistice 7. Rozdělení pravděpodobnosti ve statistice Statistika nuda je, má však cenné údaje, neklesejte na mysli, ona nám to vyčíslí Jednou z úloh statistiky je odhad (výpočet) hodnot statistického znaku x i,

Více

OBJEKTOVÁ KNIHOVNA EVOLUČNÍCH ALGORITMŮ

OBJEKTOVÁ KNIHOVNA EVOLUČNÍCH ALGORITMŮ OBJEKTOVÁ KNIHOVNA EVOLUČNÍCH ALGORITMŮ David Bražina, Hashim Habiballa, Viktor Pavliska Katedra informatiky a počítačů, PřF OU, 30. dubna 22, Ostrava 1 Ústav pro výzkum a aplikace fuzzy modelování, OU,

Více

Funkce v ıce promˇ enn ych Extr emy Pˇredn aˇska p at a 12.bˇrezna 2018

Funkce v ıce promˇ enn ych Extr emy Pˇredn aˇska p at a 12.bˇrezna 2018 Funkce více proměnných Extrémy Přednáška pátá 12.března 2018 Zdroje informací Diferenciální počet http://homen.vsb.cz/~kre40/esfmat2/fceviceprom.html http://www.studopory.vsb.cz/studijnimaterialy/sbirka_uloh/pdf/7.pdf

Více

STOCHASTICKÉ ALGORITMY V ODHADU PARAMETRŮ REGRESNÍCH MODELŮ

STOCHASTICKÉ ALGORITMY V ODHADU PARAMETRŮ REGRESNÍCH MODELŮ ROBUST 2004 c JČMF 2004 STOCHASTICKÉ ALGORITMY V ODHADU PARAMETRŮ REGRESNÍCH MODELŮ Josef Tvrdík Klíčová slova: Globální optimalizace, řízené náhodné prohledávání, nelineární regrese. Abstrakt: V článku

Více

MATEMATICKÁ STATISTIKA. Katedra matematiky a didaktiky matematiky Technická univerzita v Liberci

MATEMATICKÁ STATISTIKA.   Katedra matematiky a didaktiky matematiky Technická univerzita v Liberci MATEMATICKÁ STATISTIKA Dana Černá http://www.fp.tul.cz/kmd/ Katedra matematiky a didaktiky matematiky Technická univerzita v Liberci Matematická statistika Matematická statistika se zabývá matematickým

Více

Ing. Tomáš MAUDER prof. Ing. František KAVIČKA, CSc. doc. Ing. Josef ŠTĚTINA, Ph.D.

Ing. Tomáš MAUDER prof. Ing. František KAVIČKA, CSc. doc. Ing. Josef ŠTĚTINA, Ph.D. OPTIMALIZACE BRAMOVÉHO PLYNULÉHO ODLÉVÁNÍ OCELI ZA POMOCI NUMERICKÉHO MODELU TEPLOTNÍHO POLE Ing. Tomáš MAUDER prof. Ing. František KAVIČKA, CSc. doc. Ing. Josef ŠTĚTINA, Ph.D. Fakulta strojního inženýrství

Více

OPTIMALIZACE. (přehled metod)

OPTIMALIZACE. (přehled metod) OPTIMALIZACE (přehled metod) Typy optimalizačních úloh Optimalizace bez omezení Nederivační metody Derivační metody Optimalizace s omezeními Lineární programování Nelineární programování Globální optimalizace

Více

1. Přednáška. Ing. Miroslav Šulai, MBA

1. Přednáška. Ing. Miroslav Šulai, MBA N_OFI_2 1. Přednáška Počet pravděpodobnosti Statistický aparát používaný ve financích Ing. Miroslav Šulai, MBA 1 Počet pravděpodobnosti -náhodné veličiny 2 Počet pravděpodobnosti -náhodné veličiny 3 Jevy

Více

Numerická stabilita algoritmů

Numerická stabilita algoritmů Numerická stabilita algoritmů Petr Tichý 9. října 2013 1 Numerická stabilita algoritmů Pravidla v konečné aritmetice Pro počítání v konečné aritmetice počítače platí určitá pravidla, která jsou důležitá

Více

Matematika (CŽV Kadaň) aneb Úvod do lineární algebry Matice a soustavy rovnic

Matematika (CŽV Kadaň) aneb Úvod do lineární algebry Matice a soustavy rovnic Přednáška třetí (a pravděpodobně i čtvrtá) aneb Úvod do lineární algebry Matice a soustavy rovnic Lineární rovnice o 2 neznámých Lineární rovnice o 2 neznámých Lineární rovnice o dvou neznámých x, y je

Více

Regresní a korelační analýza

Regresní a korelační analýza Regresní a korelační analýza Mějme dvojici proměnných, které spolu nějak souvisí. x je nezávisle (vysvětlující) proměnná y je závisle (vysvětlovaná) proměnná Chceme zjistit funkční závislost y = f(x).

Více

MATICE. a 11 a 12 a 1n a 21 a 22 a 2n A = = [a ij]

MATICE. a 11 a 12 a 1n a 21 a 22 a 2n A = = [a ij] MATICE Matice typu m/n nad tělesem T je soubor m n prvků z tělesa T uspořádaných do m řádků a n sloupců: a 11 a 12 a 1n a 21 a 22 a 2n A = = [a ij] a m1 a m2 a mn Prvek a i,j je prvek matice A na místě

Více

IV. Základní pojmy matematické analýzy IV.1. Rozšíření množiny reálných čísel

IV. Základní pojmy matematické analýzy IV.1. Rozšíření množiny reálných čísel Matematická analýza IV. Základní pojmy matematické analýzy IV.1. Rozšíření množiny reálných čísel na množině R je definováno: velikost (absolutní hodnota), uspořádání, aritmetické operace; znázornění:

Více

Globální matice konstrukce

Globální matice konstrukce Globální matice konstrukce Z matic tuhosti a hmotnosti jednotlivých prvků lze sestavit globální matici tuhosti a globální matici hmotnosti konstrukce, které se využijí v řešení základní rovnice MKP: [m]{

Více

LDF MENDELU. Simona Fišnarová (MENDELU) LDR druhého řádu VMAT, IMT 1 / 22

LDF MENDELU. Simona Fišnarová (MENDELU) LDR druhého řádu VMAT, IMT 1 / 22 Lineární diferenciální rovnice druhého řádu Vyšší matematika, Inženýrská matematika LDF MENDELU Podpořeno projektem Průřezová inovace studijních programů Lesnické a dřevařské fakulty MENDELU v Brně (LDF)

Více

Evoluční výpočetní techniky (EVT)

Evoluční výpočetní techniky (EVT) Evoluční výpočetní techniky (EVT) - Nacházejí svoji inspiraci v přírodních vývojových procesech - Stejně jako přírodní jevy mají silnou náhodnou složku, která nezanedbatelným způsobem ovlivňuje jejich

Více

Algoritmy výpočetní geometrie

Algoritmy výpočetní geometrie Algoritmy výpočetní geometrie prof. Ing. Pavel Tvrdík CSc. Katedra počítačových systémů Fakulta informačních technologií České vysoké učení technické v Praze c Pavel Tvrdík, 2010 Efektivní algoritmy (BI-EFA)

Více

Náhodné chyby přímých měření

Náhodné chyby přímých měření Náhodné chyby přímých měření Hodnoty náhodných chyb se nedají stanovit předem, ale na základě počtu pravděpodobnosti lze zjistit, která z možných naměřených hodnot je více a která je méně pravděpodobná.

Více

0.1 Úvod do lineární algebry

0.1 Úvod do lineární algebry Matematika KMI/PMATE 1 01 Úvod do lineární algebry 011 Vektory Definice 011 Vektorem aritmetického prostorur n budeme rozumět uspořádanou n-tici reálných čísel x 1, x 2,, x n Definice 012 Definice sčítání

Více

Funkce - pro třídu 1EB

Funkce - pro třídu 1EB Variace 1 Funkce - pro třídu 1EB Autor: Mgr. Jaromír JUŘEK Kopírování a jakékoliv využití výukového materiálu je povoleno pouze s odkazem na www.jarjurek.cz. 1. Funkce Funkce je přiřazení, které každému

Více

Lineární klasifikátory

Lineární klasifikátory Lineární klasifikátory Lineární klasifikátory obsah: perceptronový algoritmus základní verze varianta perceptronového algoritmu přihrádkový algoritmus podpůrné vektorové stroje Lineární klasifikátor navrhnout

Více

Funkce, elementární funkce.

Funkce, elementární funkce. Kapitola 2 Funkce, elementární funkce. V této kapitole si se budeme věnovat studiu základních vlastností funkcí jako je definiční obor, obor hodnot. Připomeneme si pojmy sudá, lichá, rostoucí, klesající.

Více

Numerické metody a programování. Lekce 7

Numerické metody a programování. Lekce 7 Numerické metody a programování Lekce 7 Řešení nelineárních rovnic hledáme řešení x problému f x = 0 strategie: odhad řešení iterační proces postupného zpřesňování řešení výpočet skončen pokud je splněno

Více

Definice globální minimum (absolutní minimum) v bodě A D f, jestliže X D f

Definice globální minimum (absolutní minimum) v bodě A D f, jestliže X D f Výklad Globální extrémy mají stejný význam jako u funkcí jedné proměnné. Hledáme je bud na celém definičním oboru dané funkce, nebo na předem zadané podmnožině definičního oboru. Definice 6..1. Řekneme,

Více

Odhady - Sdružené rozdělení pravděpodobnosti

Odhady - Sdružené rozdělení pravděpodobnosti Odhady - Sdružené rozdělení pravděpodobnosti 4. listopadu 203 Kdybych chtěl znát maximum informací o náhodné veličině, musel bych znát všechny hodnoty, které mohou padnout, a jejich pravděpodobnosti. Tedy

Více

4EK201 Matematické modelování. 2. Lineární programování

4EK201 Matematické modelování. 2. Lineární programování 4EK201 Matematické modelování 2. Lineární programování 2.1 Podstata operačního výzkumu Operační výzkum (výzkum operací) Operational research, operations research, management science Soubor disciplín zaměřených

Více

Teorie měření a regulace

Teorie měření a regulace Ústav technologie, mechanizace a řízení staveb Teorie měření a regulace 22.z-3.tr ZS 2015/2016 2015 - Ing. Václav Rada, CSc. TEORIE ŘÍZENÍ druhá část tématu předmětu pokračuje. oblastí matematických pomůcek

Více

Texty k přednáškám z MMAN3: 4. Funkce a zobrazení v euklidovských prostorech

Texty k přednáškám z MMAN3: 4. Funkce a zobrazení v euklidovských prostorech Texty k přednáškám z MMAN3: 4. Funkce a zobrazení v euklidovských prostorech 1. července 2008 1 Funkce v R n Definice 1 Necht n N a D R n. Reálnou funkcí v R n (reálnou funkcí n proměnných) rozumíme zobrazení

Více

Aproximace funkcí. Numerické metody 6. května FJFI ČVUT v Praze

Aproximace funkcí. Numerické metody 6. května FJFI ČVUT v Praze Aproximace funkcí Numerické metody 6. května 2018 FJFI ČVUT v Praze 1 Úvod Dělení Interpolace 1D Více dimenzí Minimalizace Důvody 1 Dělení Dělení - Získané data zadané data 2 Dělení - Získané data Obecně

Více

Charakterizace rozdělení

Charakterizace rozdělení Charakterizace rozdělení Momenty f(x) f(x) f(x) μ >μ 1 σ 1 σ >σ 1 g 1 g σ μ 1 μ x μ x x N K MK = x f( x) dx 1 M K = x N CK = ( x M ) f( x) dx ( xi M 1 C = 1 K 1) N i= 1 K i K N i= 1 K μ = E ( X ) = xf

Více

12. Lineární programování

12. Lineární programování . Lineární programování. Lineární programování Úloha lineárního programování (lineární optimalizace) je jedním ze základních problémů teorie optimalizace. Našim cílem je nalézt maximum (resp. minimum)

Více

Simulace. Simulace dat. Parametry

Simulace. Simulace dat. Parametry Simulace Simulace dat Menu: QCExpert Simulace Simulace dat Tento modul je určen pro generování pseudonáhodných dat s danými statistickými vlastnostmi. Nabízí čtyři typy rozdělení: normální, logaritmicko-normální,

Více

Statistická teorie učení

Statistická teorie učení Statistická teorie učení Petr Havel Marek Myslivec přednáška z 9. týdne 1 Úvod Představme si situaci výrobce a zákazníka, který si u výrobce objednal algoritmus rozpoznávání. Zákazník dodal experimentální

Více

4EK213 LINEÁRNÍ MODELY

4EK213 LINEÁRNÍ MODELY 4EK213 LINEÁRNÍ MODELY Úterý 11:00 12:30 hod. učebna SB 324 Mgr. Sekničková Jana, Ph.D. 2. PŘEDNÁŠKA MATEMATICKÝ MODEL ÚLOHY LP Mgr. Sekničková Jana, Ph.D. 2 OSNOVA PŘEDNÁŠKY Obecná formulace MM Množina

Více