Technika cyfrowa. Słów kilka o logice rozmytej

2014-04-25
Technika cyfrowa. Słów kilka o logice rozmytej

Mówi się, że jedyną istotą na ziemi obdarzoną inteligencją jest człowiek. Każdy rację przyzna, choć czasami trudno się z tym zgodzić, obserwując postępowanie, zachowanie i decyzje niektórych polityków (nie tylko rodzimych, choć należą oni niewątpliwie do ekstraklasy w tej materii), prezesów, biznesmenów, różnej maści decydentów czy wreszcie zwykłych, szarych „deptaczy ziemi”.

Być może wkrótce inteligencja nie będzie już właściwością li tylko gatunku homo sapiens. Wszak dziś już istnieje coś takiego jak „sztuczna inteligencja”, i to nie bynajmniej jako główny lub drugoplanowy bohater filmów science-fiction. Jest to rzeczywistość, która otacza nas w życiu codziennym, choć nie jest tak dostrzegalna i wyrazista, jak w filmach o robotach i maszynach humanoidalnych. I choć, póki co, jest ona tylko „sztuczna”, to jednak cechą inteligencji, nawet tej „nieżywej”, jest rozwój i zdobywanie nowej wiedzy i umiejętności. Kto wie, czy już za kilkadziesiąt lat nie będziemy oglądać „na żywo” (no może my nie, ale następne pokolenia) scen rodem z filmów typu „Łowca androidów” czy dowolnej części „Terminatora”. Póki co jednak sztuczna inteligencja wiernie i bez większych buntów (nie większych niż te, które serwują nam na co dzień komputery czy zwykłe ekspresy do kawy) służy poddańczo człowiekowi, pomagając mu w rozwiązywaniu rozlicznych problemów. Również tych z dziedziny techniki fonicznej. Dlatego warto przyjrzeć się bliżej tym zjawiskom, żeby znać choć podstawy (i nie wyjść na głupków, kiedy nasz kilkuletni syn, po konkretnej dawce filmów techno- -fiction, „zagnie” nas najprostszym pytaniem z tej dziedziny).

W tym artykule chciałbym poświęcić kilka zdań

LOGICE ROZMYTEJ


Brzmi nieźle, prawda? Aż cierpnie skóra. Okazuje się, że zasady, którymi rządzi się logika rozmyta, wielu zajmujących się muzyką (zwłaszcza realizatorów i inżynierów dźwięku) stosuje na co dzień. Zacznijmy jednak od początku, czyli od podstaw.

W niektórych przypadkach wnioskowanie oparte na dwuwartościowej logice Arystotelesa oraz klasycznie pojmowanych zbiorach nie odzwierciedla nam rzeczywistości. Zaproponowana przez Zadeha w 1965 roku wielowartościowa logika, nazwana logiką rozmytą (ang. fuzzy logic), wraz z opartym na niej systemem wnioskowania okazała się niezwykle przydatna w zastosowaniach inżynierskich i znalazła sobie trwałe miejsce we współczesnych naukach technicznych. Systemy te oparte są na bazie reguł IF-THEN i charakteryzują się dużą prostotą oraz elastycznością struktury.

Przejdźmy jednak do konkretów. Co to jest logika Arystotelesa i odpowiadająca jej w matematyce klasyczna, Kantorowska teoria zbiorów? Jak może pamiętamy ze szkoły, pewien element może do jakiegoś określonego zbioru należeć lub nie. Ewentualnie może należeć do kilku zbiorów jednocześnie, jeśli te zbiory mają część wspólną, w której to części znajduje się nasz „bohater”.

PIERWSZY PRZYKŁAD


Jeśli mamy dwie grupy (zbiory) instrumentów strunowe i dęte, to saksofon bez wątpienia będzie należał do grupy (zbioru) dętych, a nie będzie należał do strunowych. Z kolei skrzypce należą do strunowych, ale nie należą do dętych. Sprawa jasna. W tym przypadku teoria klasyczna ma jak najbardziej zastosowanie. Nie ma tutaj sensu stosowanie teorii zbiorów rozmytych, gdzie dany element może tylko częściowo należeć do pewnego zbioru, a przynależność tę można wyrazić za pomocą liczy rzeczywistej z przedziału [0,1]. A przecież saksofon należy do dętych w stu procentach (a nie tylko częściowo), a na pewno nie należy do „strunowców” nawet częściowo (chyba że ktoś gdzieś tam naciągnie strunę, no ale to już nie będzie klasyczny saksofon).

