Algoritmo per risolvere sistema di 24 equazioni in 20 incognite

Prima di postare leggi le regole del Forum. Puoi anche leggere le ultime discussioni.
Questa sezione è un contenitore temporaneo per i topic speciali a pagamento (One-Shot)

Se hai acquistato uno o più Topic speciali, puoi pubblicarli qui cliccando su "Apri un Topic".

Il registro completo dei Topic risolti e in corso è disponibile sul proprio profilo.

Algoritmo per risolvere sistema di 24 equazioni in 20 incognite #85738

avt
Frafra23
Punto
Buongiorno, devo trovare l'algoritmo lineare che risolva contemporaneamente 24 equazioni con 20 incognite.

I dati presi poggiano sulla realtà quindi hanno una soluzione ma non riesco a trovare parametri che risolvano contemporaneamente tutte le equazioni.

Posso inviare i numeri a un indirizzo specifico? Qui non riesco perché sono troppi!

Grazie ancora
Francesca
 
 

Algoritmo per risolvere sistema di 24 equazioni in 20 incognite #85746

avt
Omega
Amministratore
Ciao Frafra23,

sinceramente non capisco cosa tu intenda con algoritmo lineare.

Se vuoi puoi inviarci il file via mail, prima però devo chiederti a quale corso fa capo questo esercizio.

Algoritmo per risolvere sistema di 24 equazioni in 20 incognite #85784

avt
Frafra23
Punto
Ciao Omega, io sono laureata in statistica ma il mio quesito è semplicemente una mia curiosità non il frutto di un corso...

Spero che possiate comunque aiutarmi nella risoluzione.

Fammi sapere se posso mandare comunque i numeri all'indirizzo che mi hai indicato.

Grazie ancora

Algoritmo per risolvere sistema di 24 equazioni in 20 incognite #85786

avt
Omega
Amministratore
Ancora non mi è chiaro quale sia il problema, ad ogni modo manda pure tutto sulla mail che ho indicato in precedenza. emt

Algoritmo per risolvere sistema di 24 equazioni in 20 incognite #85789

avt
Omega
Amministratore
Eccomi emt

Per completezza ho caricato il file che ci hai inviato, è reperibile qui.

Dunque, confesso che ancora non mi è chiaro quale sia il problema di partenza né come tu l'abbia modellizzato. Ciò che mi è chiaro, e tanto basta, è che hai un sistema lineare di 24 equazioni in 20 incognite.

In questa mia risposta mi dilungherò in alcune osservazioni teorico-pratiche irrinunciabili per la risoluzione di problemi di questo tipo. Ciò che non farò è mettermi a fare i conti, dal momento che un sistema così mastodontico non va risolto "a mano".

Il sistema lineare che ti riguarda sarà della forma

\begin{cases}a_{11}x_1+a_{12}x_2+...+a_{1n}x_n=b_1\\ a_{21}x_1+a_{22}x_2+...+a_{2n}x_n=b_2\\ \vdots\\ a_{m1}x_1+a_{m2}x_2+...+a_{mn}x_n=b_m\end{cases}

dove m=24,\ n=20 sono rispettivamente il numero di equazioni ed il numero di incognite che costituiscono il sistema.

Possiamo agevolmente riscrivere il sistema lineare in forma matriciale

\left[\begin{matrix}a_{11} & a_{12} & \dots & a_{1n}\\ a_{21} & a_{22} & \dots & a_{2n}\\ \vdots & \vdots & \ddots & \vdots\\ a_{m1} & a_{m2} & \dots & a_{mn}\end{matrix}\right]\left[\begin{matrix}x_1\\ x_2\\ \vdots \\ x_n\end{matrix}\right]=\left[\begin{matrix}b_1\\ b_2\\ \vdots \\ b_m\end{matrix}\right]

Riscriviamo il sistema lineare in una forma più compatta:

A\underline{x}=\underline{b}

dove A è una matrice 24x20, \underline{x} è il vettore delle incognite (20 elementi), mentre \underline{b} il vettore dei termini noti (20 elementi).

La matrice in particolare deve avere tante righe quante sono le equazioni che compongono il sistema e tante colonne quante sono le incognite. Questo per far sì che la scrittura matriciale equivalga effettivamente al sistema e sia conforme al prodotto riga per colonna.

Ho enfatizzato l'impostazione matriciale per farti notare che, contrariamente a quel che hai scritto nell'email

ho 24 equazioni e 20 incognite, ho provato a risolvere con matrici 20*20 ma mi sono accorta che la soluzione non è valida per tutte e 24 le equazioni.

qui non hai a che fare con una matrice quadrata, bensì con una matrice rettangolare.

Ora facciamo un passo avanti: nella domanda hai scritto

i dati presi poggiano sulla realtà quindi hanno una soluzione

Per quanto l'implicazione espressa dal "quindi" possa non essere corretta (nel mezzo scorre la correttezza della modellizzazione del problema!), supporrò che il tuo problema ammetta effettivamente "una soluzione".

In questa sede non mi dilungherò sullo studio delle condizioni di risolubilità del sistema lineare - studio che andrebbe fondato sull'applicazione del teorema di Rouché-Capelli - e passo subito al dunque.

