Anda di halaman 1dari 11

MAKALAH TEORI BHS& AUTOMATA

Ekuivalensi NDFA ke DFA dan reduksi jumlah State pada


FSA

OLEH:

KELOMPOK E

1. FADLI MUHAMAD (19081015)

2. TEDDY JUNASTI (19081030)

SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER


(STMIK) HANGTUAH PEKANBARU

Finite State Automata

• Model matematika suatu sistem yang menerima input dan output diskrit

• Mesin automata dari bahasa Regular

• Tidak memiliki tempat penyimpanan sehingga kemampuan mengingat terbatas (contoh:


elevator/lift)

• Aplikatif - berguna untuk merancang sistem nyata.


• Aplikasi meliputi : analisis leksikal, text-editor, protokol komunikasi jaringan (kermit) dan
parity checker (pengecek parity).

• FSA atau AH (Automata Hingga)

• didefinisikan sebagai pasangan 5 tupel à M = (Q, ∑, δ, S, F).

Q : himpunan hingga state

∑ : himpunan hingga simbol input (alfabet)

δ : fungsi transisi, menggambarkan transisi state FSA akibat pembacaan simbol input.

Fungsi transisi ini biasanya diberikan dalam bentuk tabel.

S Î Q : state AWAL

F Í Q : himpunan state AKHIR 

Contoh :

seorang petani dengan seekor serigala,


kambing dan seikat rumput berada pada
Sisi Sisi
Simbol State suatu sisi sungai. Tersedia hanya sebuah
kiri Kanan
perahu kecil yang hanya dapat dimuati
dengan petani tersebut dengan salah satu
PSKR Ø PSKR – Ø serigala, kambing atau rumput. Petani
tersebut harus menyeberangkan ketiga
SR PK SR – PK bawaannya kesisi lain sungai. Tetapi jika
SK PR SK – PR petani meninggalkan serigala dan kambing
pada suatu saat, maka kambing akan
KR PS KR – PS dimakan serigala. Begitu pula jika kambing
ditinggalkan dengan rumput, maka rumput
PSR K PSR – K
akan dimakan oleh kambing. Mungkinkah
PSK R PSK – R ditemukan suatu cara untuk melintasi
sungai tanpa menyebabkan kambing atau
PKR S PKR – S rumput dimakan.
PK SR PK – SR

PR SK PR – SK

PS KR PS – KR
16 kemungkinan kombinasi state
K PSR K – PSR

R PSK R – PSK

S PKR S – PKR

SKR P SKR – P

P SKR P – SKR

Ø PSKR Ø – PSKR
Sisi
Sisi Kanan Simbol State
kiri

PSKR Ø PSKR – Ø

SR PK SR – PK

PSR K PSR – K

PSK R PSK – R

PKR S PKR – S

PK SR PK – SR

K PSR K – PSR

R PSK R – PSK

S PKR S – PKR

Ø PSKR Ø – PSKR

Dari 16 kemungkinan kombinasi state , hanya 10 state yang memenuhi


syarat.
Deterministic FSA
Ada dua jenis FSA :

• Deterministic finite automata (DFA)

• Non deterministik finite automata.(NFA)

• DFA : transisi state FSA akibat pembacaan sebuah simbol bersifat tertentu.

• NFA : transisi state FSA akibat pembacaan sebuah simbol bersifat tak tentu.
Deterministic Finite Automata
Deterministic finite automata (DFA) à M = (Q, ∑, δ, S, F),

dimana :

Q : himpunan state/kedudukan

∑ : himpunan simbol input

∂ : fungsi transisi, dimana ∂ Î Q x ∑ à Q

S : State awal (initial state)

F : himpunan state akhir (Final State)

Language à L(M) : (x| ∂(S,x) di dalam F)

DFA :

Q = {q0, q1, q2}

δ diberikan dalam tabel berikut :

∑= {a, b} δ a b

