Optimisation par algorithme genetique MATLAB

Bonjour,
Je fais l'optimisation des paramètres d'un moteur en utilisant l'algorithme genetique de MATLAB, la resolution graphique(la grandeur à optimiser en fonction de nombre d'itérations) n'a donné qu'un nombre trés limité de points (parfois deux ou trois) en plus la resolution n'a pas respecté les contraintes (j'ai écris dans la fonction contrainte Ceq=[F-20] mais avec les paramaitres optimals donnés après la résolution j'ai calculé F et j'ai trouvé qu'elle est differente de 20).
Est ce qu'il ya quelqu'un qui peut m'aider pour résoudre ce problème.Merci bien.
Configuration: Windows XP
Internet Explorer 7.0

6 réponses

  1. comment j'ai fair un programme par le matlab avec les algorithmes génétique pour optimisé le choix de fournisseur
    1. je suis etudient je cherche des algorithme genetique appliquee sur une machine asynchrone merci a votre attention
      1. Salut, tu peux utiliser les programmes de matlab: une fonction fitness dans laquelle tu peux écrire tes variables et tes fonctions, une fonction contrainte dans laquelle tu indiques les limites auxquelles on doit s'arrêter et puis une fonction base dans laquelle on fait appel à la fonction fitness et la fonction contrainte, au lieu de la fonction base tu peux écrire gatool dans ce cas une page à remplir va apparaître, tu dois la remplir par le nom de la fonction fitness et la fonction contrainte, par les limites inférieures et supérieures des variables et d'autres informations et tu appuis sur run pour fonctionner le programme. Tu peux trouver des exemples des fonctions indiquées dans le help MATLAB.
      2. @SOUBonjour,
        je suis un ingénieur en génie éléctrique et je continue mon master sous le thème "obtimisation des systèmes hybrides par algorithmes génétiques".
        mon problème est comment implémenter la fonction de fitness,
        j´ai pris comme exemple
        F=x^2+y^2.
        mon min sera a 0.
        prière de me donner un feedback sur mon e-mail , ou des reseigements utiles.
        merci d´avance.
      3. @s.mouadhBonjour Mouath,
        Pour faire l'optimisation par matlab tu dois écrire trois fonctions, chacune dans une page: fonction base, fonction contrainte et fonction fitness.
        Concernant la fonction fitness: vous allez enregistrer cette page sous le nom simple_fitness et puis à l'intérieur de cette fonction vous écrivez:
        function y=simple_fitness(x)
        variable1=x(1);
        variable2=x(2);
        .
        .
        .
        constantes;
        .
        .
        .
        expressions intermediares en fonction des variables et des constantes;
        .
        .
        .
        y=relation contenant les expressions intermediaires, par exemple si on veut optimisé la masse on écrit:
        y=massfer+masscuivre+massaimant ,massfer, masscuivre et massaimant sont déja définis dans les expressions intermédiaires

        Si tu veux minimiser x^2+y^2 vous écrivez:
        function Z=simle_fitness(k)
        x=k(1);
        y=k(2);
        Z=(k(1))^2+(k(2))^2

        les limites des variables x et y doivent être écrites dans la fonction contrainte et puis on fait appel à ces deux fonctions dans la fonction base.

        Vous pouvez trouver plus d'informations sur le help Matlab (algorithme génétiques)
      4. @SOUBonjour,
        merci d'abord pour votre aide
        j'ai pu avoir
        plotobjective(@carfcn2,[-2 2; -2 2]) % carfcn2 est ma fonction fitness
        FitnessFunction = @carfcn2;
        numberOfVariables = 2;
        [x,Fval,exitFlag,Output] = ga(FitnessFunction,numberOfVariables);
        opts = gaoptimset('PlotFcns',{@gaplotbestf,@gaplotstopping});
        etc...
        j'essaye maintenant de comment faire une déscritisation d'une fonction integrale d'une commande optimale .
        merci,

        autre question,
        comment faire afin d'ajouter un fichier joint a message, il n'ya que un lien hypertext.
        merci
      5. @SOUbonjour,
        j'ai une autre question ,
        en tapant la commande GATOOL sur matlab
        et dans l'option population entrouve deux type:
        Double Vector et bit string,
        la deuxième est [1 0 0 1 ]
        mais la première c'est quoi????

        merci
    2. bonjour,
      je cherche a creer un algorithme genetique pour optimiser le fonctionnement dun carrefour... Mais je n'ai aucune idée de la facon dont je dois m'y prendre... je sais quil est possible d'utiliser matlab et je vous serais reconnaissante de m'aider... Merci d'avance.
      1. bonjour j'ai lue ton message concernant l'optimisation par algorithme génétique.
        SVP envoie moi ton problème sous daly_enim@yahoo.fr.
    3. Stp, tu eux me dire comment tu as pu integrer les contraites dans gatool?
      Merci d'avance
      1. Bonjour,

        Je suis à la recherche d'un code écrit en matlab ou en C/C++ de l'algorithme NSPSO (Non dominated sorting particle swarm optimization) ou de l'algorithme DPSO (discrete particle swarm optimization).

        Merci d'avance
        1. Slt Mouna, svp j'ai le meme probleme que toi concernant l'optimization des parametres d'un moteur
          svp peuvez vous m'envoyez ton programme a ma boite e-mail qui est (seglicap@yahoo.ca)
          Merci