Anda di halaman 1dari 13

MESIN TURING

Dosen Pengampu : Agung Irawan, M.Kom.

Disusun oleh :

Chandra Ahmad Pudoli 2210631170114


Muhamad Rizqi Fajri 2210631170081
Muhammad Rifky Akbar 2210631170088

PROGRAM STUDI INFORMATIKA


FAKULTAS ILMU KOMPUTER
UNIVERSITAS SINGAPERBANGSA KARAWANG
2023
Kata Pengantar

Kami merasa bersyukur dan mengucapkan terima kasih kepada Allah SWT atas bimbingannya
dalam menyelesaikan tugas "Laporan tentang Mesin Turing".
Laporan ini ditulis untuk memenuhi tugas mata kuliah Organisasi dan Arsitektur Komputer serta
memberikan wawasan tentang Mesin Turing, alat penting dalam teori komputasi yang
memungkinkan komputer untuk melakukan berbagai operasi matematika dan algoritmik.
Kami juga ingin mengucapkan terima kasih kepada Bapak Agung Susilo Yuda Irawan, Dosen
Organisasi dan Arsitektur Komputer yang memberikan tugas ini, karena telah memberikan
kontribusi besar bagi peningkatan pengetahuan dan pemahaman kami di bidang studi yang sedang
kami tekuni.

Kelompok 6
Daftar isi
Kata Pengantar ........................................................................................................................................... 2
BAB 1. Pendahuluan................................................................................................................................... 4
1.1. Latar belakang ............................................................................................................................ 4
1.2. Tujuan .......................................................................................................................................... 4
BAB 2. Pembahasan.................................................................................................................................... 5
BAB 3. Penutup ........................................................................................................................................... 9
3.1. Kesimpulan ..................................................................................................................................... 12
3.2. Saran ............................................................................................................................................... 12
Daftar Pustaka .......................................................................................................................................... 13
BAB 1. Pendahuluan
1.1. Latar belakang
Mesin Turing adalah sebuah konsep fundamental di dalam sebuah teori komputasi dan
komputer modern. Mesin ini ditemukan pada tahun 1960 oleh seorang matematikawan Inggris
bernama Alan Turing sebagai sebuah model matematika dari proses komputasi
Pada waktu itu, suatu konsep komputasi hanya terbatas pada suatu fungsi matematika yang
dapat dihitung secara langsung/manual. Namun, saat mesin Turing ditemukan, Turing
menunjukkan bahwa setiap masalah yang dapat dihitung dengan cara manual tersebut dapat
dihitung juga secara otomatis oleh mesin Turing.
Konsep mesin Turing juga menjadi sebuag dasar untuk kita mengembangkan Bahasa
pemrograman dan komputer yang kita kenal sekarang atau biasa disebut komputer modern. Mesin
Turing memungkinkan programmer untuk memahami dan menentukan suatu Batasan dalam
proses komputasi, sehingga memungkinkan mereka untuk mengembangkan algoritma dan
program yang lebih kompleks dan efisien.
Lebih daripada itu, mesin Turing juga dapat membuka jalan bagi pengembangan kecerdasan
buatan dan mempercepat perkembangan mesin komputasi/komputer. Konsep daripada mesin
Turing ini menjadi fokus utama dalam penelitian dan pengembangan komputasi modern dan terus
memiliki dampak besar pada bidang ilmu komputer dan teknologi. Oleh karena itu, pemahaman
yang baik tentang mesin Turing ini sangatlah penting bagi siapa saja yang tertarik pada bidang ini.
1.2. Tujuan
Melalui makalah yang kelompok saya buat ini, pembaca diharapkan akan memahami suatu
konsep mesin Turing secara lebih mendalam dan memahami bagaimana konsep tersebut
mempengaruhi teknologi dan ilmu komputer saat ini. Makalah ini juga dapat membantu pembaca
untuk mengembangkan pengetahuan dan keterampilan dalam bidang teori komputasi dan ilmu
komputer secara keseluruhan
BAB 2. Pembahasan

Sejarah Mesin Turing

