• Nebyly nalezeny žádné výsledky

Použitie fuzzy databáz a FSQL

N/A
N/A
Protected

Academic year: 2022

Podíl "Použitie fuzzy databáz a FSQL"

Copied!
24
0
0

Načítání.... (zobrazit plný text nyní)

Fulltext

(1)

Použitie fuzzy databáz a FSQL

Ján Vojt

(2)

31/10/2012 Použitie fuzzy SQL 2

Motivácia

Tradi né rela né databázy pracujú len s presnými č č hodnotami

Ľudia preferujú nepresné (vágne) vyjadrovanie

napr. “Chcem lacné ubytovanie v Talianskom meste neďaleko Ríma.”

→ aplikácie by sa tomu mali prispôsobiť a mali by byť schopné spracovať vágne dotazy

Často presnú informáciu nemáme k dispozícii

napr. vidíme, že izba je malá, ale nevieme jej presnú plochu v m2 → do DB nemožeme uložiť hodnotu “malá” → uložíme NULL a nemáme tak o veľkosti žiadnu informáciu

(3)

Príklady vágnych dotazov

V nemocnici:

Chcem zoznam mladých pacientov trpiacich hepatitídou, ktorí boli prijatí približne pred 5 týžd ami.ň

V škole:

Chcem zoznam študentov, ktorí majú z matematiky dobré známky a z fyziky priemerné známky.

V supermarkete:

Chcem zoznam produktov, ktoré sa dobre predávali, ale minuli sme málo na ich propagáciu.

(4)

31/10/2012 Použitie fuzzy SQL 4

FSQL – Fuzzy SQL

FSQL je rozšírenie SQL o vágne dotazy

Každý SQL dotaz je platným FSQL dotazom

Ide len o rozšírenie príkazu SELECT o

Lingvistické značky (Linguistic labels)

Fuzzy komparátory (Fuzzy comparators)

Prah splnenia (Fulfillment threshold)

CDEG funkciu (CDEG function)

Náhradný znak % (Wild card)

Fuzzy konštanty (Fuzzy constants)

Podmienka IS (IS condition)

(5)

Lingvistické zna ky č

(Linguistic labels)

Ak je atribút používaný ako fuzzy, je pred ním zna ka $ č na jasné odlíšenie od štandardných atribútov

Každá zna ka má so sebou asociovanéč

pravdepodobnostné rozdelenie

Môže byť zadané rôzne, veľmi jednoduché, efektívne a pritom presné je lichobežníkové rozdelenie

alebo hodnotu so vzťahom podobnosti

Používa sa pri neusporiadanej doméne (napr. farba)

Podobnosť nie je definovaná usporiadaním, preto musí byť explicitne dodefinovaná

(6)

31/10/2012 Použitie fuzzy SQL 6

Lichobežníkové pravdepodobnostné rozdelenia

studený teplý horúci

teplota

vysoký

(7)

Fuzzy komparátory

(Fuzzy comparators)

Rozšírenie štandardných komparátorov v SQL (=, >, …)

Porovnávajú st pec s konštantou alebo dva st pce ĺ ĺ rovnakého typu

2 druhy

Necessity

Viac restriktívne

Podmienka musí byť do splnená aspoň do určitej miery (aj keď nie úplne splnená)

Possibility

Menej restriktívne

Podmienka nemusí byť splnená, ale je preferovaná

(8)

31/10/2012 Použitie fuzzy SQL 8

Fuzzy komparátory

(Fuzzy comparators)

(9)

Prah splnenia

(Fulfillment threshold)

Pre každú podmienku môže by stanovená minimálna ť miera splnenia γ ϵ [0,1]

Východzí prah je 1 (požadujeme úplné splnenie)

Syntax: <condition> [THOLD] γ

THOLD môžeme vynechať a zadať len γ

Ekvivalent ku komparátoru >=

(10)

31/10/2012 Použitie fuzzy SQL 10

CDEG funkcia

(CDEG function)

Syntax: CDEG(<attribute>)

Funkcia vracia mieru splnenia podmienky/podmienok pre atribút daný v argumente

