DISUSUN OLEH
Puji dan syukur peneliti panjatkan kepada Allah swt.karena berkat dan rahmat-Nyalah peneliti
dapat menyelesaikan proposal penelitian ini. Shalawat serta salam semoga tercurahkan kepada
baginda Nabi Muhammad saw. kepada para sahabat, serta kepada para umat di akhir zaman ini,
Amin.
Maka dari itu, bermaksud mengajukan tugas makalah “TEORI BAHASA dan OTOMATA” ini
bukanlah karya yang sempurna karena masih memiliki banyak kekurangan, baik dalam hal isi
maupun sistematika dan teknik penulisannya.
Oleh sebab itu, penulis sangat mengharapkan saran dan kritik yang membangun demi
kesempurnaan dari makalah ini dan agar menjadi pelajaran di kemudian hari.Semoga makalahl
ini bisa memberikan manfaat bagi penulis dan bagi yang lainnya.
Otomata bermula sebelum komputer ada pada teori di bidang sistem logika matematika atau
formal, ilmuwan David Hilbert telah mencoba menciptakan algoritma umum untuk pembuktian
(seluruh) persoalan matematika secara otomatis yaitu mampu menentukan salah benarnya
sembarang prosisi matematika.
Tahun 1931, KurtGdel mempublikasikan teori ketidaklengkapan dimana membuktikan
prosedur/algoritma yang dikehendaki David Hilbert tersebut tidak akan pernah ada. KurtGdel
membangun rumus di kalkulus predikat yang diterapkan pada bilangan bulat yang memiliki
pernyataan-pernyataan definisi yang tidak dapat dibuktikan maupun dibantah di dalam sistem
logika yang mungkin dibangun manusia.
Formalisasi argumen teorema ketidaklengkapan KurtGdel ini berikut penjelasan dan
formalisasi selanjutnya dari prosedur efektif secara intuisi merupakan salah satu pencapaian
intelektual terbesar abad 20, yaitu abad dimana formalisasi berkembang semarak.
Pengembangan teori otomata, komputasi dan teori bahasa berikutnya difasilitasi
perkembangan bidang psyco-linguistic. Bidang psyco-linguistic berupaya menjawab pertanyan-
pertanyan berikut:
- Apakah bahasa secara umum?
- Bagaimana manusia mengembangkan bahasa?
- Bagaimana manusia memahami bahasa?
- Bagaimana manusia mengajarkan bahasa ke anak-anaknya?
- Apa gagasan-gagasan yang dapat dinyatakan dan bagaimana caranya?
- Bagaimana manusia membangun kalimat-kalimat dari gagasan-gagasan yang berada di
pikirannya?
Sekitar tahun 1950-an, Noam Chomsky menciptakan model matematika sebagai sarana untuk
mendeskripsikan bahasa serta menjawab pertanyaan-pertanyaan di atas. Saat ini dimulai
pendalaman bidang bahasa computer.
Perbedaan antara bahasa komputer dan bahasa manusia adalah sampai sekarang belum
diketahuinya bagaimana cara manusia mengartikan bahasa, sementara dengan pasti dapat
mengartikan bahasa pada komputer.Noam Chomsky mengemukakan perangkat format disebut
grammar untuk memodelkan properti-properti bahasa.Grammar berisi sejumlah aturan serta
menspesifikasikan bahasa tertentu.Bahasa berisi semua string yang dapat dihasilkan
menggunakan aturan-aturan grammar.
Meski pembahasan Chomsky terutama ditujukan untuk bahasa alami, grammar mempunyai
nilai/manfaat sangat besar di ilmu informatika/komputer karena pencapaian ini digunakan untuk
mendeskripsikan dan mendefinisikan sintaks bahasa pemrograman dan bahasa-bahasa formal
lainnya.
Grammar diterapkan pada perancangan kompilator dan bidang-bidang di ilmu komputer.
McCulloch dan Pittsmengemukakan Mesin Abstrak sederhana yaitu finite automata untuk
memodelkan neuron nets.Finite automata juga digunakan untuk merancang switching circuit.
Studi mengenai teori otomata terkait bidang-bidang lain di ilmu komputer.Kemudian ekivalensi
antara finite automata dan ekspresi reguler (reguler expression) dikemukakan Stephen Kleene.
Sejak saat itu teori bahasa dikaitkan secara erat dengan teori bahasa formal. ubungan teori
otomata dan teori pengkodean (coding theory) juga banyak diteliti.
Turing machine seperti komputer modern saat ini dapat mengolah (simbol-simbol di tape) dan
mengahasilkan keluaran (simbol-simbol yang berada di tapenya setelah berakhirnya sebarisan
pergerakkan) merupakan karya teoritis dari Alan Turing.
2. Pengertian
3. Beberapa bidang ilmu lain yang mendukung pengembangan metode komputasi :
a. Biologi
Mempelajari jaringan neuron yang mengilhami ditemukanannya finite automata.
b. Rangkaian Elektronika
Mempelajari teori switching sebagai perancangan perangkat keras menggunakan finite automata.
c. Matematika
Mengembangkan system logika yang berguna untuk masalah pembuktian automata.
4. Beberapa model komputasi dalam automata
a. 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 komputasional
yang paling sederhana). FA Digunakan pada aplikasi yang membutuhkan teknik pengenalan
pola. Beberapa contoh penerapan Finite automata (FA) : pada aplikasi kompilator, bagian
leksikal harus bisa mengenali string mana yang merepresentasikan variable, nama, konstanta
numerik, dan reserved word.
b. 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).
c. Turing Machine (TM).
Memiliki mekanisme Random Access Memory
Contoh Soal :
Buat diagram transisi untuk mengenali penulisan bilangan Real (mesin float).
Masukkan string berikut :
q 123459 (integer)
q 1234567,987 (real)
q 1234E (tidak valid)
q 1234E+ (tidak valid)
q 1234E56 (real)
q 1234E+56 (real)
q 1234E-56 (real)
Jawab :
b. Tabel Transisi
Tabel transisi : tabel dua dimensi dimana nilai menggambarkan summary dari diagram transisi.
Index
pada baris adalah semua state dan index pada kolom meyatakan symbol yang mungkin
muncul.
Penambahan kolom ekstra dengan label EOS yang berisi accept or error.
Ilmu komputer memiliki dua komponen utama : pertama, model dan gagasan mendasar
mengenai komputasi, kedua, teknik rekayasa untuk perancangan sistem komputasi, meliputi
perangkat keras dan perangkat lunak, khususnya penerapan rancangan dari teori. Teori Bahasa
dan Otomata merupakan bagian pertama. Secara teoritis ilmu komputer diawali dari sejumlah
berbeda disiplin ilmu: ahli biologi mempelajari neural network, insinyur elektro
mengembangkan switchingsebagai tool untuk mendesain hardware, matematikawan bekerja
mendasarkan logika, dan ahli bahasa menyelidiki tata bahasa untuknatural language.
Finite State Automata dan ekspresi reguler awalnya dikembangkan berdasarkan
pemikiran neural network dan switching circuit. Finite State Automata merupakan tool yang
sangat berguna dalam perancanganlexical analyzer, yaitu bagian dari kompilator yang
mengelompokkan karakter-karakter dalam ke dalam token, yang berupa unit terkecil seperti
nama, variabel dan keyword. Dalam sistem penulisan kompilator secara otomatis akan
mentransformasikan ekspresi regular ke dalam finite state automata dan ekspresi regular dipakai
pula dalam text editor, pattern matching, sejumlah pemrosesan teks, dan program file-searching,
dan sebagai konsep matematis untuk aplikasi di disiplin lain seperti logika.
Finite automata terdiri dari sejumlah berhingga state. Dalam banyak sistem dan komponen
seperti dijelaskan di atas, sejumlah berhingga state digunakan untuk mengingat bagian dari
histori sistem. Karena hanya terdapat sejumlah berhingga state, secara umum histori sistem
secara keseluruhan tidak dapat disimpan/diingat, sehingga sistem harus dirancang untuk
mengingat apa yang penting dan melupakan apa yang tidak penting. Context free grammer dan
pushdown automatadigunakan dalam spesifikasi bahasa komputer (pemrograman, markup,
kamus data, query, perintah, script, printer). Dalam parser, bagian kompilator yang memriksa
kebenaran sintaks program. Pemahamanpushdown automata sangat menyederhanakan proses
parsing. Prosesparsing yang berlangsung sangat cepat adalah berkat pemahaman mendalam
teknik parsing bebasis pada pengetahuan mengenai context free grammer.
Mesin Turing merupakan pemodelan mesin komputasi yang ampuh. Berdarkan mesin Turing
dapat diidentifikasi ketidakmungkinan penulisan program. Bila dinyatakan tidak dapat
dikomputasi mesin Turing berarti persoalan tidak mungkin dapat diselesaikan secara komputasi
dengan mesin komputasi apapun. Namun bila dikatakan persoalan dapat dikomputasi mesin
Turing bukan berarti terdapat algoritma penyelesaian efisien. Mesin Turing sangat penting
mengidentifikasi ketidakmungkinan komputasi sehingga kita tidak bersusah payah berusaha
memperoleh solusi 100% terhadap fungsi yang diidentifikasi tidak mungkin dikomputasi.
Contoh 1:
Model pada Gambar 1 dapat dipandang sebagai model finite automato sederhana.
Salah satu state dinyatakan sebagai start state atau initial state yang merupakan
state dimana sistem berada dalam keadaan awal. Dalam Contoh start state adalah
off. Dalam pembahasan selanjutnya, start state ditunjukan oleh kata start dan
panah menuju start state tersebut. Dalam Gambar 1 state on dinyatakan sebagai
final atau accepting state. Dalam state tersebut, peralatan yang sedang dikontrol
oleh switch akan beroperasi. Dalam pembahasan selanjutnya, final State
dinyatakan dalam lingkaran ganda.
Contoh 2:
Daftar Pustaka