Teknik Informatika
2014
Ir. Ahmad Haidaroh, M.Kom.
Jenis FSA
• Deterministik (DFSA/DFA)
pada setiap input, hanya ada satu keadaan
(state) tujuan dari keadaan saat ini.
• Nondeterministik (NFSA/NFA)
pada setiap input terdapat lebih dari satu
keadaan tujuan dari keadaan saat ini.
D-FSA/DFA
1. Himpunan keadaan (Q).
2. Himpunan simbol input ()
3. Fungsi transisi (), memuat satu keadaan asal
dan satu simbol input dan satu keadaan tujuan.
4. Keadaan awal (q0)merupakan salah satu dari
Q.
5. Himpunan keadaan final atau yang diterima,
dinotasikan dengan F (FQ)
5-TUPLE D-FSA
DFSA A, terdiri atas 5 tuple, yaitu:
A = (Q, , , q0, F)
Notasi Lain DFSA
1. Diagram Transisi / State Diagram
• Tiap keadaan merupakan simpul
• Tiap keadaan q  Q dan tiap simbol a  , dituliskan
sebagai (q,a) = p. Artinya, diagram transisi memiliki
panah dari q ke p, yang berlabel a.
• Keadaan awal (q0) ditandai dengan adanya panah
tanpa sumber.
• Simpul yang menjadi keadaan final ditandai dengan
lingkaran bergaris tepi ganda
Notasi Lain DFSA
2. Tabel Transisi
• Representasi daftar dari suatu fungsi
• Baris menunjukkan keadaan dan kolom
menunjukkan input.
• Isi dari baris menunjukkan keadaan q dan isi dari
kolom input a menunjukkan keadaan (q,a)
Contoh:
DFSA yang dapat menerima string berakhiran 01
A = ({q0, q1, q2}, {0,1}, , q0, {q2})
dengan fungsi transisi  diberikan dalam bentuk
tabel:  0 1
 q0 q2 q0
q1 q1 q2
* q2 q2 q1, q2
q0 q1
1
q2
0,1
0 1
0
0
1
State Diagram
Contoh DFSA :
M = (Q, , , s, F), dimana :
Q = {q0, q1},
 = {a,b},
S = q0,
F = {q0}
Tabel Transisi
q  (q, )
q0 a q0
q0 b q1
q1 a q1
q1 b q0
Tabel Transisi
 a b
q0 q0 q1
q1 q1 q0
atau
q0 q1
a
b
a
b
Diagram State
Jika M diberi input aabba, dengan state awal (q0, aabba),
maka :
(q0,aabba) ├M (q0,abba)
├M (q0,bba)
├M (q1,ba)
├M (q0,a)
├M (q0,e)
Karena (q0,aabba) ├*M (q0,e), jadi aabba diterima oleh M
Contoh: DFSA yang dapat menerima semua
string berakhiran 01
q0 q1
0,1
q2
0 1
Contoh : diberikan input pada mesin DFSA 010111, lakukan tracer :
(q0,010111) ├M (q0,10111)
├M (q0,0111)
├M (q0,111)
├M (q0,11)
├M (q0,1)
├M (q0,e)
Karena berhenti bukan di q2, maka 010111 tidak diterima oleh mesin DFSA
Contoh : diberikan input pada mesin DFSA 11101, lakukan tracer :
(q0,11101) ├M (q0,1101)
├M (q0,101)
├M (q0,01)
├M (q1,1)
├M (q2,e)
Karena berhenti di q2, maka 11101 diterima oleh mesin DFSA
Tabel Transisi
 0 1
q0 q2 q1
q1 q3 q0
q2 q0 q3
q3 q1 q2
DFA nya
Q = {q0 , q1 , q2 , q3 }
 = {0,1}
