Dyskretyzacja (matematyka)

Z testwiki
Przejdź do nawigacji Przejdź do wyszukiwania

Szablon:Dopracować Dyskretyzacja – pojęcie dotyczące procesu transformowania modeli i równań funkcji ciągłych na ich dyskretne odpowiedniki. Jest to zwykle pierwszy krok w procesie przygotowywania tych modeli (i równań) do ewaluacji numerycznej i implementacji na komputerach cyfrowych. Do przetwarzania na komputerze cyfrowym ponadto potrzebne jest wykonanie kwantyzacji.

Szczególnie istotne są tu:

Rozwiązanie zdyskretyzowanego cząstkowego równania różniczkowego, uzyskane za pomocą metody elementów skończonych

Dyskretyzacja związana jest także z matematyką dyskretną i jest ważną częścią komputerowych obliczeń ziarnistych stosowanych w mechanice komputerowej. W tym kontekście dyskretyzacja odnosi się także do modyfikacji zmiennej w kategorii ziarnistości gdy agreguje się wiele zmiennych dyskretnych albo dokonuje się fuzji wielu kategorii dyskretnych.

Dyskretyzacja równań różniczkowych metodą Eulera

Szablon:Osobny artykuł Można wykonać projekt układu sterowania ciągłego i zaimplementować go w układzie dyskretnym stosując metody aproksymacji równań różniczkowych. Pewnym szczególnym sposobem realizacji aproksymaty dla komputera cyfrowego w celu rozwiązania równania różniczkowego jest metoda Eulera. Metoda ta może być wyprowadzona z następującej definicji różniczki:

x˙=limδt0δxδt,

gdzie δx jest zmianą zmiennej x w czasie δt. δt nie musi być całkiem równe zero by zależność ta mogła być prawdziwa po zastosowaniu podanych niżej aproksymat. W samej metodzie Eulera wyróżnić można dwie metody:

  • aproksymację prostokątną w przód (ang. forward rectangular rule) dla której:
x˙(k)=x(k+1)x(k)T,

gdzie k jest liczbą całkowitą, T=tk+1tk jest okresem próbkowania i tk=kT, x(k) i x(k+1) wartościami funkcji x w chwilach odpowiednio tk i tk+1

  • aproksymację prostokątną wstecz (ang. backward rectangular rule) dla której:
x˙(k)=x(k)x(k1)T,

gdzie k jest liczbą całkowitą, T=tktk1 jest okresem próbkowania i tk=kT, x(k) i x(k1) wartościami funkcji x w chwilach odpowiednio tk i tk1

Aproksymacje te mogą być zastosowane w miejscach wszystkich różniczek, które występują w równaniach różniczkowych regulatora. W ten sposób uzyskuje się zbiór równań algebraicznych, które mogą być rozwiązane przez komputer cyfrowy. Równania te znane są jako równania różnicowe i są rozwiązywane cyklicznie (z dyskretnym krokiem czasowym o długości T).

Dyskretne równoważniki transmitancji operatorowej

W teorii sterowania, metodę projektowania układów dyskretnych polegająca na zaprojektowaniu kompensatora czasu ciągłego, a następnie zastąpieniu go równoważnikiem dyskretnym tak by można go zaimplementować w urządzeniu cyfrowym nazywa się emulacją. Metoda ta jest bardzo szeroko używana przez inżynierów praktyków. Przydatne stają się wówczas dyskretne równoważniki transmitancji operatorowej.

