IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

MATLAB Discussion :

[fmincon] Probleme de fonction


Sujet :

MATLAB

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 8
    Par défaut [fmincon] Probleme de fonction
    Bonjour,
    C'est pour la première fois que j'utilise Matlab.
    J'utilise la fonction fmincon pour minimiser un critère non linéaire (5 variables a chercher x=[x1,x2,x3,x4,x5]) sous contraintes d'inégalité (lb<= x<=ub)
    Voila ce que je mis dans les options de fmincon :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    options = optimset('Display', 'iter','Algorithm','active-set', 'MaxFunEvals', 1000,'MaxIter',50,'TolX',1e-30,'TolFun',1e-20,'TolCon',1e-15);
    Après l'exécution du programme voila les messages que je reçois :

    1) Maximum number of function evaluations exceeded;
    increase OPTIONS.MaxFunEvals.

    2) Maximum number of function evaluations exceeded;
    increase OPTIONS.MaxIter.

    3) Magnitude of the search direction was less than 2*options.TolX and maximum constraint violation was less than options.TolCon.

    4) Magnitude of directional derivative in search direction was less than 2*options.TolFun and maximum constraint violation was less than options.TolCon.


    5) dans exitflag ( j'ai des fois que des 0 et des 5 )

    Ca fait 15 jours que je suis bloque sur ce probleme, aidez moi s ils vous plait Merci d'avance

  2. #2
    Modérateur

    Homme Profil pro
    Ingénieur en calculs scientifiques
    Inscrit en
    Août 2007
    Messages
    4 639
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Ingénieur en calculs scientifiques

    Informations forums :
    Inscription : Août 2007
    Messages : 4 639
    Par défaut
    Salut,

    Quel est ton problème?

    J'imagine que tu n'obtiens pas un résultat satisfaisant pour x sinon tu n'aurais pas ouvert cette discussion, mais quel est le résultat? As-tu essayé de faire varier l'initialisation?

    Les messages que tu montres ne sont pas des messages d'erreurs, mais renseigne sur les raisons d'arrêt du programme. Mais chaque problème se résous différemment : dans un cas, il suffira d'augmenter le nombre d'itération pour faire converger la solution, dans un autre, il faudra modifier la tolérance...
    Pour une bonne utilisation des balises code c'est ici!
    Petit guide du voyageur MATLABien : Le forum La faq Les tutoriels Les sources


    La nature est un livre écrit en langage mathématique. Galilée.

  3. #3
    Modérateur

    Homme Profil pro
    Ingénieur en calculs scientifiques
    Inscrit en
    Août 2007
    Messages
    4 639
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Ingénieur en calculs scientifiques

    Informations forums :
    Inscription : Août 2007
    Messages : 4 639
    Par défaut
    En sortie quelle valeur obtiens-tu pour fval?
    Pour une bonne utilisation des balises code c'est ici!
    Petit guide du voyageur MATLABien : Le forum La faq Les tutoriels Les sources


    La nature est un livre écrit en langage mathématique. Galilée.

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 8
    Par défaut suite
    Je voudrais tout d’abord te remercier pour ta réponse,

    Je fais une minimisation a chaque pas de temps, pour vous expliquer un peu plus :

    Mes contraintes sur x=[x1,x2,x3,x4,x5] est la suivante : ( lb<= x <= ub) ;
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    lb1 = [1.43 1.67  0.1  0.1  -5];
     
    ub1 = [2.37 2.33  1.5   2   5];

    J’utilise comme option
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    options=optimset('display','iter','MaxFunEvals',40,'Algorithm','active-set','MaxIter',5,'TolX',1e-30,'TolFun',1e-20,'TolCon',1e-10);

    Mon problème c’est si j’ai bien compris il faut que exitflag =1 pour dire qu’on trouve la minimum or moi a chaque minimisation je trouve dans extflag =0 et des fois 5 ou 4

    D’après vous, est ce que c’est pas un problème ?

    Deuxième chose i j’ai les messages de type :

    1) Maximum number of iterations exceeded; increase OPTIONS.MaxIter.


    2) Maximum number of function evaluations exceeded; increase OPTIONS.MaxFunEvals.

    La aussi c’est pas un problème?

  5. #5
    Modérateur

    Homme Profil pro
    Ingénieur en calculs scientifiques
    Inscrit en
    Août 2007
    Messages
    4 639
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Ingénieur en calculs scientifiques

    Informations forums :
    Inscription : Août 2007
    Messages : 4 639
    Par défaut
    Je ne sais pas si tu l'as vu donc je remets ma question :
    En sortie quelle valeur obtiens-tu pour fval?
    Pour une bonne utilisation des balises code c'est ici!
    Petit guide du voyageur MATLABien : Le forum La faq Les tutoriels Les sources


    La nature est un livre écrit en langage mathématique. Galilée.

  6. #6
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 8
    Par défaut
    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
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    fval =
     
      1.0e+010 *
     
      Columns 1 through 10
     
             0         0         0         0         0         0         0         0         0         0
     
      Columns 11 through 20
     
             0         0         0         0         0         0         0         0         0         0
     
      Columns 21 through 30
     
             0         0         0    0.1782    0.0278    1.3285    0.0325    0.1155    0.0245    0.0014
     
      Columns 31 through 40
     
        0.0246    0.0238    0.0151    0.0290    0.0044    0.0110    0.0063    0.0128    0.0140    0.0155
     
      Columns 41 through 50
     
        0.0289    0.0323    0.0112    0.0082    0.0098    0.0041    0.0089    0.0045    0.0156    0.0089
     
      Columns 51 through 60
     
        0.0502    0.0157    0.0082    0.0444    0.0061    0.0093    0.0012    0.0062    0.0060    0.0025
     
      Columns 61 through 70
     
        0.0028    0.0015    0.0053    0.0160    0.0045    0.0215    0.0561    0.2254    0.2124    0.1670
     
      Columns 71 through 80
     
        0.0481    0.0279    0.0151    0.0016    0.0069    0.0017    0.0337    0.0196    0.0098    0.0139
     
      Columns 81 through 90
     
        0.0542    0.0189    0.0310    0.0022    0.0063    0.0163    0.0069    0.0026    0.0684    0.0090
     
      Columns 91 through 100
     
        0.0022    0.0051    0.0279    0.0217    0.0839    0.0351    0.0036    0.0036    0.0246    0.0085
     
      Columns 101 through 110
     
        0.0055    0.0198    0.0095    0.0538    0.0088    0.0034    0.0026    0.0045    0.0076    0.0022
     
      Columns 111 through 120
     
        0.0199    0.0037    0.0509    0.3310    0.1303    0.0184    0.0194    0.0677    0.0295    0.0884
     
      Columns 121 through 130
     
        0.1202    0.1692    0.0954    0.0245    0.0086    0.0030    0.0036    0.0031    0.0061    0.1226
     
      Columns 131 through 140
     
        0.1149    0.1031    0.0080    0.0090    0.0052    0.0050    0.0035    0.0084    0.0083    0.0254
     
      Columns 141 through 150
     
        0.0104    0.0065    0.0116    0.0090    0.0051    0.0041    0.0095    0.0078    0.0031    0.0035

  7. #7
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 8
    Par défaut
    je viens de vous donner la valeur de fval
    Alors que pensez-vous?

  8. #8
    Modérateur

    Homme Profil pro
    Ingénieur en calculs scientifiques
    Inscrit en
    Août 2007
    Messages
    4 639
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Ingénieur en calculs scientifiques

    Informations forums :
    Inscription : Août 2007
    Messages : 4 639
    Par défaut
    La sortie de la fonction que tu minimises est un vecteur contenant 150 éléments.
    Je te conseillerais de tester en minimisant la somme de ces éléments.

    Ensuite, les options que tu mets dans optimset, comment les as-tu choisi?
    Pour une bonne utilisation des balises code c'est ici!
    Petit guide du voyageur MATLABien : Le forum La faq Les tutoriels Les sources


    La nature est un livre écrit en langage mathématique. Galilée.

Discussions similaires

  1. probleme de fonction javascript
    Par cach dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 06/07/2005, 10h34
  2. Réponses: 17
    Dernier message: 24/03/2005, 12h24
  3. [langage] problème avec fonction read
    Par domidum54 dans le forum Langage
    Réponses: 2
    Dernier message: 30/03/2004, 20h42
  4. [VB6]Problème de fonction
    Par mustang-ffw02 dans le forum VB 6 et antérieur
    Réponses: 13
    Dernier message: 27/03/2004, 15h09
  5. Probleme de fonction
    Par yenna dans le forum ASP
    Réponses: 6
    Dernier message: 01/03/2004, 14h10

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo