• Nie Znaleziono Wyników

Analiza semantycznych w la´sciwo´sci modu l´ ow w programowaniu genetycznym

N/A
N/A
Protected

Academic year: 2021

Share "Analiza semantycznych w la´sciwo´sci modu l´ ow w programowaniu genetycznym"

Copied!
52
0
0

Pełen tekst

(1)

Analiza semantycznych w la´sciwo´sci modu l´ ow w programowaniu genetycznym

Krzysztof Krawiec Bartosz Wieloch

12 Stycze´ n 2010

Krzysztof Krawiec, Bartosz Wieloch Analiza semantycznych w la´sciwo´sci modu l´ow w programowaniu genetycznym

(2)

Plan

1

Wprowadzenie

2

Modularno´s´ c w problemach optymalizacji

3

Wyniki

(3)

Wprowadzenie

Krzysztof Krawiec, Bartosz Wieloch Analiza semantycznych w la´sciwo´sci modu l´ow w programowaniu genetycznym

(4)

S lownikowe definicje modu lu

element pe lni acy ustalon

,

a funkcj

,

e, latwy do wykorzystania

,

jako cz e´s´

,

c r´ o˙znych wi ekszych ca lo´sci

,

wydzielony element uk ladu fiz. (np. komputera) spe lniaj acy

,

okre´slon a funkcj

,

e (mo˙ze by´

,

c wymieniany na inny, np.

spe lniaj acy t

,

e sam

,

a funkcj

,

e, cho´

,

c o odmiennej budowie wewn.)

tak˙ze wydzielony fragment programu komputerowego, kt´ ory

mo˙zna wykorzystywa´ c w innych programach bez znajomo´sci

jego wewn. struktury, u˙zytego j ezyka programowania itp.

,

(5)

S lownikowe definicje modu lu

Apple Dictionary:

1

A self-contained component (unit or item) that is used in combination with other components

2

Each of a set of standardized parts or independent units that can be used to construct a more complex structure, such as an item of furniture or a building.

3

[in computing]: any of a number of distinct but interrelated units from which a program may be built up or into which a complex activity may be analyzed.

Krzysztof Krawiec, Bartosz Wieloch Analiza semantycznych w la´sciwo´sci modu l´ow w programowaniu genetycznym

(6)

S lownikowe definicje modu lu

Wikipedia:

Modularity is a general systems concept, typically defined as a continuum describing the degree to which a system’s

components may be separated and recombined. It refers to

both the tightness of coupling between components, and the

degree to which the “rules” of the system architecture enable

(or prohibit) the mixing and matching of components. Its use,

however, can vary somewhat by context.

(7)

Trudno o generyczn a definicj , e modularno´sci ,

Przy nast epuj

,

acych za lo˙zeniach:

,

system sk lada si e z pewnych atomowych (elementarnych)

,

komponent´ ow,

przez modu l rozumiemy podzbi´ or takich komponent´ ow do zamodelowania modularno´sci w danym kontek´scie niezb edne

,

jest okre´slenie:

Jak rozumiemy powi azanie (coupling) pomiedzy

,

komponentami?

Jak je mierzy´ c (tightness)?

Krzysztof Krawiec, Bartosz Wieloch Analiza semantycznych w la´sciwo´sci modu l´ow w programowaniu genetycznym

(8)

Przyk lady

Obw´ od logiczny

Komponenty = bramki logiczne Powiazania = po l, aczenia mi, edzy nimi,

Sztuczna sie´ c neuronowa

Komponenty = neurony

Powiazania = wagi l, acz, ace neurony (synapsy),

Inne: gene regulatory network, metabolic network

(9)

Pomiar modularno´sci

Przyk ladowa definicja miary modularno´sci [Newman & Girvan, 2004] (uproszczona, dla pojedynczego modu lu):

stosunek liczby kraw edzi l

,

acz

,

acych komponenty wewn

,

atrz modu lu

,

do ca lkowitej liczby kraw edzi w sieci minus warto´s´

,

c oczekiwana tej samej wielko´sci w sieci o tym samym podziale komponent´ ow na modu ly ale losowymi po l aczeniami pomi

,

edzy komponentami

,

Krzysztof Krawiec, Bartosz Wieloch Analiza semantycznych w la´sciwo´sci modu l´ow w programowaniu genetycznym

(10)

Dygresja: Sk ad modularno´s´ , c wzi e la si , e w naturze? ,

Kilka hipotez (niekoniecznie wykluczaj acych si

,

e):

,

hipotezy genetyczne:

duplikacja gen´ow prowadzaca do powielania podsystem´, ow

hipotezy ´srodowiskowe:

presja selekcyjna preferujaca rozwi, azania stabilne, presja selekcyjna preferujaca rozwi, azania odporne, presja selekcyjna zmieniajaca si, e w czasie,

(11)

Motywacje dla badania modularno´sci

analityczne (poznawcze):

dane wej´sciowe: przyk ladowe dzia lajace z lo˙zone systemy, cel: zdekomponowa´c system na modu ly (co polepszy nasze rozumienie go)

syntetyczne (’praktyczne’):

dane wej´sciowe: z lo˙zony problem bez znanych rozwiaza´, n cele: polepszenie skuteczno´sci algorytm´ow przeszukiwania

poprawa zbie˙zno´sci (czas)

polepszenie skalowalno´sci (prawdopodobie´nstwo znalezienia rozwiazania),

Krzysztof Krawiec, Bartosz Wieloch Analiza semantycznych w la´sciwo´sci modu l´ow w programowaniu genetycznym

(12)

Modularno´s´c w problemach

optymalizacji

(13)

Modularno´s´ c w problemach optymalizacji

Wcze´sniejsze przyk lady reprezentuj a modularno´s´

,

c strukturaln a:

,

struktura obiektu (sieci, projektu) bezpo´srednio determinuje jego modularno´s´ c (modularno´s´ c jest cech a rozwi

,

azania).

,

W problemach kt´ ore nas interesuj a modularno´s´

,

c jest bardziej ukryta, tj. nie wynika wprost ze struktury (modularno´s´ c jest cech a

,

problemu; modularno´s´ c funkcjonalna?).

Przyk lad uj ecia modularno´sci

,

Wektor zmiennych stanowi acych rozwi

,

azanie problemu

,

optymalizacyjnego.

Komponenty = zmienne Modu l = zbi´ or zmiennych Powi azanie = ?

,

Krzysztof Krawiec, Bartosz Wieloch Analiza semantycznych w la´sciwo´sci modu l´ow w programowaniu genetycznym

(14)

Powi azanie ,

Mo˙zliwa definicja powi azania:

,

niech S

M

= zbi´ or wszystkich kombinacji warto´sci zmiennych w module M

niech O

M

= zbi´ or kombinacji warto´sci zmiennych w module M kt´ ore s a optymalne ze wzgl

,

edu na pozosta le zmienne

,

(kontekst)

1 |OM| = 1 — modu l w pe lni separowalny

2 |OM| = |SM| — modu l w pe lni zale˙zny od kontekstu =⇒

brak modu lu

3 1 < |OM| < |SM| — modu l zale˙zny od kontekstu, ale nie w pe lni (interdependency)

hipoteza: w problemach praktycznych (3) najcz estsze

,

Hierarchical Genetic Algorithm, HGA [deJong, Thierens, Watson]

(15)

HGA - prosty przyk lad?

x

1

x

2

f

0 0 0

0 1 1

1 0 1

1 1 2

x

1

x

2

f

0 0 0

0 1 1

1 0 1

1 1 0

x

1

x

2

x

3

f

0 0 0 2

0 0 1 1

0 1 0 0

0 1 1 1

1 0 0 0

1 0 1 1

1 1 0 1

1 1 1 2

M

1

= {x

1

, x

2

}M

2

= {x

3

}

f (x

1

, x

2

, x

3

) = 1 × {x

1

= x

2

} + 1 × {max(x

1

, x

2

) = x

3

} O

M1

= {(0, 0), (1, 1)} =⇒ 1 ≤ |O

M1

| < |S

M1

| = 4 Trudno´sci:

przewidziane dla zmiennych dyskretnych,

przetestowanie wszystkich ustawie´ n nierealne =⇒ sampling, skuteczne jedynie przy

´sci´sle

hierarchicznej strukturze

modu l´ ow.

Krzysztof Krawiec, Bartosz Wieloch Analiza semantycznych w la´sciwo´sci modu l´ow w programowaniu genetycznym

(16)

Programowanie Genetyczne

Programowanie Genetyczne (ang. Genetic Programming) — wariant oblicze´ n ewolucyjnych w kt´ orym symulowanej ewolucji podlegaj a programy (wyra˙zenia).

,

Funkcja przystosowania ocenia stopie´ n zgodno´sci rezultat´ ow zwracanych przez program (osobnika) z warto´sciami

po˙z adanymi, na zadanym zbiorze przypadk´

,

