funkcja kary

background image


Z

ACHODNIOPOMORSKI

U

NIWERSYTET

T

ECHNOLOGICZNY

Przedmiot:

Metody Optymalizacji

Temat:

M

ETODA FUNKCJI KARY

Wykonawca:

Krzywaźnia Gniewosz

Studia N1

Prowadzący:

dr P. Orłowski

Data wykonania:

2011-11-04

Ocena:

Podpis:

I.

Cel ćwiczenia

- dokonanie implementacji praktycznej w środowisku Matlab lub Scilab metody poszu-
kiwań ekstremum funkcji z ograniczeniami dla funkcji wielu zmiennych przy pomocy
zewnętrznej funkcji kary oraz analiza podstawowych własności.

II.

Program ćwiczenia

1. Proszę zaimplementować algorytm poszukiwania minimum funkcji wielu zmiennych

metodą zewnętrznej funkcji kary.

2. Proszę wyznaczyć minimum funkcji z ograniczeniami dla następujących przypadków
(cyfra określa funkcję, litery – ograniczenia) dla następujących przypadków:
1A, 1B, 4CD, 2EF, 3G, 4H, 2I, 2HI, 3DFJ

background image

3. W każdym przypadku proszę podać wynik x, f(x), j, ε, x

pocz

oraz przedstawić

rozwiązanie graficznie z zaznaczonymi ograniczeniami (wykres 3D lub konturowy 2D)
łącznie z wykresem funkcji f(x).

4. Proszę narysować wykresy funkcji P

x,K

j



dla 2 wybranych wartości j dla dowolnie

wybranego przypadku z punktu 2.

Wskazówka:

Postać funkcji kary:

III.

Opracowanie programu ćwiczeń

1. Algorytm poszukiwania minimum funkcji wielu zmiennych metodą zewnętrz-

nej funkcji kary.
-funkcja naszafk

function

P=naszafk(x)

global

iteracja

%1

fx=2*x(1)^2+50*x(2)^2;

%2 fx=25*(x(1)+x(2))^2+(-x(1)+x(2))^2

%3 fx=100*(x(1)^2-x(2)^2)^2+20*(x(1)^4+x(2)^2)^2;

%4 fx=25*abs(2*x(1)-x(2)-4)+abs(4*x(1)+3*x(2)+8);

%A

gxa=-(x(1)-x(2)+2);

%B gxb=x(1)-x(2)+2;

%C gxc=x(2)+0.5*x(1)^2-10;

%D gxd=-x(2);

%E gxe=-(x(2)-sin(x(1)));

%F gxf=-0.1*x(1)^2+10-x(2);

%G gxg=x(1)^2+x(2)^2-9;

%H gxh=0.25*x(1)^2+0.0625*x(2)^2-1;

%I gxi=-(x(1)^2+((x(2)^2)/9)-1);

%J gxj=-(x(1)-1);

Kara=2^iteracja*(max(0,-gxa)^2)

%+max(0,-gxf)^2+max(0,-gxj)^2);

P=fx+Kara;

end








-funkcja f

function

k=f(x,y)

%1

k=2*x^2+50*y^2;

%2 k=25*(x+y)^2+(-x+y)^2;

%3 k=100*(x^2-y^2)^2+20*(x^4+y^2)^2;

%4 k=25


-program główny

clc,clear

global

iteracja

iteracja=0;

x=[5,5];

dokl=1e-10;

blad=Inf;

while

blad>dokl

xpocz=x;

[x,Pj]=fminsearch(@naszafk,x);

blad=norm(x-xpocz);

iteracja=iteracja+1;

end

background image

Pj

x

x1=linspace(-6,6,100);

x2=linspace(-6,12,100);

[X,Y]=meshgrid(x1,x2);

w=size(X);

for

i=1:w

for

j=1:w

Z(i,j)=f(X(i,j),Y(i,j));

end

end

z=f(x(1),x(2));

figure(1)

contour(X,Y,Z,100);

hold

on

