Anda di halaman 1dari 17

TUGAS II TEORI BAHASA OTOMATA

DFA & NFA


NAMA : MOC.ICHSAN
NIM : 131052085
INSTITUT SAINS & TEKNOLOGI AKPRIND
YOGYAKARTA
1.1 Pe!"#$%$"
Pada materi Teori Bahasa Otomata (TBO) ini dibahas tentang Pengertian TBO,
Model Komputasi TBO, Peranan TBO dalam Ilmu Komputer dan Contoh Penerapan
TBO. Komputer mengikuti sejumlah prosedur sistematis, atau algoritme, ang dapat
diaplikasikan untuk serangkaian input (string) ang menatakan integer dan
menghasilkan ja!aban setelah sejumlah berhingga langkah.
Teori otomata adalah studi tentang peralatan atau mesin komputasi abstrak,
yang dapat dide"inisikan se#ara matematis. Tahun $%&'(an )lan Turing telah
mempelajari mesin abstrak ang memiliki kemampuan seperti komputer sekarang
(dalam hal apa ang dihitung). Mesin abstrak merupakan model teoritis dari
perangkat keras atau perangkat lunak ang digunakan dalam teori otomata.
Tipe paling sederhana dari mesin abstrak adalah "inite automaton atau "inite state
ma#hine. Prinsip ang mendasari mesin ini adalah sistem pada setiap saat dalam
salah satu dari sejumlah state berhingga dan bergerak diantara state(state tersebut
dalam merespon sinal input indi*idual.
Teori otomata mempelajari model mesin komputer menggunakan model
matematika. +amun matematika ang digunakan benar(benar berbeda dibanding
matematika klasik dan kalkulus. Model ang digunakan adalah model mesin state
atau model transisi state.
,alam hierarki kelas(kelas bahasa menurut Chomsk, kelas bahasa ang paling
sederhana adalah kelas bahasa reguler (regular languages). Bahasa reguler dapat
dengan tepat dideskripsikan dengan menggunakan "inite automata (-)) dengan kata
lain bahasa ang dapat diterima oleh suatu "inite automata adalah bahasa reguler.
Terdapat dua jenis "inite automata, aitu deterministik "inite automata (,-)) dan
non(deterministik "inite automata (+-)). Perbedaan di antara kedua jenis "inite
automata tersebut terletak pada kontrol terhadap "inite automata tersebut.
,eterministik "inite automata (,-)) bersi"at deterministik, ang berarti bah!a
automata tersebut tidak dapat berada di lebih dari satu state pada saat ang bersamaan,
sedangkan non(deterministik "inite automata (+-)) bersi"at non(deterministik, ang
berarti bah!a automata tersebut dapat berada di beberapa state pada saat ang
bersamaan atau dengan kata lain +-) dapat menebak di state mana dia berikutna
akan berada.
1.2 F&&'e A$'()"'" *FA+
-inite automata adalah mesin abstrak berupa sistem model matematika dengan
masukan dan keluaran diskrit ang dapat mengenali bahasa paling sederhana (bahasa
reguler) dan dapat diimplementasikan se#ara nata dimana sistem dapat berada
disalah satu dari sejumlah berhingga kon"igurasi internal disebut state.
.tate sistem merupakan ringkasan in"ormasi ang berkaitan dengan masukan(
masukan sebelumna ang diperlukan untuk menentukan perilaku sistem pada
masukan( masukan berikutna.
-inite )utomata menggunakan prosedur ang saat diberikan masukan /string
berhingga/ akan berhenti. -inite )utomata menatakan /a/ dengan sejumlah
berhingga komputasi jika string tersebut merupakan elemen bahasa sehingga lebih
ber"okus pada pengenalan dimana bila diberikan suatu program (string) akan
menatakan apakah string tersebut termasuk di bahasa atau tidak.
Model -inite )utomata memiliki #iri(#iri0
$.memori 1in"inite1(na adalah null (tidak ada memori sementara).
2.mead hana bergerak $ arah.
&.hana berisi memori masukan berupa tape berisi string masukan dan sejumlah
kendali berhingga.
-inite )utomata memiliki0
$.himpunan state kendali berhingga
2.simbol(simbol masukan ang dibolehkan3diijinkan
&.state mula (initial state)
4.simpunan state akhir (set o" "inal states)
1.3 F$,-& '."-&-& -'"'e *-'"'e '."-&'&( /$0'&(+
)dana "ungsi ang memberikan state saat itu (#urrent state) dan simbol
masukan saat itu (#urrent input smbol). .elain itu juga "ungsi
memberikan3menatakan semua state berikutna ang dimungkinkan.
.emua kemungkinan transisi dipandang dijalankan se#ara paralel. Bila terdapat
transisi ang menuju3sampai state akhir, berarti string masukan diterima otomata.
5enis -.)0
De'e.)&&-'&0 F&&'e A$'()"'" *DFA+ :
$. )tomata berhingga ang pasti (tetap3tertentu).
2. .etiap ran#angan state input selalu tepat ada satu state berikutna.
&. ,ari suatu state ada tepat satu state berikutna untuk setiap smbol masukan
ang diterima.
4. 6ntuk sebuah state dan input ang berlaku bisa ditentukan tepat satu state
berikutna.
7. .uatu string 8 dinatakan diterima bila 9(.,8) berada pad state akhir.
,engan kata lain se#ara "ormal bila M adalah sebuah bahasa -.), M : (;, 9, d,
., -) menerima bahasa ang disebut <(M) ang merupakan himpunan =8 > d (.,8) di
dalam -?.
N(De'e.)&&-'&0 F&&'e A$'()"'" *NFA+ :
$. )tomata berhingga ang tidak pasti.
2. 6ntuk setiap pasangan state input, bisa memiliki ' (nol) atau lebih pilihan
untuk state berikutna.
&. 6ntuk setiap state tidak selalu tepat ada satu state berikutna untuk setiap
simbol input ang ada.
4. ,ari suatu state bisa terdapat ',$ atau lebih busur keluar (transisi) berlabel
simbol input ang sama.
7. 6ntuk +-) harus di#oba semua kemungkinan ang ada sampai terdapat satu
ang men#apai state akhir.
@. .uatu string 8 dinatakan diterima oleh bahasa +-), M: (;, 9, d, ., -) bila
=8 > d (.,8) memuat sebuah state di dalam -?.
1.1 De'e.)&&-'&0 /&&'e "$'()"'" *DFA+
,-) adalah suatu mesin ang terdiri dari "inite number o" state. .alah satu state
akan ber"ungsi sebagai intitial state. ,-) juga mensaratkan minimal terdapat satu
a##epted state. Mesin akan menerima input stream berupa smbol 3 alphabet ang
datang se#ara seAuential. Mekanisme trasisi pada mesin akan memperhatikan #urrent
input, dan #urrent state.
,eterministi# "inite automata (,-)) adalah 7 tupel dimana 0
$. ; 0 himpunan state atau kedudukan
2. B 0 himpunan simbol input
&. C 0 "ungsi transisi, dimana C 2 ; 8 B (D ;
4. . 0 .tate a!al (initial state)
7. - 0 himpunan state akhir (-inal .tate)
,-) hana mempunai paling banak satu transisi pada masing(masing state
pada sembarang masukan.
Contoh ,-) 0
; : =A', A$, A2?
EFdiberikan dalam tabel berikut 0
GHI: =a, b? . : A'
- : =A', A$?
Kalimat ang diterima oleh ,-) 0 a, b, aa, ab, ba, aba, bab, abab, baba.
Kalimat ang ditolak oleh ,-) 0 bb, abb, abba.
,-) ini menerima semua kalimat ang tersusun dari simbol a dan b ang tidak
mengandung substring bb.
,-) 0
Pada suatu +-), .uatu state dapat memiliki tujuan ke beberapa state ang berbeda
dengan alphabet penghubung ang sama. )kan tetapi, hal ini tidak diperbolehkan
pada suatu ,-). 6ntuk menederhanakan suatu +-) menjadi suatu ,-)
dipergunakan Tabel Transisi ang memiliki kolom berupa *ariasi alphabet ang
diterima dan baris berupa nama( nama state asal. .edangkan titik temu antara suatu
kolom dan baris diisi dengan nama( nama state tujuan dari state asal ang tertera
pada bagian kolom.
Berikut ini adalah Contoh suatu ,-) ang akan mengenali suatu bilangan Ca#ah 0
,-) bilangan Ca#ah : J , ., .', -D
: =', $, 2, &, 4, 7, @, K, L, %?
. : =.', .$, .2? .' : .'
- : =.$, .2?
Bagan ,-) untuk Bilangan Ca#ah0
Table Transisi ,-) untuk Bilangan Ca#ah0
Bagian pada Mambar di atas sudah merupakan bagan ,-) karena tidak ada state asal
ang memiliki tujuan ke lebih dari satu state tujuan dengan alphabet penghubungan
ang sama.
1.5 N(De'e.)&&-'&0 /&&'e "$'()"'" *NFA+
+ondeterministi# -inite )utomata (+-)) adalah salah satu bagian dari otomata
berhingga atau -inite .tate )utomata (-.)). Pada +ondeterministi# -inite )utomata
(NFA) dimungkinkan satu simbol menimbulkan transisi ke lebih dari satu kondisi
dan memberikan beberapa kemungkinan gerakan sehingga keluaranna tidak dapat
dipastikan. .elain itu dimungkinkan juga terjadina transisi spontan atau transisi .
+ondeterministi# -inite )utomata (+-)) dide"enisikan sebagai M ang merupakan
sebuah koleksi dari 7 obek (Q , , s , F , ) dimana 0
$. Q adalah sebuah himpunan hingga dari kedudukan(kedudukan.
2. adalah sebuah abjad masukan.
&. s adalah salah satu kedudukan di dalam Q ang ditetapkan sebagai kedudukan
permulaan.
4. F adalah sebuah koleksi dari kedudukan(kedudukan ang diterima atau "inal
(koleksi 3 himpunan dari kondisi akhir).
7. adalah sebuah relasi pada (Q 8 ) 8 Q dan dinamakan relasi transisi.
Pada +-) terdapat kemungkinan lebih dari $ transisi ang keluar dari sebuah state
dengan sumber input ang sama.
Mambar berikut ini adalah Contoh +-) ang mengin"ormasikan +-) ang
menerima aaN > bbN0
Table Transisi NFA Seperti :
Bagian pada gambar itu sudah merupakan bagan +-), karena ada state asal ang
memiliki tujuan ke lebih dari satu state tujuan dengan alphabet penghubungan ang
sama ( ).
Pada gambar diatas state ' sebagai start dan state 2 serta state 4 adalah "inal state.
,isini digambarkan +-) menerima suatu input berupa aaN > bbN. .uatu string
GOPaaaGO akan diterima dengan melalui state ', &, 4, 4, 4 dan 4. +-) mempunai
kelebihan dapat melakukan ba#ktra#king, namun aksesna lebih lambat
dibandingkan dengan ,-) (,eterministi# -inite )utomaton).
Contoh +-) 0
Berikut ini sebuah #ontoh +-) (;, GHI, EF, ., -).
dimana 0 ; : =A' , A$ , 2$ ,A& , A4 ?
GHI: =a, b,#? . : A'
- : =A4?
Kalimat ang diterima +-) di atas 0 aa, bb, ##, aaa, abb, b##, #bb
Kalimat ang tidak diterima +-) di atas 0 a, b, #, ab, ba, a#, b#
.ebuah kalimat di terima +-) jika 0
.alah satu tra#ing(na berakhir di state )KQIR, atau
Qimpunan state setelah memba#a string tersebut mengandung state )KQIR.
Berikut perbedaan +-) dan ,-) 0
Perbedaan +-) S ,-)
,-) 6ntuk sebuah state ang berlaku bias di tentukan tepat satu state
berikutna
T : (s,!) : ; O -
,iba#a Utransisi dari state a!al dengan inputan string ! dengan hasil
state ; anggota -V
. : state a!al
W : string
; : state initial
- : "inal state
+-) ,ari setiap state dengan inputan ang ada, tidak selalu tepat pada
state berukutna
,ari suatu state bias terdapat ',$ atau lebih busur (transisi) berlabel
input ang sama
T : (s,!) : =s? dimana T (s,!) memuat suatu state di dalam -
1.3 C"." Ke.4" F&&'e A$'()"'"
-inite )utomata bekerja dengan #ara mesin memba#a memori masukan berupa
tape aitu $ karakter tiap saat (dari kiri ke kanan) menggunakan head ba#a ang
dikendalikan oleh kotak kendali state berhingga dimana pada mesin terdapat
sejumlah state berhingga.
-inite )utomata selalu dalam kondisi ang disebut state a!al (initial state) pada
saat -inite )utomata mulai memba#a tape. Perubahan state terjadi pada mesin ketika
sebuah karakter berikutna diba#a.
Ketika head telah sampai pada akhir tape dan kondisi ang ditemui adalah state
akhir, maka string ang terdapat pada tape dikatakan diterima -inite )utomata
(.tring(string merupakan milik bahasa bila diterima -inite )utomata bahasa
tersebut).
1.5 I)6%e)e'"-& F&&'e A$'()"'"
.istem dengan state berhingga diterapkan pada0
(.istem ele*ator
(Mesin pengeluar minuman kaleng (*ending ma#hine)
(Pengatur lampu lalu lintas (tra""i# light regulator)
(.irkuit penaklaran (s!it#hing) di komputer dan telekomunikasi
(Protokol komunikasi (#ommuni#ation proto#ol)
()nalisis <eksikal (<e8i#al analXer)
(+euron nets
(sistem Komputer
1.8 F&&'e S'"'e D&",.") *FSD+
Perilaku -inite )utomata dimodelkan dengan -inite .tate ,iagram (-.,) dapat juga
disebut .tate Transition ,iagram.
-inite .tate ,iagram terdiri dari0
$. <ingkaran menatakan state
<ingkaran diberi label sesuai dengan nama state tersebut.
)dapun pembagian lingkaran adalah0
a. <ingkaran bergaris tunggal berarti state sementara
b. <ingkaran bergaris ganda berarti state akhir
2. )nak Panah menatakan transisi ang terjadi
<abel di anak panah menatakan simbol ang membuat transisi dari $ state ke state
lain,$ anak panah diberi label start untuk menatakan a!al mula transisi dilakukan.
Contoh 0
Mambar diba!ah menggambarkan perilaku -) untuk penerimaan bilangan nata
(riil) ang paling tidak mempunai $ digit setelah titik desimal adalah sebagai
berikut0
.impul(simpul (berbentuk lingkaran) pada -., diba!ah mengambarkan state(state
dari -), aitu 0
a. .impul .
b. .impul )
#. .impul B
Busur dari $ simpul ke simpul lainn menandakan transisi state. Karakter samping
atau diatas busur menandakan karakter ang menebabkan terjadina transisi state.
.impul dengan garis ganda menunjukkan state akhir. ,igit adalah nilai
',$,2,&,4,7,@,K,L,%
Mambar 0 -., Bilangan +ata ,engan Minimal .atu )ngka di Belakang Titik
,esimal
Contoh string 0 %.LK@7
a. Busur berlabel .tart Menunjukkan transisi ke state .
b. Qead memba#a nilai /%/
Terdapat kondisi ang menunjukkan kesesuaian dengan aturan kendali pada state .
aitu adana busur ang menunjukkan digit kembali ke state . (berarti memiliki
kesesuaian bahasa)
( pemba#aan ke karakter berikutna adalah /./
Terdapat kesesuaian dengan aturan kendali pada state ., aitu adana busur ang
menunjukkan nilai /./ ke state ) (kondisi berada di state ))
( pemba#aan karakter berikutna : /L/
Terdapat kesesuaian dengan aturan kendali ang sekarang sudah berada di state ),
aitu busur ke state B ang menunjukkan digit (kondisi berada di state B)
( pemba#aan karakter berikutna : /K/
Terdapat kesesuaian dengan aturan kendali pada state B, aitu adana busur ang
menunjukkan digit kembali ke state B (kondisi tetap berada di posisi B)
( pemba#aan karakter berikutna : /@/
Terdapat kesesuaian dengan aturan kendali pada state B, aitu adana busur ang
menunjukkan digit kembali ke state B (kondisi tetap berada di posisi B)
( pemba#aan karakter berikutna : /7/
Terdapat kesesuaian dengan aturan kendali pada state B, aitu adana busur ang
menunjukkan digit kembali ke state B (kondisi tetap berada di posisi B)
Pada akhir pemba#aan dilakukan penesuaian apakah karakter terakhir berada pada
state akhir. Bila kesesuai kondisi /Y)/ maka string termasuk di dalam bahasa, dalam
hal ini karakter /7/ berada pada state B aitu state dengan lingkaran bergaris ganda
ang menandakan state akhir, maka sesuai.
.tring %.LK@7 termasuk di dalam bahasa -inite )utomata pada -., di atas.
Contoh string 0 a
(Busur berlabel .tart Menunjukkan transisi ke state .
(Qead memba#a nilai /a/
Terdapat kondisi ang menunjukkan ketidaksesuaian dengan aturan kendali pada
state . aitu tidak adana busur ang menunjukkan persamaan simbol dengan
simbol ang diba#a (/a/)
( Ketidaksesuaian simbol
)turan kendali pada kondisi /TI,)K/ menandakan string a tidak termasuk di dalam
bahasa -., di atas.
1.7 K%"-&/&8"-& F&&'e A$'()"'"
-inite automata dapat berupa0
( ,eterministi# -inite )utomata (,-))
Terdiri dari $ transisi dari suatu state pada $ simbol masukan.
( +on,etermini#ti# -inite )utomata (+-))
<ebih dari $ transisi dari suatu state dimungkinkan pada simbol masukan ang sama
Kedua "inite automata tersebut mampu mengenali himpunan reguler se#ara presisi.
,engan demikian kedua "inite automata itu dapat mengenali string(string ang
ditunjukkan dengan ekspresi reguler se#ara tepat.
,-) dapat menuntun re#ogniXer(pengenal) lebih #epat dibanding +-).
+amun demikian, ,-) berukuran lebih besar dibanding +-) ang eki*alen
denganna.
<ebih mudah membangun +-) dibanding ,-) untuk suatu bahasa, namun lebih
mudah mengimplementasikan ,-) diabnding +-).
KESIMPULAN
Klasi"ikasi -.).
,ibedakan menjadi dua jenis -.) 0
I.(,-)) ,eterministi# -inite )utomata.
Terdiri dari $ transisi dari suatu state pada $ simbol masukan.
II.(+-)) +on,eterministik -inite )utomata.
Terdiri lebih dari $ transisi dari suatu state dimungkinkan pada simbol
masukan ang sama.
Kedua -inite )utomata tersebut mampu mengenali himpunan reguler se#ara
presis. ,engan demikian kedua -inite )utomata itu dapat mengenali string(string
ang ditunjukkan dengan ekspresi reguler se#ara tepat.
,-) dapat menuntun re#ogniXer (pengenal) lebih #epat dibanding +-).
+amun demikian, ,-) berukuran lebih besar dibanding +-) ang eki*alen
denganna. <ebih mudah membangun +-) dibanding ,-) untuk suatu bahasa,
namun lebih mudah mengimplementasikan ,-) dibanding +-).
DAFTAR PUSTAKA
#''6:998:.(;25.<%(,-6('.0()920129059('()"'":'e(.&:<"#"-".#')%
#''6:99===.-0.&<!.0()9!(09115017079PRESENTASIDFA
#''6:99)$.-&!-.<%(,-6('.0()920109029(!e'e.)&&-'&0:/&&'e:"$'()"'":/".#')%
#''6:99'e8().<%(,.&''e%8()."0.&!9<%(,92010902915901:!e'e.)&&-'&8:/&&'e:"$'()"'"9
#''6:99===.-#".e:6!/.0()92/!277/5/3/<115182e038!3"571e3109G.211.11.0111.#')

Anda mungkin juga menyukai