Transcript fsa

FINITE STATE
AUTOMATA (FSA)
• FSA / otomata berhingga state,
merupakan mesin otomata dari bahasa
regular.
• FSA memiliki state yang jumlahnya
berhingga dan dapat berpindah-pindah
dari 1 state ke state yang lain
• Perubahan state dinyatakan oleh fungsi
transisi
• Pergerakan lift salah satu contoh dari
penggunaan FSA
• Pemrosesan text editor, protokol kermit
(transfer file, script pemrograman)
• Contoh kasus FSA adalah : petani,
kambing, srigala, dan rumput berada pada
sisi sungai secara bersamaan. Agar
rumput tidak dimakan oleh kambing dan
kambing tidak dimakan oleh srigala. Maka
bagaimana penggambaran mesin FSA
nya?
• (PKSR-0) k (SR-PK) p (PSR-K) r (S-PKR)
k (PKS-R) s (K-PSR) p (PK-SR) k
(0-PKSR)
atau
• (PKSR-0) k (SR-PK) p (PSR-K) s (R-PSK)
k (PKR-S) r (K-PRS) p (PK-RS) k
(0-PKSR)
• Pada pencek parity ganjil pengirim akan
menambahkan bit paritas sehingga jumlah
bit 1 adalah ganjil, contoh
terdapat data 0110 maka pengirim akan
menambahkan bit 1, sehingga penerima
akan memperoleh 01101
• Sebaliknya 0111  01110
• Bagaimana bentuk mesin FSA nya?
• (EVEN) 0* 1 (ODD) 0* | 1 (EVEN)
• Mesin FSA dapat digambarkan dengan :
a. Lingkaran menyatakan state
b. Label pada lingkaran menyatakan
nama state
c. Busur menyatakan transisi, yaitu per
pindahan state
d. Label pada busur menyatakan simbol
input
e. State didahului oleh busur tanpa label
menyatakan state awal
f. State dengan lingkaran ganda  state akhir
• Secara formal FSA dinyatakan dalam 5
tupel atau M=(Q,∑,δ, S, F) dimana :
Q = himpunan state
∑ = Himpunan simbol input
δ = Fungsi transisi
S = State awal, S Є Q
F = State akhir, F himpunan bagian Q
• Dalam kasus pksr, dapat dinyatakan
secara formal bahwa :
Q = {pksr-0, sr-pk, psr-k, s-pkr, pks-r
k-psr, pk-sr, 0-pksr}
∑ = {p, k, s, r}
S = pksr-0
F = {0-pksr}
• Dalam kasus parity ganjil dapat
dinyatakan :
Q = {odd, even}
∑ = {0,1}
S = Event
F = {odd}
• Dalam FSA berdasar pada pendefinisian
kemampuan berubah dari state-state nya,
maka dapat dikelompokan ke dalam
Determenistik Finite Automata (DFA) dan
Non-determenistik (NFA)
Determenistik Finite Automata
• Determenistik Finite Automata (DFA)
dapat dicirikan bahwa dari suatu state ada
tepat satu state berikutnya untuk setiap
simbol masukan yang diterima. Contoh :
• DFA di atas secara formal dapat
dinyatakan :
Q = {q0, q1, q2}
∑ = {a,b}
S = q0
F = {q2}
• Dapat dinyatakan dalam transisi :
δ(q0,a) = q0
δ(q0,b) = q1
δ(q1,a) = q1
δ(q1,b) = q2
δ(q2,a) = q1
δ(q2,b) = q2
• Fungsi transisi tersebut dapat pula
dinyatakan dalam sebuah tabel transisi :
• Dikatakan bila M adalah sebuah FSA ,
M = (Q, ∑, δ, S, F), menerima suatu
bahasa yang disebut dengan L(M), yang
merupakan himpunan {x|δ(S,x) di dalam
F}, dan L = Language
• Bila pada DFA di atas kita inputkan ‘abb’
pada mesin tersebut, maka :
δ(q0,abb)= δ(q0,bb)= δ(q1,b)=q2
Dari diagram transisi di atas :
• Tuliskan konfigurasi DFA secara formalnya
• Bagaimana transisinya
• Buat tabel transisinya
• Dan string-string apa saja yang dapat
diterima
• Bila diketahui tabel transisi
• Buat bahasa formalnya
• Buat diagram transisinya