Gdzie więc będziemy mieli do czynienia z logiką rozmytą?? Ooo, proszę bardzo, kolejny,

DRUGI PRZYKŁAD


Weźmy głośność dźwięków. Te o poziomach 10-20 dB bez cienia sprzeciwu nazwiemy cichymi, tak samo te o poziomach 100-120 dB określimy jako głośne. Problem zaczyna się, jeśli nasz dźwięk ma, dajmy na to, 60 dB. No dobrze, więc załóżmy, że głośne to te powyżej 50 dB, a ciche to te, których poziom jest poniżej 60 dB. Jak w takim razie określić dźwięki o poziomie 55 dB? Jako jednocześnie głośne i ciche?

Nawet jeśli postawimy granicę „na styk” (rysunek 1), czyli od 0 do 60 – ciche, od 60 do 120 – głośne, to znów mamy problem, czy dźwięk o poziomie 60 dB jest cichy, czy głośny? Ktoś powie – zrobimy trzeci zbiór i nazwiemy go dźwięki średnio głośne (rysunek 2). To dalej nie rozwiązuje sprawy, bo nawet gdy ustawimy nie zachodzące na siebie przedziały np. 0-40 jako ciche, powyżej 40 do 90 jako średnie, a powyżej 90 do 120 jako głośne, to czy nazwanie sygnału o poziomie 90 dB średnim, a o poziomie 90,01 dB głośnym będzie miało sens, skoro tak naprawdę są one niemalże jednakowo głośne?


Inne przykłady? Proszę bardzo

TRZECI PRZYKŁAD


Skala częstotliwości i wysokość dźwięku. Czy ton o częstotliwości 1 kHz jest tonem niskim, czy wysokim? Średnim? Ok, a ton 450 Hz to niski, czy już średni? Niski środek? Ok, znów podzielimy pasmo, aż w końcu braknie nam określeń albo sami się w nich pogubimy (niski- wysoki środek albo wysoki-nisko-wysoki środek – to zaczyna tracić sens, nieprawdaż?).

Zastosowanie zbiorów rozmytych zmienia sposób widzenia problemu.

W przykładzie drugim (przy podziale zakresu na dwa – głośny i cichy) dźwięk o poziomie 60 dB jest postrzegany jako CZĘŚCIOWO cichy i CZĘŚCIOWO głośny. W obu przypadkach należy on więc częściowo do obu zbiorów: Głośny i Cichy, z takim samym stopniem przynależności, równym 0,5. Ale uwaga, to nie to samo, co część wspólna w klasycznej teorii zbiorów. Tam dany element należał CAŁKOWICIE do obu zbiorów, bo miały część wspólną. Tutaj tak nie ma, bo zbiory te są wzajemnie wykluczające się (dźwięk nie może być jednocześni cichy i głośny, albo wysoki i niski).

W tym przypadku ostre granice zbiorów zostały „rozmyte”, dzięki czemu nie ma obecnie skokowych zmian wartości funkcji przynależności dla wartości granicznych (funkcja przynależności określa, w jakim stopniu dany element należy do konkretnego zbioru, najczęściej przedstawiane są w postaci graficznej – rysunek 3 – lub liczbowej z przedziału [0,1]).


Jeszcze jednym przykładem zastosowana zbiorów rozmytych jest pokrętło panoramy. Tylko w skrajnych położeniach sygnał należy do zbioru Lewy lub Prawy. W każdym innym należy on do obu zbiorów z odpowiednimi wartościami funkcji przynależności („po ludzku” mówiąc – w różnych proporcjach). W pozycji C (center) sygnał należy do obu zbiorów z takim samym współczynnikiem, równym 0,5 (w proporcjach „po połowie” – rysunek 4). Prawda, że to proste i faktycznie na co dzień wykorzystywane?