Pada tahun 1936, Alan Turing mengembangkan sebuah konsep yang sangat revolusioner yang
disebut Mesin Turing. Konsep ini adalah menciptakan model matematis yang mampu melakukan
komputasi apa saja yang dapat dilakukan oleh mesin komputer modern. Mesin Turing
menggambarkan sebuah mesin abstrak dengan pita tak terbatas, kepala pembaca, dan seperangkat
aturan yang disebut sebagai "program" yang digunakan untuk mengatur perilaku mesin.
Ide Mesin Turing menjadi sangat penting dalam perkembangan teori komputasi karena
memungkinkan para ahli matematika dan ilmuwan komputer untuk memahami sifat dan batasan
dari mesin komputasi. Dengan menggunakan Mesin Turing, para ahli komputer dapat
menunjukkan bahwa tidak ada satu pun algoritma yang dapat menyelesaikan semua masalah
matematika, yang dikenal sebagai masalah Turing yang tak terpecahkan.
Selain itu, Mesin Turing juga dikenal sebagai pengenal bahasa formal. Bahasa formal
adalah sebuah himpunan simbol atau kata-kata yang dapat digunakan untuk menggambarkan
struktur atau pola dalam sebuah bahasa. Mesin Turing dapat digunakan untuk mengenali bahasa
non-restricted atau himpunan rekursif yang dapat dihitung. Ini memungkinkan Mesin Turing
digunakan dalam pengembangan bahasa pemrograman dan algoritma untuk solusi permasalahan
di bidang sains, teknologi, dan bisnis.
Mesin Turing menjadi dasar bagi perkembangan komputer modern yang kita gunakan
sekarang. Konsep Mesin Turing membantu para insinyur dan ilmuwan komputer untuk memahami
bagaimana mesin dapat melakukan komputasi dan menentukan batasan dari mesin tersebut.
Meskipun Mesin Turing mungkin menimbulkan rasa penasaran di kalangan banyak orang, namun
konsepnya dapat dijelaskan secara terperinci dan dapat dimengerti oleh siapa saja.
Sekarang, mari kita masuk ke dalam mekanisme kerja Mesin Turing. Perlu kita Ingat, kita
sedang berbicara tentang sebuah konsep, bukan sebuah mesin fisik yang sebenarnya. Mesin Turing
ini, terdiri dari tiga komponen utama yaitu :
1) Pengendali berhingga (finite control)
2) Pita masukan dengan sifatnya yaitu:
i. Panjangnya tidak berhingga
ii. Dapat dibaca maupun ditulis
iii. Sel yang tidak berisi simbol masukan akan berisi simbol kosong (blank = B)
Pada keadaan awal, n sel pertama dari pita masukan berisi rangkaian simbol yang harus dikenali
(dinyatakan sebagai 𝑎1 , 𝑎2 , . . . , 𝑎𝑛 ). Sel disebelah kanan rangkaian simbol berisi B.
Model Mesin Turing
Berikut adalah gambaran/model dari sebuah mesin turing:

𝑎2 𝑎2 … … 𝑎2 B B …
R/W head

Finitte State Control

Perbedaan mesin Turing dengan FSA dan PDA

Aksi pada sebuah mesin Turing


Mesin Turing melakukan operasi berdasarkan simbol yang ada pada posisi head dan status
kontrol yang terbatas. Pada setiap langkahnya, Mesin Turing dapat melakukan tiga tindakan:
mengubah status kontrol, menuliskan simbol pada pita masukkan, dan menggerakan kepala ke
arah kiri atau kanan. Sebagai contoh, Mesin Turing M digunakan untuk mengenali Bahasa Z =
{0𝑛 1𝑛 | 𝑛 ≥ 1}, yaitu kumpulan string dengan pola tertentu seperti 01, 0011, 000111, dan
seterusnya. Algoritma yang digunakan oleh Mesin Turing M untuk mengenali Bahasa Z adalah
sebagai berikut:
- pertama, ganti simbol '0' paling kiri dengan simbol 'X';
- kedua, gerakkan kepala ke kanan hingga menemukan simbol '1';
- ketiga, ganti simbol '1' paling kiri dengan simbol 'Y';
- keempat, gerakkan kepala ke kiri hingga menemukan simbol 'X';
- kelima, geser kepala ke kanan (akan diperoleh '0' paling kiri);
- dan ulangi langkah-langkah tersebut.
Jika pada saat mesin Turing M bergerak ke kanan untuk mencari simbol '1', mesin menemukan
simbol 'B', maka dapat disimpulkan bahwa jumlah simbol '0' lebih banyak daripada jumlah simbol
'1' pada string masukan, sehingga mesin tidak dapat mengenali string tersebut. Jika mesin Turing
M bergerak ke kiri dan tidak menemukan simbol '0', maka mesin akan memeriksa apakah masih
ada simbol '1'. Jika tidak ada lagi simbol '1', maka mesin akan mengenali string tersebut dan
berhenti. Namun, jika string tidak dapat dikenali, maka mesin Turing M dapat terjebak dalam
looping dan tidak akan berhenti.
Contohnya adalah jika string masukan adalah 000111
Dibawah ini adalah tabelnya, untuk melihat apakah Bahasa Z dapat dikenali atau tidak
menggunakan mesin Turing.
Kesimpulannya adalah bahwa string dari ‘000111’ dapat dikenali oleh mesin M/mesin Turing.
Dari penjelasan di atas, dapat kita kesimpulkan bahwa ada empat modus kerja yang
berbeda dari mesin Turing.
Dalam setiap status mesin Turing, operasi yang dilakukan tergantung pada simbol yang diterima
dari pita. Setiap status memiliki operasi yang berbeda-beda. Tabel berikut menunjukkan langkah-
langkah operasi lengkap yang dilakukan oleh mesin Turing untuk mengenali string {0𝑛 1𝑛 | 𝑛 ≥
1}, dimana n adalah bilangan bulat positif.

