Devo trovare qualsiasi soluzione (potrebbe esistere molte o nessuna) di un numero qualsiasi di equazioni di linea fornite con un numero qualsiasi di variabili. In Java. Quali librerie e metodi usano? Cosa implementare? Voglio farlo con almeno il lavoro possibile.Libreria per la ricerca di qualsiasi soluzione di un numero qualsiasi di equazioni lineari con un numero qualsiasi di variabili
risposta
Qualsiasi numero di equazioni? Il mezzo di soluzione è diverso a seconda di come si confronta al numero di incognite.
Se N (numero imprecisato) < N (equazioni), è necessario eseguire una soluzione dei minimi quadrati per ottenere i coefficienti.
Se N (sconosciuto) = N (equazioni), è possibile risolvere utilizzando la decomposizione LU con la decomposizione del valore pivotante o singolare.
Se N (sconosciuto)> N (equazioni), è necessario eseguire una scomposizione del valore singolare, che fornirà lo spazio nullo e la soluzione migliore possibile.
Se il numero di equazioni è molto grande, potrebbe essere necessario pensare a sfruttare scarsità o scrivendo la matrice su disco e di risolverlo in passi.
La libreria Apache Commons Math contiene tutti questi elementi. Lo consiglio se stai scrivendo in Java.
c'è un porto Java delle classiche librerie di algebra lineare BLAS disponibili a
Non ho usato prima, ma sembra che potrebbe essere molto utile.
Provate i risolutori di Apache Commons matematica http://commons.apache.org/math/userguide/linear.html