Rozmyty system sterowania - Fuzzy control system

Rozmyte system sterowania jest układ sterowania oparty na logice rozmytej -a matematyczny systemu, który analizuje analogowej wartości wejściowych w zakresie logicznych zmiennych, które mają na ciągłych wartości pomiędzy 0 i 1, w przeciwieństwie do klasycznego lub cyfrową logikę, która działa na dyskretnych wartości 1 lub 0 (odpowiednio prawda lub fałsz).

Przegląd

Logika rozmyta jest szeroko stosowana w sterowaniu maszynami. Termin „rozmyty” odnosi się do faktu, że zaangażowana logika może radzić sobie z pojęciami, których nie można wyrazić jako „prawda” lub „fałsz”, ale raczej jako „częściowo prawdziwe”. Chociaż alternatywne podejścia, takie jak algorytmy genetyczne i sieci neuronowe, mogą w wielu przypadkach działać tak samo dobrze jak logika rozmyta, logika rozmyta ma tę zaletę, że rozwiązanie problemu można sformułować w sposób zrozumiały dla operatorów ludzkich, dzięki czemu ich doświadczenie może być wykorzystane w konstrukcji sterownika. Ułatwia to mechanizację zadań, które już z powodzeniem wykonuje człowiek.

Historia i aplikacje

Logika rozmyta została zaproponowana przez Lotfi A. Zadeh z Uniwersytetu Kalifornijskiego w Berkeley w artykule z 1965 roku. Rozwinął swoje pomysły w artykule z 1973 r., który wprowadził pojęcie „zmiennych językowych”, które w tym artykule są równoznaczne ze zmienną zdefiniowaną jako zbiór rozmyty. Następnie rozpoczęto inne badania, z pierwszym zastosowaniem przemysłowym, zbudowano piec cementowy zbudowany w Danii, który został uruchomiony w 1975 roku.

Systemy rozmyte zostały początkowo wdrożone w Japonii .

  • Zainteresowanie systemami rozmytymi wywołali Seiji Yasunobu i Soji Miyamoto z Hitachi , którzy w 1985 dostarczyli symulacje, które zademonstrowały wykonalność systemów sterowania rozmytego dla metra Sendai . Ich pomysły zostały przyjęte, a rozmyte systemy zostały wykorzystane do sterowania przyspieszaniem, hamowaniem i zatrzymywaniem, gdy linia Namboku została otwarta w 1987 roku.
  • W 1987 roku Takeshi Yamakawa zademonstrował użycie sterowania rozmytego za pomocą zestawu prostych dedykowanych układów logiki rozmytej w eksperymencie „ odwróconego wahadła ”. Jest to klasyczny problem sterowania, w którym pojazd porusza się w przód iw tył, aby utrzymać słup zamontowany na jego szczycie za pomocą zawiasu w pozycji pionowej. Yamakawa następnie uczynił demonstrację bardziej wyrafinowaną, montując kieliszek z wodą, a nawet żywą mysz na szczycie wahadła: system zachował stabilność w obu przypadkach. Yamakawa w końcu zorganizował własne laboratorium badawcze systemów rozmytych, aby pomóc w wykorzystaniu jego patentów w tej dziedzinie.
  • Japońscy inżynierowie opracowali następnie szeroką gamę systemów rozmytych do zastosowań zarówno przemysłowych, jak i konsumenckich. W 1988 r. Japonia ustanowiła Laboratorium Międzynarodowej Inżynierii Rozmytej (LIFE), porozumienie o współpracy pomiędzy 48 firmami w celu prowadzenia badań rozmytych. Firma motoryzacyjna Volkswagen była jedynym zagranicznym członkiem korporacyjnym LIFE, wysyłając badacza na okres trzech lat.
  • Japońskie towary konsumpcyjne często zawierają systemy rozmyte. Odkurzacze Matsushita wykorzystują mikrokontrolery z rozmytymi algorytmami do sprawdzania czujników kurzu i odpowiedniego dostosowywania mocy ssania . Pralki Hitachi wykorzystują rozmyte kontrolery do wsadu, mieszania tkanin i czujników zabrudzenia oraz automatycznie ustawiają cykl prania pod kątem najlepszego zużycia energii, wody i detergentu.
  • Firma Canon opracowała aparat z autofokusem, który wykorzystuje urządzenie ze sprzężeniem ładunkowym (CCD) do pomiaru czystości obrazu w sześciu obszarach jego pola widzenia i wykorzystania dostarczonych informacji do określenia, czy obraz jest ostry. Śledzi również szybkość zmian ruchu obiektywu podczas ustawiania ostrości i kontroluje jego prędkość, aby zapobiec przeregulowaniu. Rozmyty system sterowania kamery wykorzystuje 12 wejść: 6 do uzyskania aktualnych danych o jasności dostarczanych przez przetwornik CCD i 6 do pomiaru szybkości zmiany ruchu obiektywu. Dane wyjściowe to pozycja obiektywu. Rozmyty system sterowania wykorzystuje 13 reguł i wymaga 1,1 kilobajta pamięci.
  • Klimatyzator przemysłowy zaprojektowany przez Mitsubishi wykorzystuje 25 reguł ogrzewania i 25 reguł chłodzenia. Czujnik temperatury zapewnia wejście, z wyjściami sterującymi podawanymi do falownika , zaworu sprężarki i silnika wentylatora. W porównaniu z poprzednią konstrukcją, kontroler rozmyty nagrzewa się i chłodzi pięć razy szybciej, zmniejsza zużycie energii o 24%, dwukrotnie zwiększa stabilność temperatury i wykorzystuje mniej czujników.
  • Inne zbadane lub wdrożone aplikacje obejmują: rozpoznawanie znaków i pisma ręcznego ; optyczne systemy rozmyte; roboty, w tym jeden do robienia japońskich kompozycji kwiatowych; sterowane głosem śmigłowce robotów (unoszenie się jest „akcją balansującą” dość podobną do problemu z odwróconym wahadłem); robotyka rehabilitacyjna zapewniająca rozwiązania dostosowane do potrzeb pacjenta (np. do kontroli rytmu serca i ciśnienia krwi); kontrola przepływu proszków w produkcji folii; systemy wind; i tak dalej.

