Partage
  • Partager sur Facebook
  • Partager sur Twitter

quel algo pour un mauvais conditionnement ?

    5 février 2012 à 11:53:23

    Salut tous,

    j'ai bien saisi ce que c'est le conditionnement d'une matrice, mais du coup si j'ai un systeme mal conditionné, quel algorithme dois je choisir ?

    1°) apparemment la méthode du Pivot ne semble pas ameliorer la methode de Gauss de ce point de vu là (ou très peu) je me trompe ???

    2°) du coup une méthode iterative c'est mieux approprié ?

    merci d'avance pour votre aide
    • Partager sur Facebook
    • Partager sur Twitter
      5 février 2012 à 13:12:46

      Bonjour, :)


      ça dépend de ton système tu peux essayer d'améliorer le conditionnement aussi,
      renseigne toi sur l'équilibrage des équations, par exemple une des techniques les plus simples est de diviser chaque terme par la somme de la ligne , exemple :
      soit une matrice A t.q.

      A*x = b
      <math>\(\begin{pmatrix} 1 & 999 \\ 9.999 & 9990 \end{pmatrix}\)</math>

      tu divises la première ligne par 1000 la deuxième par 9999.999 et tu obtiendras normalement un meilleur conditionnement ( nombre de conditionnement plus petit), n'oublie pas de diviser également le membre de droite ( le vecteur b par la somme de la ligne de A de la même manière) pour maintenir l'égalité des équations de ton système ^^

      ce n'est qu'un exemple je suis pas sur que j'ai pris un bon choix ^^

      • Partager sur Facebook
      • Partager sur Twitter
        5 février 2012 à 15:41:25

        merci pour ton aide, je comprends ce que tu veux dire.

        Par contre, je voudrais comprendre des trucs d'ordre général si j'ai un mauvais conditionnement :
        1°) es ce que les méthodes directes sont plus sensibles au conditionnement par rapport aux méthodes itératives ?
        2°) la méthode de Gauss avec pivot partiel est elle moins sensible que Gauss classique ?
        • Partager sur Facebook
        • Partager sur Twitter
          5 février 2012 à 16:29:10

          Il faut aussi voir ce que l'on appelle mauvais conditionnement.
          Selon mon prof, la résolution de système linéaire est "aisée" jusqu'à des conditionnements de l'ordre de <math>\(10^{11}\)</math> et devient très difficile au delà de <math>\(10^{16}\)</math>.

          Je ne sais pas si les méthodes itératives sont moins sensibles au conditionnement que les méthodes "directes", mais il me semble qu'elles sont généralement plus adaptées aux problèmes avec une diagonale dominante (après je ne m'avancerais pas trop car je suis (très) loin d'avoir assez d'expérience dans le domaine pour pouvoir réellement juger)

          Après, le problème des méthode type Gauss, c'est qu'elles dégradent le problème, donc si il est déjà mauvais, ça empire.
          Les variantes en pivot partiel/total sont là pour réduire ce problème mais ne le supprime pas (et l'amélioration dépend beaucoup de la matrice)
          • Partager sur Facebook
          • Partager sur Twitter
            5 février 2012 à 17:55:16

            merci pour ton aide, c'est intéressant :D
            • Partager sur Facebook
            • Partager sur Twitter

            quel algo pour un mauvais conditionnement ?

            × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
            × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
            • Editeur
            • Markdown