Tu vuoi essenzialmente sapere come risolvere il sistema lineare e in questo frangente ci sono tre aspetti da considerare:

1) quali sono i metodi da usare "a mano";

2) tante equazioni e tante incognite;

3) comportamento nella pratica.

Leggi le righe che seguono tutte d'un fiato. emt

Quali sono i metodi da usare a mano

Abbiamo a nostra disposizione una pletora di metodi, tra questi essenzialmente quelli elencati e spiegati nella lezione sui sistemi lineari nonché il metodo di eliminazione gaussiana.

Tante equazioni e tante incognite

Fermati un istante, e togliti dalla testa qualsiasi velleità nel voler risolvere un sistema lineare di 24 equazioni in 20 incognite "a mano". Semplicemente, non si può fare: con questo non intendo che non si può fare perché impossibile, piuttosto che la mole di calcoli da effettuare rende assolutamente insensata una risoluzione su carta.

Fortunatamente però esistono i calcolatori e una branca della Matematica che va sotto il nome di Analisi Numerica.

Comportamento nella pratica

Nella pratica dovrai munirti di un pc e di un buon software di calcolo (Matlab e Mathematica su tutti) e dargli in pasto il tuo sistema lineare.

Fine della faccenda.

Devi sapere che nel contesto dell'Analisi Numerica (o Matematica Numerica) i sistemi lineari costituiscono il cuore della modellizzazione dei problemi nonché della discretizzazione dei problemi, ossia della traduzione di problemi continui in problemi discreti.

Ci sono un sacco di metodi di risoluzione dei sistemi lineari e l'Analisi Numerica, per l'appunto, impiega buona parte dei propri sforzi per studiarne l'efficacia computazionale. In estrema sintesi minore è il numero di calcoli richiesti, migliore è il metodo.

Ci sono anche metodi esatti, che forniscono la soluzione esatta del sistema lineare, e metodi approssimati, che forniscono un'approssimazione della soluzione con un errore controllato.

A te con ogni probabilità interessa applicare un metodo numerico esatto e qui puoi veramente sbizzarrirti. Ad esempio, sempre nell'ipotesi che il sistema ammetta soluzioni, in Matlab puoi scrivere il più semplice dei comandi:

x=A\b

Il quale in caso di un sistema rettangolare A applica il metodo dei minimi quadrati, mentre nel caso di un sistema quadrato risolve il sistema A\undeline{x}=\underline{b} con risoluzione diretta \undeline{x}=A^{-1}\underline{b}.


Per concludere, tutto dipende quindi dal software di cui disponi, certo è che non dovrai usare carta e penna. emt
Ringraziano: Galois, CarFaby

Re: Algoritmo per risolvere sistema di 24 equazioni in 20 incognite #86391

avt
Frafra23
Punto
Ciao!

Rieccomi, ho fatto tutto quello che hai detto ed effettivamente Matlab è un fulmine!

Però ancora non ci sono: i parametri non sono reali, mi spiego meglio, le colonne dispari devono moltiplicare per un parametro che sia positivo e compreso tra 0 e 1 perché si tratta di popolazione, mentre le colonne dispari (che saranno da sottrarre alle prime) credo che dovrebbero stare tra 0 e 1000.

Sapresti dirmi se posso dare condizioni di questo tipo? Quelle che ottengo sono irreali!

Grazie ancora!

Re: Algoritmo per risolvere sistema di 24 equazioni in 20 incognite #86406

avt
Omega
Amministratore
Però ancora non ci sono: i parametri non sono reali, mi spiego meglio, le colonne dispari devono moltiplicare per un parametro che sia positivo e compreso tra 0 e 1 perché si tratta di popolazione, mentre le colonne dispari (che saranno da sottrarre alle prime) credo che dovrebbero stare tra 0 e 1000.

Qui credo che sia un tuo errore di battitura. Inoltre attenzione a parlare di parametri non reali perché si crea ambiguità con l'insieme dei numeri reali \mathbb{R}.

Meglio piuttosto sostituire l'aggettivo reale con verosimile. emt

Sospetto che il problema si stia trasferendo lentamente, ma inesorabilmente, alla modellizzazione del problema sulla quale sfortunatamente non ho modo di intervenire.

Re: Algoritmo per risolvere sistema di 24 equazioni in 20 incognite #86449

avt
Frafra23
Punto
Scusami quindi non c'è modo che tu sappia per imporre delle condizioni ai parametri?
grazie
buona giornata

Re: Algoritmo per risolvere sistema di 24 equazioni in 20 incognite #86453

avt
Omega
Amministratore
Il punto è proprio quello: se alla fine il problema continuo può essere effettivamente modellizzato con un sistema lineare, per la risoluzione non si scappa da quel che abbiamo visto in precedenza.

In caso contrario, potrebbe esserci un errore che potrebbe riguardare:

- la scelta di usare un sistema lineare per modellizzare il problema;

oppure

- la scelta corretta di modellizzazione ma una scrittura errata del sistema lineare;

queste due eventualità però riguardano quello che hai fatto tu, e come ho scritto in precedenza non ho possibilità di azione in merito...
Ringraziano: CarFaby
  • Pagina:
  • 1
Os