Prace nad systemami rozmytymi postępują również w Ameryce Północnej i Europie, choć na mniejszą skalę niż w Japonii.

  • US Environmental Protection Agency zbadała rozmytego sterowania dla energooszczędnych silników oraz NASA badał rozmytego sterowania dla zautomatyzowanego miejsca dokowania: symulacje pokazują, że rozmyty system sterowania może znacznie zmniejszyć zużycie paliwa.
  • Firmy takie jak Boeing , General Motors , Allen-Bradley , Chrysler , Eaton i Whirlpool pracowały nad logiką rozmytą do zastosowania w lodówkach o małej mocy, ulepszonych przekładniach samochodowych i energooszczędnych silnikach elektrycznych.
  • W 1995 Maytag wprowadził "inteligentną" zmywarkę opartą na rozmytym sterowniku i "jednorazowym module czujnikowym", który łączy termistor do pomiaru temperatury; czujnik przewodności do pomiaru poziomu detergentu z jonów obecnych w praniu; czujnik zmętnienia, który mierzy rozproszone i przechodzące światło w celu pomiaru zabrudzenia prania; oraz czujnik magnetostrykcyjny do odczytu prędkości wirowania. System określa optymalny cykl prania dla każdego wsadu, aby uzyskać najlepsze rezultaty przy jak najmniejszej ilości energii, detergentu i wody. Dostosowuje się nawet do zaschniętej żywności, śledząc czas ostatniego otwarcia drzwi i szacuje liczbę naczyń na podstawie tego, ile razy drzwi zostały otwarte.
  • W 2017 roku Xiera Technologies Inc. opracowała pierwszy auto-tuner dla bazy wiedzy kontrolera logiki rozmytej znanej jako edeX. Technologia ta została przetestowana przez Mohawk College i była w stanie rozwiązać nieliniowe problemy z wieloma wejściami i wyjściami 2x2 i 3x3.

Kontynuowane są również badania i rozwój w zakresie aplikacji rozmytych w oprogramowaniu, w przeciwieństwie do oprogramowania układowego , projektowania, w tym rozmytych systemów eksperckich i integracji logiki rozmytej z sieciami neuronowymi i tak zwanymi adaptacyjnymi „ genetycznymi ” systemami oprogramowania, których ostatecznym celem jest zbudowanie „ samouczące się systemy sterowania rozmytego. Systemy te można wykorzystać do sterowania złożonymi, nieliniowymi, dynamicznymi roślinami, na przykład ludzkim ciałem.