Pri logických operátoroch je použitá minimálna a maximálna trojuhoníková norma

Užívateľ môže tieto funkcie zmeniť

Namiesto atribútu je možné zada *, ím dostaneme ť č mieru splnenia pre všetky atribúty v podmienkach

Veľmi užitočné pre zoradenie výsledkov

(11)

Náhradný znak %

(Wild card)

Podobné znaku * v SQL

% ale reprezentuje okrem atribútov aj ich miery splnenia (pre atribúty v podmienke)

Pre miery používa CDEG funkciu

(12)

31/10/2012 Použitie fuzzy SQL 12

Fuzzy konštanty

(Fuzzy constants)

(13)

Podmienka IS

(IS condition)

Syntax:

<Fuzzy_Attribute> IS [NOT] (UNKNOWN|UNDEFINED|NULL)

Použité rovnako ako štandardné SQL, ale aj s prvými troma fuzzy konštantami

(14)

31/10/2012 Použitie fuzzy SQL 14

Data vo FRDB

(Fuzzy Relational Database)

Tradi ná databázač

Tradičné relačné data

Navyše obsahujú fuzzy atribúty 3och typov

Typ 1

Presné, bez vágnosti, ne-fuzzy

Ale možu na nich byť kladené flexibilné dotazy

fuzzy komparátory

fuzzy konštanty

miera splniteľnosti

Nad ich doménou môžeme definovať lingvistické značky, asociované s fuzzy hodnotou

Tradičné atribúty môžu byť deklarované ako typ 1

→ dodefinujeme značky a môžeme použiť fuzzy komparátory

(15)

Data vo FRDB

(Fuzzy Relational Database)

Typ 2

Presné alebo fuzzy

Fuzzy data sú ukladané ako pravdepodobnostné rozdelenie

Možné použiť všetky fuzzy konštanty

Typ 3

Data z domény bez usporiadania

Sú pre ne definované lingvistické značky so

vzťahom podobnosti (do akej miery sú podobné)

Použiteľný je na nich jediný komparátor FEQ

pretože nemáme usporiadanie

(16)

31/10/2012 Použitie fuzzy SQL 16

Data vo FRDB

(Fuzzy Relational Database)

FMB – Fuzzy meta-knowlege base

Obsahuje informácie o FRDB a jej fuzzy atribútoch (v relačnom formáte)

Typ 1 (presné dáta)

Lichobežníkové lingvistické značky

Hraničná hodnota – ak je vzdialenosť medzi prvkami väčšia, sú “veľmi ďaleko”

Použité pri komparátoroch MGT/NMGT, MLT/NMLT

Typ 2 (mix) – to isté ako Typ 1

Typ 3 (neusporiadané)

Lingvistické značky

Vzťah podobnosti

(17)

Využitie FSQL v aplikácii cestovnej kancelárie (CK)

Klienti nemajú presnú predstavu pri h adaní ubytovaniaľ

Vedia, čo zhruba chcú a sú ochotní spraviť kompromis

Chceme využi FRDB, aby CK mohla používať ť

Presné aj vágne hodnoty

Flexibilné dotazy nad oboma hodnotami

Flexibilná databáza najviac využíva atribúty typu 2 (mix)

náročné na pamäť aj CPU, preto sú používané opatrne

Príklad dotazu, ktorý chceme by schopný vyhodnoti :ť ť

“Vypíš každé lacné ubytovanie v blízkosti hôr, kde nie je príliš chladno a sú blízko mesta.”

(18)

31/10/2012 Použitie fuzzy SQL 18

Využitie FSQL – atribúty typu 2 (príklady)

Cena

Ubytovanie na vidieku má často vyjednateľnú cenu

Plocha

Často je problém odmerať plochu presne

Vek nehnute nostiľ

Často nevieme presne, pritom stačí odhad

Stav budovy

Môže byť hodnotenie [0,10], ale aj “luxusné”, ...

(19)

Využitie FSQL – atribúty typu 3 (príklady)

Umiestnenie

Napr. trojica vzdialeností od campu, lesa, jazera

Typ ubytovania

