Vladimír Laš



Práce s neurčitostí

Systém NEST pracuje s váhami, které vyjadřují neurčitost v bázi znalostí i neurčité odpovědi během konzultace. Zatímco váhy jsou zadávány pouze jednou hodnotou, během konzultace se používá pro vyjádření váhy interval. Váhy pravidel w (a případně i jednohodnotové odpovědi uživatele či jiných ) jsou převedeny na interval [w;w].

Pro práci s neurčitostí je definováno sedm funkcí (NEG, CONJ, DISJ, CTR, GLOB, NORM, IMP) definovaných na intervalu [-1;1] (funkce NORM je definovaná na množině reálných čísel). Pokud báze znalostí předpokládá jiný rozsah vah, jsou jednotlivé váhy na tento interval normovány.

V systému NEST jsou implementovány 4 typy práce s neurčitostí:

  • standardní;
  • logický;
  • neuronový;
  • hybridní.
Pět funkcí (NEG, CONJ, DISJ, NORM, IMP) je definováno pro všechny typy stejně, ve zbylých dvou jsou odlišnosti.

Funkce NEG

Funkce NEG slouží pro výpočet negace výroku. Je definována následovně:

NEG(w) = -w

resp. pro práci s intervalem [w1;w2]:

NEG([w1;w2]) = [-w2;-w1]

Funkce CONJ

Funkce CONJ slouží pro výpočet konjunkce dvou výroků. Je definována následovně:

CONJ(v,w) = min(v,w)

resp. pro práci s intervaly [v1;v2],[w1;w2]

CONJ([v1;v2],[w1;w2]) = [min(v1,w1); min(v2,w2)]

Funkce DISJ

Funkce DISJ slouží pro výpočet disjunkce dvou výrazů. Je definována následovně:

DISJ(v,w) = max(v,w)

resp. pro práci s intervaly [v1;v2],[w1;w2]

DISJ([v1;v2],[w1;w2]) = [max(v1,w1); max(v2,w2)]

Funkce CTR

Funkce CTR slouží pro výpočet příspěvku pravidla, resp. pro složení vah kontextu a předpokladu pravidla. Je definována následovně:

  • standardní, neuronový a hybridní typ neurčitosti:
    CTR(a,w) = 0       ; a ≤ 0
    CTR(a,w) = a * w   ; a > 0
  • logický typ neurčitosti:
    CTR(a,w) = 0                              ; a < 0
    CTR(a,w) = sign(w) * max(0,a + |w| - 1)   ; a ≥ 0

Pro práci s intervaly [a1;a2],[w1,w2] se pak používá výraz
CTR([a1;a2],[w1,w2]) = [CTR(a1,w1);CTR(a2,w2)]

Funkce GLOB

Funkce GLOB slouží pro skládání příspěvků více pravidel. Je definována následovně:

  • standardní typ neurčitosti
    GLOB(v,w) = 0                    ; (v = 1, w = -1) nebo (v = -1, w = 1) 
    GLOB(v,w) = (v + w)/(1 + v * w)  ; jinak  
  • logický a hybridní typ neurčitosti
    GLOB(w1...wn) = min(Σw>0w ,1)  +  max(Σw<0w,-1)
  • neuronový typ neurčitosti
    GLOB(w1...wn) = min(max(sΣw, -1), 1)
    kde s = 1

Pro práci s intervaly [a1;a2],[w1,w2] se pak používá výraz
GLOB([a1;a2],[w1,w2]) = [GLOB(a1,w1);GLOB(a2,w2)]

Převod logické funkce GLOB na fuzzy axiomatickou teorii (bereme u výroku pouze jednu váhu, převod na interval vah by se udělal obdobně):
U každého výroku vstupujícího do funkce uvažujeme dvě jeho části - kladnou a zápornou. Má-li výrok kladnou váhu, je záporná část rovna nule a opačně.
Spojíme pozitivní části pravidel pomocí spojky odvážné disjunkce do S+ (odvážná disjunkce ∨(a,b) = max(a,b)) a negativní části pravidel do S-.
Pozitivní část výsledku Sp dostaneme pomocí spojky odvážné konjunkce S+ & neg(S-) (odvážná konjunkce &(a,b) = min(a,b)) a negativní část výsledku Sn = S- & neg(S-)

Funkce NORM

Jediná funkce, která je definována i mimo interval [-1;1], slouží pro ořezávání vah právě na tento interval, pokud ho někde přesáhnout. Funkce je používána po výpočtu příspěvku kompozicionálního pravidla pomocí funkce CTR a po složení všech příspěvků pravidel u výpočtu váhy výroku pomocí funkce GLOB. Funkce je definována následovně:

NORM(w) := min(max(w,-rozsah), rozsah)

resp. pro práci s intervalem [w1;w2]:

NORM([w1;w2]) = [min(max(w1,-rozsah), rozsah); min(max(w2,-rozsah), rozsah)]

kde rozsah = 0,999 (resp. počet devítek za desetinnou čárkou odpovídá počtu desetinných míst, se kterými právě systém pracuje)

Funkce IMP

Funkce IMP je používána pro výpočet výsledné váhy integritního omezení. Rozhoduje tedy o tom, zda integritní omezení bylo porušeno či nikoliv a do jaké míry. Je definována následovně:

IMP(w,v) = 0                  ; w <= 0   
IMP(w,v) = max(0, min(w - v)) ; w > 0


resp. pro práci s intervalem [w1;w2]:

IMP([w1;w2],[v1,v2]) = [max(0, w1 - v1); max(0, w2 - v2)]

kde w je váha předpokladu integritního omezení (případně upravená pomocí kontextu funkcí CTR) a v je váha jeho závěru.

Vladimír Laš vladalas.info

Kontakty

osobní

icq

icq 175019847

Další komunikátory