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 :

minimisation d'une fonction par génétique algorithme


Sujet :

MATLAB

  1. #1
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2018
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2018
    Messages : 5
    Points : 3
    Points
    3
    Par défaut minimisation d'une fonction par génétique algorithme
    bonjours ,
    j'ai déclare ma fonction sur Matlab pour le minimiser par l'algorithme génétique comme suite:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    function F=ga_Newton(R)
         t= [2,4,6,8,10,12,14,16,18,20];
         Rexp=[0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,1];
         F = Rexp-R*(1-exp(-t./20));
    mais il y'a un erreur dans ma fonction que je n'arrive pas de le résoudre, je suis débutant, pouvez vous m'aider s'il vous plais

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2012
    Messages
    230
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2012
    Messages : 230
    Points : 352
    Points
    352
    Par défaut
    Des informations manquent pour que l'on puisse te répondre:
    • l'erreur en elle-même: manque d'un end à la fin, mauvais calcul, pas de calcul du tout ?
    • R en entrée de ta fonction correspond à quoi ? Quel est la nature de R (vecteur, valeur numérique,...)


    Sans cela, difficile de te répondre.

  3. #3
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2018
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2018
    Messages : 5
    Points : 3
    Points
    3
    Par défaut
    slt ,
    Pour être claires, je fais un master de recherche en physique, pour dire que la programmation n'est pas mon domaine,
    donc soit être patient avec moi
    ma problème est de faire un ajustement d'une équation non linéaire à des données avec l'algorithme génétique autrement dit je cherche à minimiser R, l’équation( ou fonction) est: S=somme [( Rexp-R*exp(-t/taux)^2]
    avec Rexp(connu): vecteur qui représente les valeur expérimentales de R
    t(connu): vecteur qui représente le temps correspond à chaque valeur de Rexp
    taux(connu): constante réel
    R(valeur numérique) est le résultat finale ( je dois donner au début un valeur approximative de R, pour quel le programme me donne le valeur optimale de R)

    je suis vraiment coince, merci bien de m'aide

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2012
    Messages
    230
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2012
    Messages : 230
    Points : 352
    Points
    352
    Par défaut
    Et quand tu exécutes/lance ta fonction, qu'est-ce que tu obtiens dans le workspace de Matlab (fenêtre principale du software)?

  5. #5
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2018
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2018
    Messages : 5
    Points : 3
    Points
    3
    Par défaut
    ça c'est le message afficher dans la workspace de Matlab:
    Not enough input arguments
    et ça c'est la message afficher par optimisation tool(ga):
    Your fitness function must return a scalar value
    pouvez vous essaie de déclarer la fonction chez vous si possible

  6. #6
    Rédacteur/Modérateur

    Avatar de Jerome Briot
    Homme Profil pro
    Freelance mécatronique - Conseil, conception et formation
    Inscrit en
    Novembre 2006
    Messages
    20 318
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Freelance mécatronique - Conseil, conception et formation

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 318
    Points : 52 958
    Points
    52 958
    Par défaut
    Montre nous les messages d'erreur complet
    Voir la FAQ : Comment exploiter les messages d'erreurs ?

  7. #7
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2018
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2018
    Messages : 5
    Points : 3
    Points
    3
    Par défaut
    slt gerome;
    je suis vraiment coincé dans cette problème, je vous donne encore la code Matlab, pouvez vous l’essayez chez vous s'il vous plais et merci d'avance.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    function F=ga_Newton(R)
         t= [2,4,6,8,10,12,14,16,18,20];
         Rexp=[0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,1];
         F = Rexp-R(1)*(1-exp(-t./20));

  8. #8
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2012
    Messages
    230
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2012
    Messages : 230
    Points : 352
    Points
    352
    Par défaut
    Si on teste ce code, on aura une erreur d'office avec le "end" manquant à la fin de la fonction. D'autre part, il n'est pas dit que nous ayons les mêmes configurations de matlab que toi.

    Copie/colle ton message d'erreur complet ici. Sinon, on ne pourra pas t'aider.

Discussions similaires

  1. Réponses: 1
    Dernier message: 06/06/2010, 11h33
  2. Réponses: 5
    Dernier message: 29/09/2006, 18h17
  3. Réponses: 6
    Dernier message: 12/05/2006, 16h20
  4. Réponses: 8
    Dernier message: 10/03/2006, 18h28
  5. creation d'une fonction par l'utilisateur
    Par michelk dans le forum VB 6 et antérieur
    Réponses: 16
    Dernier message: 15/03/2005, 10h53

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