ow/przyk lad´ ow (fitness cases).

Najbardziej popularna odmiana: programy reprezentowane przez drzewa wyra˙ze´ n.

Mutacja i krzy˙zowanie zdefiniowane analogicznie do reprezentacji wektorowych.

Typowe benchmarki:

synteza funkcji logicznych, regresja symboliczna.

(17)

Badanie modularno´sci w GP

Rozwi azanie = drzewo-wyra˙zenie definiuj

,

ace pewne przetwarzanie

,

danych

Komponenty = funkcje (operatory, w ez ly drzewa)

,

Modu l = poddrzewo

Powi azanie = ?

,

Krzysztof Krawiec, Bartosz Wieloch Analiza semantycznych w la´sciwo´sci modu l´ow w programowaniu genetycznym

(18)

Modu ly w GP

Modu l = poddrzewo (fragment kodu)

sztywny podzia l struktury rozwi azania na cz

,

e´sci:

, modu l

kontekst (pozosta la cze´s´, c rozwiazania),

(Inne definicje mo˙zliwe)

W sensie strukturalnym (syntaktycznym), ka˙zde poddrzewo w rozwi azaniu GP jest w pelni separowalne. Jednak w sensie

,

semantycznym niekoniecznie (dla danego kontekstu istnieje wi ecej

,

ni˙z jedno optymalne poddrzewo).

(19)

Dekompozycja - przyk lad latarki

G l´ owna idea

Niepotrzebna jest latarka, ˙zeby oceni´ c sam a bateri

,

e.

,

Znale´ z´ c miar e oceny modu lu (baterii) kt´

,

ora jest niezale˙zna od kontekstu (latarki).

Krzysztof Krawiec, Bartosz Wieloch Analiza semantycznych w la´sciwo´sci modu l´ow w programowaniu genetycznym

(20)

Idea

(21)

Jako´s´ c modu lu

Potrzebna jest funkcja (podcel) oceniaj aca u˙zyteczno´s´

,

c konkretnego modu lu (jego implementacji)

Analogia:

rozwi azanie - optymalizuje funkcj

,

e przystosowania

,

modu l - optymalizuje wybran a funkcj

,

e oceny modu lu

,

Hipoteza: lepszy modu l  lepsza ca lo´s´c rozwi azania

,

Krzysztof Krawiec, Bartosz Wieloch Analiza semantycznych w la´sciwo´sci modu l´ow w programowaniu genetycznym

(22)

Jako´s´ c modu lu - przyk lad latarki

Dobra miara oceny: pojemno´s´ c

Kiepska miara oceny: kolor

(23)

Monotoniczno´s´ c

Miara oceny wybranego podcelu:

stopie´ n zgodno´sci oceny ca lych rozwi aza´

,

n z ocen a ich

,

modu l´ ow

im wi eksza korelacja tym lepiej

, korelacja Pearsona

wsp´o lczynnik korelacji Spearmana (niezale˙zno´s´c od warto´sci absolutnych)

...

skrajny przypadek: pe lna korelacja - znalezienie sposobu zupe lnego podzia lu problemu na niezale˙zne elementy (pe lna separowalno´s´ c)

Krzysztof Krawiec, Bartosz Wieloch Analiza semantycznych w la´sciwo´sci modu l´ow w programowaniu genetycznym

(24)

Poj ecia - podsumowanie ,

Co do czego?

cel — do oceniania rozwi aza´

,

n podcele — do oceniania modu lu

monotoniczno´s´ c — do oceniania podcelu (ze wzgl edu na

,

rozwi azywany problem)

,

(25)

Semantyka programu GP

opisuje efekt konkretnego uruchomienia programu:

lista par (dane wej´sciowe, wynik)

przy ustalonych danych wej´sciowych (zbi´or uczacy) semantyk, e, rozwiazania mo˙zna opisa´, c lista (wektorem) odpowiedzi na, poszczeg´olne przyk lady uczace,

Krzysztof Krawiec, Bartosz Wieloch Analiza semantycznych w la´sciwo´sci modu l´ow w programowaniu genetycznym

(26)

Wyniki

(27)

Przyk lad: problemy logiczne

Problemy:

Xor 3,4,6,8 bitowe OrAnd 3,4,6,8 bitowe

(OR (AND v1v2) v3)

(OR (AND v1v2) (AND v3v4))

(OR (OR (AND v1v2) (AND v3v4)) (AND v5v6))

(OR (OR (AND v1v2) (AND v3v4)) (OR (AND v5v6) (AND v7v8)))

