-->
- Bahasa
·
Teori Bahasa dan Otomata
Bahasa
adalah struktur yang dikendalikan sekumpulan aturan tertentu, semacam mesin
untuk memproduksi makna. Akan tetapi seperti setiap mesin hanya terdapat
kemungkinan terbatas bagi setiap orang dalam menggunakannya.
Dalam
bahasa disediakan pembendaharaan kata atau tanda (vocabulary), serta perangkat
aturan bahasa (grammar, sintaks) yang harus dipatuhi jika hendak menghasilkan
sebuah ekspresi yang bermakna.
·
Proses Kemampuan Pemahaman Bahasa
Hipotesis
Noam Chomsky menggugat postulat John Locke (tokoh empirisme) yang menyatakan
segala pengetahuan yang dimiliki manusia berasal dari rangsangan-rangsangan
luar (pengalaman) yang ditangkap oleh indera-indera manusia, sehingga
meniadakan pengetahuan apriori (pengetahuan yang langsung tertanam di manusia)
Noam
Chomsky menyandarkan pada pemahaman bahasa sebagai sesuatu yang bersifat khas
dan bawaan (tertanam) pada manusia sejak lahir.
Secara
khusus Chomsky dipengaruhi Descartes tentang bahasa dan pikiran yang terikat
begitu erat sehingga pengetahuan tentang bahasa bisa membuka pengetahuan
tentang pikiran manusia.
Secara
mendasar bahasa adalah bagian psikologi manusia yang dipahami sebagai teori
tentang kemampuan pikiran manusia berupa ungkapan dari subjek psikologi.
Chomsky dan para ahli bahasa telah mengamati anak kecil mampu menjadi lancar berbahasa lebih cepat dan mudah dibanding "algoritma belajar berbahasa".
Chomsky dan para ahli bahasa telah mengamati anak kecil mampu menjadi lancar berbahasa lebih cepat dan mudah dibanding "algoritma belajar berbahasa".
Sehingga para ahli bahasa membuat hipotesis
otak berisi/memuat suatu "mesin bahasa umum". Kemudian selama
masa awal pertumbuhan anak, terjadi pertemuan dengan bahasa sehari-hari yang
mengubah mesin bahasa umum menjadi mesin bahasa partikular (tertentu) ke bahasa
spesifik.
Teori
Bahasa adalah konsep-konsep pada "string alpabet V" dalam
penyambungan karakter-karakter alpabet untuk membentuk suatu makna (bahasa).
·
Alpabet
Adalah himpunan simbol (karakter) tak kosong yang berhingga. Alpabet digunakan untuk membentuk kata-kata (string-string) di bahasa. Bahasa dimulai dengan alpabet. Pada beberapa buku, alpabet dilambangkan dengan Σ Istilah huruf, karakter dan simbol adalah sinonim menunjukkan elemen alpabet. Jika simbol berbaris bersebelahan, maka diperoleh "string simbol". Istilah kalimat, kata dan string adalah sinonim.
Contoh :
{a,b} -> Himpunan
yang terdiri dari simbol "a" dan "b".
·
Penyambungan (Concatenation - o)
Penyambungan dilakukan pada 2 karakter atau lebih membentuk 1
barisan karakter (string simbol).
Contoh :
'a' o 'b' = 'ab'
'ab' o 'baab' = 'abbaab'
·
String pada alpabet V
Karakter atau barisan karakter pada alpabet V dibentuk dari
penyambungan karakter pada alpabet V.
String pada alpabet V adalah deretan (sekeun) simbol dari V dimana perulangan simbol diijinkan.
Contoh :
V = {a,b,c,d}
String pada alpabet V antara lain -> 'a','abcd','bbba'
·
Pemangkatan
Penyambungan dapat
dianggap sebagai perkalian karena biasanya penulisannya adalah bila x dan y
string, maka x o y adalah xy. sehingga pemangkatan dapat digunakan
VoV = VV = V2 ----> Panjang string = 2
VoV = VV = V2 ----> Panjang string = 2
VoVoV = V2oV=V3 -> Panjang string = 3
VoVoVoV = N4 ----> Panjang string = 4
VoVoVo...oV=Vn ---> Panjang string = n
Vk = VoVoVo...oV
adalah himpunan string dengan panjang k, masing-masing simbol adalah alpabet V
V* = {ε} U V+ (Kleene closure) adalah string pada V, termasuk string kosong dimana ε string kosong (string tanpa simbol).
ε mempunyai sifat identitas, yaitu:
ε o x = x
x o ε = x
V+ = V1 U V2 U V3 U ... (Positive closure)
adalah himpunan string pada V, tidak ada string kosong didalamnya.
V0 = {ε} adalah himpunan yang isinya hanya string kosong, dimana String kosong ε tidak sama dengan himpunan kosong
Maka 'bbba' dapat ditulis 'b3a'
·
Panjang String
Panjang string dilambangkan |w| dimana panjang string adalah jumlah simbol di dalam string bukan pada alpabet dan pengulangan kemunculan simbol dihitung.
Contoh:
|ε| = 0
|a| = 1
|aa| = 2
|aaa| = 3
|aaab| = 4
- Otomata
Adalah mesin abstrak yang menggunakan model matematika,
tetapi matematika yang digunakan benar-benar berbeda dibanding matematika
klasik dan kalkulus. Model yang digunakan adalah model mesin state (state
machine model) atau model trnasisi state (state transition model).
Terdapat 3 model
komputasi pada teori otomata.
1.
Finite
automata
2.
Pushdown
automata
3.
Turing
Mavhine
- Memori Otomata
Otomata dibedakan berdasarkan jenis memori sementara yang
dimilikinya, yaitu:
1.
Finite
automata (FA)
Tidak
memiliki memori sementara. Finite automata adalah kelas mesin dengan
kemampuan-kemampuan paling terbatas.
2.
Pushdown
automata (PDA)
Memiliki
memori sementara dengan mekanisme LIFO (Last In, First Out). Mesin ini lebih
ampuh karena bantuan keberadaan stack yang dipandang sebagai unit memori
3.
Turing
Machine (TM)
Memiliki
memori dengan mekanisme pengaksesan acak (Random akses memori). Turing Machine
merupakan model matematika untuk komputer saat ini.
- Sejarah Otomata dan Teori Bahasa
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, Kurt Gdel
mempublikasikan teori ketidaklengkapan dimana membuktikan prosedur/algoritma
yang dikehendaki David Hilbert tersebut tidak akan pernah ada.Gdel 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 Gdel 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 komputer.
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.
Noam Chomsky mengemukakan perangkat format disebut grammar untuk memodelkan properti-properti bahasa.
- Grammar
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 Pitts mengemukakan Mesin Abstrak sederhana yaitu finite automata untuk memodelkan neuron nets.
McCulloch dan Pitts mengemukakan 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.
Karena banyak yang berperan pada pengembangannya, bidang teori ini diberi aneka ragam nama yaitu:
- teori otomata (theory of automata)
- teori bahasa formal (theory of formal language)
- teori mesin turing (theory of Turing machine).
Jadi, dari kesimpulan di
atas Otomata adalah MODEL. Model dari sistem apapun yang akan kita
komputasikan. Tidak ada bidang apapun dalam teknologi informasi yang tidak
terkait dengan teori ‘dahsyat’ ini. Semua bentuk sistem, diskrit, kontinu,
bahkan hybrid (gabungan event diskrit dan kontinu dalam satu sistem) dapat
dimodelkan oleh teori ‘digdaya’ ini.
Sementara, Kompilasi
adalah ilmu yang mempelajari bagaimana kita dapat merancang & membangun
bahasa pemrograman.
Kompilasi merupakan salah
satu bidang yang memanfaatkan teori ‘sakti’ ini.
Komputasi menjadi isu penting karena mempelajari bagaimana merancang mesinyang mampu melakukan proses-proses intelektual (yang mulanya hanya dapat dilakukan manusia). Dan benarkah batasan-batasan yang dimiliki komputer pada dasarnya disebabkan oleh kelemahan programmer (manusia), dan bukan batasan intrinsik yang dimiliki mesin/computer?
Komputasi menjadi isu penting karena mempelajari bagaimana merancang mesinyang mampu melakukan proses-proses intelektual (yang mulanya hanya dapat dilakukan manusia). Dan benarkah batasan-batasan yang dimiliki komputer pada dasarnya disebabkan oleh kelemahan programmer (manusia), dan bukan batasan intrinsik yang dimiliki mesin/computer?
Jika Ya, maka kita berharap agar batasan-batasan tersebut dapat terreduksi melalui pengembangan teori komputasi.
Simbol-simbol dari Terminal diantaranya :
ü huruf kecil, misalnya : a, b, c, 0, 1, ..
ü simbol operator, misalnya : +, -, dan ´
ü simbol tanda baca, misalnya : (, ), dan ;
ü string yang tercetak tebal, misalnya : if, then, dan else.
Simbol-simbol berikut adalah simbol non terminal /Variabel : ü huruf besar, misalnya : A, B, C ü huruf S sebagai simbol awal ü string yang tercetak miring, misalnya : expr
Huruf yunani melambangkan
string yang tersusun atas simbol-simbol terminal atau simbol-simbol non
terminal atau campuran keduanya, misalnya : a, b, dan g.
Sebuah produksi
dilambangkan sebagai a ® b, artinya : dalam sebuah derivasi dapat dilakukan
penggantian simbol a dengan simbol b.
Derivasi adalah proses
pembentukan sebuah kalimat atau sentensial. Sebuah derivasi dilambangkan
sebagai : a Þ b.
Tidak ada komentar