Одномерная оптимизация. Решить задачу методом дихотомии и методом половинного деления. Сформулировать задачу математически и найти экстремум целевой функции с точностью ε=0,0001. Оценить эффективность методов по количеству итераций.
Решение
41871905080001) Из подобия треугольников SFD и SOB находим:
SFSO=FDOB;
H-hH=rR;
1-hH=rR;
hH=1-rR;
h=H-HRr.
2) Площадь полной поверхности цилиндра определяется формулой:
S=2πrr+h=2πrr+H-HRr.
Подставив значения H и R получим:
S=2πrr+2-21r=2πrr+2-2r=2πr2-r;
Sr=2πr2-r.
3) Следовательно, решение задачи сводится к нахождению такого значения r, при котором S(r) принимает наибольшее значение. Найдем максимум функции S(r) методом дихотомии (методом половинного деления). Метод основан на делении текущего отрезка [а, b], где содержится искомый экстремум, на две равные части с последующим выбором одной из половин, в которой локализуется максимум в качестве следующего текущего отрезка. Экстремум локализуется путем сравнения двух значений критерия оптимальности в точках, отстоящих от середины отрезка на ε/2, где ε=0,0001 – погрешность решения задачи оптимизации
. Поскольку S(r) – квадратичная функция, то при симметричных относитенльно вершины параболы значениях (a=0;b=2) на первой же иттерации достигнем максимума. Поэтому для получения большего количества итераций выберем другие граничные значения, например:
a=0;b=1,5.
4) Вычисления произведем в таблице excel и скопируем в настоящий документ:
N a f(a) b f(b) c=(a+b)/2 f(c) d=b-a с-ε/2 f(с-ε/2) с+ε/2 f(с+ε/2)
1 0,000000 0,000000 1,500000 4,712389 0,750000 5,890486 1,500000 0,749950 5,890329 0,750050 5,890643
2 0,750000 5,890486 1,500000 4,712389 1,125000 6,185011 0,750000 1,124950 6,185089 1,125050 6,184932
3 0,750000 5,890486 1,125000 6,185011 0,937500 6,258642 0,375000 0,937450 6,258602 0,937550 6,258681
4 0,937500 6,258642 1,125000 6,185011 1,031250 6,277049 0,187500 1,031200 6,277069 1,031300 6,277030
5 0,937500 6,258642 1,031250 6,277049 0,984375 6,281651 0,093750 0,984325 6,281641 0,984425 6,281661
6 0,984375 6,281651 1,031250 6,277049 1,007813 6,282802 0,046875 1,007763 6,282807 1,007863 6,282797
7 0,984375 6,281651 1,007813 6,282802 0,996094
6,283089 0,023438 0,996044 6,283087 0,996144 6,283092
8 0,996094 6,283089 1,007813 6,282802 1,001953 6,283161 0,011719 1,001903 6,283163 1,002003 6,283160
9 0,996094 6,283089 1,001953 6,283161 0,999023 6,283179 0,005859 0,998973 6,283179 0,999073 6,283180
10 0,999023 6,283179 1,001953 6,283161 1,000488 6,283184 0,002930 1,000438 6,283184 1,000538 6,283183
11 0,999023 6,283179 1,000488 6,283184 0,999756 6,283185 0,001465 0,999706 6,283185 0,999806 6,283185
12 0,999756 6,283185 1,000488 6,283184 1,000122 6,283185 0,000732 1,000072 6,283185 1,000172 6,283185
13 0,999756 6,283185 1,000122 6,283185 0,999939 6,283185 0,000366 0,999889 6,283185 0,999989 6,283185
14 0,999939 6,283185 1,000122 6,283185 1,000031 6,283185 0,000183 0,999981 6,283185 1,000081 6,283185
На 14-й итерации значение d=b-a<0,0002=2ε