Polinomiale 4 ordine

Messaggioda lucalazza » 30/07/2018, 09:45

Buongiorno a tutti,

sono alle prese con un dubbio. Su excel ho un grafico di accelerazione di una macchina alla quale poi ho aggiunto una linea di tendenza, e quella che più la approssima è una polinomiale del 4 ordine con questa equazione: y = 3E-07x4 - 6E-05x3 + 0.0028x2 + 0.0501x - 0.117

Volevo sapere da voi se era possibile, e eventuale come si ricavano quei valori numerici dei coefficienti !

Grazie mille a tutti per l'interesse.

A presto,

Luca Lazzaretti
Allegati
Smart.png
(54.75 KiB) Mai scaricato
lucalazza
Starting Member
Starting Member
 
Messaggio: 1 di 12
Iscritto il: 30/07/2018, 09:29

Re: Polinomiale 4 ordine

Messaggioda gugo82 » 30/07/2018, 10:51

Beh, $3*10^(-7) \approx 0 \approx -6*10^(-5)$, quindi i primi due termini li puoi bellamente trascurare. :wink:

I valori si calcolano con metodi di approssimazione polinomiale classici, tipo metodo dei minimi quadrati.
Nella documentazione della function di MatLab che usi dovrebbe esserci scritto che metodo usa per fare i conti: vedi in helpdesk (o come si chiama... Sono secoli che non uso MatLab).
Sono sempre stato, e mi ritengo ancora un dilettante. Cioè una persona che si diletta, che cerca sempre di provare piacere e di regalare il piacere agli altri, che scopre ogni volta quello che fa come se fosse la prima volta. (Freak Antoni)
Avatar utente
gugo82
Cannot live without
Cannot live without
 
Messaggio: 19288 di 44961
Iscritto il: 12/10/2007, 23:58
Località: Napoli

Re: Polinomiale 4 ordine

Messaggioda lucalazza » 30/07/2018, 11:12

gugo82 ha scritto:Beh, $3*10^(-7) \approx 0 \approx -6*10^(-5)$, quindi i primi due termini li puoi bellamente trascurare. :wink:

I valori si calcolano con metodi di approssimazione polinomiale classici, tipo metodo dei minimi quadrati.
Nella documentazione della function di MatLab che usi dovrebbe esserci scritto che metodo usa per fare i conti: vedi in helpdesk (o come si chiama... Sono secoli che non uso MatLab).



Purtroppo non ho Matlab in questo pc.
Pero non capisco davvero come Excel ricava quei valori di coefficienti . Tanto ho in ingresso solo dati di accelerazione e tempo.
Sto provando in tutti i modi ma non riesco.

Ho provato a fare altro tentativo ricavando i valori da questo sito, h t t p://utenti.quipo.it/base5/numeri/equasolutore4.html
e sostituendoli nella mia equazione ma non trovo il valore di acc max che ho nel grafico.
lucalazza
Starting Member
Starting Member
 
Messaggio: 2 di 12
Iscritto il: 30/07/2018, 09:29

Re: Polinomiale 4 ordine

Messaggioda gugo82 » 30/07/2018, 12:22

Scusa, non so perché ma ero convinto usassi MatLab...

Ad ogni buon conto, supponendo di lasciar perdere termini di grado elevato e limitandoci a cercare un’interpolante di secondo grado $f(x) = a x^2 + b x + c$, puoi ricondurre il problema di interpolazione alla risoluzione di un sistema lineare nelle incognite $a,b,c$:
\[
\begin{cases}
\sum_i x_i^2\ a + \sum_i x_i\ b + \sum_i 1\ c = \sum_i y_i \\
\sum_i x_i^3\ a + \sum_i x_i^2\ b + \sum_i x_i\ c = \sum_i x_i y_i \\
\sum_i x_i^4\ a + \sum_i x_i^3\ b + \sum_i x_i^2\ c = \sum_i x_i^2 y_i
\end{cases}
\]
in cui $(x_i, y_i)$ per $i=1, \ldots , n$ sono le coordinate degli $n$ punti da interpolare e le somme sono estese a tutti i possibili valori di $i$.
Le equazioni vengono fuori minimizzando la funzione convessa che fornisce l’errore quadratico, i.e. $E(a,b,c) := sum_i [ y_i - (a x_i^2 + b x_i + c) ]^2$.
I dettagli li puoi cercare in rete.
Sono sempre stato, e mi ritengo ancora un dilettante. Cioè una persona che si diletta, che cerca sempre di provare piacere e di regalare il piacere agli altri, che scopre ogni volta quello che fa come se fosse la prima volta. (Freak Antoni)
Avatar utente
gugo82
Cannot live without
Cannot live without
 
