113

113



Rozwiązywanie zadań optymalizacji 113

fgrad=[2 *x(1) ; 3*x(2)~2; 4 *x(3)^3]; return

function [C,Ceq]=optnlcon(x)

^ograniczenia funkcyjne nierownosciowe C i równościowe Ceq %C (1)= 1.5 + x(l)*x(2)-x(3);

%C(2)= -10 - x(1)*x(2) ;

%Ceq (1) = -40 + x(l)~2 + x(2)~2 + x(3)A2;

C = [1.5 + x(l)*x(2)-x(3);

-10 - x(l)*x(2)];

Ceq = [-46 + x(l)~2 + x(2)''2 + x(3)~2]; return

W pliku sterującym obliczeniami optymalizacyjnymi należy uwzględnić fakt, że informacje o przebiegu procesu optymalizacyjnego są pamiętane w argumentach wyjściowych funkcji fmincon. Dotyczy to również wartości współczynników Lagrange'a, które są pamiętane w różnych zmiennych.

function [x,lambda] = optv6

% przykład wykorzystania funkcji fmincon() do optymalizacji

% nieliniowej funkcji celu

% z ograniczeniami równościowymi

% i ograniczeniami nierownosciowymi

fd=fopen('optv6out.m','wt');

x0 =[10    10 10]; x=x0;

Aneq =    [234]; Bneq =    [35];

Aeq =[111]; Beq = [10] ;

LB=[-10    -5    0]; UB=[1 5 inf];

% funkcja celu i jej gradient [f,fgrad] = optnlcfg(x);

^ograniczenia

[C,Ceq]=optnlcon(x);

% wybór opcji optymalizacyjnych

options = opt imset( 'display 1 , 'iter1 , 1gradobj ' , 'on 1) ;

% wywołanie funkcji fmincon()

% [X,FVAL,EXITFLAG,OUTPUT,LAMBDA]=

% FMINCON(FUN,X0,A,B,Aeq,Beq,LB,UB,NONLCON,OPTIONS)

[x,fval,exi t flag,output,lambda] = ...

fmincon('optnlcfg',x,Aneq,Bneq,Aeq,Beq,LB,UB,'optnlcon',...

options) ;

fprintf(fd,'\n min xl~2 + x2^3 + x3~41); fprintfffd,1\n przy ograniczeniach funkcyjnych:'); fprintf(fd,'\n - liniowych nierownosciowych'); fprint f(fd,'\n 2*xl + 3*x2 + 4*x3 <= 35'); fprintfffd,1\n - liniowych równościowych'); fprintf(fd, '\n xl + x2 + x3 = 10 ' ) ; fprintfffd,'\n - nieliniowych nierownosciowych'); fprintf(fd, '\n 1.5+xl*x2-x3 <= 0') ;


Wyszukiwarka

Podobne podstrony:
skanuj0007 (197) E. Michlowicz: Badania operacyjne i eksploatacyjne - PodstawyMetody rozwiązywania z
969. Rozwiązywanie zadań optymalizacji W Matlabie wyróżniono cztery podstawowe grupy zadań

969. Rozwiązywanie zadań optymalizacji W Matlabie wyróżniono cztery podstawowe grupy zadań
Rozwiązywanie zadań optymalizacji 97 Ograniczenie g, jest aktywne w punkcie p, jeżeli gi(p) = 0.
Rozwiązywanie zadań optymalizacji 101 nej metryki BFGS. Obie te funkcje współpracują z algorytmem
Rozwiązywanie zadań optymalizacji 103 oraz ograniczeniach nakładanych na zmienne
Rozwiązywanie zadań optymalizacji 105 £d=f open ( optv4out. m , wt ); fprintf(fd,

Rozwiązywanie zadań optymalizacji 107 if lambda(8) fprintf(fd,

Rozwiązywanie zadań optymalizacji 109 -    równościowe liniowe xl+x2+x3-10 = 0 ,
Rozwiązywanie zadań optymalizacji 111 8.
Rozwiązywanie zadań optymalizacji 115 fprintf(fd,

Rozwiązywanie zadań optymalizacji 117 Rozwiązywanie zadań optymalizacji 117 0.000000
969. Rozwiązywanie zadań optymalizacji W Matlabie wyróżniono cztery podstawowe grupy zadań


więcej podobnych podstron