Zbiory rozmyte

Zmienne wejściowe w rozmytym systemie sterowania są na ogół odwzorowywane przez zestawy funkcji przynależności podobnych do tego, znane jako „zestawy rozmyte”. Proces konwersji wyraźnej wartości wejściowej na wartość rozmytą nazywa się „fuzzification”. Podejście oparte na logice rozmytej zostało rozważone poprzez zaprojektowanie dwóch systemów rozmytych, jednego do pomiaru kąta kursu, a drugiego do sterowania prędkością.

Układ sterowania może również posiadać różnego rodzaju wejścia przełącznikowe , czyli „ON-OFF” wraz z jego wejściami analogowymi, a takie wejścia przełącznikowe oczywiście zawsze będą miały wartość prawdy równą 1 lub 0, ale schemat poradzi sobie z są one uproszczonymi funkcjami rozmytymi, które mają taką lub inną wartość.

Mając „ odwzorowanie ” zmiennych wejściowych na funkcje przynależności i wartości logiczne , mikrokontroler podejmuje następnie decyzje, jakie działania podjąć, w oparciu o zestaw „reguł”, z których każda ma postać:

  IF brake temperature IS warm AND speed IS not very fast 
  THEN brake pressure IS slightly decreased.

W tym przykładzie dwie zmienne wejściowe to „temperatura hamowania” i „prędkość”, które mają wartości zdefiniowane jako zbiory rozmyte. Zmienna wyjściowa „ciśnienie hamowania” jest również definiowana przez zestaw rozmyty, który może mieć wartości takie jak „statyczne” lub „nieznacznie zwiększone” lub „nieznacznie obniżone” itp.

Szczegółowa kontrola rozmyta

Kontrolery rozmyte są koncepcyjnie bardzo proste. Składają się z etapu wejściowego, etapu przetwarzania i etapu wyjściowego. Stopień wejściowy odwzorowuje czujnik lub inne wejścia, takie jak przełączniki, pokrętła itp., na odpowiednie funkcje przynależności i wartości prawdy. Etap przetwarzania wywołuje każdą odpowiednią regułę i generuje wynik dla każdej, a następnie łączy wyniki reguł. Na koniec stopień wyjściowy konwertuje łączny wynik z powrotem na określoną wartość wyjściową sterowania.

Najpopularniejszym kształtem funkcji przynależności jest trójkąt, chociaż stosuje się również krzywe trapezowe i dzwonowe, ale kształt jest generalnie mniej ważny niż liczba krzywych i ich rozmieszczenie. Od trzech do siedmiu krzywych jest na ogół odpowiednie do pokrycia wymaganego zakresu wartości wejściowej lub „ wszechświata dyskursu ” w rozmytym żargonie.

Jak omówiono wcześniej, etap przetwarzania opiera się na zbiorze reguł logicznych w postaci instrukcji IF-THEN, gdzie część IF jest nazywana „antecedentem”, a część THEN jest nazywana „następnikiem”. Typowe systemy sterowania rozmytego mają dziesiątki reguł.

Rozważ zasadę dla termostatu:

  IF (temperature is "cold") THEN turn (heater is "high")

Zasada ta wykorzystuje wartość prawdy wejścia „temperatura”, która jest pewną wartością prawdy „zimno”, aby wygenerować wynik w zestawie rozmytym dla wyjścia „grzałki”, który jest pewną wartością „wysoki”. Ten wynik jest używany z wynikami innych reguł, aby ostatecznie wygenerować wyraźny wynik złożony. Oczywiście, im większa wartość logiczna „zimna”, tym wyższa wartość logiczna „wysokiej”, choć niekoniecznie oznacza to, że sam wynik zostanie ustawiony na „wysoki”, ponieważ jest to tylko jedna z wielu reguł. W niektórych przypadkach funkcje członkostwa mogą być modyfikowane przez „żywopłoty”, które są odpowiednikami przysłówków. Typowe żywopłoty to „około”, „blisko”, „blisko”, „w przybliżeniu”, „bardzo”, „nieco”, „za”, „bardzo” i „w pewnym stopniu”. Te operacje mogą mieć precyzyjne definicje, chociaż definicje mogą się znacznie różnić w różnych implementacjach. „Bardzo”, na przykład funkcje przynależności do kwadratów; ponieważ wartości przynależności są zawsze mniejsze niż 1, zawęża to funkcję przynależności. „Ekstremalnie” sześciennie wartości, aby uzyskać większe zawężenie, podczas gdy „nieco” poszerza funkcję, wyciągając pierwiastek kwadratowy.

