Anda di halaman 1dari 15

TEORI BAHASA DAN AOTOMATA

MESIN MOORE DAN MESIN MEALY

DOSEN PENGAMPU:

FINSA NURPANDI, ST., MT.

Disusun Oleh :

Ihsan Bahrul Ulum NPM 5520117065

Fakultas Teknik Universitas Suryakancana


Teknik Informatika
Cianjur
2019
KATA PENGANTAR

Assalamu’alaikum warahmatullahi wabarakatuh.


Segala puji bagi Allah SWT yang telah memberikan kami kemudahan
sehingga kami dapat menyelesaikan makalah ini dengan tepat waktu. Tanpa
pertolongan-Nya tentunya kami tidak akan sanggup untuk menyelesaikan makalah
ini dengan baik. Shalawat serta salam semoga terlimpah curahkan kepada baginda
tercinta kita yaitu Nabi Muhammad SAW yang kita nanti-natikan syafa’atnya di
akhirat nanti.
Penulis mengucapkan syukur kepada Allah SWT atas limpahan nikmat
sehat-Nya, baik itu berupa sehat fisik maupun akal pikiran, sehingga penulis
mampu untuk menyelesaikan pembuatan makalah sebagai bagian dari tugas mata
kuliah teori bahasa dan aotomata dengan judul “Mesin Moore Dan Mesin Mealy”.
Penulis tentu menyadari bahwa makalah ini masih jauh dari kata sempurna
dan masih banyak terdapat kesalahan serta kekurangan di dalamnya.Untuk itu,
penulis mengharapkan kritik serta saran dari pembaca untuk makalah ini, supaya
makalah ini nantinya dapat menjadi makalah yang lebih baik lagi. Kemudian
apabila terdapat banyak kesalahan pada makalah ini penulis mohon maaf yang
sebesar-besarnya.
Penulis juga mengucapkan terima kasih kepada semua pihak khususnya
kepada guru Bahasa Indonesia kami yang telah membimbing dalam menulis
makalah ini.

Demikian, semoga makalah ini dapat bermanfaat. Terima kasih.

Cianjur, 26 November 2019

Penulis

Mesin Moore dan Mesin Mealy i


DAFTAR ISI

KATA PENGANTAR ........................................................................................................ i


DAFTAR ISI...................................................................................................................... ii
BAB I PENDAHULUAN ................................................................................................. 1
1.1 Latar Belakang .................................................................................................. 1
1.2 Rumusan Masalah ............................................................................................ 2
1.3 Batasan Masalah ............................................................................................... 2
1.4 Tujuan ................................................................................................................ 3
1.5 Manfaat .............................................................................................................. 3
BAB II PEMBAHASAN .................................................................................................. 4
2.1 Pengertian .......................................................................................................... 4
2.2 Cara Kerja ......................................................................................................... 5
2.3 Studi Kasus ........................................................................................................ 6
2.4 Ekuivalensi....................................................................................................... 10
BAB III PENUTUP ......................................................................................................... 12
3.1 Kesimpulan ...................................................................................................... 12
3.2 Saran ................................................................................................................ 12
DAFTAR PUSTAKA ...................................................................................................... 12

Mesin Moore dan Mesin Mealy ii


BAB I
PENDAHULUAN

1.1 Latar Belakang


Teori bahasa automata merupakan salah satu teori komputasi pada Ilmu
Komputer. Teori komputasi datang dari bahasa dan rekayasa sistem, terutama yang
berbasiskan matematika. Teori bahasa automata dapat dijadikan suatu gagasan
mendasar dalam komputasi yang menjadi tools untuk mengenali suatu persoalan
atau masalah karena dapat memberikan konsep dan prinsip untuk memahami suatu
persoalan yang berkolerasi dengan bidang ilmu komputer.
Ilmu Komputer memiliki topik yang cukup luas meliputi perancangan mesin
hingga pemrograman. Teori bahasa automata memiliki empat tipe grammar yang
disebut dengan Hirarki Chomsky, yaitu Unrestricted Grammar (UG), Context
Sensitive Grammar (CSG), Context Free Grammar (CFG), dan Regular Grammar
(RG). Penelitian ini difokuskan dalam Tata Bahasa Bebas Konteks (CFG).
Tata Bahasa Bebas Konteks (CFG) memiliki beberapa persoalan yang dapat
diselesaikan dengan bidang Ilmu Komputer, salah satunya adalah penyederhanaan
bentuk normal Chomsky (CNF) ke bentuk normal Greibach (GNF). Salah satu
bentuk normal Tata Bahasa Bebas Konteks (CFG) dalam teori bahasa Automata
adalah bentuk normal Greibach (GNF).
Syarat yang harus 2 dipenuhi antara lain yaitu aturan produksinya harus
dalam bentuk normal Chomsky (CNF), tidak bersifat rekursif kiri, dan tidak
memuat produksi yang menghasilkan  (epsilon). Bentuk normal Greibach (GNF)
dapat dilakukan dengan dua cara yaitu dengan cara substitusi dan matriks. Aturan
produksi dalam teori bahasa automata adalah proses yang menspesifikasikan
bagaimana suatu tata bahasa mentransformasi suatu string ke bentuk lainnya.
Aturan produksi dinyatakan dalam bentuk α → β, α menghasilkan atau
menurunkan β. α merupakan simbol ruas kiri sedangkan β merupakan simbol ruas
kanan. Simbol – simbol tersebut dapat berupa terminal dan nonterminal dimana
simbol nonterminal dapat diturunkan menjadi simbol terminal. Simbol terminal

Mesin Moore dan Mesin Mealy 1


disimbolkan dengan huruf kecil (a,b,c, dan sebagainya ), sedangkan simbol
nonterminal disimbolkan dengan huruf besar (A,B,C, dan sebagainya).
Penelitian sebelumnya, Merliana (2014) mengatakan bahwa Penulisan notasi
Tata Bahasa Bebas Konteks (CFG) dapat ditulis dengan 4-tupel : G : (N, Σ, S, P),
dimana N adalah himpunan berhingga dari nonterminal, Σ adalah himpunan
berhingga dari terminal, S adalah terminal spesifik yang dinamakan simbol awal,
dan P adalah himpunan dari produksi-produksi. Penulisan Tata Bahasa Bebas
Konteks (CFG) didasarkan pada ketentuan sebagai berikut; Simbol nonterminal
ditulis dengan huruf A sampai dengan Z, kecuali S, S digunakan sebagai simbol
awal, dan huruf a sampai dengan z, huruf Yunani α sampai ζ, dan bilangan (digit)
adalah simbol terminal.
Merliana (2014) juga mengatakan bahwa skema penyederhanaan tata bahasa
bebas konteks meliputi ; Tata Bahasa Bebas Konteks (CFG)  Penghilangan
produksi   Penghilangan produksi unit 3 Penghilangan produksi useless 
Pengubahan kedalam bentuk normal Chomsky (CNF)  Penghilangan rekursif kiri
 Pengubahan kedalam bentuk normal Greibach (GNF) dengan metode substitusi.
Impelementasi untuk menentukan Bentuk Normal Greibach (GNF) ini cukup
sulit dan cukup rumit, karena harus melalui tahapan – tahapan yang cukup banyak
dan memerlukan ketelitian yang sangat tinggi. Penelitian ini dimaksudkan untuk
menentukan bentuk normal Greibach (GNF) dengan menggunakan suatu aplikasi.
Aplikasi ini dibuat dengan menggunakan metode substitusi untuk mendapatkan
bentuk normal Greibach (GNF).
Pada aplikasi ini diberikan tahap dari proses agar memudahkan pemahaman
dalam melakukan penyederhanaan pada setiap tahapannya serta mempercepat
proses dalam pencarian bentuk normal Greibach (GNF).

1.2 Rumusan Masalah