Dyskretne równoważniki transmitancji operatorowej to transmitancje dyskretne, które aproksymują te same charakterystyki (w pewnym zakresie częstotliwości) jak dana transmitancja czasu ciągłego G(s). Można w tym celu zastosować poniższe metody realizujące to zadanie:

  • całkowanie numeryczne – w metodzie tej przeprowadza się całkowanie numeryczne równań różniczkowych opisujących wykonany projekt czasu ciągłego. Istnieje wiele technik pozwalających na całkowanie numeryczne w tym metoda Eulera i techniki oparte na regułach prostokąta i trapezu.
  • dyskretyzacja odpowiedzi impulsowej – w metodzie tej wyznacza się dla transmitancji ciągłej G(s) odpowiedź impulsową, którą następnie dyskretyzuje się. Ostatecznie dla dyskretnej odpowiedzi impulsowej wyznacza się transmitancję dyskretną G(z)=Z[G(s)].
  • przekształcenie zerowo-biegunowe – w metodzie tej porównuje się dziedzinę „s” oraz dziedzinę „z”. Odpowiedź układu ciągłego z biegunem w pewnym punkcie s=s0 w układzie spróbkowanym z okresem próbkowania T reprezentowana jest przez odpowiedź układu dyskretnego z biegunem w punkcie z=es0T. Ta własność może być wykorzystana do przekształcenia zer i biegunów, które aproksymują układ dyskretny.
  • równoważność ekstrapolacji – metoda ta polega na pobieraniu próbek sygnału wejściowego, następnie ekstrapolacji pomiędzy próbkami do postaci aproksymacji sygnału i przesyłaniu tych aproksymacji przez transmitancję układu.

Całkowanie numeryczne

Całkowanie numeryczne jest zadaniem dość złożonym. Najbardziej elementarne techniki z tego zakresu to reguły o małej złożoności i ustalonym rozmiarze kroku. W metodzie tej daną transmitancję układu ciągłego G(s) zastępuje się przez równanie różniczkowe, a następnie wyprowadza się równania różnicowe będące aproksymacją równań różniczkowych.

Niech dana będzie transmitancja integratora analogowego:

G(s)=U(s)E(s)=1s,

gdzie E(s) oraz U(s) są odpowiednio transformatami wejścia i wyjścia integratora. Dla integratora tego można określić równoważne równanie różniczkowe

du(t)dt=e(t),

które można zapisać w postaci całkowej:

u(t)=0te(τ)dτ.

Wiele reguł opiera się na właściwej sobie metodzie aproksymacji składnika powiększania pola (pod krzywą funkcji, która w powyższym wzorze podlega całkowaniu). Należą do nich:

  • reguła prostokąta wprzód,
  • reguła prostokąta wstecz,
  • reguła trapezu.

W regule prostokątnej wprzód obszar aproksymuje się przez prostokąt wyznaczany wprzód od chwili kT do chwili kT+T i bierze jako amplitudę prostokąta wartość napotkaną w kT. Szerokość takiego prostokąta wynosi T. Można więc zapisać równanie w pierwszej aproksymacji:

u1(kT+T)=u1(kT)+Te(kT),

gdzie wyrażenie u1(kT) reprezentuje obszar pod całkowaną krzywą e(t) w przedziale od t = 0 do t = kT. Po zastosowaniu transformaty Z do powyższej zależności otrzymuje się:

GF(z)=U1(z)E(z)=Tz1=1z1T.

W regule prostokątnej wstecz obszar aproksymuje się przez prostokąt wyznaczany wstecz od chwili kT do kT-T i bierze jako amplitudę prostokąta wartość napotkaną w kT. Szerokość takiego prostokąta wynosi T. Można więc zapisać równanie w pierwszej aproksymacji:

u2(kT)=u2(kTT)+Te(kT).

Po zastosowaniu transformaty Z do powyższej zależności otrzymuje się:

HB(z)=U2(z)E(z)=zTz1=11Tz1z.

W regule trapezu obszar aproksymuje się przez pole trapezu umieszczonego pod całkowaną krzywą. Równanie aproksymacji ma wówczas postać:

u3(kT+T)=u3(kT)+T2[e(kT)+e(kT+1)].

Po zastosowaniu transformaty Z do powyższej zależności otrzymuje się:

HT(z)=U3(z)E(z)=T2z+1z1=12Tz1z+1.