W praktyce zestawy reguł rozmytych mają zwykle kilka poprzedników, które są łączone za pomocą operatorów rozmytych, takich jak AND, OR i NOT, chociaż definicje mają tendencję do różnic: AND, w jednej popularnej definicji, po prostu używa minimalnej wagi wszystkich poprzedników, podczas gdy OR używa wartości maksymalnej. Istnieje również operator NOT, który odejmuje funkcję przynależności od 1, aby uzyskać funkcję „komplementarną”.

Istnieje kilka sposobów definiowania wyniku reguły, ale jednym z najczęstszych i najprostszych jest metoda wnioskowania „max-min” , w której wyjściowa funkcja przynależności otrzymuje wartość logiczną wygenerowaną przez przesłankę.

Reguły można rozwiązywać równolegle sprzętowo lub sekwencyjnie w oprogramowaniu. Wyniki wszystkich uruchomionych reguł są „rozmyte” do wyraźnej wartości za pomocą jednej z kilku metod. Teoretycznie są ich dziesiątki, z których każda ma różne zalety lub wady.

Bardzo popularna jest metoda „centroid”, w której „środek masy” wyniku zapewnia wyraźną wartość. Innym podejściem jest metoda „wysokości”, która bierze pod uwagę wartość największego kontrybutora. Metoda środka ciężkości faworyzuje regułę o największej wartości wyjściowej, podczas gdy metoda wysokości oczywiście faworyzuje regułę o największej wartości wyjściowej.

Poniższy diagram przedstawia wnioskowanie max-min i rozmycie środka ciężkości dla systemu ze zmiennymi wejściowymi „x”, „y” i „z” oraz zmienną wyjściową „n”. Zauważ, że „mu” to standardowa nomenklatura rozmyta dla „wartości prawdy”:

Kontrola rozmyta - defuzzyfikacja środka ciężkości przy użyciu wnioskowania max-min.png

Zwróć uwagę, że każda reguła podaje wynik jako wartość logiczną określonej funkcji przynależności dla zmiennej wyjściowej. W defuzyfikacji środka ciężkości wartości są OR'd, to znaczy, że używana jest wartość maksymalna, a wartości nie są dodawane, a wyniki są następnie łączone przy użyciu obliczenia środka ciężkości.

Projektowanie rozmytych systemów sterowania opiera się na metodach empirycznych, w zasadzie metodycznym podejściu do metody prób i błędów . Ogólny proces wygląda następująco:

  • Udokumentuj specyfikacje operacyjne systemu oraz dane wejściowe i wyjściowe.
  • Udokumentuj zbiory rozmyte dla danych wejściowych.
  • Udokumentuj zestaw reguł.
  • Określ metodę defuzzyfikacji.
  • Przeprowadź przez zestaw testów, aby sprawdzić poprawność systemu, dostosuj szczegóły zgodnie z wymaganiami.
  • Kompletny dokument i wydanie do produkcji.

Jako ogólny przykład rozważ projekt regulatora rozmytego dla turbiny parowej. Schemat blokowy tego systemu sterowania wygląda następująco:


Zmienne wejściowe i wyjściowe są mapowane na następujący zbiór rozmyty:

Sterowanie rozmyte - zmienne wejściowe i wyjściowe mapowane do zestawu rozmytego.png-gdzie:

  N3:   Large negative.
  N2:   Medium negative.
  N1:   Small negative.
  Z:    Zero.
  P1:   Small positive.
  P2:   Medium positive.
  P3:   Large positive.

Zestaw reguł zawiera takie reguły jak:

rule 1:  IF temperature IS cool AND pressure IS weak,   
         THEN throttle is P3.
rule 2:  IF temperature IS cool AND pressure IS low,    
         THEN throttle is P2.
rule 3:  IF temperature IS cool AND pressure IS ok,     
         THEN throttle is Z.
