je veux faire une optimisation sous R :
voila mon modèle d'optimisation :
min maFonction(nk) avec k = 1:N
sous contraintes:
  1. xk=somme(nj) avc k=k+1 : N
  2. X=somme(nk) avc k=1:N
  3. n1,.....,nN>=0

mon objectif est de déterminer les nk qui minimisent maFonction
J'ai essayé la fonction constrOptim() mais je n'ai pas réussi à introduire la 1er contraite ??? avez vous une idée comment résoudre ce genre de problème d'optimisation sous R?

Est ce que j'ai bien choisi la commande ou il y a d'autres plus utiles???
voila un exemple sous R de l'utilisation de la commande constrOptim :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
###  exemple
# fr notre fonction à minimiser
fr <- function(x) {
x1 <- x[1]
x2 <- x[2]
100 * (x2 - x1 * x1)^2 + (1 - x1)^2
 }
#  1er contrainte (x<=0.9) ,on va l'ecrire sous cette forme : (-x =>-0.9)
#  la 2eme  contrainte (y-x > 0.1) , on la carde selon cette ecriture
#optimisation
initial<- c(-1.2,0.9)
constrOptim(initial, fr,NULL, ui=rbind(c(-1,0),c(-1,1)), ci=c(-0.9,0.1))
#avec initial :est l'initialisation
#fr : notre fonction à minimiser
#NULL : on l'ecrit si on veux pas calculer le gradient
# ui : ces un matrice des coff des paramètres
#        [,1] [,2]
# [1,]   -1   0
# [2,]   -1   1
# ci: vecteur des contrain
#   [1] -0.9  0.1
# le commande constrOptim exige que la valeur initial qu'on choisi doir vérifier (ui%*%initial => ci)
Merci pour votre aide