15789 Programowanie w C - Znalezienie minimum funkcji

Completed Posted Jun 13, 2008 Paid on delivery
Completed Paid on delivery

Zadanie mozna zaliczyc do zadan metod numerycznych (metody optymalizacyjne)

Definiuje uzytkownik:

f-cje np.-> -x^3+2x^2+1

liczymy min-> (dla max wystarczy zauwazyc max[f(x)]=min[-f(x)])

x[0]=-2 (punkt startowy dla tego zadania, ogolnie wybieramy dowolny)

b[0]=0,5 (wartosc kroku dowolnie wybierana)

w=2 (wspolczynnik kroku zawsze > 1 wybieramy sami)

dokladnosc=1,5 (>0) [dokladnosc naszych wyliczen - wybieramy sami]

Kolejne iteracje

i x[i]=x[i-1]+b[i-1] f(x[i]) b[i] = w*b[i-1]

0 -2 17 0,5

1 -1,5 8,87 1

2 -0,5 1,62 2

3 1,5 2,2->ros 4

Porownujemy , za kazdym razem f(x[i]) > f(x[i-1]). W tym przypadku dzieje sie tak w iteracji nr 3.

Zatem, xmin -> (-1,5;1,5) - zawsze bierzemy pod uwage 3 ostatnie iteracje (zatem CHYBA musi byc spelniony warunek i>1) (jesli chodzi o przedzial w ktorym prawdopodobnie

jest minimum) . Sprawdzamy, czy dokladnosc rozwiazanai jest wystarczajaca.

Jesli |x[i-2]-x[i]| <= dokladnosc, wowczas -> xmin = (x[i-2]+x[i]/2), jesli nie -> zmieniamy krok poprzez modyfikacje:

w=1,5 (zmniejszamy) - lecz zawsze >1

b[0]=0,25 (zmniejszamy)

Rozpoczynamy iteracje od nowa, z tym, ze punkt startowy x[0]=x[i-2] (tak mi sie wydaje, byc moze jest to x[0]=x[i], do sprawdzenia)

Po kolejnej iteracji otrzymujemy:

xmin -> (-0,88;0,49), po sprawdzeniu warunku zatrzymania xmin=-0,195

Wynik przykladowy dla tych danych podanych w zadaniu.

Kontakt: GG - 1471574, mail: boulinek@[url removed, login to view]

Android iPad iPhone Mobile App Development

Project ID: #5591748

About the project

1 proposal Remote project Active Jun 14, 2008

Awarded to:

jiiis

A proposal has not yet been provided

zł100 PLN in 1 day
(17 Reviews)
3.8