dr inż. Marek Rydel

  • Increase font size
  • Default font size
  • Decrease font size
eAMOR v0.1

eAMOR

Drukuj PDF

eAMOR Matlab toolbox – (Evolutionary Algorithm for Model Order Reduction)

Dla celów sterowania systemami niezbędna jest znajomość ich modeli matematycznych, które są adekwatne w zadanym przedziale amplitud i częstotliwości sygnałów. Możliwości obliczeniowe współczesnych komputerów oraz rozwój oprogramowania służącego do modelowania i symulacji skutkuje opracowywaniem modeli matematycznych o coraz  większej złożoności. Szczególnie istotny wpływ na wzrost złożoności modeli ma rozwój programów do modelowania z zastosowaniem metody elementów skończonych. Programy takie automatycznie generują tysiące elementów skończonych, a uzyskane modele matematyczne zawierają tysiące zmiennych stanu.
Wysoka złożoność modelu matematycznego pociąga za sobą długie czasy symulacji komputerowej, znaczne zapotrzebowanie mocy obliczeniowej procesorów oraz problemy numeryczne. Rozwiązaniem problemu jest zastosowanie operacji redukcji modeli. Podczas redukcji, model pierwotny jest aproksymowany przez model niższego rzędu, który zapewnia wymaganą dokładność aproksymacji.
Zadanie redukcji modelu liniowego może być przedstawione następująco:
Na podstawie stabilnego (lub niestabilnego) modelu rzędun, przedstawionego w przestrzeni stanu:

\dot{x}\left(t\right)=\mathbf{A}x\left(t\right)+\mathbf{B}u\left(t\right)\\<br />y\left(t\right)=\mathbf{C}x\left(t\right)+\mathbf{D}u\left(t\right)

gdzie: \mathbf{A}\!\in\!\mathbb{R}^{n\times n}, \mathbf{B}\!\in\!\mathbb{R}^{n\times p}, \mathbf{C}\!\in\!\mathbb{R}^{m\times  n},\mathbf{D}\!\in\!\mathbb{R}^{m\times p}
należy wyznaczyć model zredukowany rzęduk:

\dot{x_{r}}\left(t\right)=\mathbf{A_{r}}x_{r}\left(t\right)+\mathbf{B_{r}}u\left(t\right)\\<br />y_{r}\left(t\right)=\mathbf{C_{r}}x\left(t\right)+\mathbf{D_{r}}u\left(t\right)

gdzie:\mathbf{A_{r}}\!\in\!\mathbb{R}^{k\times  k}, \mathbf{B_{r}}\!\in\!\mathbb{R}^{k\times p}, \mathbf{C_{r}}\!\in\!\mathbb{R}^{m\times  k},\mathbf{D_{r}}\!\in\!\mathbb{R}^{m\times p}
gdzie:k&lt;n, taki aby określona norma błędu aproksymacji \left\|y\left(t\right)-y_{r}\left(t\right)\right\| przyjmowała wartość minimalną.
Redukcja modelu nie jest operacją jednoznaczną. Dlatego też istnieje cały szereg technik pozwalających na przeprowadzenie redukcji modelu złożonego. Dla modeli obiektów sterowania, które charakteryzują się określonym zakresem adekwatności szczególnie użyteczne są metody redukcji umożliwiające minimalizację błędu aproksymacji w zadanym przedziale częstotliwości. Odbywa się to poprzez wprowadzenie częstotliwościowych funkcji wagowych (dla metod bazujących na dekompozycji SVD) lub określenia punktów wokół których następuje rozwinięcie transmitancji w szereg Laurenta (dla metod momentów).
Poważny problemem praktyczny stanowi dobór optymalnych parametrów redukcji dla wybranej metody redukcji. Powodem jest występowanie znacznej liczby minimów lokalnych błędu aproksymacji w funkcji wartości parametrów oraz czasochłonność operacji redukcji modeli matematycznych, zawierających znaczną liczbę zmiennych stanu.
eAMOR będący przybornikiem (Toolbox) pakietu Matlab, został opracowany dla celów optymalizacji parametrów redukcji metodami Frequency Weighted, Frequency Domain oraz Fourier Method Reduction z zastosowaniem hybrydowego algorytmu ewolucyjnego.
Zadaniem programu jest wyznaczenie parametrów redukcji:
•    częstotliwości granicznej, rzędów filtrów (maksymalnej wartości zafalowania charakterystyki częstotliwościowej) dolnoprzepustowych filtrów Butterwortha, Bessela lub Czebyszewa dołączonych do wejść/wyjść modelu pierwotnego podczas redukcji metodą Frequency Weighted,
•    przedziału częstotliwości dla którego obliczane są częstotliwościowe gramiany sterowalności / obserwowalności podczas redukcji metodą Frequency Domain
•    częstotliwości transformacji biliniowej oraz liczby dyskretnoczasowych współczynników Fouriera, na podstawie których tworzony jest dyskretny model zredukowany dla redukcji metodą Fourier Model Reduction.

Przybornik posiada interfejs graficzny opracowany dla pakietu Matlab w wersji 7.8 (2009A). W skład pakietu eAMORv0.1 wchodzą:
•    pakiet skryptów eAMOR (eAMOR v0.1)
Przybornik jest dostępny na licencji GNU LESSER GENERAL PUBLIC LICENSE w wersji 3.
•    przewodnik (Users' Guide)
Licencja Creative Commons Praca dostępna jest na licencji Creative Commons Uznanie autorstwa-Użycie niekomercyjne-Na tych samych warunkach 3.0 Polska.
•    pliki zawierające opisany w przewodniku przykład obliczeń z zastosowaniem eAMOR:
przykład_A.zip, przykład_B.zip, przykład_B.z01