Bagaimana cara mengetahui keluaran indikasi biner akan diterima atau
ditolak terhadap string masukan.

1.3 Batasan Masalah


Batasan masalah dalam penelitian ini yaitu grammar yang dimasukkan harus
dalam aturan produksi bentuk normal Chomsky (CNF).

Mesin Moore dan Mesin Mealy 2


1.4 Tujuan
Tujuan dari dibuatnya makalah ini adalah untuk mengetahui dan memahami
perbedann Mesin Moor, Mesin Mealy dan Ekuivalensi terhadap bentuk normal
Chomsky (CNF).

1.5 Manfaat
Manfaat dari makalah ini adalah :
1. Mempermudah memahami penggunaan metode mesin moor.
2. Mempermudah memahami penggunaan metode mesin mealy
3. Mempermudah memahami penggunaan metode ekuivalensi terhadap mesin
moor dan mealy

Mesin Moore dan Mesin Mealy 3


BAB II
PEMBAHASAN
2.1 Pengertian
2.1.1 Mesin Moor
Dalam teori komputasi sebagai prinsip dasar komputer, Mesin Moore adalah
otomasi fase berhingga (finite state automaton) di mana keluarannya ditentukan
hanya oleh fase saat itu (dan tidak terpengaruh oleh bagian masukan/input).
Diagram fase (state diagram) dari mesin Moore memiliki sinyal keluaran untuk
masing-masing fase. Hal ini berbeda dengan mesin Mealy yang mempunyai
keluaran untuk tiap transisi.
Nama Moore diambil dari "Edward F. Moore" seorang ilmuwan komputer
dan perintis mesin-fase (state-machine) yang menulis karangan "Gedanken-
experiments on Sequential Machines".
2.1.2 Mesin Mealy
Dalam teori komputasi sebagai konsep dasar sebuah komputer, Mesin
Mealy adalah otomasi fase berhingga (finite state automaton atau finite state
tranducer) yang menghasilkan keluaran berdasarkan fase saat itu dan bagian
masukan/input. Dalam hal ini, diagram fase (state diagram) dari mesin Mealy
memiliki sinyal masukan dan sinyal keluaran untuk tiap transisi. Prinsip ini berbeda
dengan mesin Moore yang hanya menghasilkan keluaran/output pada tiap fase.
Nama Mealy diambil dari "G. H. Mealy" seorang perintis mesin-fase (state-
machine) yang menulis karangan "A Method for Synthesizing Sequential Circuits"
pada tahun 1955.
2.1.3 Finite Automata Dengan Keluaran
FSA hanya memberikan status keluaran berupa indikasi biner “diterima” atau
“ditolak” terhadap string masukan. Dibutuhkan mesin finite state lain yang
menghasilkan keluaran bukan biner tapi suatu simbol alfabet lain. Finite State
Transducer (FST) adalah mesin yang menerima string masukan dan
menerjemahkannya menjadi string keluaran.

Mesin Moore dan Mesin Mealy 4