Krzysztof Krawiec, Bartosz Wieloch Analiza semantycznych w la´sciwo´sci modu l´ow w programowaniu genetycznym

(28)

Eksperymenty

zbi´ or funkcji (w ez ly drzewa):

,

And, Or, Nand, Nor

maksymalna g l eboko´s´

,

c drzewa: 17 definicja dekompozycji:

modu l — lewe poddrzewo korzenia kontekst — korze´n + prawe poddrzewo

dla 3 i 4 bitowych problem´ ow ma la d lugo´s´ c semantyki pozwala rozwa˙zy´ c wszystkie istniej ace (2

, 8

oraz 2

16

) podcele

dla 6 i 8 bitowych problem´ ow konieczne jest pr´ obkowanie (badamy podzbi´ or wszystkich mo˙zliwych podcel´ ow)

monotoniczno´s´ c estymowana na podstawie miliona losowych

osobnik´ ow

(29)

Symetria

Problemy logiczne + u˙zyte funkcje (And, Or, Nand, Nor)

=

problemy z symetri a

,

Niesymetryczna funkcja oceny rozwi azania:

,

f (x ) := max(l − h(x, f), l − h(x, f))

Analogiczna modyfikacja do funkcji oceny modu lu:

f

P

(p) := max(l − h(p, f

P

), l − h(p, f

P

))

Krzysztof Krawiec, Bartosz Wieloch Analiza semantycznych w la´sciwo´sci modu l´ow w programowaniu genetycznym

(30)

Rozk lady monotoniczno´sci (3-bit)

Monotonicity of Xor−3

monotonicity

01010100 01101001

−0.4−0.20.00.20.4

Monotonicity of Or−And−3

monotonicity

11101110 00011111

−0.4−0.20.00.20.4

(31)

Rozk lady monotoniczno´sci (4-bit)

Monotonicity of Xor−4

monotonicity

0010001011110010 0110100110010110

−0.4−0.20.00.20.4

Monotonicity of Or−And−4

monotonicity

0000011001100000 0001000100011111

−0.4−0.20.00.20.4

Krzysztof Krawiec, Bartosz Wieloch Analiza semantycznych w la´sciwo´sci modu l´ow w programowaniu genetycznym

(32)

Rozk lady monotoniczno´sci (6-bit)

Monotonicity of Xor−6

monotonicity −0.4−0.20.00.20.4

Monotonicity of Or−And−6

monotonicity −0.4−0.20.00.20.4

(33)

Rozk lady monotoniczno´sci (8-bit)

Monotonicity of Xor−8

monotonicity −0.4−0.20.00.20.4

Monotonicity of Or−And−8

monotonicity −0.4−0.20.00.20.4

Krzysztof Krawiec, Bartosz Wieloch Analiza semantycznych w la´sciwo´sci modu l´ow w programowaniu genetycznym

(34)

Wybrane podcele

Najlepszy podcel

130 135 140 145

128129130131132133

Xor8 mon=0.1699987

(sim)

(fit)

Najgorszy podcel

● ●

● ●

● ●

● ●

● ●

● ●

● ●

● ●

● ●

● ●

130 135 140 145 150 155

128129130131132133

Xor8 mon=−0.14748244

(sim)

(fit)

Cytaty

Powiązane dokumenty

[r]

Do wystawienia oceny z przedmiotu brany jest wynik ostatniego zaliczenia wyk ladu (albo suma punkt´ ow z obu cz¸e´sci zaliczenia je´sli student zalicza l na raty i nie poprawia l).

Na poziomie istotno´sci α = 0.1 sprawdzi´ c hipotez¸e, ˙ze wariancja pomiar´ ow tym woltomierzem jest mniejsza ni˙z 1.05. Wykonano badanie stanu zawarto´sci alkoholu we krwi

Twierdzenie odwrotne do powyższego nie jest prawdziwe, ponieważ jeżeli jedno z zagadnień jest sprzeczne, to zagadnienie dualne może być sprzeczne lub jego funkcja

Za l´ o˙zmy teraz, ˙ze teza zachodzi dla pewnego naturalnego n.. St ad na mocy zasady indukcji mamy tez

7. Wyznaczy´ c 95-procentowy przedzia l ufno´sci dla prawdopodobie´ nstwa p, ˙ze wyprodukowana ˙zar´ owka spe lnia norm¸e jako´sci... Firma reklamowa stara si¸e ustali´ c

Ka˙zdy element zbioru F ma tylko jeden element

[r]