Metoda reguły trapezu jest również znana jako metoda Tustina lub pod nazwą transformacji biliniowej (zob. też płaszczyzna w). Metoda projektowania wykorzystująca tę regułę polega na tym, że daną transmitancję ciągłą, G(s), równoważną transmitancja dyskretnej wyznacza się przez podstawienie:

GT(z)=G(s)|s=2Tz1z+1.

Każda z powyższych aproksymacji może być potraktowana jako przekształcenie płaszczyzny s na płaszczyznę z.

Porównując transmitancje operatorowe z trzema aproksymacjami dyskretnymi można zauważyć, że transmitancję dyskretną można uzyskać bezpośrednio z transformaty operatorowej podstawiając za zmienną zespoloną „s” jej aproksymatę.

W przypadku reguły prostokąta wprzód jest to podstawienie sz1T.

W przypadku reguły prostokąta wstecz jest to podstawienie sz1Tz.

W przypadku reguły trapezu jest to podstawienie s2Tz1z+1.

Szczególnie interesujące jest to, że reguła bilinearna odwzorowuje stabilną półpłaszczyznę s dokładnie na stabilny obszar płaszczyzny z, przy tym cała oś jω płaszczyzny s jest skompresowana na długości obwodu okręgu jednostkowego.

Dyskretyzacja modelu układu liniowego w przestrzeni stanów

Dyskretyzacja stosowana jest też przy transformacji ciągłych równań różniczkowych do dyskretnych równań różnicowych, odpowiednich dla analizy numerycznej.

Następujący model zmiennych stanu czasu ciągłego

𝐱˙(t)=𝐀𝐱(t)+𝐁𝐮(t)+𝐰(t),
𝐲(t)=𝐂𝐱(t)+𝐃𝐮(t)+𝐯(t),

gdzie v i w to źródła ciągłego szumu białego o zerowej średniej z kowariancjami

𝐰(t)N(0,𝐐),
𝐯(t)N(0,𝐑),

można zdyskretyzować, przyjmując ekstrapolator rzędu zerowego dla wejścia u i ciągłe całkowanie dla szumu v, do postaci:

𝐱[k+1]=𝐀d𝐱[k]+𝐁d𝐮[k]+𝐰[k],
𝐲[k]=𝐂d𝐱[k]+𝐃d𝐮[k]+𝐯[k]

z kowariancjami

𝐰[k]N(0,𝐐d),
𝐯[k]N(0,𝐑d),

gdzie:

𝐀d=e𝐀T=1{(s𝐈𝐀)1}t=T,
𝐁d=(τ=0Te𝐀τdτ)𝐁=𝐀1(𝐀dI)𝐁, jeśli 𝐀 jest nieosobliwa,
𝐂d=𝐂,
𝐃d=𝐃,
𝐐d=τ=0Te𝐀τ𝐐e𝐀Tτdτ,
𝐑d=𝐑,

a T jest czasem próbkowania.

Zręczne wyliczenie Ad i Bd w jednym kroku można wykonać korzystając z następującej własności:

𝐞[𝐀𝐁𝟎𝟎]T=[𝐌𝟏𝟏𝐌𝟏𝟐𝟎𝐈]

i wówczas mając:

𝐀d=M11,
𝐁d=M12.

Dyskretyzacja szumu procesu

Numeryczna ewaluacja 𝐐d jest nieco bardziej złożona z uwagi na całkę eksponenty macierzy. Można ją, jednakże, wyliczyć poprzez skonstruowanie najpierw macierzy, a następnie wyliczenie na komputerze jej eksponenty:

𝐅=[𝐀𝐐𝟎𝐀T]T
𝐆=e𝐅=[𝐀d1𝐐d𝟎𝐀dT].

Zdyskretyzowany szum procesu jest wówczas wyliczany poprzez przemnożenie transponowanej dolnej, prawej partycji macierzy G z górną, prawą partycją macierzy G:

𝐐d=(𝐀dT)T(𝐀d1𝐐d).

Wyprowadzenie

Rozpoczynając z modelem ciągłym

𝐱˙(t)=𝐀𝐱(t)+𝐁𝐮(t)

wiadomo, że eksponenta macierzy jest następująca:

ddte𝐀t=𝐀e𝐀t=e𝐀t𝐀

i przez wcześniejsze przemnożenie modelu uzyskuje się:

e𝐀t𝐱˙(t)=e𝐀t𝐀𝐱(t)+e𝐀t𝐁𝐮(t),

co zapisać można jako

ddt(e𝐀t𝐱(t))=e𝐀t𝐁𝐮(t),

a następnie całkując:

e𝐀t𝐱(t)e0𝐱(0)=0te𝐀τ𝐁𝐮(τ)dτ,
𝐱(t)=e𝐀t𝐱(0)+0te𝐀(tτ)𝐁𝐮(τ)dτ,

co jest rozwiązaniem analitycznym dla modelu ciągłego.

Teraz należy zdyskretyzować powyższe wyrażenie. Można przyjąć, że u jest stała podczas każdego kroku czasowego

𝐱[k] =def 𝐱(kT),
𝐱[k]=e𝐀kT𝐱(0)+0kTe𝐀(kTτ)𝐁𝐮(τ)dτ,
𝐱[k+1]=e𝐀(k+1)T𝐱(0)+0(k+1)Te𝐀((k+1)Tτ)𝐁𝐮(τ)dτ,
𝐱[k+1]=e𝐀T[e𝐀kT𝐱(0)+0kTe𝐀(kTτ)𝐁𝐮(τ)dτ]+kT(k+1)Te𝐀(kT+Tτ)𝐁𝐮(τ)dτ.

Wyrażenie w nawiasie można zapisać jako 𝐱[k] a drugie wyrażenie można uprościć przez podstawienie v=kT+Tτ. Ponadto można przyjąć, że 𝐮 jest stałe podczas całkowania, co z kolei daje:

𝐱[k+1]=e𝐀T𝐱[k]+(0Te𝐀vdv)𝐁𝐮[k]=e𝐀T𝐱[k]+A1(e𝐀TI)𝐁𝐮[k],

co stanowi dokładne rozwiązanie dyskretyzowanego problemu.

Aproksymacje

Dokładna dyskretyzacja czasami może być trudna z uwagi na dużą eksponentę macierzy i związane z tym operacje całkowania. Znacznie łatwiej wyliczyć, w oparciu o nią, przybliżony model dyskretny dla małych kroków czasowych e𝐀T𝐈+𝐀T. Przybliżone rozwiązanie przyjmuje wówczas postać:

𝐱[k+1](𝐈+𝐀T)𝐱[k]+(𝐈T+12𝐀T2)𝐁𝐮[k],

co można dalej aproksymować jeśli 12𝐀T2 jest małe; co daje:

𝐱[k+1](𝐈+𝐀T)𝐱[k]+T𝐁𝐮[k].

Inne możliwe aproksymacje to: e𝐀T(𝐈𝐀T)1 i e𝐀T(𝐈+12𝐀T)(𝐈12𝐀T)1. Każda z nich ma inne własności związane ze stabilnością. Ostatnia znana jest jako transformacja Tustina (transformacja bilinearna) i zachowuje stabilność lub odpowiednio niestabilność układu czasu ciągłego.

Dyskretyzacja własności ciągłych

Szablon:Osobny artykuł W statystyce i w uczeniu maszynowym termin dyskretyzacja odnosi się do procesu konwersji ciągłych własności lub zmiennych na zdyskretyzowane lub nominalne własności. Może to być użyteczne przy tworzeniu masowych funkcji prawdopodobieństwa.

Zobacz też

Szablon:Kontrola autorytatywna