Untuk membaca tabel di atas, contohnya pada status 𝑞𝟎 ,, jika mesin menerima input ‘0’, maka
mesin akan berubah menjadi status 𝑞𝟏 ,, melakukan penggantian simbol ‘0’ dengan X, dan
menggerakan head ke arah kanan.
Atau bisa dalam notasi yang lebih singkat seperti dibawah ini :
Tripel (q,a,D) menggambarkan tindakan yang dilakukan oleh mesin Turing, yaitu berpindah ke
status q, menulis simbol a pada pita, dan memindahkan kepala ke arah D.

Definisi formal yang terjadi pada sebuah mesin Turing


Sebuah mesin turing dilambangkan dengan notasi formal sebagai berikut:
M = (𝑄, Σ, Γ, 𝛿, 𝑞𝟎 , 𝑩, 𝑭)
Dengan :
Q : Himpunan yang terbatas dan terdiri dari beberapa elemen status yang dilambangkan dengan
(a,b,c,…atau 𝑞𝟎 , 𝑞𝟏 , 𝑞𝟐 , . . . )
Γ : Himpunan terbatas dari simbol-simbol yang akan muncul di pita.
𝑩 ∈ Γ : Ini mengindikasikan simbol kosong atau kosong pada pita mesin Turing.
Σ : Ini berarti himpunan simbol-simbol yang digunakan sebagai masukan pada mesin Turing,
yang merupakan subset dari himpunan Γ
𝛿 : sebuah fungsi pergerakan yang digunakan untuk memetakan 𝑄 𝑥 Γ → 𝑄 𝑥 Γ 𝑥 {𝐿, 𝑅}.
𝑞𝟎 ∈ Q : Status pertama atau awal.
𝐹 ⊆ 𝑄 ∶ Ini adalah himpunan status yang akan dianggap sebagai "diterima" atau "dikenali" jika
mesin Turing mencapai salah satu dari status tersebut setelah memproses string input.
Deskripsi Sesaat
Keadaan sebuah mesin Turing setiap saat ditentukan oleh tiga hal:
a. Status sekarang (q).
b. Simbol yang sedang diterima/dibaca
c. Posisi head (“nomor sel” yang sedang dibaca) pada pita.

𝛼2

𝛼1 𝛼 𝛽

Jika string 𝛼2 terdiri dari gabungan string 𝛼 dan 𝛽, maka keadaan mesin Turing pada tabel di
atas dapat dijelaskan dengan deskripsi sesaat (instantaneous description):
𝛼1 𝑞 𝛼2

Yang artinya :
- Salah satu kondisi saat itu adalah bahwa mesin Turing sedang berada pada status q.
- 𝛼1 adalah substring sebelum head baca/tulis, sedangkan 𝛼2 adalah substring setelah head
baca/tulis pada pita mesin Turing.
- Mesin sedang membaca simbol paling kiri dari 𝛼2 .