% A

x2y=x1+2;

% B x2y=x1+2;

%C x2y=-0.5*x1.^2+10;

%D x2y=0;

%E x2y=sin(x1);

%F x2y2=-0.1*x1.^2+10;

%G x2y=-sqrt(-x1.^2+9);

%H x2y=sqrt((1-0.25*x1.^2)/0.0625);

%I x2y2=-sqrt(9*(1-x1));

%J gxj=-(x(1)-1)

plot(x1,x2y,

'k:'

);

hold

on

%plot(x1,x2y2,'k:');

% hold on

% plot(1,0,'s')

% hold on

plot(x(1),x(2),

'x'

);

xlabel(

'x1'

)

ylabel(

'x2'

)










-program do zrealizowania punktu czwartego

h=100;

step=5;

x1=-h:step:h;

x2=x1;

d=length(x1);

iteracja=4;

for

i=1:d

for

j=1:d

f1(i,j)=2*x1(i)^2+50*x2(j)^2;

gxa(i,j)=x1(i)+x2(i)+2;

Kara(i,j)=2^iteracja*(max(0,-gxa(i,j))^2);

end

end

figure(1)

surf(x1,x2,f1)

hold

on

surf(x1,x2,Kara)

figure(2)

contour(x1,x2,f1,50)

background image

hold

on

contour(x1,x2,Kara,50)


2. Wyznaczanie minimum funkcji z ograniczeniami dla następujących przypadków

- 1A

x

f (x)

j

ε

x

pocz

x

1

=-1.9231

x

2

= 0.0769

20

1e-10

x

1

=5

x

2

=5

- 1B

x

f (x)

j

ε

x

pocz

x

1

=-0.3548e-4

x

2

= 0.0274e-4

2

1e-10

x

1

=5

x

2

=5

background image

- 4CD

x

f (x)

j

ε

x

pocz

x

1

=4.4721

x

2

=0.0001

20

1e-5

x

1

=5

x

2

=5

- 2EF

x

f (x)

j

ε

x

pocz

x

1

=0.3804e-5

x

2

=-0.3687e-5

2

1e-10

x

1

=5

x

2

=5

background image

- 3G

x

f (x)

j

ε

x

pocz

x

1

=1.5213

x

2

=-2.5856

31

1e-10

x

1

=5

x

2

=5

- 4H

x

f (x)

j

ε

x

pocz

x

1

=0.4

x

2

=-3.2

3

1e-10

x

1

=5

x

2

=5

background image

- 2I

x

f (x)

j

ε

x

pocz

x

1

=0.2576e-4

x

2

=-0.2839e-4

7

1e-10

x

1

=5

x

2

=5

- 2HI

x

f (x)

j

ε

x

pocz

x

1

=0

x

2

=-3.2684

30

1e-10

x

1

=5

x

2

=5

background image

- 3DFJ

x

f (x)

j

ε

x

pocz

x

1

=-0.2548e-4

x

2

=-0.2311e-4

11

1e-10

x

1

=5

x

2

=5

3. Wykresy funkcji P

x,K

j



dla 2 wybranych wartości j dla dowolnie wybranego

przypadku z punktu 2.

Funkcje kary dla pierwszego przypadku (1A)

- dla j=2

background image

- dla j=4


Wyszukiwarka

Podobne podstrony:
funkcja kary
Funkcje wykonywania kary pozbawienia wolności (pdf) 9 01
BANK CENTRALNY I JEGO FUNKCJE
Zaburzenia funkcji zwieraczy
Genetyka regulacja funkcji genow
BYT 2005 Pomiar funkcjonalnosci oprogramowania
Diagnoza Funkcjonalna
Insulinoterapia funkcjonalna
Postać kanoniczna funkcji kwadratowej
Wpływ choroby na funkcjonowanie rodziny
LAB PROCEDURY I FUNKCJE
STRUKTURA I FUNKCJONOWANIE GN
układ pokarmowy budowa i funkcja

więcej podobnych podstron