MESIN TURING DAN OTOMATA (AUTOMATA)
December 25, 2018 | Author: venchenloe | Category: N/A
Short Description
MESIN TURING DAN OTOMATA (AUTOMATA)...
Description
1. PENGERTIAN MESIN TURING DAN CONTOH-CONTOH MESIN TURING Mesin Turing adalah model yang sangat sederhana dari komputer. Secara esensial, mesin Turing adalah sebuah finite automaton yang automaton yang miliki sebuah tape tunggal tape tunggal dengan panjang tak terhingga yang dapat membaca dan menulis data. Mesin Turing menggunakan notasi seperti ID-ID pada PDA untuk menyatakan konigurasi dari komputasinya. Stack pada pada PDA memiliki keterbatasan akses. !lemen yang dapat diakses diakses hanya elemen yang yang ada pada top stack . Pada Mesin Turing, memori akan berupa suatu tape yang tape yang pada dasarnya merupakan array dari selsel penyimpanan. "isualisasi dari sebuah mesin Turing diberikan oleh gambar berikut#
Mesin terdiri dari sebuah finite control , yang dapat berada dalam sebuah himpunan berhingga dari state. state. Terdapat sebuah tape yang tape yang dibagi dibagi ke dalam kotak-kotak atau sel-sel. sel-sel. Setiap sel dapat menampung sebuah dari sejumlah sejumlah berhingga dari simbol. Pada a$alnya, input yang merupakan string dari simbol dengan panjang berhingga dipilih dari input alphabet , ditempatkan pada tape. tape. Sel-sel tape yang tape yang lain, perluasan secara infinite ke infinite ke kiri dan ke kanan, pada a$alnya menampung simbol khusus yang dinamakan blank . Blank bukan bukan sebuah input symbol , dan mungkin terdapat simbol tape yang tape yang lain disamping input symbol dan dan blank . Terdapat sebuah tape head yang yang selalu ditempatkan pada salah satu dari sel-sel tape. tape. Mesin turing dikatakan men-scan men-scan sel sel tersebut. Pada a$alnya, tape head berada berada pada sel paling kiri yang menampung input. Sebuah pergerakan mesin Turing adalah sebuah ungsi dari state dari state dari finite control dan tape symbol yang yang di-scan di-scan.. Dalam satu pergerakan, mesin Turing akan# • Merubah state. state. Next state Next state dapat dapat sama dengan current state current state.. • Menulis sebuah tape symbol dalam sel yang di-scan di-scan.. Tape symbol Tape symbol ini mengganti symbol apapun yang ada dalam sel tersebut. Secara opsional, simbol yang yang dituliskan dapat sama dengan simbol yang sekarang ada dalam tape. tape. • Memindahkan tape head ke ke kiri atau ke kanan. Notasi formal Mesin Turin Mesin Turing dijelaskan oleh %-tuple %-tuple## M & '(, S, ), d, * +, , /omponen-komponennya adalah# • (# 0impunan berhingga dari state dari state dari finite control . • S# himpunan berhingga dari simbol-simbol input. • )# 0impunan dari tape symbol . S merupakan subset dari ). d# ungsi transisi. Argumen d'*, 1 adalah sebuah state * state * dan sebuah tape symbol 1. symbol 1. 2ilai dari d'*, 1, jika nilai tersebut dideinisikan, adalah triple 'p, 3, D, dimana# • p adalah next state next state dalam dalam ( • 3 adalah simbol, dalam ), ditulis dalam sel yang sedang di-scan di- scan,, menggantikan simbol apapun yang ada dalam sel tersebut. • D adalah arah, berupa 4 atau 5, berturut-turut menyatakan left atau atau right , dan menyatakan arah dimana head bergerak. bergerak. *+# start state, state, sebuah anggota dari (, dimana pada saat a$al finite control ditemukan. ditemukan. # simbol blank . Simbol ini ada dalam ) tapi tidak dalam S, yaitu bukan sebuah simbol input. # himpunan dari inal state, state, subset dari (. Des!ri"si Instantaneous #ID$ untu! Mesin Turin
ID digunakan untuk mengetahui apa yang mesin Turing kerjakan. ID direpresentasikan oleh string 1617189 1i-6*1i1i:6 9 1n, dimana# ; * adalah state dari state dari TM ; Tape head men-scan men-scan simbol simbol ke-i dari kiri. ; 1617 91n adalah bagian dari tape di tape di antara nonblank pada pada sel paling kiri dan paling kanan. Pergerakan TM M & '(, S, ), d, *+, , dinyatakan oleh notasi ├ atau atau ├ . ├ 3 D, dimana 1 dan 3 adalah tape symbol, tape symbol, dan D adalah arah, kiri '4 atau kanan '5. ah$a bila d'*, 1 & 'p, 3, D diperoleh label 1>3 D pada arc dari * ke p. Dalam diagram arah D dinyatakan dengan tanda ? untuk @left @left dan B untuk @right @right . . Start state ditandai state ditandai dengan kata @start dan sebuah panah yang masuk ke dalam state tersebut. state tersebut. Final state Final state ditandai ditandai dengan putaran ganda. Contoh: Mesin Turing Turing berikut menghitungan ungsi , yang dinamakan monus atau proper atau proper substraction substraction.. ungsi ini dideinisikan dideinisikan oleh oleh m n & maC'm ; n, +. ah$a, m n & m ; n jika jika m n dan + jika jika m E n. Mesin Turing yang yang melakukan operasi ini adalah M & 'F*+, *6, 9 , *GH, F+, 6H, F+, 6, H, d, *+, Aturan untuk ungsi transisi d#
Diagram transisi dari mesin Turing M#
Daftar Pustaka =ohn !. 0opcrot, 5ajee Mot$ani, =erey D. Jllman. 7++6. ntroduction to !utomata Theory" #anguange" and Computation. Computation. !disi ke-7. Addison-Kesley CONTOH-CONTOH MESIN TURING Stack 'tumpukan yang terdapat pada PDA memiliki keterbatasan kemampuan akses, yaitu hanya mengakses data yang terdapat pada top > puncak dari stack. Jntuk melakukan akses pada bagian yang lebih rendah dari puncak stack, harus memindahkan bagian di atasnya 'pop, yang mana akan menyebabkan bagian tersebut hilang. Pada mesin Turing, memori berupa suatu pita yang pada dasarnya berupa array 'deretan sel-sel penyimpanan. Setiap sel mampu menyimpan sebuah simbol tunggal. Pita tersebut tidak mempunyai sel pertama dan sel terakhir. Pita dapat memuat inormasi dalam jumlah tak terbatas, dan dapat diakses bagian manapun dari pita dengan urutan bagaimanapun. Terdapat sebuah head yang menunjukkan posisi yang diakses pada pita. 0ead dapat bergerak ke kanan atau ke kiri untuk membaca input dari pita dan sekaligus juga bisa melakukan penulisan pada pita>mengubah isi pita. Mesin Turing bisa dianalogikan seperti komputer sederhana, dengan sejumlah state sebagai memori, pita sebagai secondary storage, ungsi transisi sebagai program. Sebuah mesin Turing secara ormal dinyatakan dalam % tupel, yaitu M & '(, L, , N, S, , b dimana # ( & himpunan state L & himpunan simbol input & simbol pada pita 'meliputi pula blank N & ungsi transisi S & state a$al, S ∈ ( & himpunan state akhir, ⊆ ( b & simbol kosong 'blank �� bukan bagian dari L, b ∉L agian dari pita yang belum ditulisi dianggap berisi simbol b 'blank
Oontoh #
Misal terdapat mesin Turing # ( & F*6,*7H L & Fa,bH & Fa,b, b & F*7H S & F*6H ungsi transisinya # Pergerakan mesin Turing # 5 & right'kanan, 4 & let 'kiri N '*6,a & '*6,a,5 �� pada state *6, head menunjuk karakter aQ pada pita, menjadi state *6, head bergerak ke kanan N '*6,b & '*6,a,5 �� pada state *6, head menunjuk karakter bQ pada pita, menjadi state *6, head menulis karakter aQ lalu bergerak ke kanan N '*6, b & '*7, b ,4 �� pada state *6, head menunjuk karakter b Q pada pita menjadi state *7, head bergerak ke kiri Perhatian # pada mesin Turing N '*,C & '*,y,) bila C ER y, maka head akan menulis simbol y 'menimpa C sebelum bergerak sesuai ) 'kiri > kanan =adi berdasarkan ungsi transisi diatas, maka mesin Turing beroperasi seperti berikut # 0ead ditunjukkan dengan 6. Misal Misal pita pita yang yang akan akan dibaca dibaca # abbaa abbaaQQ a b b a a state *6 ungsi transisi N '*6,a & '*6,a,5 menyebabkan head bergerak ke kanan 7. a b b a a state *6 ungsi transisi N '*6,b & '*6,a,5 menyebabkan head menulis aQ lalu bergerak ke kanan 8. a a b a a state *6
ungsi transisi N '*6,b & '*6,a,5 menyebabkan head menulis aQ lalu bergerak ke kanan . a a a a a state *6 ungsi transisi N '*6,a & '*6,a,5 menyebabkan head bergerak ke kanan . a a a a a state *6 ungsi transisi N '*6,a & '*6,a,5 menyebabkan head bergerak ke kanan G. a a a a a b state *6 0ead menunjuk b, karena bagian pita yang belum ditulisi dianggap berisi b ungsi transisi N '*6, b & '*7, b ,4 menyebabkan head bergerak ke kiri %. a a a a a b state *7 Tidak ada transisi lagi dari state *7, mesin Turing akan berhenti 'halt state /arena state *7 termasuk state akhir berarti input tersebut diterima Oontoh # Misal konigurasi mesin Turing # ( & F*+,*6,*7,*8,*H L & F+,6H & F+,6,1,3, b & F*H S & F*+H ungsi transisinya dalam bentuk tabel sebagai berikut # N + 6
1 3 b *+ '*6,1,5 '*8,3,5 *6 '*6,+,5 '*7,3,4 '*6,3,5 *7 '*7,+,4 '*+,1,5 '*7,3,4 *8 '*8,3,5 '*, b ,4 * 6. Misal pita yang akan dibaca # ++66Q + + 6 6 state *+
%. 1 + 6 6 state *6 &. 1 + 6
6 state *6
'. 1 + 3 6 state *7 (. 1 + 3 6 state *7 ). 1 + 3 6 state *+ *. 1 1 3 6 state *6 +. 1 1 3 6 state *6 ,. 1 1 3 3 state *7 1. 1 1 3 3 state *7
11. 1 1 3 3 state *+ 1%. 1 1 3 3 state *8
1&. 1 1 3 3 state *8 1'. 1 1 3 3 b state * Tidak ada transisi lagi dari state *, mesin Turing berhenti dan karena state * termasuk state akhir, maka input tersebut diterima. D!S/5IPSI S!/!TI/A PADA M!SI2 TJ5I2) Tahapan transisi nomor '6 sampai '6 pada contoh diatas dapat dinyatakan dalam notasi yang disebut deskripsi seketika 'instantaneous description. Deskripsi seketika diperlukan untuk menyatakan secara ormal konigurasi mesin Turing pada suatu saat. Perubahan dari suatu kondisi ke berikutnya dipisahkan dengan tanda U Jntuk simbol head ditulis dengan garis ba$ah VQ =adi tahapan no. 6 sampai 6 dapat dinyatakan sebagai berikut # '*+,++66 U '*6,1+66 '*6,1+66 '*7,1+36 '*7,1+36 '*+,1+36 '*6,1136 '*6,1136 '*7,1133 '*7,1133 '*+,1133 '*8,1133 '*8,1133 b '*,1133 b Misal bila mendapat input +66 # '*+,+66 '*6,166 '*7,136 '*+,136 '*8,136 Tidak ada transisi '*8,6 maka mesin berhenti dan karena *8 tidak termasuk state akhir berarti input tersebut ditolak. Sumber # http#>>a66G6++66.blogspot.com>7+6+>+G>mesin-turing.html
%. OTOMATA # AUTOMATA AUTOMATA$ Wtomata ' !utomata !utomata • Wtomata adalah mesin abstrak yang dapat mengenali 'recogni$e 'recogni$e, , menerima 'accept 'accept , , atau membangkitkan 'generate 'generate sebuah kalimat dalam bahasa tertentu.
eberapa Pengertian Dasar #
•
Simbol Simbol adalah adalah sebuah sebuah entitas entitas abstrak abstrak 'seperti 'seperti halnya halnya penger pengertia tian n titi titik k dalam geometri. geometri. Sebuah huru atau sebuah angka adalah contoh simbol. • String adalah deretan terbatas 'finite 'finite simbol-simbol. Sebagai contoh, jika a, b, dan c adalah tiga tiga buah buah simb simbol ol maka maka abcb adalah adalah sebuah sebuah string string yang yang dibang dibangun un dari dari ketiga ketiga simbol simbol tersebut. • =ika % adalah sebuah string maka panjang string dinyatakan sebagai % dan dideinisikan sebagai cacahan 'banyaknya simbol yang menyusun string tersebut. Sebagai contoh, jika % & abcb maka abcb maka % & . • String String hampa hampa adalah adalah sebuah sebuah string string dengan dengan nol buah buah simbol simbol.. String String hampa hampa dinya dinyataka takan n dengan simbol ε 'atau X sehingga ε& +. String hampa dapat dipandang sebagai simbol hampa karena keduanya tersusun dari nol buah simbol. • Alabet adalah hinpunan hingga 'finite 'finite set simbol-simbol Wperasi Dasar String Diberikan dua string # x # x & & abc, abc, dan y dan y & & &'( • Preik string % adalah adalah string yang dihasilkan dari string % dengan dengan menghilangkan nol atau lebih simbol-simbol paling belakang dari string % tersebut. tersebut. Oontoh # abc, abc, ab, ab, a, dan ε adalah semua PreiC' x x • ProperPreiC ProperPreiC string string % adalah adalah string string yang yang dihasi dihasilka lkan n dari dari string string % dengan menghilangkan satu atau lebih simbol-simbol paling belakang dari string % tersebut. tersebut. Oontoh # ab, ab, a, dan ε adalah semua ProperPreiC' x x • Post Posti iC C 'ata 'atau u Sui SuiC C stri tring % adal adalah ah stri string ng yang ang diha dihasi silk lkan an dari dari stri string ng % dengan menghilangkan nol atau lebih simbol-simbol paling depan dari string % tersebut. tersebut. Oontoh # abc, abc, bc, bc, c, dan ε adalah semua PostiC' x x
• • • •
•
• • • • • •
ProperPostiC 'atau PoperSuiC string % adalah adalah string yang dihasilkan dari string % dengan dengan menghilangkan satu atau lebih simbol-simbol paling depan dari string % tersebut. tersebut. Oontoh # bc, bc, c, dan ε adalah semua ProperPostiC' x x 0ead string % adalah simbol paling depan dari string % . Oontoh # a adalah 0ead' x x Tail Tail string string % adalah adalah string string yang dihasi dihasilka lkan n dari string string % dengan menghilangkan menghilangkan simbol paling depan dari string % tersebut. Oontoh # bc adalah bc adalah Tail' x x Substring Substring string % adalah adalah string yang dihasilkan dihasilkan dari string % dengan menghilangkan menghilangkan nol atau lebih simbol-simbol paling depan dan>atau simbol-simbol paling belakang dari string % tersebut. Oontoh # abc, abc, ab, ab, bc, bc, a, b, c, c, dan ε adalah semua Substring' x x ProperSubstring string % adalah adalah string yang dihasilkan dari string % dengan dengan menghilangkan satu satu atau lebih simbol-simbol paling depan dan>atau simbol-simbol paling belakang dari string % tersebut. tersebut. Oontoh # ab, ab, bc, bc, a, b, c, c, dan ε adalah semua Substring' x x Subse*uence Subse*uence string % adalah adalah string yang dihasilkan dihasilkan dari string string % dengan menghilangkan nol atau lebih simbol-simbol dari string % tersebut. tersebut. Oontoh # abc, abc, ab, ab, bc, bc, ac, ac, a, b, c, c, dan ε adalah semua Subse*uence' x x Prop ProperS erSub ubse se*u *uen ence ce stri string ng % adal adalah ah stri string ng yang yang diha dihasi silk lkan an dari dari stri string ng % dengan menghilangkan satu atau lebih simbol-simbol dari string % tersebut. tersebut. Oontoh # ab, ab, bc, bc, ac, ac, a, b, c, c, dan ε adalah semua Subse*uence' x x Ooncat Ooncatena enatio tion n adalah adalah penyamb penyambung ungan an dua buah buah string string.. Wperato Wperatorr concate concatenat nation ion adalah adalah concate atau tanpa lambang apapun. Oontoh # concate' xy xy & xy & xy & abc&'( Alterna Alternatio tion n adalah adalah piliha pilihan n satu satu di antara antara dua buah buah string string.. Wperato Wperatorr alterna alternatio tion n adalah adalah alternate atau . Oontoh # alternate' xy xy & x & x y & abc atau &'( atau &'( /leene Olosure # x # x < & ε x xx xxx 9 & ε x x 2 x 3 9
Positie Olosure # x # x + & x & x xx xxx 9 & x & x x 2 x 3 9 eberapa Siat Wperasi • Tidak selalu berlaku # x # x & & PreiC' x x PostiC' PostiC' x x • Selalu berlaku # x # x & & 0ead' x x Tail' Tail' x x • Tidak selalu berlaku # PreiC' x x & PostiC' x x atau PreiC' x x ≠ PostiC' x x • Selalu berlaku # ProperPreiC' x x ≠ ProperPostiC' x x • Selalu berlaku # 0ead' x x ≠ Tail' x x • Setiap PreiC' x x , , ProperPreiC' x x , , PostiC' x x , , ProperPostiC ProperPostiC'' x x , , 0ead' x x , , dan Tail' x x adalah Substring' x x , , tetapi tidak sebaliknya • Setiap Substring' x x adalah Subse*uence' x x , , tetapi tidak sebaliknya • Dua siat aljabar concatenation # ♦ Wperasi concatenation bersiat asosiati # x # x ' y$ y$ & ' xy xy $ $ ♦ !lemen identitas operasi concatenation adalah ε # ε x & x ε & x & x • Tiga siat aljabar alternation # ♦ Wperasi alternation bersiat komutati # x # x y & y & y x ♦ Wperasi alternation bersiat asosiati # x # x ' y y $ $ & ' x x y $
♦ • •
!lemen identitas operasi alternation adalah dirinya sendiri # x # x x & x & x Siat distributi concatenation terhadap alternation # x # x ' ' y y $ $ & xy & xy x$ eberapa kesamaan # ♦ /esamaan ke-6 # ' x x
View more...
Comments