It's something unpredictable, but in the end it's right.

Perkenalan Ilmu TBO

enigma

Apa itu Teori Bahasa dan Otomata?

Teori Bahasa dan Otomata atau yang biasa disingkat TBO memiliki dua kata yang berbeda arti, yaitu teori bahasa dan otomata. Ada baiknya bila kita mengetahui arti dari tiap kata itu terlebih dahulu.

Bahasa di dalam kamus adalah suatu sistem yang meliputi pengekspresian gagasan, fakta, konsep, termasuk sekumpulan simbol-simbol dan aturan untuk melakukan manipulasinya. Bahasa bisa juga disebut sebagai rangkaian simbol-simbol yang mempunyai makna. Teori bahasa juga membicarakan bahasa formal (formal language), terutama untuk kepentingan perancangan kompilator (compiler) dan pemroses naskah (text processor) dalam jurusan teknik informatika. Adapun bahasa formal merupakan kumpulan kalimat. Semua kalimat dalam sebuah bahasa dibangkitkan oleh sebuah tata bahasa (grammar) yang sama.

Otomata merupakan mesin abstrak yang dapat mengenali, menerima, atau membangkitkan sebuah kalimat dalam bahasa tertentu. Otomata juga dianggap sebagai mesin otomatis (bukan mesin fisik) yang merupakan suatu model matematika dari suatu sistem yang menerima input dan menghasilkan output serta terdiri dari sejumlah berhingga state. Jauh sebelum ada komputer, tahun 1930, Alan Turing mempelajari mesin abstrak yang punya kemampuan seperti komputer sekarang, dikenal dengan nama Mesin Turing. Tujuan Turing adalah menggambarkan secara jelas apa yang dapat dan yang tidak dapat dilakukan mesin komputing. Kemudian pada tahun 1940 an dan 1950-an, ditemukan mesin abstrak yang lebih sederhana, yaitu “finite automata”. Otomata ini, asalnya diperuntukkan untuk membentuk fungsi kecerdasan, berubah secara drastis untuk keperluan lain yang sangat beragam. Tahun 1950-an juga Chomsky mempelajari tentang “tata bahasa” formal, yang sangat berguna untuk pengembangan compiler.

Hubungan di antara bahasa dan otomata adalah bahasa dijadikan sebagai input oleh suatu mesin otomata, selanjutnya mesin otomata akan membuat keputusan yang mengindikasikan apakah input itu diterima atau tidak.

Ilmu komputer mempunyai dua komponen utama :

  1. Model dan gagasan mengenai komputasi, dan
  2. Teknik rekayasa untuk perancangan sistem komputasi, yang meliputi perangkat keras dan perangkat lunak.

Nah, dari kedua komponen utama tersebut, Teori Bahasa dan Otomata merupakan bagian dari komponen pertama.

Apa tujuan mempelajari Teori Bahasa dan Otomata?

Secara garis besar ada dua fungsi otomata dalam hubungannya dengan bahasa, yaitu :

  1. Fungsi otomata sebagai pengenal (RECOGNIZER) string-string dari suatu bahasa, dalam hal ini bahasa sebagai masukan dari otomata.
  2. Fungsi otomata sebagai pembangkit (GENERATOR) string-string dari suatu bahasa, dalam hal ini bahasa sebagai keluaran dari otomata.

Kedua teori ini juga dipelajari guna memberikan konsep dan prinsip yang menolong untuk memahami arti kata “perilaku” dari suatu disiplin ilmu. Teori ini akan sangat dirasakan manfaat langsungnya apabila nantinya akan mempelajari mata kuliah teknik kompilasi kedepannya.

Contoh Penerapan Ilmu Teori Bahasa dan Otomata

Contoh penggunaan otomata dan bahasa adalah dalam aplikasi asisten pada smartphone, yaitu Siri dari Apple dan Cortana dari Microsoft.

Siri adalah perangkat lunak yang dikembangkan oleh perusahaan asal Amerika Serikat, Apple yang menggunakan perintah atau input suara. Aplikasi ini diterapkan pada perangkat milik Apple. Ketika pengguna perangkat Apple memerintahkan lewat suara, perangkat akan menangkap suara ini, mengubahnya menjadi file biner dan kemudian mengirimnya melalui jaringan internet ke server Apple di Amerika Serikat. Di server ini, suara ini akan diolah menjadi perintah yang sesuai dengan keperluan pengguna.

Sama seperti Siri, Cortana adalah aplikasi perintah suara, dan aplikasi ini dikembangkan oleh Microsoft sebagai pesaing dari Siri. Prinsip kerja Cortana mirip dengan Siri. Cortana terdapat di perangkat yang menggunakan sistem operasi Windows 10.

Penggunaan mesin ATM merupakan contoh lain dalam teori bahasa dan otomata. Suatu mesin ATM meminta dan membaca input dari user, lalu mencocokkannya dalam database bank dan menghasilkan output berupa uang yang diminta atau keterangan lain.