Pozdrav! Imam problemcic...trebam napisati seminarski o nekom optimizacijskom algoritmu i implementirati ga u matlabu...eh, buduci da ja tu nisam neki strucnjak (daleko od toga)...stvarno ne znam koji algoritam da odaberem, bavila sam se malo neuronskim mrezama, pa sam mislila uzeti LMS algoritam ili algoritam ucenja, al nisam sigurna, prioritet mi je samo da je jednostavno i po mogucnosti da imam literature(moze i gotov program u matlabu )....ima li itko ikakvu ideju?
Matlab-optimizacijski algoritmi
- poruka: 21
- |
- čitano: 8.294
- |
- moderatori:
Lazarus Long, XXX-Man, vincimus
- +/- sve poruke
- ravni prikaz
- starije poruke gore
http://web.mit.edu/~paul_s/www/14.170/matlab/tex/matlabOptAndInt.pdf
Ah matlab. Moj omiljeni program/IDE. Obožavam ga
I moj i moj :D
A što se tiče optimizacije, što točno misliš? Što želiš optimalno napravit?
A evo samo jedna super slika u prilog, Matlab ju napravio za mene, tko pogodi što se testiralo, dobije 20 TU :D (mali hint u titleu figurea)
I moj i moj :D
A što se tiče optimizacije, što točno misliš? Što želiš optimalno napravit?
A evo samo jedna super slika u prilog, Matlab ju napravio za mene, tko pogodi što se testiralo, dobije 20 TU :D (mali hint u titleu figurea)
Mandelbrot-ovi setovi. Nelinearna dinamika.
Lapuljev exponent.
Mandelbrot-ovi setovi. Nelinearna dinamika.
Lapuljev exponent.
Nope. Jednostavnije od toga :D
Testirana je Newtonova metoda za nelinearne jednadžbe, na konkretnom primjeru z6 -1 =0. Napravljena je gusta mreža kvadrata [-1,1]x[-1,1] i svaka točka te mreže je uzeta za početnu iteraciju metode. Ovisno koliko je ta točka bila dobra za metodu (u koliko koraka je zadovoljena neka točnost/nije konvergiralo) je obojana u neku boju. Na kraju se dobila ova slika :D
Nope. Jednostavnije od toga :D
Testirana je Newtonova metoda za nelinearne jednadžbe, na konkretnom primjeru z6 -1 =0. Napravljena je gusta mreža kvadrata [-1,1]x[-1,1] i svaka točka te mreže je uzeta za početnu iteraciju metode. Ovisno koliko je ta točka bila dobra za metodu (u koliko koraka je zadovoljena neka točnost/nije konvergiralo) je obojana u neku boju. Na kraju se dobila ova slika :D
To je sve nelinerna dinamika inače. A mandelbrotovi setovi (što jest ta slike ;)) se mogu predstaviti Lapuljevim polinomima, odnosno exponentima.
Dakle yep, a ne nope :p.
p.s. Ne brini kako znam, vjeruj mi :D
Pa nemam nista odredjeno sto moram optimalno napraviti, samo moram opisati neki optimizacijski algoritam i izvesti ga u matlabu, a nasla sam na netu dosta zanimljivo stivo o prirodno inspiriranim optimizacijskim algoritmima (http://fer.hr/_download/repository/Cupic2009-PrirodomInspiriraniOptimizacijskiAlgoritmi.pdf) al neznam koji da odaberem (meni je osobno svejedno, glavno da nije nista komplicirano)....
Imaš primjere navedene i imaš ono što se zove optimization toolbox u matlabu.
http://www.mathworks.com/help/toolbox/optim/
http://www.mathworks.com/help/toolbox/optim/ug/f6010.html
http://www.mathworks.com/help/toolbox/optim/ug/bqartsw.html
http://www.mathworks.com/help/toolbox/optim/ug/exampleindex.html
e super....hvala puno
e super....hvala puno
recimo pogledaj pod example ;)
To je sve nelinerna dinamika inače. A mandelbrotovi setovi (što jest ta slike ;)) se mogu predstaviti Lapuljevim polinomima, odnosno exponentima.
Dakle yep, a ne nope :p.
p.s. Ne brini kako znam, vjeruj mi :D
Vjerujem :D Iako sam malo čitao o Mandelbotovim setovima, i slična je jednadžba u pozadini... ali nevermind, vjerujem :D
I onda ljudi kažu kak je matematika dosadna i nezanimljiva...
Pozdrav!
Kako sam s matlabom i programiranjem na " Vi" , molim za bilo kakvu pomoć oko izrade programa. Bilo kakav savjet , uputa su dobrodošli!
Moj zadatak glasi ovako :
1) rijesiti 2D laplaceovu jednadzbu u kruznom vijencu koristeci barem 3 vrste razlicitih elemenata (npr. P1, P2, ...).
Neka je na jednoj kruznici Dirichletov rubni uvjet, a na drugom Neumannov.
2) Dobivena rjesenja trebate usporediti s tocnim rjesenjem za barem jednu zadacu te odrediti red konvergencije metode u odnosu na L^2 i H^1 normu.
Svima koji vole pragramiranje , ovo će biti izazov, a ja ću biti jako happy ako mi pomognete na bilo koji način!
Hvala!!!!!!
Ovo mi izgledaju ko zadaci koje sam radio na faxu, samo sam ja koristio freefem gdje to ide dosta lakše i brže nego u matlabu. Nisam točno siguran kako Matlab ima implementiranu metodu konačnih elemenata, budem pogledao pa javim :D
Hm...kažeš da bi u freefemu to bilo dosta lakše?! Pa ako imaš neku ideju, javi na pm. Možda imaš neki sličan program koji bi mi bio od pomoći?
Šaljem dio koda, može mi netko to provjeriti i dati savjet kako dalje i dal je dio koji je napisan, dobar?
U Freefem++ je napisan kod....
border a(t=0,2*pi){ x=cos(t); y=sin(t);label=1;}
border b(t=0,2*pi){ x=0.6*cos(t); y=0.6*sin(t);label=2;}
plot(a(150)+b(+50)) ;
mesh Th = buildmesh(a(150)+b(-50));
plot(Th,wait=1,ps="Thwithhole.eps");
func f=-4*(cos(x^2+y^2-1) -(x^2+y^2)*sin(x^2+y^2-1));
func phiexact=sin(x^2+y^2-1);
real[int] L2error(2);
for(int n=0;n<2;n++)
{
mesh Th=buildmesh(a(20*(n+1))+b(-10*(n+1)));
fespace Vh(Th,P2);
Vh phi,w;
solve laplace(phi,w)=int2d(Th)(dx(phi)*dx(w) + dy(phi)*dy(w))
- int2d(Th)(f*w) - int1d(Th,b)(2*w)+ on(a,phi=0);
plot(Th,phi,wait=true,ps="vijenac.eps");
L2error[n]= sqrt(int2d(Th)((phi-phiexact)^2));
}
for(int n=0;n<2;n++)
cout << " L2error " << n << " = "<< L2error[n] <<endl;
cout <<" convergence rate = "<< log(L2error[0]/L2error[1])/log(2.) <<endl;
Nemam tu instaliran freefem, ali mislim da ti neće proć računanje greške. Za izračunat L2 grešku, trebaš taj integral, ali ispod su dvije funkcije iz različitih prostora (phi je iz Vh, a phiexact je baš funkcija). Probaj ovako:
mesh Th=buildmesh(a(20*(n+1))+b(-10*(n+1)));
fespace Vh(Th,P2);
Vh phi,w;
solve laplace(phi,w)=int2d(Th)(dx(phi)*dx(w) + dy(phi)*dy(w))
- int2d(Th)(f*w) - int1d(Th,b)(2*w)+ on(a,phi=0);
plot(Th,phi,wait=true,ps="vijenac.eps");
Vh egzaktno=phiexact; //time smo projecirali funkciju phiexact na prostor Vh
Vh rez=egzaktno-phi;
L2error[n]= sqrt(int2d(Th)(rez^2));
H1error[n]=sqrt( int2d(Th)(rez^2) + int2d(Th) ( dx(rez)+dy(rez) )^2 );
Hvala!
Samo, neće mi računati H1error... grešku javlja....
Hvala!
Samo, neće mi računati H1error... grešku javlja....
A nešto sam u sintaksi zeznuo, ali na tu foru ti ide :D
A možda i nisi deklariro H1error (na način na koji si L2error). Ja to nisam napravio u dijelu koda koji sam stavio
Btw što studiraš ti? Jer drito takve stvari radim ja na faxu :D
Buduci da bas pojma nemam o MatLab-u i programiranju u njemu bilo bi mi najdraze da mi se netko javi tko se razumije i tko bi to uradio, ja bi rado platio izradu seminarskog.
Hvala unaprijed
Pozdrav ekipa, dobio sam zadatak da napravim zadatak u matlabu za jedan seminar a nikad se nisam prije susreo sa njim. Imam algoritam a moram ga opisat. Ako ima ko bi izdvojio malo vremena puno bi pomogao.hvala