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.#')