FSA : accepter, dapat menerima atau tidak.
FSA dengan output : transducer Pendekatan perancangan FST:
- FST yang keluarannya diasosiasikan dengan suatu status, disebut mesin
Moore.
- FST yang keluarannya diasosiasikan dengan suatu transisi, disebut mesin
Mealy.
2.2 Cara Kerja
2.2.1 Mesin Moor
Mesin Moore dinyatakan dengan 6-tuple (Q, Σ, Δ, δ, λ, q0), dimana : Q:
himpunan berhingga status.
Σ : himpunan berhingga simbol alfabet.
Δ : himpunan simbol keluaran (alfabet keluaran). δ : fungsi transisi yang
memetakan Q x Σ ke Q.
λ : fungsi yang memetakan Q ke Δ, memberikan keluaran yang diasosiasikan
dengan tiap status.
q0 : status awal, anggota Q.
Keluaran mesin Moore terhadap masukan a1, a2…an ≥ n adalah
λ(q0)λ(q1)…λ(qn) dimana q0, q1,…,qn adalah barisan status sedemikian sehingga
δ(qi-1,ai) = qi untuk 1 ≤ i≤ n. Jika string masukan ε, mesin Moore memberikan
keluaran λ(q0).
2.2.2 Mesin Mealy
Mesin Mealy dinyatakan dengan 6-tuple (Q, Σ, Δ, δ, λ, q0), dimana: Q:
himpunan berhingga status.
Σ : himpunan berhingga simbol alfabet.
Δ : himpunan simbol keluaran (alfabet keluaran). δ : fungsi transisi yang
memetakan Q x Σ ke Q.
λ : fungsi yang memetakan Q x Σ ke Δ, λ(q,a) memberikan keluaran yang di
asosiasikan dengan transisi dari q terhadap symbol keluaran a.
q0 : status awal, anggota Q.
Keluaran mesin Mealy terhadap masukan a1 a2…an ≥ n adalah λ(q0,a1)
λ(q0,a1) λ(q1,a2) … λ (qn-1,an) dimana q0, q1,…,qn-1 adalah barisan status

Mesin Moore dan Mesin Mealy 5


sedemikian sehingga δ(qi- 1,ai) = qi untuk 1 ≤ I ≤ n. Jika string masukan ε, mesin
Mealy memberikan keluaran ε.
2.3 Studi Kasus
2.3.1 Mesin Moor
A. Mesin Moore yang menghasilkan keluaran modulo 5 dari suatu bilangan bulat
positif biner adalah : (Q, Σ, Δ, δ, λ, q0) dimana :
Q = {q0, q1, q2, q3, q4} Σ = {0,1}
Δ = {0,1,2,3,4}
λ = Q → Δ, yaitu λ (q0) = j untuk j = 0,1,2,3,4

Q x Σ → Q didefinisikan sbb:
Masukan
Status
0 1
q0 q0 q1
q1 q2 q3
q2 q4 q0
q3 q1 q2
q4 q3 q4

Gambar 1 Mesin Moore yang menghasilkan Modulo

B. Mesin Moore yang menghasilkan keluaran modulo 3 M = (Q,Σ,δ,S,∆,λ)


Q : himpunan state
Σ : himpunan simbol input δ: fungsi transisi
S : state awal S ∈ Q
∆ : himpunan output
λ : fungsi output untuk setiap state

Mesin Moore dan Mesin Mealy 6


Contoh mesin moore untuk memperoleh modulus 3 pada suatu bilangan biner
: M = (Q,Σ,δ,S,∆,λ)
Q : q0,q1,q2 Σ: *0,1+
S : q0
∆ : *0,1,2+ λ(q0) =0
λ (q1) =1, λ (q2) =2
Prinsip :
- Jika i diikuti dengan 0, maka hasilnya 2i 1012=5 10102= 2*5 =10
- Jika i diikuti dengan 1, maka hasilnya 2i+1 1012=5 10112= 2*5+1 =11
- Jika i/3 mempunyai sisa p, maka untuk input berikutnya bernilai 0 maka 2i/3
mempunyai sisa 2p mod 3
Untuk p=0 maka 2p mod 3 = 0
Untuk p=1 maka 2p mod 3 = 2
Untuk p=2 maka 2p mod 3 = 1
- Jika i/3 mempunyai sisa p, maka untuk input berikutnya bernilai 1 maka
(2i+1)/3 mempunyai sisa (2p+1) mod 3
Untuk p=0 maka (2p+1) mod 3 = 1
Untuk p=1 maka (2p+1) mod 3 = 0
Untuk p=2 maka (2p+1) mod 3 = 2
Sehingga didapat mesin fsa sbb :

1
q 0/ q1/ q2/
0 1 2

Gambar 2 Mesin FSA

2.3.2 Mesin Mealy


A. Mesin Mealy yang menerima bahasa himpunan string dari alfabet {0,1} yang
dua simbol akhirnya sama adalah: (Q, Σ, Δ, δ, λ, q0) dimana:
Q = {q0, q1, q2}
Σ = {0,1}
Δ = {y,n}