rule 4:  IF temperature IS cool AND pressure IS strong, 
         THEN throttle is N2.

W praktyce sterownik akceptuje dane wejściowe i odwzorowuje je na ich funkcje przynależności i wartości logiczne. Te mapowania są następnie wprowadzane do reguł. Jeśli reguła określa relację AND między odwzorowaniami dwóch zmiennych wejściowych, jak to robią powyższe przykłady, minimalna z nich jest używana jako połączona wartość prawdy; jeśli określono OR, używane jest maksimum. Odpowiedni stan wyjściowy jest wybierany i przypisywana jest wartość przynależności na poziomie prawdziwości założenia. Wartości prawdy są następnie rozmywane. Załóżmy na przykład, że temperatura jest w stanie „chłodnym”, a ciśnienie w stanach „niskie” i „ok”. Wartości ciśnienia zapewniają, że ogień tylko reguły 2 i 3:

Kontrola rozmyta - ocena reguły 2. png

Kontrola rozmyta - ocena reguły 3.png

Dwa wyjścia są następnie rozmywane przez rozmycie środka ciężkości:

   __________________________________________________________________

                                       |          Z      P2
                                    1 -+          *       *
                                       |         * *     * *
                                       |        *   *   *   *
                                       |       *     * *     *
                                       |      *       222222222
                                       |     *       22222222222
                                       |    333333332222222222222
                                       +---33333333222222222222222-->
                                                        ^ 
                                                      +150 
   __________________________________________________________________

Wartość wyjściowa dostosuje przepustnicę, a następnie cykl kontrolny rozpocznie się ponownie, aby wygenerować kolejną wartość.

Budowanie rozmytego kontrolera

Rozważ zaimplementowanie z mikrokontrolerem prostego kontrolera sprzężenia zwrotnego:

Fuzzy control system-feedback controller.png

Zbiór rozmyty jest zdefiniowany dla zmiennej błędu wejściowego „e” i wyprowadzonej zmiany błędu „delta” oraz „wyjściowej” w następujący sposób:

  LP:  large positive
  SP:  small positive
  ZE:  zero
  SN:  small negative
  LN:  large negative

Jeżeli błąd zawiera się w przedziale od -1 do +1, przy zastosowanym przetworniku analogowo-cyfrowym o rozdzielczości 0,25, to zbiór rozmyty zmiennej wejściowej (co w tym przypadku dotyczy również zmiennej wyjściowej) można bardzo po prostu jako tabela, z wartościami błędu / delty / wartościami wyjściowymi w górnym wierszu i wartościami prawdy dla każdej funkcji przynależności ułożonymi w wierszach poniżej:

  _______________________________________________________________________

              -1    -0.75  -0.5   -0.25    0     0.25   0.5    0.75    1
  _______________________________________________________________________

   mu(LP)      0      0      0      0      0      0     0.3    0.7     1
   mu(SP)      0      0      0      0     0.3    0.7     1     0.7    0.3
   mu(ZE)      0      0     0.3    0.7     1     0.7    0.3     0      0
   mu(SN)     0.3    0.7     1     0.7    0.3     0      0      0      0
   mu(LN)      1     0.7    0.3     0      0      0      0      0      0
  _______________________________________________________________________            —or, in graphical form (where each "X" has a value of 0.1):
         LN           SN           ZE           SP           LP
      +------------------------------------------------------------------+
      |                                                                  |
-1.0  |  XXXXXXXXXX   XXX          :            :            :           |
-0.75 |  XXXXXXX      XXXXXXX      :            :            :           |
-0.5  |  XXX          XXXXXXXXXX   XXX          :            :           |
-0.25 |  :            XXXXXXX      XXXXXXX      :            :           |
 0.0  |  :            XXX          XXXXXXXXXX   XXX          :           |
 0.25 |  :            :            XXXXXXX      XXXXXXX      :           |
 0.5  |  :            :            XXX          XXXXXXXXXX   XXX         |
 0.75 |  :            :            :            XXXXXXX      XXXXXXX     |
 1.0  |  :            :            :            XXX          XXXXXXXXXX  |
      |                                                                  |
      +------------------------------------------------------------------+