Messaggio: 19290 di 44961
Iscritto il: 12/10/2007, 23:58
Località: Napoli

Re: Polinomiale 4 ordine

Messaggioda lucalazza » 30/07/2018, 15:22

Non riesco a trovare nulla online di così ben dettagliato..

Mi potresti dare le formule nel caso in cui tengo conto anche dei primi due termini di grado elevato?
Tanto uso Excel per i calcoli quindi mi vengono semplici

Saluti,

Luca Lazzaretti
lucalazza
Starting Member
Starting Member
 
Messaggio: 3 di 12
Iscritto il: 30/07/2018, 09:29

Re: Polinomiale 4 ordine

Messaggioda gugo82 » 30/07/2018, 15:58

Si tratta di minimizzare l’errore con una funzione di cinque variabili:
\[
E(a,b,c,d,e):= \sum_i \Big[ y_i - (a x_i^4 + b x_i^3 + c x_i^2 + d x_i + e)\Big]^2
\]
in cui la somma è estesa a tutti gli indici $i=1, \ldots , n$ con $n >= 5$.
Sono sempre stato, e mi ritengo ancora un dilettante. Cioè una persona che si diletta, che cerca sempre di provare piacere e di regalare il piacere agli altri, che scopre ogni volta quello che fa come se fosse la prima volta. (Freak Antoni)
Avatar utente
gugo82
Cannot live without
Cannot live without
 
Messaggio: 19294 di 44961
Iscritto il: 12/10/2007, 23:58
Località: Napoli

Re: Polinomiale 4 ordine

Messaggioda lucalazza » 31/07/2018, 12:11

gugo82 ha scritto:Si tratta di minimizzare l’errore con una funzione di cinque variabili:
\[
E(a,b,c,d,e):= \sum_i \Big[ y_i - (a x_i^4 + b x_i^3 + c x_i^2 + d x_i + e)\Big]^2
\]
in cui la somma è estesa a tutti gli indici $i=1, \ldots , n$ con $n >= 5$.



Perfetto, allora era come pensavo, il problema risulta essere con Excel.

Sapete per caso se ci sono modifiche che posso apportare, alla "linea di tendenza", oltre al rendere le unità più simili possibili?
Perché nel caso che riporto qui in immagine, la mia linea di tendenza non mi da in uscita i dati corretti.

non so come fare a trovare l'equazione della curva..
Allegati
Linea.PNG
(32.92 KiB) Mai scaricato
lucalazza
Starting Member
Starting Member
 
Messaggio: 4 di 12
Iscritto il: 30/07/2018, 09:29

Re: Polinomiale 4 ordine

Messaggioda Raptorista » 31/07/2018, 13:25

Una versione equivalente di quello che dice gugo è la seguente: scrivi l'equazione
\[
ax^4 + bx^3 +cx^2 + dx + e = y,
\]
per ogni punto che hai, dove \(x\) e \(y\) sono le coordinate di ciascun punto.
Mettendo tutte queste equazioni insieme ottieni un sistema lineare \(A \mathbf{x} = \mathbf{b}\) fatto così:
\[
A \underbrace{\begin{pmatrix}a \\ b \\ c \\ d \\ e \end{pmatrix}}_{\mathbf{x}} = \mathbf{b}
\]
dove \(A\) contiene le ascisse dei punti elevate a varie potenze e \(b\) contiene le ordinate.

A questo punto devi risolvere il sistema lineare
\[
A^T A \mathbf{x} = A^T \mathbf{b}
\]
e la soluzione sono i tuoi coefficienti \(a,b,c,d,e\).
Un matematico ha scritto:... come mia nonna che vuole da anni il sistema per vincere al lotto e crede che io, in quanto matematico, sia fallito perché non glielo trovo


Immagine
Avatar utente
Raptorista
Moderatore
Moderatore
 
