Wykorzystanie równań liniowych analiza danych z czujników

Opublikowano: 19.11.2024

Układy równań liniowych mimo, że nie pozorne to sąnarzędziami matematycznymi, które znajduje zastosowanie w wielu dziedzinach nauki i techniki.
Pozwalają na opisanie zależności między różnymi wielkościami w sposób prosty i efektywny. W kontekście analizy danych, takich jak pomiary z czujników, układy równań liniowych mogą być wykorzystywane do modelowania wpływu różnych zmiennych na określony wynik lub zjawisko.

Poniżej postaram się przedstawić przykład wraz z prostym skryptem w Python, który wykorzystując dane z czterech stacji sprawdzających jakość powietrza rozmieszczonych w różnych częściach miasta, będzie w stanie szacować jakość powietrza w punkcie piatym, gdzie takiej stacji nie ma ale wykonaliśmy jednorazowo 4 pomiary podręcznym czujnikiem w odstępach czasu.

Założenia:

Każdy z czujników mierzy stężenie CO2 w swojej lokalizacji (ppm). Dane pomiarowe prezentują się następująco w rónych mometach czasu:

Lokalizacja A B C D
Stężenie CO2 (ppm)  Czas: t1 400.45 420.432 450.01 470.6433
Czas: t2 405.2 415.43 455.34 465.689
Czas: t3 410.034 430.194 460.423 480.9
Czas: t4 420.1 440.634 470.034 49.85

 

Dla punktu E również mamy zmierzone wartości stężenia CO2 w w tych samych momentach czasu jak wyżej:

Czas Stężenie w punkcie E (ppm)
t1 451
t2 475.0345
t3 490.12
t4 510.4

Rozwiązaniem układu będą współczynniki x1,x2,x3,x4, które określają wpływ danych z każdego czujnika na przewidywaną wartość E.

Dla podanych danych, układ równań liniowych można zapisać w postaci:
{x1400.45+x2420.432+x3450.01+x4470.6433=451x1405.2+x2415.43+x3415.43+x4465.689=475.0345x1410.034+x2430.194+x3460.423+x4480.9=490.12x1420.1+x2440.634+x3470.034+x449.85=510.4

Lub w zapisie macierzowym:
[400.45420.432450.01470.6433405.2415.43455465.689410.034430.194460.423480.9420.1440.634470.03449.85][x1x2x3x4]=[451475.0345490.12510.4]


Pisanie programu

Program rozwiązujący układ równań:


Rozwiązanie po uruchomieniu:




Dostaliśnmy cztery współczynniki które możemy wykrozystać do obliczania jakości powietrza w punkcie E na podstawie odczytów z punktów A, B, C oraz D.
Aby sprawdzić czy wszystko sięzgadza do programu poniżej wpisałem takie same dane z czujników (A, B, C, D) jak w t1 więc jako wynik powiniśmy otrzymać to co było w t1 dla punktu E.


Jako wynik otrzymujemy dokładnie 451 ppm więc wszystko się zgadza i możemy teraz szacować jakość powietrza w punkcie E na podstawie wartości czterech w innych częściach miasta.