Memahami Algoritma McCluskey untuk Analisis Kompleksitas Mesin Keadaan Hingga
Algoritma McCluskey adalah metode untuk menghitung kompleksitas ruang keadaan dari mesin keadaan terbatas. Ini digunakan untuk memperkirakan jumlah negara bagian dalam mesin negara terbatas tertentu. Algoritma ini pertama kali diusulkan oleh J. M. McClusky pada tahun 1975.
Ide dasar di balik algoritma McCluskey adalah menghitung jumlah maksimum keadaan yang dapat dicapai dari setiap keadaan awal, dan kemudian menghitung jumlah maksimum keadaan yang dapat dicapai dari setiap keadaan awal. dari negara-negara tersebut. Proses ini diulangi sampai semua negara telah diperhitungkan, dan hasil akhirnya adalah jumlah negara dalam mesin.
Algoritma McCluskey memiliki beberapa keunggulan dibandingkan metode lain untuk menghitung kompleksitas ruang negara. Implementasinya relatif mudah, dapat menangani mesin dengan jumlah state yang banyak, dan memberikan batas atas yang ketat pada kompleksitas ruang state. Namun, secara komputasi dapat menjadi mahal untuk mesin yang sangat besar.
Berikut adalah contoh cara kerja algoritma McCluskey:
1. Mulailah dengan keadaan awal s0.
2. Hitung himpunan semua keadaan yang dapat dicapai dari s0 dalam satu langkah. Misalkan himpunan ini S1.
3. Hitung himpunan semua keadaan yang dapat dicapai dari setiap keadaan di S1 dalam satu langkah. Misalkan himpunan ini adalah S2, S3, ... .
4. Ulangi langkah 3 sampai semua negara bagian telah diperhitungkan.
5. Hasil akhirnya adalah jumlah total keadaan dalam mesin, yang merupakan jumlah maksimum keadaan yang dapat dicapai dari keadaan awal mana pun.
Sebagai contoh, pertimbangkan mesin keadaan terbatas dengan tabel transisi berikut:
| | sebuah | b | c |
| --- | --- | --- | --- |
| q0 | sebuah | q1 | q2 |
| q1 | b | q2 | q3 |
| q2 | c | q3 | q4 |
| q3 | c | q4 | q5 |
| q4 | b | q5 | q6 |
| q5 | sebuah | q6 | q7 |
| q6 | b | q7 | q8 |
| q7 | c | q8 | q9 |
| q8 | c | q9 | q10 |
| q9 | sebuah | q10 | q11 |
| q10 | b | q11 | q12 |
| q11 | c | q12 | q13 |
| q12 | b | q13 | q14 |
| q13 | sebuah | q14 | q15 |
| q14 | c | q15 | q16 |
Untuk menghitung kompleksitas ruang keadaan mesin ini menggunakan algoritma McCluskey, kita mulai dengan keadaan awal q0. Himpunan semua keadaan yang dapat dicapai dari q0 dalam satu langkah adalah {q1, q2, q3}. Himpunan seluruh keadaan yang dapat dijangkau dari masing-masing keadaan tersebut dalam satu langkah adalah {q4, q5}, {q6, q7}, dan {q8, q9}.
Kita lanjutkan proses ini sampai kita telah menghitung semua keadaan. Hasil akhirnya adalah jumlah state dalam mesin yaitu 16. Artinya kompleksitas state space mesin adalah O(16).
Singkatnya, algoritma McCluskey merupakan metode untuk menghitung kompleksitas state space berhingga mesin negara. Hal ini didasarkan pada gagasan untuk menghitung jumlah maksimum keadaan yang dapat dicapai dari keadaan awal mana pun, dan memberikan batas atas yang ketat pada kompleksitas ruang keadaan. Algoritme ini relatif sederhana untuk diimplementasikan, namun komputasinya mahal untuk mesin yang sangat besar.