Методи прямого пошуку для оптимізації унімодальних функцій якості без обмежень

Автор: Пользователь скрыл имя, 09 Сентября 2011 в 23:15, курсовая работа

Описание работы

Оптимізація як розділ математики існує досить давно. Оптимізація - це вибір, тобто те, чим постійно доводиться займатися в повсякденному житті. Терміном "оптимізація" в літературі позначають процес або послідовність операцій, що дозволяють отримати поліпшене рішення. Хоч кінцевою метою оптимізації є відшукання найкращого або "оптимального" рішення, звичайно доводиться задовольнятися поліпшенням відомих рішень, а не доведенням їх до досконалості

Содержание

Зміст 3
Вступ 4
Змістовна постановка задачі 5
Формальна постановка задачі 9
Опис методів розв’язку задачі 10
Метод дихотомії. 10
Методи золотоЗміст 3
Вступ 4
Змістовна постановка задачі 5
Формальна постановка задачі 9
Опис методів розв’язку задачі 10
Метод дихотомії. 10
Методи золотого перетину і Фібоначчі. 10
Опис програми 13
Аналіз контрольного прикладу 17
Висновки 18
Список літературних джерел 19
Додатки 20

Работа содержит 1 файл

kurs1.doc

— 868.00 Кб (Скачать)

                e := ib-x;

               d := cgold*e;

        End;

        If Abs(d)>=Epsilom then

            u := x+d

        Else

            u := x+Mysign(Epsilom, d);

         case typ of

    1: fu := sin(u);

    2: fu := cos(u);

    3: fu := ln(u);

    end;

         If fu<=fx then begin

            If u>=x then

                ia := x

            Else

                ib := x;

            v := w;

            fv := fw;

            w := x;

            fw := fx;

            x := u;

            fx := fu; end

        Else begin

            If u<x then

                ia := u

            Else

                ib := u;

            if w=x then b1:=true else b1:=false;

            if fu<=fw  then b2:=true else b2:=false;

            If b2 Or b1 then begin

                v := w;

                fv := fw;

                w := u;

                fw := fu; end

            Else begin

            if fu<=fv then b1:=true else b1:=false;

            if v=x  then b2:=true else b2:=false;

             if v=2  then b3:=true else b3:=false;

                If b1 Or b2 Or b3 then begin

                    v := u;

                    fv := fu;

                End

            End

        End

    end; {for}

     xmin := x; 

    Result := fx; 

    BrentOptimize := Result

End ; 
 

begin

repeat

beg:

clrscr;

TextColor(Green);

TextBackground(Black);

gotoxy(12,1);

write('Kurs work of doslidgennia operacij');

gotoxy(12,6);

  writeln('Input your choise: ');

writeln('    1 - golden section optimize');

writeln('    2 - Brend method');

writeln('    3 - Exit');

gotoxy(12,10);

write ('Choise: '); readln(c);

if  (c<1) or (c>3) then goto beg;

if c=3 then goto et;

nt:

clrscr;

writeln('Input type of function:');

writeln('1 - sin, 2 - cos, 3 - ln');

write(' function - ');

readln(typ);

if (typ<1) or (typ>3) then goto nt;

writeln('input interval');

write(' a = ');

readln(a);

write(' b = ');

readln(b);

if c=1 then

begin

write('Input count - ');

readln(N);

GoldenSectionOptimize(a,b,N,typ);

writeln('Result is: a - ',a:6:2, ' b - ',b:6:2);

end

else

begin

write('Input epsilom - ');

readln(e);

e:=BrentOptimize(a,b,e,typ,x);

writeln('Result is point ', x:6:2, ' with function value ', e:8:2)

end;

readln 

until false;

et:

end.

Информация о работе Методи прямого пошуку для оптимізації унімодальних функцій якості без обмежень