Mesin Moore dan Mesin Mealy 7


δ=QxΣ→Q
Masukan
Status
0 1
q0 q1 q2
q1 q1 q2
q2 q1 q2

λ=QxΣ→Δ
Masukan
Status
0 1
q0 T T
q1 Y T
q2 T Y

Gambar 3 Mesin Mealy yang menerima bahasa himpunan

B. Mesin Mealy untuk mendeteksi ekspresi reguler


input 5 (1012) , state terakhir q2/2 , 5 mod 3 = 2
input 10 (10102) , state terakhir q1/1 , 10 mod 3 = 1 Mesin Mealy
M = (Q,Σ,δ,S,Δ,λ)
Q : himpunan state
Σ : himpunan simbol input δ : fungsi transisi

Mesin Moore dan Mesin Mealy 8


S : state awal S ∈Q
Δ : himpunan output
λ : fungsi output untuk setiap transisi
Contoh mesin Mealy untuk mendeteksi ekspresi reguler (0+1)*(00+11)
Jawab :
M = (Q,Σ,δ,S,Δ,λ) Q : q0,q1,q2
Σ : [0,1] S : q0
Δ : [0,1,2] λ(q0,0) = T
λ (q0,1) = T
λ (q1,0) = Y
λ (q1,1) = T
λ (q2,0) = T
λ (q2,1) = Y

q
1
0/
T

q
1/
0
T

1/
T

q
2

Gambar 4 Mesin mealy untuk mendeteksi ekspresi reguler

Mesin Moore dan Mesin Mealy 9


2.4 Ekuivalensi
2.4.1 Mesin Moor Ke Mesin Mealy
Jml state = jml state sebelum * jml output

Gambar 5 Mesin moor ke mesin melay

2.4.2 Mesin Mealy ke mesin Moore


Menambah label output pada transisi Menghapus label output pada state.

1/1 0/
q0/ q1/ 2 q2/
0 1 2
1/ 0/
0 1
Gambar 6 Mealy ke Moore

2.4.3 Ekivalensi Mesin Moore dan Mesin Melay


Jika diberikan mesin Moore maka kita dapat membuat mesin Mealy dan
sebaliknya. Diberikan :
Mesin Moore M1 = (Q, Σ, Δ, δ, λ, q0)
Mesin Mealy M2 = (Q, Σ, Δ, δ, λ’, q0)
Maka didefinisikan λ’(q,a) = λ(δ (q,a)) untuk semua q di dalam Q, a di dalam
Σ, dan b di dalam Δ.

Mesin Moore dan Mesin Mealy 10


Gambar 7 Mesin Moore M2 Yg Akan Di Ekivalen Dengan M1

jika diberikan :
Mesin Mealy M1 = (Q, Σ, Δ, δ, λ, q0)
Mesin Moore M2 = (Q, Σ, Δ, δ’, λ’, *q0 ,b0+)
Mesin Moore M2 yg ekivalen dengan M1 dibuat dengan memecah setiap
status dari M1 menjadi sejumlah |Q| x |Δ| status yg berbeda pada M2.
Maka didefinisikan :
- δ’(*q,b+,a)=*δ(q,a), λ(q,a)]
- λ’(q,b) = b

Gambar 8 mesin moore m2 yg ekivalen dengan m1

Mesin Moore dan Mesin Mealy 11


BAB III
PENUTUP
3.1 Kesimpulan

3.2 Saran

DAFTAR PUSTAKA

Wikipedia. (2014, April 5). Mesin Moor. Diambil kembali dari Wikipedia:
https://id.wikipedia.org/wiki/Mesin_Moore
Wikipedia. (2017, November 28). Mesin Mealy. Diambil kembali dari Wikipedia:
https://id.wikipedia.org/wiki/Mesin_Mealy

Mesin Moore dan Mesin Mealy 12

Anda mungkin juga menyukai