Chapter 6: Finite Automata dengan Output (Mesin Moore dan Mesin Mealy)
Konsep & Pembahasan Terperinci
1. Dua Perbedaan Fundamental Moore vs Mealy
| Parameter | Mesin Moore | Mesin Mealy |
|---|---|---|
| Penempatan Output | Berada di dalam setiap state (asosiasi state murni) | Berada di setiap cabang transisi (asosiasi pasangan state & input) |
| Panjang Output | ||
| Pemicu Output | Bergantung hanya pada state saat ini | Bergantung pada state saat ini DAN simbol input yang dibaca |
| Output Awal | Mengeluarkan output bawaan state awal sebelum membaca simbol pertama | Tidak mengeluarkan output sebelum membaca simbol pertama |
2. Definisi Formal Mesin Moore dan Mealy
A. Mesin Moore
Didefinisikan sebagai 5-tuple:
: Himpunan berhingga state.
: Alfabet simbol masukan (input), contoh: .
: Alfabet simbol keluaran (output), contoh: .
: Fungsi transisi state: .
: State awal ().
(Fungsi output memetakan state langsung ke output: ).
B. Mesin Mealy
Didefinisikan sebagai 5-tuple:
Komponen himpunan sama, namun fungsi output menghasilkan simbol keluaran bersamaan dengan transisi:
Studi Kasus & Tracing Lengkap
1. Mesin Moore 1 (Detektor Pola '101')
State: , State Awal:
Alfabet Input: , Alfabet Output:
Tabel Transisi dan Output Moore 1:
| State () | Transisi Input | Transisi Input | Output () |
|---|---|---|---|
| 1 | |||
| 0 | |||
| 0 | |||
| 1 |
Tracing String Masukan :
Kondisi Awal: Berada di state Langsung menghasilkan output 1.
Baca simbol
a: State menghasilkan output 0.Baca simbol
b: State menghasilkan output 0.Baca simbol
a: State menghasilkan output 1.Baca simbol
a: State menghasilkan output 1.Baca simbol
b: State menghasilkan output 0.
Rangkuman Alur State:
Total Output:
100110(Panjang input , Panjang output ).
2. Mesin Moore 2 (Penghitung Residu Modulo Biner)
Tabel Transisi dan Output Moore 2:
| State () | Transisi Input | Transisi Input | Output () |
|---|---|---|---|
| 0 | |||
| 0 | |||
| 0 | |||
| 1 |
Analisis Semantik Mesin Moore 2: Perhatikan bahwa satu-satunya state dengan output
1adalah . State hanya dapat dicapai melalui urutan lintasan: . Artinya mesin ini mendeteksi pola substringaab!
Tracing Masukan Panjang :
Output yang dihasilkan:
00000100001001(Panjang input , Panjang output ).Simbol
1muncul tepat saat akhiranaabselesai dibaca.
3. Mesin Mealy (Transduser Komplemen Biner)
Tabel Transisi dan Output Mealy:
| State () | Input : Next State | Input : Output | Input : Next State | Input : Output |
|---|---|---|---|---|
| 0 | 0 | |||
| 1 | 1 | |||
| 0 | 1 | |||
| 1 | 1 |
Tracing String Masukan :
Berada di , baca
aPindah ke , keluarkan 0.Berada di , baca
aPindah ke , keluarkan 1.Berada di , baca
bPindah ke , keluarkan 1.Berada di , baca
bPindah ke , keluarkan 0.Berada di , baca
aPindah ke , keluarkan 1.
- Total Output:
01101(Panjang input , Panjang output ).
Latihan Soal & Pembahasan
Level 1 - Basic
Soal 1.1
Jika sebuah string masukan memiliki panjang , tentukan panjang string keluaran pada Mesin Moore dan Mesin Mealy.
Soal 1.2
Di manakah posisi simbol output diletakkan pada diagram transisi Mesin Mealy?
Pembahasan/Jawaban
1.1 Pada Mesin Moore, panjang output . Pada Mesin Mealy, panjang output .
1.2 Pada Mesin Mealy, output diletakkan pada busur/jalur transisi dengan format notasi input / output (misalnya a / 1).
Level 2 - Intermediate
Soal 2.1
Lakukan tracing pada Mesin Mealy di atas untuk string masukan , dan buktikan apakah output yang dihasilkan adalah 011011 secara tepat.
Pembahasan/Jawaban
, output:
0, output:
1, output:
1, output:
0, output:
1, output:
1
Urutan output gabungan: 011011. Terbukti menghasilkan deretan output yang tepat.
Level 3 - Advanced
Soal 3.1
Mengapa Mesin Moore selalu menghasilkan satu simbol output lebih banyak daripada panjang string masukan?
Pembahasan/Jawaban
Karena pada Mesin Moore, nilai output terikat langsung pada state, bukan pada transisi. Begitu mesin diaktifkan (power on), mesin sudah langsung menempati state awal dan seketika itu pula mengeluarkan output bawaan dari (pada saat ), bahkan sebelum satu pun simbol dari string masukan dibaca. Kemudian, setiap kali satu simbol input dibaca, mesin berpindah state dan mengeluarkan satu output baru. Total output menjadi .
Exam Cheat Sheet
- Rumus Panjang Output:
Letak Output:
Moore: Di dalam lingkaran state ().
Mealy: Di panah transisi ().
Tuple 5 Komponen: dengan sebagai alfabet output.
Pola Pembacaan: Moore mengeluarkan output state awal di awal eksekusi; Mealy baru mengeluarkan output saat transisi terjadi.
Referensi & Bahan Bacaan
George H. Mealy. A Method for Synthesizing Sequential Circuits (Bell System Technical Journal, 1955).
Edward F. Moore. Gedanken-experiments on Sequential Machines (Princeton University Press, 1956).
Hopcroft, Motwani & Ullman. Finite State Transducers (Stanford Course Notes).
Catatan Penutup
Bab 6 mengalihkan fokus kita ke mesin transduser ber-output. Pada bab selanjutnya, Chapter 7: Minimisasi DFA, kita akan mempelajari algoritma matematis untuk mereduksi jumlah state pada DFA agar diperoleh mesin yang paling efisien.