Contoh: Q = {𝑞𝟎 , 𝑞𝟏 , 𝑞𝟐 , 𝑞𝟑 , 𝑞𝟒 }, Γ = {0,1,X,Y,B}, Σ = {0,1, 𝐵}, 𝑞𝟎 = 𝑞𝟎 , F = {𝑞𝟒 }, dan fungsi


transisi 𝛿 dinyatakan dalam table berikut ini:
0 1 X Y B
𝒒𝟎 (𝑞𝟏 , 𝑿, 𝑹) - - (𝑞𝟑 , 𝒀, 𝑹) -
𝒒𝟏 (𝑞𝟏 , 𝟎, 𝑹) (𝑞𝟐 , 𝒀, 𝑳) - (𝑞𝟏 , 𝒀, 𝑹) -
𝒒𝟐 (𝑞𝟐 , 𝟎, 𝑳) - (𝑞𝟎 , 𝑿, 𝑹) (𝑞𝟐 , 𝒀, 𝑳) -
𝒒𝟑 - - - (𝑞𝟑 , 𝒀, 𝑹) (𝑞𝟒 , 𝑩, 𝑹)
Maka komputasi string ‘0011’ oleh mesin Turing M dinyatakan dalam rangkaian deskripsi sesaat
berikut:
Penggunaan Mesin Turing dalam Pengembangan Bahasa Pemrograman dan Algoritma
Mesin Turing adalah model komputer teoretis yang diusulkan oleh ahli matematika Inggris
Alan Turing pada tahun 1936. Model ini membentuk dasar dari semua komputer modern dan
memungkinkan pengembangan bahasa dan algoritme pemrograman.
Pengembangan bahasa pemrograman menggunakan mesin Turing untuk membuat bahasa
pemrograman yang efisien dan mudah dipahami manusia. Bahasa pemrograman ini
memungkinkan pemrogram untuk mengekspresikan ide mereka dalam bentuk yang dapat diproses
oleh mesin Turing. Beberapa contoh bahasa pemrograman berdasarkan model mesin Turing adalah
Java, C++, Python dan Ruby.
Selain itu, mesin Turing juga digunakan dalam pengembangan algoritma. Algoritma adalah
seperangkat instruksi logis yang digunakan untuk memecahkan masalah atau mencapai tujuan.
Mesin Turing dapat digunakan untuk merancang algoritma efisien yang dapat digunakan oleh
mesin Turing. Contohnya termasuk algoritma pencarian, algoritma pengurutan, dan algoritma
kecerdasan buatan.
Mesin Turing memungkinkan ilmuwan komputer merancang bahasa dan algoritme
pemrograman yang lebih baik dan lebih efisien. Selain itu, model mesin Turing memberikan
pemahaman yang lebih mendalam tentang keterbatasan komputasi dan memungkinkan peneliti
untuk mengeksplorasi kemungkinan komputasi di masa depan.

Relevansi Mesin Turing di Masa Kini


Kalian mungkin bertanya-tanya, apa hubungannya Mesin Turing dengan dunia kita saat
ini? Nah,untuk itu teman-teman, Mari kita hadapi kenyataan bahwa kita tidak akan memiliki
komputer canggih, smartphone pintar, ataupun internet super cepat tanpa adanya konsep Mesin
Turing.
Mesin Turing inilah yang memberikan fondasi konseptual untuk memungkinkan
pengembangan teknologi komputer modern. Dalam dunia ini, hampir semua komputer yang ada
didasarkan pada prinsip-prinsip yang ditemukan oleh Alan Turing. Ia membuka pintu bagi revolusi
teknologi informasi yang telah merubah dunia kita.
Sekarang, kita telah memahami pentingnya Mesin Turing dalam dunia komputasi. Ia
adalah titik tolak dari revolusi teknologi yang mengubah cara kita hidup, bekerja, dan berinteraksi.
Melalui konsep yang sederhana namun kuat, Mesin Turing telah membawa kita ke era komputasi
modern yang sangat maju.
Dari Mesin Turing, kita telah melihat kemajuan yang luar biasa dalam bidang kecerdasan
buatan, pemrosesan bahasa alami, dan robotika. Bahkan, konsep Mesin Turing ini telah membuka
pintu bagi pengembangan mesin-mesin yang dapat meniru perilaku manusia, seperti robot
humanoid.
Dengan Seiringnya waktu, para peneliti dan insinyur telah menciptakan robot humanoid
yang mampu meniru gerakan, ekspresi wajah, dan bahkan kemampuan berinteraksi dengan
manusia. Dengan menggunakan prinsip-prinsip Mesin Turing, mereka telah menggabungkan
teknologi komputasi, sensorik canggih, dan pengenalan pola untuk menciptakan robot yang
semakin mirip dengan kita, manusia.
Robot humanoid semacam ini memiliki potensi yang tak terbatas. Mereka dapat digunakan
dalam berbagai bidang, mulai dari asisten pribadi yang membantu kita dalam kehidupan sehari-
hari, hingga aplikasi di industri medis, pembelajaran, dan penelitian.
Namun, meskipun kita telah mencapai kemajuan yang signifikan dalam pengembangan
robot humanoid, masih ada tantangan yang harus diatasi. Salah satunya adalah pengembangan
kecerdasan buatan yang lebih kompleks, yang memungkinkan robot untuk berpikir secara fleksibel
dan menghadapi situasi yang belum pernah mereka temui sebelumnya.