S = q0
F = { q0}
Contoh : diberikan string 011 dan 1010,
buktikan bahwa string tersebut diterima
atau ditolak !
(q0,011) = (q2,11) = (q3,1) = q2 Ditolak
(q0,1010) = (q1,010)
= (q3,10)
=(q2,0)
= (q0,e) DiterimaState Diagram
Perluasan Fungsi Transisi untuk String
• DFSA mendefinisikan bahasa sebagai
himpunan semua string yang hasilnya dalam
bentuk urutan transisi keadaan dari keadaan
awal sampai keadaan final (yang diterima)
Perluasan Fungsi Transisi untuk String (lanj.)
• Fungsi Transisi Diperluas
• Mendeskripsikan yang terjadi ketika suatu keadaan
dimulai dan sembarang urutan input diikuti.
• Jika  adalah fungsi transisi, maka fungsi transisi
diperluas dinotasikan dengan 𝛿
• Fungsi transisi diperluas merupakan fungsi saat
keadaan q untuk masukan berupa string w, dan
menghasilkan keadaan p (keadaan yang dicapai
otomaton ketika memulai di keadaan q dan memproses
urutan input w)
Definisi Formal dari Fungsi Transisi Diperluas
•
Definisi Formal dari Fungsi Transisi Diperluas
Induksi: Misal w adalah string yang berbentuk xa;
yakni a merupakan simbol terakhir dari w, dan x
merupakan string selain simbol terakhir.
Maka: 𝛿(q,w) = ( 𝛿(q,x), a)
• Untuk memproses 𝛿(q,w), pertama proses dahulu 𝛿(q,x),
hasilnya adalah keadaan yang otomaton tempati setelah
memproses semua simbol selain simbol terakhir dari w.
• Misal, keadaan ini adalah p, yakni 𝛿(q,x) = p
• Maka 𝛿(q,w) adalah yang kita peroleh dengan melakukan
transisi dari keadaan p dengan input a (simbol terakhir dari
w)
Contoh
Desain suatu DFSA yang dapat menerima bahasa:
L = {w | w memiliki jumlah 0 ganjil dan jumlah 1 ganjil}
Bahasa dari DFSA
Bahasa dari DFSA A = (Q, , , q0, F), dinotasikan
dengan L(A), didefinisikan sebagai
L(A) = {w | 𝛿(q0,w) berakhir di F}
Bahasa dari A merupakan himpunan semua string
w yang memiliki keadaan awal q0 dan berakhir di
keadaan final (yang diterima)
Jika L adalah L(A) dari suatu DFSA, maka L
adalah bahasa reguler
Nondeterministik Finite State Automata
(NFSA)
• Suatu NFSA memiliki kelebihan yakni berada di
beberapa keadaan pada saat yang sama.
• Kelebihan ini sering diekspresikan sebagai
kemampuan untuk “menebak” sesuatu mengenai
inputnya.
• Tiap NFSA menerima suatu bahasa yang juga
dapat diterima oleh suatu DFSA.
• NFSA lebih sederhana daripada DFSA.
NFSA (lanj.)
• NFSA dapat selalu diubah ke DFSA, namun
menghasilkan jumlah keadaan baru yang
jumlahnya eksponensial (kasus yang jarang
terjadi)
• Perbedaan antara DFSA dan NFSA adalah jenis
fungsi transisinya ()
• Pada NFSA,  merupakan fungsi yang memuat satu
keadaan, dan simbol input (seperti fungsi transisi
DFSA), namun menghasilkan himpunan nol atau lebih
dari satu keadaan (daripada menghasilkan tepat satu
keadaan, seperti yang harus dilakukan DFSA)
Contoh: NFSA yang dapat menerima semua
string berakhiran 01
q0 q1
0,1
q2
0 1
Definisi Formal NFSA
5-tuple NFSA dituliskan sebagai
A = (Q, , , q0, F)
• Q adalah himpunan terbatas atas keadaan
•  adalah himpunan terbatas atas simbol input
• q0  Q adalah keadaan awal
• F (F  Q) adalah himpunan keadaan final (yang
diterima)
•  (fungsi transisi) adalah fungsi yang mengandung
satu keadaan dari Q dan simbol input dalam  untuk
menuju ke beberapa keadaan dalam Q.
Definisi Formal NFSA (lanj.)
Satu-satunya perbedaan antara NFSA dan DFSA
adalah banyaknya hasil yang diperoleh dari 
Contoh: NFSA yang dapat menerima semua
string berakhiran 01
A = ({q0, q1, q2}, {0,1}, , q0, {q2})
Dengan fungsi transisi () diberikan dalam bentuk
tabel:
0 1
 q0 {q0,, q1} {q0}
q1  {q2}
* q2  
q0 q1
0,1
q2
0 1
Lebih dari 1 State
Tidak ada state
tujuan
Fungsi Transisi Diperluas
Basis: 𝛿(q,) = {q}
Tanpamendapatsimbol input, kitatetapberada di keadaansemula.
Induksi:
• Misalkan w adalah string dalambentukxa; dengan a
merupakansimbolterakhirdari w, dan x suatu string yang adadalam w
selainsimbolterakhir.
• Misalkan 𝛿(q,x) = {p1, p2, …, pk}
• Bila
𝑖=1
𝑘
𝛿 𝑝𝑖, 𝑎 = {𝑟1, 𝑟2, … , 𝑟𝑚}
• Maka: 𝛿(q,w) = {r1, r2, …, rm}
• Kita kerjakan 𝛿 (q,w) denganmengerjakan 𝛿 (q,x)
kemudianikutitransisidarikeadaan yang dihasilkankekeadaan yang
berlabel a.
Contoh: NFSA yang dapat menerima semua
string berakhiran 01
Untuk w = 00101
1. 𝛿(q0,) = {q0}
2. 𝛿(q0,0) = {q0,0} = {q0, q1}
3. 𝛿(q0,00) = {q0,0}  {q1,0} = {q0, q1}   = {q0, q1}
4. 𝛿(q0,001) = {q0,1}  {q1,1} = {q0}  {q2} = {q0, q2}
5. 𝛿(q0,0010) = {q0,0}  {q2,0} = {q0, q1}   = {q0, q1}
6. 𝛿(q0,00101) = {q0,1}  {q1,1} = {q0}  {q2} = {q0, q2}
q0 q1
0,1
q2
0 1
Bahasa NFSA
Bahasasuatu NFSA A = (Q, , , q0, F)
dinotasikandengan L(A) yang didefinisikansebagai
L(A) = {w | 𝛿(q0,w)  F   }
Bahasadari A merupakanhimpunan string w *
sehingga 𝛿(q0,w) mengandungsetidaknyasatukeadaan
yang diterima.
Meskipun w dapatmenujusuatukeadaan yang
tidakditerimaatautidakmenujukesuatukeadaanmanapu
n, tidakmenghalangi w untukditerimaoleh NFSA.
Ekivalensi DFSA dan NFSA
• Setiap bahasa yang dapat dideskripsikan oleh
NFSA, dapat dideskripsikan pula oleh suatu
DFSA.
• Pada prakteknya, DFSA memiliki jumlah keadaan
yang sama dengan NFSA, meskipun transisinya
lebih banyak.
• Pada kasus tertentu, DFSA dapat memiliki 2n
keadaan (untuk NFSA dengan n keadaan)
Bukti: DFSA dapat melakukan semua
yang dilakukan NFSA
Pembuktian melibatkan konstruksi yang disebut
konstruksi himpunan bagian karena melibatkan
pembuatan semua himpunan bagian dari
himpunan dari keadaan – keadaan NFSA.
Dari NFSA ke DFSA
• Kita memiliki NFSA N = (QN, , N, q0, FN)
• Tujuannya untuk membuat DFSA D = (QD, , D,
{q0}, FD) sehingga L(D) = L(N)
Konstruksi Himpunan Bagian
• Input alfabetnyasama
• Himpunankeadaanawal di D merupakanhimpunan yang
memuatkeadaanawaldari N.
• QDmerupakanhimpunandarihimpunanbagiandari QN, yakni
QDmerupakanhimpunanpangkatdari QN. Jika QNmemiliki n keadaan,
QDmemiliki 2nkeadaan.
Tidaksemuakeadaandapatdiaksesdarikeadaanawal.
• FDmerupakanhimpunandarihimpunanbagian S dari QNsehingga S 
FN  . Sehingga FDmerupakansemuahimpunandarikeadaan N yang
memuatsetidaknyasatukeadaan yang diterimadarikeadaan N.
• Untuktiaphimpunan S  QN danuntuktiapsimbol input a 
D(S,a) = 𝑝∈𝑆 𝛿 𝑁(𝑝, 𝑎)
• UntukmenghitungD(S,a), kitalihatsemuakeadaan p dalam S,
perhatikanperubahankeadaan N dari p ketikadiberikan input a,
danambilgabungandarikeseluruhankeadaantersebut.
Contoh
QN = {q0, q1, q2}, maka QD = {, {q1}, {q2}, {q0, q1},
{q0,q2}, {q1,q2},{q0,q1,q2}} sehingga QD memiliki 8
keadaan (tiap keadaan berkaitan dengan
himpunan bagian dari QN)
q0 q1
0,1
q2
0 1
Contoh (lanj.)
0 1
  
 {q0} {q0, q1} {q0}
{q1}  {q2}
* {q2}  
{q0, q1} {q0, q1} {q0, q2}
* {q0, q2} {q0, q1} {q0}
* {q1, q2}  {q2}
* {q0,q1,q2} {q0, q1} {q0, q2}
q0 q1
0,1
q2
0 1
Contoh: dengan nama baru
• Catatan: keadaan D berkaitan dengan himpunan
bagian dari keadaan N, namun kita dapat
notasikan keadaan D menggunakan A – F.
0 1
A A A
 B E B
C A D
* D A A
E E F
* F E B
* G A D
* H E F
Transformasikan
NFSA berikut
menjadi DFSA.
Langkah ke – 1.
Membuat state DFSA
Himpunan state yang
baru :
Q’ = {, {1}, {2}, {3},
{1,2}, {1,3}, {2,3},
{1,2,3}}
Langkah ke – 2.
Membuat Initial State DFSA
Initial state yang baru :
q0’= {1,3}
Langkah ke – 3.
Membuat Final State DFSA
Final state yang baru :
F’= {{1}, {1,2}, {1,3},
{1,2,3}}
Langkah ke – 4.
Membuat Diagram Transisi DFSA
 = a b
  
1  2
2 2,3 2,3
3 1,3 
1,2 2,3 2,3
1,3 1,3 2
2,3 1,2,3 2,3
1,2,3 1,2,3 2,3
2
1
3

ab
a, b
a, b
a b
  
1  2
2 2,3 2,3
3 1,3 
1,2 2,3 2,3
1,3 1,3 2
2,3 1,2,3 2,3
1,2,3 1,2,3 2,3
Langkah ke – 5.
Penghapusan State tak-perlu
Langkah ke – 5.
Penghapusan state tak-perlu
Langkah ke – 5.
Penghapusan state tak-perlu
Langkah ke – 5.
Penghapusan state tak-perlu

More Related Content

PPTX
Materi 3 Finite State Automata
PPTX
SLIDE KE:5 NFA
PPTX
Teori bahasa otomata pertemuan 5
PPTX
Pushdown Automata
PPTX
Teori bahasa formal dan Otomata
PPTX
Context Free Grammar (CFG) Bagian 2 - Materi 7 - TBO
PDF
Tata bahasa-bebas-konteks
PPTX
Pushdown Automata - Materi 8 - TBO
Materi 3 Finite State Automata
SLIDE KE:5 NFA
Teori bahasa otomata pertemuan 5
Pushdown Automata
Teori bahasa formal dan Otomata
Context Free Grammar (CFG) Bagian 2 - Materi 7 - TBO
Tata bahasa-bebas-konteks
Pushdown Automata - Materi 8 - TBO