Załóżmy, że ten system rozmyty ma następującą podstawę reguł:

  rule 1:  IF e = ZE AND delta = ZE THEN output = ZE
  rule 2:  IF e = ZE AND delta = SP THEN output = SN
  rule 3:  IF e = SN AND delta = SN THEN output = LP
  rule 4:  IF e = LP OR  delta = LP THEN output = LN

Reguły te są typowe dla aplikacji sterujących, ponieważ poprzedniki składają się z logicznej kombinacji sygnałów błędu i błędu-delta, podczas gdy konsekwencją jest wyjście polecenia sterującego. Dane wyjściowe reguł można rozmyć za pomocą dyskretnego obliczenia centroidu:

  SUM( I = 1 TO 4 OF ( mu(I) * output(I) ) ) / SUM( I = 1 TO 4 OF mu(I) )

Załóżmy teraz, że w danym momencie:

  e     = 0.25
  delta = 0.5

To daje:

  ________________________

              e     delta
  ________________________

  mu(LP)      0      0.3
  mu(SP)     0.7      1
  mu(ZE)     0.7     0.3
  mu(SN)      0       0
  mu(LN)      0       0
  ________________________

Włączenie tego do reguły 1 daje:

  rule 1:  IF e = ZE AND delta = ZE THEN output = ZE
 
     mu(1)     = MIN( 0.7, 0.3 ) = 0.3
     output(1) = 0

-- gdzie:

  • mu(1): Wartość prawdy funkcji przynależności wyniku dla reguły 1. W kategoriach obliczenia centroidu jest to „masa” tego wyniku dla tego dyskretnego przypadku.
  • output(1): Wartość (dla reguły 1), gdzie funkcja przynależności do wyniku (ZE) jest maksymalna w zakresie rozmytego zestawu zmiennej wyjściowej. Oznacza to, w kategoriach obliczenia środka ciężkości, położenie „środka masy” dla tego indywidualnego wyniku. Ta wartość jest niezależna od wartości „mu”. Po prostu identyfikuje lokalizację ZE w zakresie wyjściowym.

Pozostałe zasady podają:

  rule 2:  IF e = ZE AND delta = SP THEN output = SN

     mu(2)     = MIN( 0.7, 1 ) = 0.7   
     output(2) = -0.5
  rule 3: IF e = SN AND delta = SN THEN output = LP

     mu(3)     = MIN( 0.0, 0.0 ) = 0
     output(3) = 1
  rule 4: IF e = LP OR  delta = LP THEN output = LN

     mu(4)     = MAX( 0.0, 0.3 ) = 0.3
     output(4) = -1

Obliczenie środka ciężkości daje:

  
  
  —for the final control output. Simple. Of course the hard part is figuring out what rules actually work correctly in practice.

Jeśli masz problemy ze znalezieniem równania środka ciężkości, pamiętaj, że środek ciężkości definiuje się przez zsumowanie wszystkich momentów (położenie razy masa) wokół środka ciężkości i zrównanie sumy z zerem. Więc jeśli jest środkiem ciężkości, jest położeniem każdej masy i jest każdą masą, to daje:

  
  
  
  

W naszym przykładzie wartości mu odpowiadają masom, a wartości X lokalizacji mas (jednak mu 'odpowiada masom' tylko wtedy, gdy początkowa 'masa' funkcji wyjściowych jest taka sama/ równoważne.Jeżeli nie są takie same, tj. jedne są wąskimi trójkątami, a inne mogą być szerokimi trapezami lub trójkątami z ramionami, to należy znać lub obliczyć masę lub pole funkcji wyjścia.To jest ta masa, która jest następnie skalowana przez mi i pomnożone przez jego położenie X_i).

Ten system można zaimplementować na standardowym mikroprocesorze, ale teraz dostępne są dedykowane chipy rozmyte. Na przykład firma Adaptive Logic INC z San Jose w Kalifornii sprzedaje „układ rozmyty”, AL220, który może przyjmować cztery wejścia analogowe i generować cztery wyjścia analogowe. Schemat blokowy chipa pokazano poniżej:

              +---------+                              +-------+
 analog --4-->| analog  |                              | mux / +--4--> analog
   in         |   mux   |                              |  SH   |        out
              +----+----+                              +-------+
                   |                                       ^
                   V                                       |
            +-------------+                             +--+--+
            | ADC / latch |                             | DAC |
            +------+------+                             +-----+
                   |                                       ^
                   |                                       |
                   8         +-----------------------------+
                   |         |                             |
                   |         V                             |
                   |   +-----------+      +-------------+  |
                   +-->| fuzzifier |      | defuzzifier +--+
                       +-----+-----+      +-------------+
                             |                   ^
                             |  +-------------+  |
                             |  |    rule     |  |
                             +->|  processor  +--+
                                | (50 rules)  |
                                +------+------+
                                       |
                                +------+------+
                                |  parameter  |
                                |    memory   |
                                |   256 x 8   |
                                +-------------+

    ADC:  analog-to-digital converter
    DAC:  digital-to-analog converter
    SH:   sample/hold