BAB 3. Penutup
3.1. Kesimpulan
Dalam konteks perkembangan teknologi informasi, mesin Turing berperan penting sebagai
model komputer teoretis yang menjadi dasar dari semua komputer modern. Mesin Turing
menggambarkan model komputer yang terdiri dari simbol-simbol yang panjangnya tak terhingga
dan kepala baca/tulis yang dapat membaca dan menulis simbol-simbol pada strip. Model ini
kemudian menjadi dasar pengembangan bahasa dan algoritma pemrograman.
Bahasa pemrograman adalah bentuk bahasa yang digunakan manusia untuk
mengekspresikan pikiran dan logika mereka dalam bentuk yang dapat diproses oleh mesin. Bahasa
pemrograman ini didasarkan pada model mesin Turing untuk menciptakan bahasa pemrograman
yang efisien dan dapat dipahami manusia. Bahasa pemrograman seperti Java, C++, Python, Ruby
dan banyak lainnya didasarkan pada model mesin Turing.
Selain itu, mesin Turing juga digunakan dalam pengembangan algoritma. Algoritma adalah
proses atau metode untuk memecahkan masalah atau mencapai tujuan menggunakan urutan
instruksi yang logis. Mesin Turing memungkinkan ilmuwan komputer merancang algoritme
efisien yang dapat diterapkan oleh mesin Turing.
Beberapa contoh algoritma yang dikembangkan menggunakan model mesin Turing adalah
algoritma pencarian, pengurutan, dan kecerdasan buatan. Algoritma pencarian digunakan untuk
menemukan nilai dalam catatan sementara algoritma pengurutan digunakan untuk mengurutkan
catatan. Algoritma kecerdasan buatan menggunakan model mesin Turing untuk merancang sistem
yang dapat meniru kemampuan manusia untuk memproses informasi dan membuat keputusan.
Model mesin Turing memberikan pemahaman yang lebih dalam tentang keterbatasan
komputasi dan memungkinkan peneliti untuk mengeksplorasi kemungkinan komputasi di masa
depan. Selain itu, penggunaan model mesin Turing dalam mengembangkan bahasa dan algoritme
pemrograman menguntungkan para peneliti teknologi informasi dalam mengembangkan bahasa
dan algoritme pemrograman yang lebih baik dan lebih efisien.
3.2. Saran
Sebagai stimulus untuk penelitian di masa depan, kita harus terus mengeksplorasi kemungkinan
dan keterbatasan mesin Turing dalam memecahkan masalah matematika dan komputasi lainnya.
Dengan penelitian ini, kami dapat membuka kemungkinan yang lebih besar untuk pengembangan
teknologi dan pemrosesan data yang lebih maju. Oleh karena itu, kita harus terus berinovasi dan
mengembangkan ilmu pengetahuan di bidang komputasi dan teknologi informasi untuk kemajuan
yang lebih baik.

Daftar Pustaka

Aranski, A. W. (2018). Teori Bahasa Dan Otomata. Padang, Sumatera Barat: Pustaka Galeri Mandiri.

Lesmono, S. (2018). Mesin Turing. Retrieved from Slide Share: https://slideplayer.info/slide/13225059/

Saepudin, N. (2016). Aplikasi Simulator Mesin Turing Pita Tunggal . Makalah IF5110 Teori Komputasi, hal
1.

Anda mungkin juga menyukai