Messaggio: 4968 di 9616
Iscritto il: 28/09/2008, 19:58

Re: Polinomiale 4 ordine

Messaggioda gugo82 » 31/07/2018, 22:08

@Raptorista: Il metodo che proponi non è equivalente a quello che ho proposto io più sopra, anzi è del tutto differente perché risolve (quando funziona) un altro problema.

In particolare, il metodo dei minimi quadrati risolve un problema di approssimazione (o smoothing), determinando una curva "liscia" $y=f(x)$ (con $f$ di forma assegnata) che approssima alla meglio l'andamento di una distribuzione di dati sperimentali, i.e. $y_i \approx f(x_i)$ per ogni $i$, secondo un criterio stabilito (minimizza l'errore quadratico degli scarti).

Quello proposto da te, invece, risolve un problema di interpolazione, in cui si cerca una curva "liscia" $y=f(x)$ (con $f$ di forma assegnata) che passi esattamente attraverso tutti i punti di una distribuzione di dati sperimentali, i.e. tale che $y_i=f(x_i)$ per ogni $i$.

Ora accade che il secondo problema, cioè quello dell'interpolazione, in generale non ha alcuna soluzione (e.g., ciò accade quando si hanno due coppie di dati $(x_1, y_1), (x_2,y_2)$ con $x_1=x_2$ e $y_1!=y_2$, oppure -a parte botte di culo colossali!- quando il numero $n$ di dati è superiore al grado $k$ del polinomio interpolante $f$), o, se ce l'ha, la soluzione fa schifissimo tra un punto della distribuzione ed il successivo (nel senso che oscilla troppo: è il fenomeno di Runge).
Per questo motivo, come curve interpolanti si usano curve polinomiali solo a tratti (come le spline) ed in genere si lasciano perdere i polinomi.

D'altro canto, il metodo dei minimi quadrati, che, fondamentalmente, è un problema di minimo libero per una funzione strettamente convessa e coercitiva, ha sempre una sola soluzione. Questo pregio, però, lo si paga perdendo l'uguaglianza puntuale $y_i=f(x_i)$ che diventa solo un'approssimazione $y_i\approx f(x_i)$.

*** EDIT:

Ho scritto una cavolata, perché ho letto male il post di Raptorista (al quale vanno le mie scuse) e ne ho travisato le intenzioni.
Il sistema che lui propone di risolvere, i.e. $A^t A x = A^t y$, è la formulazione matriciale del sistema che fornisce il punto critico della funzione errore $E$ che proponevo sopra.

Ad ogni buon conto, è importante che lo OP riconosca la differenza tra interpolazione ed approssimazione. Se lo OP sfrutta un metodo di minimi quadrati per risolvere il problema, è evidente che va incontro a difficoltà tipiche del procedimento, i.e. al fatto che la curva approssimante i dati sia, per l'appunto, una curva approssimante e non interpolante.
Sono sempre stato, e mi ritengo ancora un dilettante. Cioè una persona che si diletta, che cerca sempre di provare piacere e di regalare il piacere agli altri, che scopre ogni volta quello che fa come se fosse la prima volta. (Freak Antoni)
Avatar utente
gugo82
Cannot live without
Cannot live without
 
Messaggio: 19300 di 44961
Iscritto il: 12/10/2007, 23:58
Località: Napoli

Re: Polinomiale 4 ordine

Messaggioda lucalazza » 01/08/2018, 09:29

Riporto qui l'esercizio di mio interesse, dove evidenzio i valori riportati nel grafico.

Rappresentano i dati in uscita da una macchina a CN che sto analizzando per valutare differenze tra caso reale e quello pratico. Sul grafico stesso è riportata l'equazione polinomiale di 4°ordine che dovrebbe approssimare quanto meglio la curva dell'accelerazione, ma sostituendoci dentro i valori, i risultati non combaciano.

Sto forse commettendo io un errore che mi sta sfuggendo?
Allegati
Esempio di calcolo.xlsx
(28.77 KiB) Scaricato 115 volte
lucalazza
Starting Member
Starting Member
 
Messaggio: 5 di 12
Iscritto il: 30/07/2018, 09:29

Prossimo

Torna a Analisi Numerica e Ricerca Operativa

Chi c’è in linea

Visitano il forum: Nessuno e 1 ospite