What's hot (20)

PPT
Teori bahasa dan automata2
PDF
Teori bahasa-dan-otomata
PDF
Finite state automata
PPT
Pertemuan 2-pemecahan-masalah-ai
PPT
Teori bahasa dan automata7
PPT
P 2 Konsep & Notasi Bahasa - Teknik Kompilasi
PPTX
Regula falsi
PPTX
Pohon(tree) matematika diskrit
PDF
Pertemuan 6 sifat sifat bahasa Reguler
PPTX
CFG dan PARSING - P 5 - Teknik Kompilasi
PPT
Modul 3 pencarian heuristik
PDF
Push Down Automata (PDA)
PPTX
Analisis Leksikal - P4
PDF
Basis dan Dimensi
PDF
Modul tba
PPTX
Notasi Bahasa - P 5,6,7
PPTX
Teori bahasa otomata pertemuan 3
PPT
Metode pencarian heuristik
PPTX
Kuliah 12-deret-taylor-maclaurin
PPTX
Analisis Kebutuhan Sistem Informasi
Teori bahasa dan automata2
Teori bahasa-dan-otomata
Finite state automata
Pertemuan 2-pemecahan-masalah-ai
Teori bahasa dan automata7
P 2 Konsep & Notasi Bahasa - Teknik Kompilasi
Regula falsi
Pohon(tree) matematika diskrit
Pertemuan 6 sifat sifat bahasa Reguler
CFG dan PARSING - P 5 - Teknik Kompilasi
Modul 3 pencarian heuristik
Push Down Automata (PDA)
Analisis Leksikal - P4
Basis dan Dimensi
Modul tba
Notasi Bahasa - P 5,6,7
Teori bahasa otomata pertemuan 3
Metode pencarian heuristik
Kuliah 12-deret-taylor-maclaurin
Analisis Kebutuhan Sistem Informasi
Ad

Viewers also liked (20)

PPTX
SLIDE KE-4 DFA
PPTX
Pumping Lemma-rl - Materi 5 - TBO
PPTX
Konsepsentral - Materi 2 - TBO
PDF
Fsa dengan output
PPTX
Context Free Grammar 1 - Materi 6 - TBO
PDF
REGULAR LANGUAGES
PDF
Ekspresi regular
PPTX
Pendahuluan - Materi 1 - TBO
DOCX
Tugas mesin otomatis
PPTX
Multiplekser - Demultiplekser - Pertemuan 7
PPTX
PENGGABUNGAN FINITE STATE AUTOMATA
PPTX
Regular Expression - TBO - Materi 4
PPTX
Generator Set - Materi 8 - Fisika Listrik dan Magnet
PPTX
Suplemen Ekspresi-Regular - TBO - Materi 4
PPTX
2015 01 19_administrasi_server_pertemuan_3
PPS
Linux10 sendmail
PPTX
technik kompilasi
PPTX
Error Handling - P 7 Teknik Kompilasi
PPTX
Analisis Semantik - P 6 Teknik Kompilasi
PPSX
Linux02 install SSh
SLIDE KE-4 DFA
Pumping Lemma-rl - Materi 5 - TBO
Konsepsentral - Materi 2 - TBO
Fsa dengan output
Context Free Grammar 1 - Materi 6 - TBO
REGULAR LANGUAGES
Ekspresi regular
Pendahuluan - Materi 1 - TBO
Tugas mesin otomatis
Multiplekser - Demultiplekser - Pertemuan 7
PENGGABUNGAN FINITE STATE AUTOMATA
Regular Expression - TBO - Materi 4
Generator Set - Materi 8 - Fisika Listrik dan Magnet
Suplemen Ekspresi-Regular - TBO - Materi 4
2015 01 19_administrasi_server_pertemuan_3
Linux10 sendmail
technik kompilasi
Error Handling - P 7 Teknik Kompilasi
Analisis Semantik - P 6 Teknik Kompilasi
Linux02 install SSh
Ad

Similar to Finite State Automata - Materi 3 - TBO (11)

PPT
13-Push_Down_Otomata_Gasal2324.pptzzzzzzz
PPT
Ekivalensi NFA - DFA(4).ppt
PPT
Tbo.ppt
PPTX
Pertemuan 3 - Perkuliahan Teori Bahasa Formal dan Automata
PDF
#6 NFA ke DFA dan NFA e-move kls B1.pdf
PPT
TBO02-FSA.ppt
PDF
Teori bahas automata
PDF
Teori bahas automata
PDF
chapter-6.pdf
PPTX
Flip flop (maria hanifah 14708251105 & oky ristya trisnawati-14708251020)
PPTX
PPT Kelompok 4 Teori Bahasa Otomata ~ Non-Deterministic FSA.pptx
13-Push_Down_Otomata_Gasal2324.pptzzzzzzz
Ekivalensi NFA - DFA(4).ppt
Tbo.ppt
Pertemuan 3 - Perkuliahan Teori Bahasa Formal dan Automata
#6 NFA ke DFA dan NFA e-move kls B1.pdf
TBO02-FSA.ppt
Teori bahas automata
Teori bahas automata
chapter-6.pdf
Flip flop (maria hanifah 14708251105 & oky ristya trisnawati-14708251020)
PPT Kelompok 4 Teori Bahasa Otomata ~ Non-Deterministic FSA.pptx

