Ñåìèíàð 13. Çàäà÷è Èñïîëüçóÿ ôóíêöèè sum è sort, îòñîðòèðîâàòü ñòîëáöû â ìàòðèöå ïî âîçðàñòàíèþ ñóììû ýëåìåíòîâ Çàäà÷à 1. 10 −5 0 30 2 7 7 −2 1 40 3 8 Ðåàëèçîâàòü â GNU Octave îäíîìåðíóþ ôóíêöèþ Ðàñòðèãèíà è ïîñòðîèòü å¼ ãðàôèê ïðè x ∈ [−7; 7]. Çàäà÷à 2. f (x) = x2 + 10 − 10 cos (2πx) Ïðîïðîáîâàòü íàéòè å¼ ìèíèìóì ñ ïîìîùüþ ôóíêöèè fminsearch, èñïîëüçóÿ íà÷àëüíûå ïðèáëèæåíèÿ x0 = 1.5, x0 = 2 è äð. Ðåçóëüòàò ìèíèìèçàöèè è íà÷àëüíîå ïðèáëèæåíèå ïîêàçàòü íà ãðàôèêå â âèäå òî÷åê ñ êîîðäèíàòàìè (x, f (x)). Íàéòè ãëîáàëüíûé ìèíèìóì îäíîìåðíîé ôóíêöèè Ðàñòðèãèíà (ñì. çàäà÷ó 2) ñ ïîìîùüþ ãåíåòè÷åñêîãî àëãîðèòìà. Ðàçìåð ïîïóëÿöèè 100, ¾ýëèòû¿ 10 (ó÷àñòâóåò â ñêðåùèâàíèè è ïåðåõîäèò â ñëåäóþùåå ïîêîëåíèå), ÷èñëî èòåðàöèé 100. Íà÷àëüíàÿ ïîïóëÿöèÿ ãåíåðèðóåòñÿ êàê N (µ = 5; σ = 1) (èëè 5 + randn(n,1)). Îïåðàòîð ñêðåùèâàíèÿ: x = (1 − ω) x(1) + ωx(2), ãäå ω ∼ U (0; 1), îïåðàòîð ìóòàöèè: x = x(1) + N (0; 1) (ïðèìåíÿòü ñ âåðîÿòíîñòüþ 0.2). Ïðîöåññ ïîêàçàòü íà ãðàôèêå ôóíêöèè Ðàñòðèãèíà, èñïîëüçóÿ pause èëè drawnow äëÿ îáíîâëåíèÿ ãðàôèêà. Ïîñòðîèòü ãðàôèê (ïðè x ∈ [−4; 4]) è íàéòè ãëîáàëüíûé ìèíèìóì ôóíêöèè x4 − 16x2 + 5x ìåòîäîì îòæèãà Êîøè. ×èñëî èòåðàöèé 1000, x0 = 3, T0 = 10. Çàäà÷à 3. Çàäà÷à 4. Ñåìèíàð 13. Çàäà÷è Èñïîëüçóÿ ôóíêöèè sum è sort, îòñîðòèðîâàòü ñòîëáöû â ìàòðèöå ïî âîçðàñòàíèþ ñóììû ýëåìåíòîâ Çàäà÷à 1. 10 −5 0 30 2 7 7 −2 1 40 3 8 Ðåàëèçîâàòü â GNU Octave îäíîìåðíóþ ôóíêöèþ Ðàñòðèãèíà è ïîñòðîèòü å¼ ãðàôèê ïðè x ∈ [−7; 7]. Çàäà÷à 2. f (x) = x2 + 10 − 10 cos (2πx) Ïðîïðîáîâàòü íàéòè å¼ ìèíèìóì ñ ïîìîùüþ ôóíêöèè fminsearch, èñïîëüçóÿ íà÷àëüíûå ïðèáëèæåíèÿ x0 = 1.5, x0 = 2 è äð. Ðåçóëüòàò ìèíèìèçàöèè è íà÷àëüíîå ïðèáëèæåíèå ïîêàçàòü íà ãðàôèêå â âèäå òî÷åê ñ êîîðäèíàòàìè (x, f (x)). Íàéòè ãëîáàëüíûé ìèíèìóì îäíîìåðíîé ôóíêöèè Ðàñòðèãèíà (ñì. çàäà÷ó 2) ñ ïîìîùüþ ãåíåòè÷åñêîãî àëãîðèòìà. Ðàçìåð ïîïóëÿöèè 100, ¾ýëèòû¿ 10 (ó÷àñòâóåò â ñêðåùèâàíèè è ïåðåõîäèò â ñëåäóþùåå ïîêîëåíèå), ÷èñëî èòåðàöèé 100. Íà÷àëüíàÿ ïîïóëÿöèÿ ãåíåðèðóåòñÿ êàê N (µ = 5; σ = 1) (èëè 5 + randn(n,1)). Îïåðàòîð ñêðåùèâàíèÿ: x = (1 − ω) x(1) + ωx(2), ãäå ω ∼ U (0; 1), îïåðàòîð ìóòàöèè: x = x(1) + N (0; 1) (ïðèìåíÿòü ñ âåðîÿòíîñòüþ 0.2). Ïðîöåññ ïîêàçàòü íà ãðàôèêå ôóíêöèè Ðàñòðèãèíà, èñïîëüçóÿ pause èëè drawnow äëÿ îáíîâëåíèÿ ãðàôèêà. Ïîñòðîèòü ãðàôèê (ïðè x ∈ [−4; 4]) è íàéòè ãëîáàëüíûé ìèíèìóì ôóíêöèè x4 − 16x2 + 5x ìåòîäîì îòæèãà Êîøè. ×èñëî èòåðàöèé 1000, x0 = 3, T0 = 10. Çàäà÷à 3. Çàäà÷à 4.