Wiemy już, CO to jest logika rozmyta i, jak się okazuje, nie taki diabeł straszny. Teraz może – jak to wszystko działa? Tutaj już wkracza „grubsza matematyka”. Zresztą wiedza na ten temat „zwykłemu muzycznemu zjadaczowi” nie jest „do zbawienia koniecznie potrzebna”. Przelecimy więc nad tym tematem bardzo pobieżnie, aby tylko mieć o tym jako takie pojęcie.

WNIOSKOWANIE ROZMYTE


Zanim zacznie się całą „zabawę”, konieczne są pewne operacje zwane przetwarzaniem wstępnym. Ma ono na celu przekształcenie danych wejściowych do formatu akceptowalnego przez moduł wnioskowania. Podobnie na wyjściu znajduje się moduł końcowy, przetwarzający dane w ten sposób, aby były one „jadalne” dla systemu, który dane pobierze. Takimi układami mogą być przetworniki analogowo-cyfrowe czy cyfrowo-analogowe.

Następnym krokiem jest fuzyfikacja, czyli zamienienie danych z postaci liczb rzeczywistych na wartości z dziedziny zbiorów rozmytych W tym celu dokonuje się wyznaczenia funkcji przynależności, tak jak np. na rysunku 2 lub rysunku 3. Praca systemu decyzyjnego opartego na logice rozmytej zależy od reguł rozmytych, o których już wspomniałem. Reguła taka ma przykładową postać:

IF a is A1 AND b is B1 THEN c is C1 gdzie a, b, c są tzw. zmiennymi lingwinistycznymi, czyli, znów mówiąc „po ludzku”, wartościami pewnych parametrów, np. poziomu dźwięku, częstotliwości, poziomu szumu, współczynnika zniekształceń. Natomiast A1, B1, C1 są podzbiorami rozmytymi (czyli wartościami współczynników przynależności dla ich konkretnych wartości zmiennych lingwinistycznych). Np. dla rysunku 3: „a” jest określoną wartością poziomu dźwięku, zaś A1 określa, do którego zbioru zalicza się parametr „a”. A więc w przypadku gdy pierwsza część reguły będzie wyglądać:

IF poziom dźwięku a is głośny to dla poziomu dźwięku a = 70 dB reguła zwróci nam wartość współczynnika przynależności = 0,63,

ale jeśli reguła będzie wyglądała:

IF poziom dźwięku a is cichy to dla tej samej wartości a = 70 dB „wynikiem” reguły będzie wynik 0,33

Potem określamy to samo dla drugiego zestawu danych, czyli b i B1, z czego znów otrzymujemy pewną wartość współczynnika przynależności. Tych zestawów może być więcej, jeśli np. system decyzyjny podejmuje decyzje na podstawie kilku parametrów wejściowych. Suma sumarum po otrzymaniu wszystkich współczynników przynależności obliczana jest moc reguły jako wartość minimalna ze wszystkich zestawów stopni przynależności (trochę to wszystko zamotane, ale może trochę rozjaśni to rysunek 5). Mając obliczoną moc reguły wyznaczany jest zbiór rozmyty, będący rezultatem uaktywnienia reguły – zaciemniony obszar na rysunku 5 odpowiada takiemu zbiorowi.


Oczywiście w „poważnym” algorytmie wnioskowania rozmytego tych reguł jest kilka, a nawet kilkadziesiąt, a więc w następnym etapie następuje agregacja aktywnych reguł, czyli sumowanie rozmytych zbiorów wynikowych ze wszystkich reguł.

Po zakończeniu procedury agregacji otrzymujemy wynik, który znów jest zbiorem rozmytym. Teraz trzeba dokonać defuzyfikazji, czyli przekształcenia wartości z dziedziny zbiorów rozmytych do dziedziny liczb rzeczywistych, tak aby na wyjściu otrzymać konkretną wartość w postaci np. liczby rzeczywistej, która będzie wynikiem końcowym całej tej „zabawy w strzelanego”.

Spróbujmy na koniec przyjrzeć się, do czego to nam będzie potrzebne, czyli

PRZYKŁAD Z ŻYCIA WZIĘTY


