TEORI BAHASA DAN OTOMATA PENGANTAR PERKULIAHAN Jumlah pertemuan minimal 13 kali dan maksimal 15 kali sudah termasuk dengan ujian tengah semester (UTS) PENILAIAN ABSEN – 10% (Minimal kehadiran 80% dari jumlah perkuliahan) UTS – 40% (Sudah termasuk tugas, jika ada) UAS – 50% (Sudah termasuk tugas, jika ada) PERTANYAAN ?? Motivasi mengambil mata kuliah Teori Bahasa dan Otomata (TBO) Harapan dalam belajar mata kuliah Teori Bahasa dan Otomata (TBO) Hasil yang didapat dengan belajar mata kuliah Teori Bahasa dan Otomata (TBO) Why study theory? Teori memberikan konsep-konsep dan prinsipprinsip yang membantu kita memahami sifat umum dari suatu disiplin ilmu Disiplin ilmu komputer memiliki lingkup yang luas Terdapat prinsip-prinsip dasar yang melandasinya Untuk mempelajari prinsip-prinsip dasar tersebut dibuat model abstrak komputer Model abstrak komputer & komputasi Memiliki sifat fitur-fitur dasar yang terdapat pada software & hardware Kecerdasan Buatan Didalam bahasa Otomata ada yang namanya kecerdasan buatan Kecerdasan buatan adalah bidang ilmu yang mendasarkan bagaimana sebuah komputer bisa bertindak seperti dan sebaik manusia Aplikasi Kecerdasan buatan: 1.Sistem pakar 2.Pengolahan bahasa alami 3.Pengenalan ucapan 4.Robotika dan sistem senso 5.Computer Vision 6.Problem solving and planning 7.Permainan APLIKASI Desain digital Bahasa pemrograman Parser/Compiler Pemroses naskah (text processor) Sistem Operasi Mesin Jaja / vending machine Mesin penukar uang Kunci kombinasi Pengenalan pola Robotika Model-model dll Mengenal TBO Teori bahasa dan automata merupakan salah satu komponen ilmu informatika, teori ini merupakan ide dan model fundamental yang mendasari sebuah system komputasi, teori ini juga bisa disebut sebagai sebuah teknik rekayasa untuk perancangan system komputasi. Mengenal TBO Lanjt.. Beberapa bidang ilmu lain yang mendukung pengembangan metode komputasi : Biologi Mempelajari jaringan neuron yang mengilhami ditemukanannya finite automata. Rangkaian Elektronika Mempelajari teori switching sebagai perancangan perangkat keras menggunakan finite automata. Matematika Mengembangkan system logika yang berguna untuk masalah pembuktian automata. Definisi TBO Bahasa merupakan beberapa variabel yang dapat dibentuk dari himpunan alfabet. Rangkaian simbol-simbol yang mempunyai makna. Refresentasi suatu bahasa yang berupa suatu kalimat dibangun dari unit-unit kebahasaan, dimulai dari yang paling sederhana yaitu huruf kemudian kata dan akhirnya terbentuklah kalimat. Adapun teori bahasa itu sendiri membicarakan tentang bahasa formal, terutama untuk kepentingan perancangan kompilator dan pemroses naskah. Model Komputasi Finite automata (FA) Sering juga disebut dengan Finite State Automata (FSA). Terdiri dari Deterministic Finite Automata (DFA) dan Non Deterministik Finite Automata (NDFA). Teori dasar dari FA sangat umum yaitu system pada saat berada di salahsatu state dari sejumlah state bergerak diantara state-state secara dapat diproduksi yang bergantung pada masukan ke system. Salah satu penerapannya adalah kompilasi/translasi bahasa pemograman tingkat tinggi menjadi bahasa mesin yang ekivalen. Finite automata merupakan jenis otomata yang tidak memiliki memori sementara, FA adalah kelas mesin dengan kemampuan paling terbatas. Model Komputasi Lanjt.. Pushdown Automata (PA) Terdiri dari Deterministic Pushdown Automata (DFA) dan Non Deterministik Pushdown Automata (NDFA). PA memiliki memori sementara dengan mekanisme stack LIFO (Last In First Out). Turing Machine (TM). Memiliki mekanisme Random Access Memory. Dalam teori bahasa dan Automata digunakan model state (State Machine Model). atau biasa disebut model transisi (State Transition Model), pengembangan teori automata difasilitasi dengan perkembangan bidang Psycho Linguistik. OTOMATA Arti menurut American Heritage Dictionary: 1. A robot 2. One that behaves in an automatic or mechanical fashion Arti dalam Matematika Berkaitan dengan teori mesin abstrak, yaitu mesin sekuensial yang menerima input, dan mengeluarkan output, dalam bentuk diskrit. OTOMATA LANJ.. Mempelajari model yang merepresentasikan fitur-fitur inti dari semua komputer dan aplikasinya Automaton (plural: automata) Suatu bentuk yang memiliki semua fitur utama dari komputer digital Menerima input Menghasilkan output Dapat memiliki penyimpanan sementara Dapat membuat keputusan dalam proses mentransformasikan input menjadi output OTOMATA LANJ.. Formal language Abstraksi karakteristik umum bahasa pemrograman Terdiri atas: Sekumpulan simbol Beberapa aturan pembentukan (menjadi kalimat) “Sekumpulan string yang diterima oleh suatu aturan pembentukan” TERMINOLOGI DASAR Beberapa terminologi dasar dari sebuah teori bahasa diantaranya: Alphabet Concatination / penyambungan String TERMINOLOGI DASAR Lanjt.. Dalam teori bahasa, Istilah huruf = karakter = simbol dan istilah kalimat = kata = string. Simbol / huruf / karakter Merupakan sebuah elemen alphabet yang memiliki makna unik / tunggal, misalnya symbol A dan symbol B yang memiliki makna berbeda. Alphabet Dilambangkan dengan huruf capital miring, alphabet adalah himpunan tak kosong yang berhingga dari symbol – symbol. Kata / kalimat / String Kata merupakan dereten symbol –simbol dari suatu alphabet TERMINOLOGI DASAR Lanjt.. Contoh : C = {a,b,c,1,2,3} Contoh diatas merupakan contoh sebuah alphabet C yang memiliki 6 buah symbol Contoh sebuah kata / string dari alphabet C: acca, back, 132, a12, dst. Kata acca dengan caac memiliki makna yang berbeda. Kata acca, 121, abba memenuhi aturan palindrome (walaupun kata dibalik memiliki makna yang sama). SIFAT-SIFAT OTOMATA Kelakuan mesin bergantung pada rangkaian masukan yang diterima mesin tersebut. Setiap saat, mesin dapat berada pada suatu status tertentu dan dapat berpindah ke status baru karena adanya perubahan input. Rangkaian input (diskrit) pada mesin otomata dapat dianggap sebagai bahasa yang harus "dikenali" oleh sebuah otomata. setelah pembacaan input selesai, mesin automata kemudian membuat "keputusan".