More from ahmad haidaroh (20)

PPTX
Materi 7 Context Free Grammar
PPTX
8 Rekursif
PPTX
6 ANTRIAN - QUEUE
PPTX
PPTX
PPTX
3 Linked List
PPT
PPTX
Materi 4 Regular Expression
PPTX
Materi 3 Finite State Automata
PPTX
Presentasi OSPEK 2018
PPTX
Pertemuan 4 Dioda1
PPTX
Pertemuan 4 Aljabar Boole
PPT
Pertemuan 2&3 - Dasar2 Keamanan Encyption
PPT
Pertemuan 3a Rangkaian Aritmatik-Half n Full Adder
PPTX
Pertemuan 6 Penyederhanaan RL-Karnaugh Map
PPTX
Pertemuan 5a gerbang kombinasi-maxtem-minterm
PPT
Pertemuan 5 gerbang logika dasar n bentukan
PPTX
Aritmatika Biner - Pertemuan 3
PPT
Pertemuan 2 - Sistem Bilangan
PPT
Pertemuan 2 - Sistem Bilangan - Ahmad
Materi 7 Context Free Grammar
8 Rekursif
6 ANTRIAN - QUEUE
3 Linked List
Materi 4 Regular Expression
Materi 3 Finite State Automata
Presentasi OSPEK 2018
Pertemuan 4 Dioda1
Pertemuan 4 Aljabar Boole
Pertemuan 2&3 - Dasar2 Keamanan Encyption
Pertemuan 3a Rangkaian Aritmatik-Half n Full Adder
Pertemuan 6 Penyederhanaan RL-Karnaugh Map
Pertemuan 5a gerbang kombinasi-maxtem-minterm
Pertemuan 5 gerbang logika dasar n bentukan
Aritmatika Biner - Pertemuan 3
Pertemuan 2 - Sistem Bilangan
Pertemuan 2 - Sistem Bilangan - Ahmad

Recently uploaded (20)

PDF
Aminullah Assagaf_B34_Statistik Ekonometrika.pdf
PDF
Buku Teks KSSM Sains Sukan Tingkatan Empat
PDF
Modul Ajar Deep Learning Bahasa Inggris Kelas 1 Kurikulum Merdeka
PPTX
Materi Refleksi Akhir Tahun Sutan Raja.pptx
PDF
RPM BAHASA INDONESIA KELAS 7 TEKS DESKRIPSI.pdf
PDF
Aminullah Assagaf_B34_Statistik Ekonometrika.pdf
PDF
Materi Sosialisasi OMI Jawa Timur 2025.pdf
PPTX
PDF_Penyelarasan_Visi,_Misi,_dan_Tujuan_
PDF
Aminullah Assagaf_Ch3&4_Statistik Ekonometrika_PLS SPSS.pdf
PPTX
Paparan Pembelajaran Mendalam V2 (fix).pptx
PDF
2. ATP Fase F - PA. Islam (1)-halaman-1-digabungkan.pdf
PPTX
Merancang dan Mengelola PESAN dalam Komunikasi Pemasaran di Era Digital 4.0_W...
PPTX
Kokurikuler_Berbasis_Proyek_Lintas_Disiplin_ilmu.pptx
PDF
BukuKeterampilanMengajar-MNCPublishing2019.pdf
PDF
MRT Tangguh, Indonesia Maju: Mewujudkan Transportasi Publik yang Aman, Nyaman...
PPTX
Keusahawanan dan Perniagaan Islam - Dr Mohd Adib Abd Muin 20 Ogos 2025.pptx
PDF
Aminullah Assagaf_B34_Statistik Ekonometrika_PLS SPSS.pdf
PPTX
Aminullah Assagaf_B34_Statistik Ekonometrika.pptx
PPTX
893548301-Panduan-Kokurikuler-Tahun_2025.pptx
PDF
Aminullah Assagaf_B34_Statistik Ekonometrika Terapan_22 Agus 2025.pdf
Aminullah Assagaf_B34_Statistik Ekonometrika.pdf
Buku Teks KSSM Sains Sukan Tingkatan Empat
Modul Ajar Deep Learning Bahasa Inggris Kelas 1 Kurikulum Merdeka
Materi Refleksi Akhir Tahun Sutan Raja.pptx
RPM BAHASA INDONESIA KELAS 7 TEKS DESKRIPSI.pdf
Aminullah Assagaf_B34_Statistik Ekonometrika.pdf
Materi Sosialisasi OMI Jawa Timur 2025.pdf
PDF_Penyelarasan_Visi,_Misi,_dan_Tujuan_
Aminullah Assagaf_Ch3&4_Statistik Ekonometrika_PLS SPSS.pdf
Paparan Pembelajaran Mendalam V2 (fix).pptx
2. ATP Fase F - PA. Islam (1)-halaman-1-digabungkan.pdf
Merancang dan Mengelola PESAN dalam Komunikasi Pemasaran di Era Digital 4.0_W...
Kokurikuler_Berbasis_Proyek_Lintas_Disiplin_ilmu.pptx
BukuKeterampilanMengajar-MNCPublishing2019.pdf
MRT Tangguh, Indonesia Maju: Mewujudkan Transportasi Publik yang Aman, Nyaman...
Keusahawanan dan Perniagaan Islam - Dr Mohd Adib Abd Muin 20 Ogos 2025.pptx
Aminullah Assagaf_B34_Statistik Ekonometrika_PLS SPSS.pdf
Aminullah Assagaf_B34_Statistik Ekonometrika.pptx
893548301-Panduan-Kokurikuler-Tahun_2025.pptx
Aminullah Assagaf_B34_Statistik Ekonometrika Terapan_22 Agus 2025.pdf

