Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2109 connectés 

  FORUM HardWare.fr
  Programmation
  Java

  simplexe

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

simplexe

n°1678545
mamitou
Posté le 29-01-2008 à 15:27:03  profilanswer
 

:hello: la méthode simplexe est une méthode de résolution pour les systèmes linéaires je veux la manipuler en JAVA mais j'ai trouver des problèmes dans quelques étapes et je veux votre aide svp

mood
Publicité
Posté le 29-01-2008 à 15:27:03  profilanswer
 

n°1678546
Joel F
Real men use unique_ptr
Posté le 29-01-2008 à 15:27:21  profilanswer
 

et avec moins de détails, c'ets possible ?

n°1678576
mamitou
Posté le 29-01-2008 à 15:45:46  profilanswer
 

de quelles details vous parlez

n°1678584
leneufjuil​let2006
♫ Adagio ♫
Posté le 29-01-2008 à 15:56:15  profilanswer
 

Le code de l'appel à la méthode pour commencer. Et pis la méthode proprement dite, si tu l'as.

n°1678589
mamitou
Posté le 29-01-2008 à 15:59:17  profilanswer
 

j'ai pas compris

n°1678614
tsunade sa​ma
BE AWAKED !!
Posté le 29-01-2008 à 16:37:01  profilanswer
 

le code source....you dope !

n°1678624
Koyomi
Posté le 29-01-2008 à 16:50:07  profilanswer
 

tu commence a nous les casser menu avec tes topic $$$
 
2 hier et encore 2 aujourd'hui ca commence a bien faire...

n°1679546
mamitou
Posté le 31-01-2008 à 11:45:06  profilanswer
 

j'ai déclaré mes matrices M,I et mes vecteurs Z,B
le probleme posé est que j'ai fait la fonction de min (le pivotage) mais j'ai trouvé des problemes

 

elmo-edit : balises code ! c'est la dernière fois que je te le rappelle...

Code :
  1. System.out.println("\t\t\n//*afficher le min du (Z-C)*//" );
  2. for(int j=1;j<=Z.length;j++)
  3. {
  4. int ind=j;
  5. int petit=Z[j];
  6. for(int i=1;i<Z.length;i++)
  7. {
  8. if(petit>Z[i])
  9. {
  10.     petit=Z[i];
  11.     ind=i;
  12. }    
  13. }    
  14.                                 
  15. System.out.println("le minimum est="+(petit)+"" );
  16. System.out.println("x"+(ind)+" entre dans la base" );
  17.  
  18. System.out.println("\t\t\n utilisation de la ligne pivot" );
  19. int piv[]=new int [m];
  20. for(int j=0;j<m;j++){
  21.     piv[j]=B[j]/A[ind][j];
  22. }
  23. System.out.println("\t\t\n//*afficher le min du piv[j]*//" );
  24. for(int i=1;i<m-1;i++)
  25. {
  26. int indice=i;
  27. int min=piv[i];
  28. for(int j=1;j<piv.length;j++)
  29. {
  30. if(min>piv[j])
  31. {
  32.     min=piv[j];
  33.     indice=j;
  34. }    
  35. }    
  36. }                                
  37. System.out.println(" le pivot est="+(min)+"" );
  38. System.out.println("\t\t\n s"+(indice)+" sort de la base" );
  39.  
  40. for(int i=0;i<n;i++){
  41.     A[i][indice]=A[i][indice]/min;
  42.    I[i][indice]=I[i][indice]/min;
  43.    B[j]=B[j]/min;
  44. }
  45. for(inti=0;i<n;i++){
  46.     for(intj=0;j<m;j++){
  47.         A[i][j]=A[i][j]-(A[i][ind]*A[i][indice]);
  48.         I[i][j]=I[i][j]-(A[i][ind]*I[i][indice]);
  49.         B[j]=B[j]-(A[i][ind]*B[i][indice]);
  50.     }
  51. }
  52. for(int i=0;i<n;i++){
  53.         Z[i]=Z[i]-(Z[ind]*A[i][indice]);
  54. }
  55. for(int i=n+1;i<m;i++){
  56.         Z[i]=Z[i]-(Z[ind]*I[i][indice]);
  57. }    
  58. int max=0;
  59. max=max-(Z[ind]*B[j]);
  60. }
  61.  
  62. }


Message cité 1 fois
Message édité par Elmoricq le 31-01-2008 à 13:47:16
n°1679633
brisssou
8-/
Posté le 31-01-2008 à 13:25:50  profilanswer
 

mes yeux :cry: !!!!


---------------
HFR - Mes sujets pour Chrome - Firefox - vérifie les nouveaux posts des topics suivis/favoris
n°1679771
tsunade sa​ma
BE AWAKED !!
Posté le 31-01-2008 à 15:17:25  profilanswer
 

oui vous etes raison mais maintenant tout est claire..
merci elmo  
attendez..
 [:cerveau skyzor]


---------------
don't give up
mood
Publicité
Posté le 31-01-2008 à 15:17:25  profilanswer
 

n°1679833
brisssou
8-/
Posté le 31-01-2008 à 15:46:57  profilanswer
 

mamitou a écrit :

j'ai déclaré mes matrices M,I et mes vecteurs Z,B
le probleme posé est que j'ai fait la fonction de min (le pivotage) mais j'ai trouvé des problemes
 
(...)


 
 
quel genre les problèmes ?


---------------
HFR - Mes sujets pour Chrome - Firefox - vérifie les nouveaux posts des topics suivis/favoris
n°1679860
tsunade sa​ma
BE AWAKED !!
Posté le 31-01-2008 à 15:57:27  profilanswer
 

encore en train de   refléchir... [:potemkin]  [:potemkin]  [:potemkin]  [:potemkin]  [:potemkin]  [:potemkin]  [:potemkin]  [:potemkin]  [:potemkin]


Message édité par tsunade sama le 31-01-2008 à 15:58:53

---------------
don't give up
n°1680653
verdy_p
Posté le 01-02-2008 à 17:49:20  profilanswer
 

le problème est le choix de la valeur minimale pour déterminer le pivot: la méthode va oublier de traiter des pivots s'il y a des valeurs égales puisqu'elle veut absolument des pivots strictement croissants (en plus elle recherche ces pivots en reprenant tout depuis le début, y compris les pivots précédents). Je ne suis pas certain que ça marche de la façon attendue (mais je n'ai pas envie d'analyser trop loin l'algo indiqué).
En plus, la recherche du pivot minimum (qui intervient pour minimiser les erreurs cumulatives d'approximation) devrait considérer les valeurs absolues (car les autres colonnes échangées peuvent devenir négatives très facilement), et traiter le cas du zéro si toutes les valeurs restantes snot nulles, il n'y a plus de solution possible, et on aura une belle division par zéro...)


Message édité par verdy_p le 01-02-2008 à 17:55:24

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Java

  simplexe

 

Sujets relatifs
[java] algorithme du simplexe 
Plus de sujets relatifs à : simplexe


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)