Dom, byt, dvojdom, chata, …

Napr. definujeme stupeň podobnosti chaty a dvojdomu hodnotou 0.8

Vo výsledku dotazu na chatu budú tak aj dvojdomy

Prostredie

Pláž, mesto, vidiek, príroda, pohorie, samota, ...

(20)

31/10/2012 Použitie fuzzy SQL 20

Využitie FSQL – fuzzy konštanty (príklady)

UNKNOWN

hodnotu atribútu nepoznáme

UNDEFINED

Hodnota je nepoužiteľná

(veľkosť záhrady pri dome bez záhrady)

NULL

O atribúte nič nevieme

Nevieme či je jeho hodnota neznáma, alebo nepoužiteľná

(nevieme či je pri dome záhrada)

(21)

Využitie FSQL – dotaz (príklady)

Vo výsledkoch sa objavia okrem chát aj domy a dvojdomy, ak majú mieru podobnosti >= 0.5

Prinesie to relevantnejšie výsledky

Znižuje pravdepodobnosť prázdneho výsledku

SELECT CDEG(*), Ubytovanie.*

FROM Ubytovanie

WHERE Typ FEQ $Chata 0.5

AND Plocha FGEQ $Velka 0.5

AND Izby FGEQ #8 0.5

AND Umiestnenie FEQ $Vidiek 0.7 AND Umiestnenie FEQ $Hory 0.7 ORDER BY 1 DESC;

(22)

31/10/2012 Použitie fuzzy SQL 22

Využitie FSQL – dotaz (príklady)

FSQL dotaz vráti prázdny výsledok - o robi ?č ť

nemôžeme povedať klientovi “nič nemáme”...

Využijeme

Fuzzy komparátory

Zmeníme necessity komparátory na possibility

Threshold

Znížime mieru splnenia

Použijeme klasický komparátor

THOLD nahradíme za < alebo <=

Fuzzy konštanty

Zmeníme fuzzy konštantu ak je v dotaze použitá

Logické operátory

Zmeníme logické operátory, alebo úplne vyhodíme podmienku

(23)

Zdroje

Galindo, J.; Carmen Aranda, M.; Caro, J. L.; Guevara, A.; Aguayo, A.

Applying fuzzy databases and FSQL to the management of rural

accommodation. Tourism Management 2002 Vol. 23 No. 6 pp. 623-629.

(24)

31/10/2012 Použitie fuzzy SQL 24

akujem za pozornos .

Ď ť

Odkazy

Související dokumenty

Exekúcia môže byť nariadená podľa návrhu oprávneného s výslovným určením vecí, ktoré majú byť predané alebo bez tohto určenia.. Ak však oprávnený určí

Najvýznamnejšiu úlohu pritom zohrávajú presné dráhy družíc a presné údaje o hodinách na družiciach určované v rámci Medzinárodnej služby GNSS

Reálny odtlačok môže byť v zhoršenej kvalite, ktorá je spôsobená stavom pokožky snímaného prsta(suchá, vlhká, poškodenie, vrásky), veľmi nízkym alebo

Definoval hodnotu pre vlastníkov ako ekonomickú hodnotu investície, ktorá môže byť vypočítaná využitím nákladov kapitálu ako diskontovaných plánovaných budúcich

Môže byť priama (napr. moc znižovať či zvyšovať rozpočet organizácie), ale aj nepriama (moc ovplyvňovať alebo presvedčovať ostatných). Moc stakeholdera môže

Brandt teda veľmi dobre vedel, že posun v zahraničnej politike SRN smerom na Východ môže nastať len v spolupráci so ZSSR alebo minimálne s jeho súhlasom.. V tejto súvislosti

- či v prípade návratu cudzinca, ktorým môže byť vyhostenie, vydanie, odo- pretie vstupu na územie Slovenskej republiky alebo iné odsunutie cudzinca z územia Slovenskej

Ak oltárny služobník nie je vždy taký, aký by mal byť, predsa hlavný kňaz je neko- nečne svätý; ak čo aj veľmi dobrý služobník môže byť trocha roztržitý alebo