Семинар 13. Задачи Семинар 13. Задачи

advertisement
Ñåìèíàð 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.
Download