Matlab optimisation fmincon
	
	
		Bonjour à tous,
Je suis nouveau sur ce forum et sur matlab aussi 
Mon problème consiste à trouver le polynôme y(x) qui minimise une intégrale en f(y(x)).dx entre bornes connues. j'ai donc écrit dans une macro : 
	Code:
	
| 12
 3
 4
 
 | function out=obj(x,A)
aux=sqrt(1+polyval(polyder(A,x),x).^2);
out=aux./(sqrt(20*(1-polyval(A,x)))+0.001); | 
 pour définir ma fonction f(y(x)). A est la matrice des coef du polynôme y
Ensuite dans une autre macro j'ai mis :
	Code:
	
| 12
 3
 4
 
 | function t=temps(A)
x=0:0.01:1;
t=quad(@(x) obj(x,A),0,1); | 
 pour calculer mon intégrale.
et enfin dans le programme principal j'ai :
	Code:
	
| 12
 3
 4
 5
 6
 7
 8
 9
 10
 11
 
 | Aeq=zeros(2,4);
Aeq(1,4)=1;
for i=1:1:4;
    Aeq(2,i)=1;
end;
    
beq=[1 0]';
[A,t]=fmincon(temps,zeros(4,1),[],[],Aeq,beq) | 
 où Aeq et beq permettent de définir ma contrainte d'optimisation (y(x) doit passer par 2 points imposés).
Quand j'essaie de lancer fmincon dans matlab, il me demande de définir A. Or A est ma variable et je ne sais pas comment lui faire comprendre :(
Si quelqu'un a la patience de m'expliquer le problème, je l'en remercie d'avance !