Hamulce przeciwblokujące

Jako przykład rozważmy system zapobiegający blokowaniu kół podczas hamowania , sterowany przez układ mikrokontrolera. Mikrokontroler musi podejmować decyzje na podstawie temperatury hamulców , prędkości i innych zmiennych w systemie.

Zmienną "temperaturę" w tym systemie można podzielić na szereg "stanów": "zimny", "chłodny", "umiarkowany", "ciepły", "gorący", "bardzo gorący". Przejście z jednego stanu do drugiego jest trudne do zdefiniowania.

Można ustawić dowolny próg statyczny, aby podzielić „ciepły” od „gorący”. Na przykład dokładnie pod kątem 90 stopni kończy się ciepło, a zaczyna się gorąco. Ale spowoduje to nieciągłą zmianę, gdy wartość wejściowa przekroczy ten próg. Przejście nie byłoby płynne, co byłoby wymagane w sytuacjach hamowania.

Sposobem na obejście tego jest rozmycie stanów . To znaczy, pozwól im stopniowo zmieniać się z jednego stanu do następnego. W tym celu musi istnieć dynamiczny związek między różnymi czynnikami.

Zacznij od zdefiniowania stanów temperatury wejściowej za pomocą „funkcji członkostwa”:

Sterowanie rozmyte - definiowanie stanów temperatury wejściowej za pomocą funkcji przynależności.png

W tym schemacie stan zmiennej wejściowej nie przeskakuje już gwałtownie z jednego stanu do drugiego. Zamiast tego, wraz ze zmianą temperatury, traci wartość w jednej funkcji przynależności, a nabiera wartości w następnej. Innymi słowy, jego pozycja w kategorii zimna maleje, ponieważ zajmuje wyższą pozycję w kategorii cieplejszej.

W każdym próbkowanym przedziale czasowym „prawdziwa wartość” temperatury hamulca prawie zawsze będzie w pewnym stopniu stanowić część dwóch funkcji przynależności: np. „0,6 nominalna i 0,4 ciepła” lub „0,7 nominalna i 0,3 chłodna” i tak dalej.

Powyższy przykład demonstruje prostą aplikację, wykorzystującą abstrakcję wartości z wielu wartości. Reprezentuje to tylko jeden rodzaj danych, jednak w tym przypadku temperaturę.

Dodanie dodatkowego wyrafinowania do tego układu hamulcowego może być wykonane przez dodatkowe czynniki, takie jak trakcja , prędkość, bezwładność , ustawione w funkcjach dynamicznych, zgodnie z zaprojektowanym systemem rozmytym.

Logiczna interpretacja sterowania rozmytego

Pomimo pozorów istnieje kilka trudności, aby dać rygorystyczną logiczną interpretację zasad IF-THEN . Jako przykład zinterpretuj regułę jako IF (temperatura jest „zimna”) THEN (grzałka jest „wysoka”) za pomocą formuły pierwszego rzędu Cold(x)→High(y) i załóż, że r jest wejściem takim, że Cold(r ) jest fałszywe. Wtedy formuła Cold(r)→High(t) jest prawdziwa dla dowolnego t i dlatego każde t daje poprawną kontrolę przy danym r . Rygorystyczne logiczne uzasadnienie kontroli rozmytej jest podane w książce Hájka (patrz rozdział 7) gdzie kontrola rozmyta jest reprezentowana jako teoria podstawowej logiki Hájka.

