mine(1)

NAME
mine - a mining problem

DESCRIPTION
[cout,feed]=mine(n1,n2,uvect)
extraction optimal d'un minerai d'une mine a ciel ouvert en avancant progressivement (k=1,2,...,n2) et en prelevant a l'abcisse k+1 la tranche de profondeur x(k+1) par une commande u a partir de la profondeur x(k) a l'abcisse k. la resolution du probleme se fait par programmation dynamique en calculant la commande optimale maximisant le critere :
   -- n2-1
      /        f(x(k),k) + V_F(x,n2)
   -- k=1
avec : x(k+1)=x(k) + u x(k) est la profondeur de la mine a l'abcisse k (x=1 est le niveau du sol)

la fonction gain instantane f(i,k) represente le benefice si on creuse la profondeur i a l'abcisse k

V_F(i,n2) est un cout final destine a forcer l'etat final a valoir 1 (pour sortir de la mine ...) V_F(i,n2) vaut -10000 en tout les points i<>1 et 0 pour i=1 le programme mine necessite de connaitre

n1  : l'etat est discretise en n1 points

n2  : nombre d'etapes

uvect
    : vecteur ligne des valeurs discretes que peut prendre u (3 valeurs, on monte, on descend ou on avance) et le programme mine retourne alors deux matrices

cout(n1,n2)
    : valeurs de la fonction de Bellman

feed(n1,n2)
    : valeurs de la commande a appliquer lorsque l'etat varie de 1 a n1 et l'etape de 1 a n2.

FF_o
[y]=ff_o(x,t)
gain instantane apparaissant dans le critere du programme mine. pour des raisons techniques, l'argument x doit etre un vecteur colonne et donc egalement la sortie y. en sortie y=[ ff_0(x(1),t),...ff_o(x(n),t)];

SHOWCOST

DESCRIPTION
[]=showcost(n1,n2,teta,alpha)
Montre en 3d la fonction de gain instantanee (ff)

x   : profondeur (n1)

y   : abscisse (n2)

z   : valeur de ff_o(x,t)