Finite State Automata - Materi 3 - TBO

  • 2. Jenis FSA • Deterministik (DFSA/DFA) pada setiap input, hanya ada satu keadaan (state) tujuan dari keadaan saat ini. • Nondeterministik (NFSA/NFA) pada setiap input terdapat lebih dari satu keadaan tujuan dari keadaan saat ini.
  • 3. D-FSA/DFA 1. Himpunan keadaan (Q). 2. Himpunan simbol input () 3. Fungsi transisi (), memuat satu keadaan asal dan satu simbol input dan satu keadaan tujuan. 4. Keadaan awal (q0)merupakan salah satu dari Q. 5. Himpunan keadaan final atau yang diterima, dinotasikan dengan F (FQ)
  • 4. 5-TUPLE D-FSA DFSA A, terdiri atas 5 tuple, yaitu: A = (Q, , , q0, F)
  • 5. Notasi Lain DFSA 1. Diagram Transisi / State Diagram • Tiap keadaan merupakan simpul • Tiap keadaan q  Q dan tiap simbol a  , dituliskan sebagai (q,a) = p. Artinya, diagram transisi memiliki panah dari q ke p, yang berlabel a. • Keadaan awal (q0) ditandai dengan adanya panah tanpa sumber. • Simpul yang menjadi keadaan final ditandai dengan lingkaran bergaris tepi ganda
  • 6. Notasi Lain DFSA 2. Tabel Transisi • Representasi daftar dari suatu fungsi • Baris menunjukkan keadaan dan kolom menunjukkan input. • Isi dari baris menunjukkan keadaan q dan isi dari kolom input a menunjukkan keadaan (q,a)
  • 7. Contoh: DFSA yang dapat menerima string berakhiran 01 A = ({q0, q1, q2}, {0,1}, , q0, {q2}) dengan fungsi transisi  diberikan dalam bentuk tabel:  0 1  q0 q2 q0 q1 q1 q2 * q2 q2 q1, q2 q0 q1 1 q2 0,1 0 1 0 0 1 State Diagram
  • 8. Contoh DFSA : M = (Q, , , s, F), dimana : Q = {q0, q1},  = {a,b}, S = q0, F = {q0} Tabel Transisi q  (q, ) q0 a q0 q0 b q1 q1 a q1 q1 b q0 Tabel Transisi  a b q0 q0 q1 q1 q1 q0 atau q0 q1 a b a b Diagram State Jika M diberi input aabba, dengan state awal (q0, aabba), maka : (q0,aabba) ├M (q0,abba) ├M (q0,bba) ├M (q1,ba) ├M (q0,a) ├M (q0,e) Karena (q0,aabba) ├*M (q0,e), jadi aabba diterima oleh M
  • 9. Contoh: DFSA yang dapat menerima semua string berakhiran 01 q0 q1 0,1 q2 0 1 Contoh : diberikan input pada mesin DFSA 010111, lakukan tracer : (q0,010111) ├M (q0,10111) ├M (q0,0111) ├M (q0,111) ├M (q0,11) ├M (q0,1) ├M (q0,e) Karena berhenti bukan di q2, maka 010111 tidak diterima oleh mesin DFSA Contoh : diberikan input pada mesin DFSA 11101, lakukan tracer : (q0,11101) ├M (q0,1101) ├M (q0,101) ├M (q0,01) ├M (q1,1) ├M (q2,e) Karena berhenti di q2, maka 11101 diterima oleh mesin DFSA
  • 10. Tabel Transisi  0 1 q0 q2 q1 q1 q3 q0 q2 q0 q3 q3 q1 q2 DFA nya Q = {q0 , q1 , q2 , q3 }  = {0,1} S = q0 F = { q0} Contoh : diberikan string 011 dan 1010, buktikan bahwa string tersebut diterima atau ditolak ! (q0,011) = (q2,11) = (q3,1) = q2 Ditolak (q0,1010) = (q1,010) = (q3,10) =(q2,0) = (q0,e) DiterimaState Diagram
  • 11. Perluasan Fungsi Transisi untuk String • DFSA mendefinisikan bahasa sebagai himpunan semua string yang hasilnya dalam bentuk urutan transisi keadaan dari keadaan awal sampai keadaan final (yang diterima)
  • 12. Perluasan Fungsi Transisi untuk String (lanj.) • Fungsi Transisi Diperluas • Mendeskripsikan yang terjadi ketika suatu keadaan dimulai dan sembarang urutan input diikuti. • Jika  adalah fungsi transisi, maka fungsi transisi diperluas dinotasikan dengan 𝛿 • Fungsi transisi diperluas merupakan fungsi saat keadaan q untuk masukan berupa string w, dan menghasilkan keadaan p (keadaan yang dicapai otomaton ketika memulai di keadaan q dan memproses urutan input w)
  • 13. Definisi Formal dari Fungsi Transisi Diperluas •
  • 14. Definisi Formal dari Fungsi Transisi Diperluas Induksi: Misal w adalah string yang berbentuk xa; yakni a merupakan simbol terakhir dari w, dan x merupakan string selain simbol terakhir. Maka: 𝛿(q,w) = ( 𝛿(q,x), a) • Untuk memproses 𝛿(q,w), pertama proses dahulu 𝛿(q,x), hasilnya adalah keadaan yang otomaton tempati setelah memproses semua simbol selain simbol terakhir dari w. • Misal, keadaan ini adalah p, yakni 𝛿(q,x) = p • Maka 𝛿(q,w) adalah yang kita peroleh dengan melakukan transisi dari keadaan p dengan input a (simbol terakhir dari w)
  • 15. Contoh Desain suatu DFSA yang dapat menerima bahasa: L = {w | w memiliki jumlah 0 ganjil dan jumlah 1 ganjil}
  • 16. Bahasa dari DFSA Bahasa dari DFSA A = (Q, , , q0, F), dinotasikan dengan L(A), didefinisikan sebagai L(A) = {w | 𝛿(q0,w) berakhir di F} Bahasa dari A merupakan himpunan semua string w yang memiliki keadaan awal q0 dan berakhir di keadaan final (yang diterima) Jika L adalah L(A) dari suatu DFSA, maka L adalah bahasa reguler
  • 17. Nondeterministik Finite State Automata (NFSA) • Suatu NFSA memiliki kelebihan yakni berada di beberapa keadaan pada saat yang sama. • Kelebihan ini sering diekspresikan sebagai kemampuan untuk “menebak” sesuatu mengenai inputnya. • Tiap NFSA menerima suatu bahasa yang juga dapat diterima oleh suatu DFSA. • NFSA lebih sederhana daripada DFSA.
  • 18. NFSA (lanj.) • NFSA dapat selalu diubah ke DFSA, namun menghasilkan jumlah keadaan baru yang jumlahnya eksponensial (kasus yang jarang terjadi) • Perbedaan antara DFSA dan NFSA adalah jenis fungsi transisinya () • Pada NFSA,  merupakan fungsi yang memuat satu keadaan, dan simbol input (seperti fungsi transisi DFSA), namun menghasilkan himpunan nol atau lebih dari satu keadaan (daripada menghasilkan tepat satu keadaan, seperti yang harus dilakukan DFSA)
  • 19. Contoh: NFSA yang dapat menerima semua string berakhiran 01 q0 q1 0,1 q2 0 1
  • 20. Definisi Formal NFSA 5-tuple NFSA dituliskan sebagai A = (Q, , , q0, F) • Q adalah himpunan terbatas atas keadaan •  adalah himpunan terbatas atas simbol input • q0  Q adalah keadaan awal • F (F  Q) adalah himpunan keadaan final (yang diterima) •  (fungsi transisi) adalah fungsi yang mengandung satu keadaan dari Q dan simbol input dalam  untuk menuju ke beberapa keadaan dalam Q.
  • 21. Definisi Formal NFSA (lanj.) Satu-satunya perbedaan antara NFSA dan DFSA adalah banyaknya hasil yang diperoleh dari 
  • 22. Contoh: NFSA yang dapat menerima semua string berakhiran 01 A = ({q0, q1, q2}, {0,1}, , q0, {q2}) Dengan fungsi transisi () diberikan dalam bentuk tabel: 0 1  q0 {q0,, q1} {q0} q1  {q2} * q2   q0 q1 0,1 q2 0 1 Lebih dari 1 State Tidak ada state tujuan
  • 23. Fungsi Transisi Diperluas Basis: 𝛿(q,) = {q} Tanpamendapatsimbol input, kitatetapberada di keadaansemula. Induksi: • Misalkan w adalah string dalambentukxa; dengan a merupakansimbolterakhirdari w, dan x suatu string yang adadalam w selainsimbolterakhir. • Misalkan 𝛿(q,x) = {p1, p2, …, pk} • Bila 𝑖=1 𝑘 𝛿 𝑝𝑖, 𝑎 = {𝑟1, 𝑟2, … , 𝑟𝑚} • Maka: 𝛿(q,w) = {r1, r2, …, rm} • Kita kerjakan 𝛿 (q,w) denganmengerjakan 𝛿 (q,x) kemudianikutitransisidarikeadaan yang dihasilkankekeadaan yang berlabel a.
  • 24. Contoh: NFSA yang dapat menerima semua string berakhiran 01 Untuk w = 00101 1. 𝛿(q0,) = {q0} 2. 𝛿(q0,0) = {q0,0} = {q0, q1} 3. 𝛿(q0,00) = {q0,0}  {q1,0} = {q0, q1}   = {q0, q1} 4. 𝛿(q0,001) = {q0,1}  {q1,1} = {q0}  {q2} = {q0, q2} 5. 𝛿(q0,0010) = {q0,0}  {q2,0} = {q0, q1}   = {q0, q1} 6. 𝛿(q0,00101) = {q0,1}  {q1,1} = {q0}  {q2} = {q0, q2} q0 q1 0,1 q2 0 1
  • 25. Bahasa NFSA Bahasasuatu NFSA A = (Q, , , q0, F) dinotasikandengan L(A) yang didefinisikansebagai L(A) = {w | 𝛿(q0,w)  F   } Bahasadari A merupakanhimpunan string w * sehingga 𝛿(q0,w) mengandungsetidaknyasatukeadaan yang diterima. Meskipun w dapatmenujusuatukeadaan yang tidakditerimaatautidakmenujukesuatukeadaanmanapu n, tidakmenghalangi w untukditerimaoleh NFSA.
  • 26. Ekivalensi DFSA dan NFSA • Setiap bahasa yang dapat dideskripsikan oleh NFSA, dapat dideskripsikan pula oleh suatu DFSA. • Pada prakteknya, DFSA memiliki jumlah keadaan yang sama dengan NFSA, meskipun transisinya lebih banyak. • Pada kasus tertentu, DFSA dapat memiliki 2n keadaan (untuk NFSA dengan n keadaan)
  • 27. Bukti: DFSA dapat melakukan semua yang dilakukan NFSA Pembuktian melibatkan konstruksi yang disebut konstruksi himpunan bagian karena melibatkan pembuatan semua himpunan bagian dari himpunan dari keadaan – keadaan NFSA. Dari NFSA ke DFSA • Kita memiliki NFSA N = (QN, , N, q0, FN) • Tujuannya untuk membuat DFSA D = (QD, , D, {q0}, FD) sehingga L(D) = L(N)
  • 28. Konstruksi Himpunan Bagian • Input alfabetnyasama • Himpunankeadaanawal di D merupakanhimpunan yang memuatkeadaanawaldari N. • QDmerupakanhimpunandarihimpunanbagiandari QN, yakni QDmerupakanhimpunanpangkatdari QN. Jika QNmemiliki n keadaan, QDmemiliki 2nkeadaan. Tidaksemuakeadaandapatdiaksesdarikeadaanawal. • FDmerupakanhimpunandarihimpunanbagian S dari QNsehingga S  FN  . Sehingga FDmerupakansemuahimpunandarikeadaan N yang memuatsetidaknyasatukeadaan yang diterimadarikeadaan N. • Untuktiaphimpunan S  QN danuntuktiapsimbol input a  D(S,a) = 𝑝∈𝑆 𝛿 𝑁(𝑝, 𝑎) • UntukmenghitungD(S,a), kitalihatsemuakeadaan p dalam S, perhatikanperubahankeadaan N dari p ketikadiberikan input a, danambilgabungandarikeseluruhankeadaantersebut.
  • 29. Contoh QN = {q0, q1, q2}, maka QD = {, {q1}, {q2}, {q0, q1}, {q0,q2}, {q1,q2},{q0,q1,q2}} sehingga QD memiliki 8 keadaan (tiap keadaan berkaitan dengan himpunan bagian dari QN) q0 q1 0,1 q2 0 1
  • 30. Contoh (lanj.) 0 1     {q0} {q0, q1} {q0} {q1}  {q2} * {q2}   {q0, q1} {q0, q1} {q0, q2} * {q0, q2} {q0, q1} {q0} * {q1, q2}  {q2} * {q0,q1,q2} {q0, q1} {q0, q2} q0 q1 0,1 q2 0 1
  • 31. Contoh: dengan nama baru • Catatan: keadaan D berkaitan dengan himpunan bagian dari keadaan N, namun kita dapat notasikan keadaan D menggunakan A – F. 0 1 A A A  B E B C A D * D A A E E F * F E B * G A D * H E F
  • 33. Langkah ke – 1. Membuat state DFSA Himpunan state yang baru : Q’ = {, {1}, {2}, {3}, {1,2}, {1,3}, {2,3}, {1,2,3}}
  • 34. Langkah ke – 2. Membuat Initial State DFSA Initial state yang baru : q0’= {1,3}
  • 35. Langkah ke – 3. Membuat Final State DFSA Final state yang baru : F’= {{1}, {1,2}, {1,3}, {1,2,3}}
  • 36. Langkah ke – 4. Membuat Diagram Transisi DFSA  = a b    1  2 2 2,3 2,3 3 1,3  1,2 2,3 2,3 1,3 1,3 2 2,3 1,2,3 2,3 1,2,3 1,2,3 2,3 2 1 3  ab a, b a, b
  • 37. a b    1  2 2 2,3 2,3 3 1,3  1,2 2,3 2,3 1,3 1,3 2 2,3 1,2,3 2,3 1,2,3 1,2,3 2,3 Langkah ke – 5. Penghapusan State tak-perlu
  • 38. Langkah ke – 5. Penghapusan state tak-perlu
  • 39. Langkah ke – 5. Penghapusan state tak-perlu
  • 40. Langkah ke – 5. Penghapusan state tak-perlu