W Gerla 2005 zaproponowano inne logiczne podejście do sterowania rozmytego oparte na programowaniu w logice rozmytej: Oznaczmy przez f funkcję rozmytą powstałą z systemu reguł IF-THEN. Następnie system ten można przetłumaczyć na program rozmyty P zawierający szereg reguł, których nagłówek to „Dobry(x,y)”. Interpretacja tego predykatu w najmniej rozmytym modelu Herbranda P pokrywa się z f. Daje to dalsze przydatne narzędzia do sterowania rozmytego.

Rozmyta symulacja jakościowa

Zanim system sztucznej inteligencji będzie w stanie zaplanować sekwencję działań, potrzebny jest jakiś model . W przypadku gier wideo model jest równy regułom gry. Z perspektywy programistycznej reguły gry są zaimplementowane jako silnik fizyczny, który przyjmuje akcję od gracza i oblicza, czy akcja jest prawidłowa. Po wykonaniu akcji gra jest w stanie kontynuacji. Jeśli celem jest nie tylko granie w gry matematyczne, ale określenie działań dla zastosowań w świecie rzeczywistym, najbardziej oczywistym wąskim gardłem jest brak dostępnych reguł gry. Pierwszym krokiem jest modelowanie domeny. Identyfikacja systemu może być realizowana za pomocą precyzyjnych równań matematycznych lub reguł rozmytych .

Wykorzystanie logiki rozmytej i systemów AFIS (Adaptive network based fuzzy inference system) do tworzenia modelu forward dla domeny ma wiele wad. Jakościowy symulacja nie jest w stanie określić prawidłowy Kontynuacja stanu, ale system będzie się tylko domyślać, co się stanie, jeżeli działanie zostało podjęte. Jakościowa symulacja rozmyta nie może przewidzieć dokładnych wartości liczbowych, ale wykorzystuje nieprecyzyjny język naturalny do spekulacji na temat przyszłości. Bierze obecną sytuację plus działania z przeszłości i generuje oczekiwany stan gry.

Dane wyjściowe systemu ANFIS nie dostarczają poprawnych informacji, a jedynie notację zbioru rozmytego , na przykład [0,0.2,0,4,0]. Po przekształceniu ustawionego zapisu z powrotem na wartości liczbowe dokładność się pogarsza. To sprawia, że ​​rozmyta symulacja jakościowa jest złym wyborem do zastosowań praktycznych.

Aplikacje

Systemy sterowania rozmytego są odpowiednie, gdy złożoność procesu jest wysoka, w tym niepewność i zachowanie nieliniowe, i nie ma dostępnych precyzyjnych modeli matematycznych. Pomyślne zastosowania systemów sterowania rozmytego odnotowuje się na całym świecie, głównie w Japonii, z pionierskimi rozwiązaniami od lat 80-tych.

Niektóre aplikacje opisane w literaturze to:

  • Klimatyzatory
  • Systemy automatycznego ustawiania ostrości w aparatach
  • Sprzęt AGD (lodówki, pralki...)
  • Sterowanie i optymalizacja procesów i systemów przemysłowych
  • Systemy pisania
  • Efektywność paliwowa w silnikach
  • Środowisko
  • Systemy eksperckie
  • Drzewa decyzyjne
  • Robotyka
  • Pojazdy autonomiczne

Zobacz też

Bibliografia

Dalsza lektura

  • Kevin M. Passino i Stephen Yurkovich, Fuzzy Control, Addison Wesley Longman, Menlo Park, CA, 1998 (522 strony)
  • Kazuo Tanaka; Hua O. Wang (2001). Projektowanie i analiza rozmytych systemów sterowania: podejście nierówności macierzy liniowej . John Wiley i Synowie. Numer ISBN 978-0-471-32324-2.
  • Cox, E. (październik 1992). Podstawy rozmyte . Widmo IEEE, 29:10. s. 58–61.
  • Cox, E. (luty 1993) Adaptacyjne systemy rozmyte . Widmo IEEE, 30:2. s. 7–31.
  • Jan Jantzen, "Tuning Of Fuzzy PID Controllers", Technical University of Denmark, raport 98-H 871, 30 września 1998. [1]
  • Jan Jantzen, Podstawy kontroli rozmytej . Wiley, 2007 (209 stron) (Spis treści)
  • Inteligencja obliczeniowa: wprowadzenie metodologiczne Kruse, Borgelt, Klawonn, Moewes, Steinbrecher, Held, 2013, Springer, ISBN  9781447150121

Linki zewnętrzne