Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

Gramatyki Lindenmayera

Podobne prezentacje


Prezentacja na temat: "Gramatyki Lindenmayera"— Zapis prezentacji:

1 Gramatyki Lindenmayera

2 Gramatyki Lindenmayera
Inna nazwa to równolegle przepisujące systemu lub L-systemy, Twórcą jest biolog Aristid Lindenmayer, który w 1968 roku stworzył formalny sposób opisu wzrostu roślin. Polegają na zamianie modułu zwanego rodzicem, matką lub przodkiem na moduł zwany dzieckiem, córką lub potomkiem.

3 Rodzaje L-systemów D0L-system - deterministyczny, bezkontekstowy L-system, D1L-system - deterministyczny, wrażliwy na kontekst L-system, 0L-system - stochastyczny, bezkontekstowy L-system, 1L-system - stochastyczny, z kontekstem jednostronnym L-system, 2L-system - stochastyczny, z kontekstem dwustronnym (prawym i lewym) L-system, parametryczny L-system, zegarowy L-system (Timed L-system).

4 L-systemy jak to działa:
Przepisywanie zaczynamy od pojedynczego modułu zwanego aksjomatem, W trakcie symulacji korzystamy z reguł przepisania, które w najprostszym przypadku mają postać: Poprzednik  Następnik Przepisanie polega znalezieniu reguły gdzie poprzednik pasuje do modułu matki i zastąpieniu tego modułu sekwencją z następnika.

5 D0L-system – opis formalny
D0L-system to uporządkowaną trójka G = (, P, ), gdzie = {s1, s2, , sn} jest alfabetem,  - aksjomatem oraz  należy do zbioru *, który jest zbiorem wszystkich ciągów symboli z . Przekształcenie przepisywania jest określone jako: P : * z s  P(s) dla każdego s. Każdemu symbolowi s odpowiada tylko jedna reguła przepisywania. L-system generuje kolejne sekwencje: (0), (1),  (2), Sekwencje  (i+1) otrzymujemy z poprzedniej  (i) przez zastosowanie reguł podstawiania do wszystkich m symboli 1(i) , , m(i) ciągu jednocześnie:  (i+1) = P(1(i))P(2(i) ) P(m(i) )

6 D0L-system – przykład Anabena Catenula - glon sinica
Reguły przepisania: Sekwencja produkcji:

7 Grafika żółwia – podstawowe symbole
Znaczenie F idź do przodu jeden krok o długości l i narysuj linie od poprzedniej pozycji do nowej idź do przodu jeden krok o długości l ale nie rysuj linii + obróć się w lewo (przeciwnie do ruchu wskazówek zegara) o stały kąt  - obróć się w prawo (zgodnie z ruchem wskazówek zegara) o stały kąt 

8 Grafika żółwia Matematycznie można powiedzieć, ze żółwiowi przypisuje się stan który składa się z bieżącego położenia, oznaczonego para współrzędnych x i y oraz bieżącego kierunku, wyrażonego przez kat . Zapisuje się to jako trojkę liczb (x, y, ). Zmiana stanu żółwia następuje po każdym wykonaniu polecenia.

9 Grafika żółwia Wykorzystując elementarne własności trygonometryczne zbiór poleceń dla żółwia można zapisać teraz następująco: Symbol stan (x, y, ) przechodzi w F (x + l cos , y + l sin ,_) (x + l cos , y + l sin ,) + (x, y,  − ) - (x, y,  + )

10 Grafika żółwia l – oznacza długość korku a  to kąt o jaki żółw obraca się w prawo Stan początkowy to (0, 0, 0) co oznacza, ze żółw skierowany jest w prawo i znajduje się w początku bieżącego układu współrzędnych. Potrzebny będzie również czynnik redukcji do zmniejszania długości kroku w kolejnych przypisaniach.

11 Grafika żółwia – przykład
Zbiór Cantora: czynnik redukcji: 1/3,  = 0, l= 400, Aksjomat: F, reguły przepisania: F->FfF f->fff Produkcje: FfFfffFfFfffffffffFfFfffFfF

12 Zadanie Stworzyć program z zastosowaniem L-systemów rysujący krzywą Peano Krzywa Peano: czynnik redukcji: 1/3,  = 90, l= 300, Aksjomat: F, reguły przepisania: F->FF+F+F+FF+F+F-F

13 Literatura H.-O. Peitgen, H. J¨urgens, D. Saupe Granice Chaosu Fraktale cz.2, Wydawnictwa Naukowe PWN, Warszawa 1996; A. Lindenmayer, P. Prusinkiewicz, The Algorithmic Beauty of Plants”, Springer-Verlag, Elektroniczna wersja opublikowana w 2004


Pobierz ppt "Gramatyki Lindenmayera"

Podobne prezentacje


Reklamy Google