L(M) =
S = q0 q0 q0 q1
{abababaa,aaaabab,aabababa,…}
F = {q0, q1} q1 q0 q2

q2 q2 q2

Telusurilah, apakah kalimat-kalimat berikut diterima DFA di atas :

abababaa, aaaabab , aaabbaba


Jawab :

δ (q0,abababaa) Þ δ (q0,bababaa) Þ δ (q1,ababaa) Þ

δ (q0,babaa) Þ δ (q1,abaa) Þ δ (q0,baa) Þ δ (q1,aa) Þ

δ (q0,a) Þ q0

Tracing berakhir di q0 (state AKHIR) Þ kalimat abababaa diterima

Kesimpulan :

Sebuah kalimat diterima oleh DFA di atas jika tracingnya berakhir di salah satu state AKHIR.

Non Deterministic Finite Automata

Non Deterministic finite automata (NFA) à M = (Q, ∑, δ, S, F),

dimana :

Q : himpunan state/kedudukan

∑ : himpunan simbol input

∂ : fungsi transisi, dimana ∂ Î Q x (∑ ⋃ e) à P(Q)

P(Q) : set of all subsets of Q

S : State awal (initial state)

F : himpunan state akhir (Final State)

Language à L(M) : (x| ∂(S,x) di dalam F)

Berikut ini sebuah contoh NFA (Q, ∑, δ, S, F). dimana :

Q = {q 0, q1 , q2 ,q3 , q4 }

δ diberikan dalam tabel berikut :

∑= {a, b,c} δ a b c

S = q0 Q0 {q0 , q 1} {q0 , q2 } {q0 , q3 }


F = {q4} q1 {q1 , q4 } {q1 } {q 1}

q2 {q2 } {q 2, q4 } {q 2}

q3 {q3 } {q3 } {q 3, q4 }

q4 Æ Æ Æ

∑= {a, b,c} δ a b c

S = q0 q0 {q0 , q 1} {q0 , q2 } {q0 , q3 }

F = {q4 } q1 {q1 , q4 } {q1 } {q 1}

q2 {q2 } {q 2, q4 } {q 2}

q3 {q3 } {q3 } {q 3, q4 }

q4 Æ Æ Æ

Sebuah kalimat di terima NFA jika :  

- Salah satu tracing-nya berakhir di state AKHIR, atau

- himpunan state setelah membaca string tersebut mengandung state AKHIR

Telusurilah, apakah kalimat-kalimat berikut diterima NFA di atas :

ab, abc, aabc, aabb


Jawab:

δ(q0 ,ab) Þ δ(q0,b) È δ(q1 ,b) Þ {q0, q2} È {q1 } = {q0 , q1 , q2}

Himpunan state TIDAK mengandung state AKHIR Þ kalimat ab tidak diterima

δ(q0 ,abc) Þ δ(q0 ,bc) È δ(q1 ,bc) Þ { δ(q0 ,c) È δ(q2 ,c)}Èδ(q1 , c)

{{ q0 , q3 }È{ q2 }}È{ q1 } = {q0 , q1 , q2 ,q3 }

Himpunan state TIDAK mengandung state AKHIR Þ kalimat abc tidak diterima 

Ekuivalensi Antar Deterministic Finite Automata

• Dua DFA M1 dan M2 dinyatakan ekivalen apabila L(M1) = L(M2)

Reduksi Jumlah State Pada FSA

• Reduksi dilakukan untuk mengurangi jumlah state tanpa mengurangi kemampuan untuk
menerima suatu bahasa seperti semula (efisiensi)

• State pada FSA dapat direduksi apabila terdapat useless state

• Hasil dari FSA yang direduksi merupakan ekivalensi dari FSA semula

Pasangan State dapat dikelompokkan berdasarkan:

• Distinguishable State (dapat dibedakan)

Dua state p dan q dari suatu DFA dikatakan indistinguishable apabila:

δ(q,w) Î F dan δ(p,w) Î F atau δ(q,w) ∉ F dan δ(p,w) ∉ F

untuk semua w Î S*
• Indistinguishable State ( tidak dapat dibedakan)

Dua state p dan q dari suatu DFA dikatakan distinguishable jika ada string w Î S*
hingga:

δ(q,w) Î F dan δ(p,w) ∉ F

Reduksi Jumlah State Pada FSA – Relasi

Pasangan dua buah state memiliki salah satu kemungkinan : distinguishable atau
indistinguishable tetapi tidak kedua-duanya. Dalam hal ini terdapat sebuah relasi :

Jika p dan q indistinguishable,

dan q dan r indistinguishable

maka p, r indistinguishable dan

p,q,r indistinguishable

Dalam melakukan eveluasi state, didefinisikan suatu relasi : Untuk Q yg merupakan


himpunan semua state

– D adalah himpunan state-state distinguishable, dimana D Ì Q

– N adalah himpunan state-state indistinguishable, dimana N Ì Q

– maka x Î N jika x Î Q dan x Ï D

Reduksi Jumlah State Pada FSA – Step

• Hapuslah semua state yg tidak dapat dicapai dari state awal (useless state)

• Buatlah semua pasangan state (p, q) yang distinguishable, dimana

p Î F dan q ÏF. Catat semua pasangan-pasangan state tersebut.

• Cari state lain yang distinguishable dengan aturan:

“Untuk semua (p, q) dan semua a Î ∑, hitunglah δ (p, a) = p a dan δ (q, a) = qa . Jika pasangan
(pa, qa) adalah pasangan state yang distinguishable maka pasangan (p, q) juga termasuk
pasangan yang distinguishable.

• Semua pasangan state yang tidak termasuk sebagai state yang distinguishable
merupakanstate-state indistinguishable.

• Beberapa state yang indistinguishable dapat digabungkan menjadi satu state.

• Sesuaikan transisi dari state-state gabungan tersebut.


Reduksi Jumlah State Pada FSA – Contoh

Reduksi Jumlah State Pada FSA – Step

• State q5 tidak dapat dicapai dari state awal dengan jalan apapun (useless state). Hapus
state q5

• Catat state-state distinguishable, yaitu :

q4 Î F sedang q0, q1, q2, q3 ÏF sehingga pasangan

(q0, q4) (q1, q4) (q2, q4) dan (q3, q4) adalah distinguishable.

• Pasangan-pasangan state lain yang distinguishable diturunkan berdasarkan pasangan dari


langkah 2, yaitu :

– Untuk pasangan (q0, q1)

δ(q0, 0) = q1 dan δ(q1, 0) = q2 à belum teridentifikasi

δ(q0, 1) = q3 dan δ(q1, 1) = q4 à (q3, q4) distinguishable maka


(q0, q1) adalah distinguishable.

– Untuk pasangan (q0, q2)

δ(q0, 0) = q1 dan δ(q2, 0) = q1 à belum teridentifikasi

δ(q0, 1) = q3 dan δ(q2, 1) = q4 à (q3, q4) distinguishable maka


(q0, q2) adalah distinguishable.
• Setelah diperiksa semua pasangan state maka terdapat state-state yang distinguishable :
(q0,q1), (q0,q2), (q0,q3), (q0,q4), (q1,q4), (q2,q4), (q3,q4)

Karena berdasarkan relasi-relasi yang ada, tidak dapat dibuktikan (q1, q2), (q1, q3)
dan (q2, q3) distinguishable, sehingga disimpulkan pasangan-pasangan state tersebut
indistinguishable.

• Karena q1 indistinguishable dengan q2, q2 indistinguishable dengan q3, maka dapat


disimpulkan q1, q2, q3 saling indistinguishable dan dapat dijadikan satu state.

• Berdasarkan hasil diatas maka hasil dari DFA yang direduksi menjadi:

Anda mungkin juga menyukai