Chcemy zaprojektować „inteligentny” system regulacji barwy „fizjologicznej”, czyli tzw. loudness albo contour, dla tonów prostych. Chodzi nam o to, aby tony o jednakowym poziomie dźwięku były słyszalne przez człowieka z tą samą głośnością. Pamiętamy zapewne, że nasze ucho pod tym względem jest dość „paskudne”. Przy dźwiękach cichszych, aby słyszeć basy tak samo głośno, jak środek pasma, musimy go „podbić” nawet o 40 dB, tak samo górę też trzeba podkręcić. Ale już jeśli ogólny poziom dźwięku jest duży, rzędu 90-100 dB, krzywa jednakowego słyszenia spłaszcza się i różnice między dołem i górą pasma a środkiem (gdzie nasze ucho jest najbardziej czułe) są już znacznie mniejsze (10-5 dB) – rysunek 6.


Klasyczny „kontur” nie dość, że podbija nam basy i soprany o pewną, z góry narzuconą wartość, to jeszcze ma cały czas taką samą charakterystykę częstotliwościową. Nam zaś zależy, aby podbicie to było odzwierciedleniem konkretnych krzywych jednakowego słyszenia dla konkretnych wartości głośności (czyli takich, jak na rysunku 6). Nic prostszego, zastosujemy system regulacji oparty na wnioskowaniu rozmytym. Nasze zmienne lingwinistyczne będą wartościami poziomu dźwięku i częstotliwości. Pasmo podzielimy na trzy części: dół, środek i góra, a jego fuzyfikacja, czyli wyznaczenie współczynników przynależności, będzie wyglądała podobnie, jak na rysunku 2.

Na ile części podzielimy skalę poziomu dźwięku, to już zależy od nas. Możemy na dwa (ciche, głośne), na trzy (ciche, średnie, głośne), na cztery (ciche, średnio-ciche, średnio-głośne, głośne) itd. Cały „bajer” polega na tym, że nie musimy znów rozdrabniać pasma na tysiące fragmentów, bo właśnie w tym celu mamy zbiory rozmyte, które odzwierciedlą nam fakt, że poziomy dźwięków nie są ostro rozgraniczone, ale właśnie rozmyte. Podobnie jest z częstotliwością – granice pasm są „nachodzące”, a więc będą nam lepiej opisywały rzeczywistość niż klasyczna teoria zbiorów. Zmienną lingwinistyczną wyjściową będzie również poziom dźwięku, który dla odróżnienia od zmiennej wejściowej nazwiemy poziomem dźwięku wyjściowym, choć na dobrą sprawę to jest jedno i to samo. Układ ten będzie bowiem działał na zasadzie pętli sprzężenia zwrotnego, sygnał pobierany z wyjścia jest jednocześnie sygnałem wejściowym.

Przy prawidłowo zaprojektowanym i wykonanym algorytmie otrzymamy układ, który będzie nam utrzymywał sygnał o ustalonym poziomie na takiej samej głośności, niezależnie od częstotliwości. Zapewne nie będzie to układ prosty i nie zamierzam teraz tutaj rozwodzić się nad szczegółami jego budowy oraz projektowania algorytmu decyzyjnego. Celem moim było tylko pokazanie przydatności i możliwości teorii, bądź co bądź trochę „zamotanej”, dla przeciętnego człowieka parającego się pracą z dźwiękiem, który wszystko, co matematyczne omija szerokim łukiem. Oczywiście takich przykładów, bardziej praktycznych i pożytecznych w życiu codziennym, można przytoczyć więcej i będzie ich jeszcze więcej w miarę rozwoju techniki cyfrowej i inteligentnych systemów przetwarzania.

Jan Erhard

Estrada i Studio Kursy
Produkcja muzyczna od podstaw
Produkcja muzyczna od podstaw
50.00 zł
Produkcja muzyczna w praktyce
Produkcja muzyczna w praktyce
120.00 zł
Bitwig Studio od podstaw
Bitwig Studio od podstaw
55.00 zł
Sound Forge od podstaw
Sound Forge od podstaw
40.00 zł
Kontakt 5 Kompedium
Kontakt 5 Kompedium
60.00 zł
Zobacz wszystkie
Live Sound & Instalation Newsletter
Krótko i na temat, zawsze najświeższe informacje