0% menganggap dokumen ini bermanfaat (0 suara)
158 tayangan110 halaman

Buku Ajar Kecerdasan Buatan 2015

Bahan ajar ini membahas Kecerdasan Buatan (AI) dan beberapa topik terkaitnya. Materi yang dibahas antara lain pengantar AI, asumsi dasar, metode pencarian, pemrosesan bahasa alami, ketidakpastian, logika pertama ordo, sistem pakar, dan logika fuzzy. Bahan ajar ini diharapkan dapat membantu mahasiswa memahami konsep-konsep dasar AI serta menerapkannya dalam pemecahan masalah.

Diunggah oleh

Bagas Prasetyo
Hak Cipta
© All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai DOCX, PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
158 tayangan110 halaman

Buku Ajar Kecerdasan Buatan 2015

Bahan ajar ini membahas Kecerdasan Buatan (AI) dan beberapa topik terkaitnya. Materi yang dibahas antara lain pengantar AI, asumsi dasar, metode pencarian, pemrosesan bahasa alami, ketidakpastian, logika pertama ordo, sistem pakar, dan logika fuzzy. Bahan ajar ini diharapkan dapat membantu mahasiswa memahami konsep-konsep dasar AI serta menerapkannya dalam pemecahan masalah.

Diunggah oleh

Bagas Prasetyo
Hak Cipta
© All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai DOCX, PDF, TXT atau baca online di Scribd

BAHAN AJAR

KECERDASAN BUATAN

OLEH :

ARMIN LAWI

Dibiayai oleh Dana BOPTN Unhas Tahun Anggaran 2015

PRODI ILMU KOMPUTER JURUSAN MATEMATIKA


FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
UNIVERSITAS HASANUDDIN
2015
PRAKATA

Puji syukur kepada Allah S.W.T karena hanya izin-Nya bahan ajar untuk
Matakuliah Kecerdasan Buatan ini dapat diselesaikan. Tak lupa pula ucapan
terima kasih kepada semua pihak yang telah banyak memberikan saran dan
masukkan.
Bahan ajar ini diharapkan dapat membantu mahasiswa sebagai referensi
tambahan untuk memahami matakuliah ini. Buku ini terdiri dari materi yang
dirangkum dari beberapa referensi seperti yang terlampir dalam daftar pustaka
terdiri dari Pengantar Kecerdasan Buatan, Sistem Pakar, Jaringan Saraf Tiruan,
Algoritma Genetika, Logika Fuzzy dst.
Penulis sadar bahwa bahan ajar ini belum sempurna dan perlu perbaikan
sesuai dengan perkembangan teknologi khusus dalam bidang ini. Penulis
mengharapkan saran dan masukan agar bahan ajar ini akan lebih baik lagi di masa
akan datang.

Makassar, Desember 2015


Penyusun

ii
IDENTITAS MATA KULIAH

Program Studi : Ilmu Komputer


Nama mata kuliah/Kode : Kecerdasan Buatan
Jumlah SKS : 3 SKS
Pengajar :

1. Dr. Eng Armin Lawi, [Link]


2. Hendra, [Link], [Link]

Sasaran Belajar :
 Mahasiswa dapat mengetahui konsep kecerdasan buatan, sejarah kecerdasan
buatan dan contoh aplikasi kecerdasan buatan
 Mahasiswa mampu mengetahui Metode Pencarian Heuristik
 Mahasiswa mampu menjelaskan dan memahami tentang konsep dasar logika
proporsisi baik secara sintaks maupun semantik
 Memahami konsep first order logic dan komponen-komponenannya
 Menerapkan first-order logic pada pemecahan masalah
 Memahami konsep logika fuzzy dan menerapkan pada pemecahan masalah
 Memahami konsep Jaringan Syaraf Tiruan dan menerapakan untuk memecahkan
masalah
 Memahami konsep Algoritma Genetika dan menerapkan untuk memecahkan
masalah

Mata kuliah Prasyarat : -

iii
HALAMAN TERIMA KASIH

Penulis mengucapkan terima kasih kepada teman-teman dosen khususnya di


program studi ilmu komputer yang turut berperan dalam menyusun buku ajar.
Terima kasih juga saya aturkan kepada staf dan pimpinan Jurusan dan Fakultas
yang sangat mendukung dalam penyusunan buku ajar ini. Juga kepada pimpinan
Universitas Hasanuddin yang membantu memberikan Dana BOPTN tahun
Anggaran 2015.

iv
DAFTAR ISI
PRAKATA ........................................................................................................................ ii
IDENTITAS MATA KULIAH ...................................................................................... iii
HALAMAN TERIMA KASIH ........................................................................................iv
DAFTAR ISI ..................................................................................................................... v
PERTEMUAN I PENGANTAR KECERDASAN BUATAN ........................................1
I.1 Definisi Kecerdasan Buatan ....................................................................................... 1
I.2 Sejarah Kecerdasan Buatan ........................................................................................ 3
I.3 Tujuan AI ........................................................................................................................... 4
I.4 Arah AI................................................................................................................................ 4
I.5 Contoh aplikasi Kecerdasan Buatan........................................................................ 5
I.6 Latihan ............................................................................................................................... 5
PERTEMUAN II ASUMSI DASAR ...............................................................................6
II.1 Physical Symbol System Hypothesis ...................................................................... 6
II.2 Penyelesaian Masalah berdasarkan teknik AI ................................................... 7
II.3 Pendefinisian Masalah Sebagai Pencarian Ruang Keadaan .......................... 7
II.4 Sistem Produksi ..........................................................................................................10
PERTEMUAN III METODE PENCARIAN I ............................................................ 11
III.1 Algoritma Pencarian Dasar ...................................................................................11
III.2 Strategi Pencarian Uninformed ...........................................................................12
III.3 Breadth-First Search (BFS) ....................................................................................13
III.4 Uniform Cost Search (UCS).....................................................................................14
III.5 Depth-first search (DFS) .........................................................................................14
III.6 Depth Limited Search (DLS) ..................................................................................15
III.7 Iterative Deepening Search (IDS) ........................................................................16
PERTEMUAN IV METODE PENCARIAN II ........................................................... 17
III.1 Definisi Heuristik ......................................................................................................17
III.2 Generate and Test .....................................................................................................17
III.3 HILL CLIMBING ...........................................................................................................18
III.4 Best First Search ........................................................................................................20
PERTEMUAN V NATURAL LANGUAGE PROCESSING ...................................... 22
V.1 Pendahuluan .................................................................................................................22
V.2 Aplikasi dalam bidang natural language ............................................................24
V.3 Grammar ........................................................................................................................25
V.4 Chomsky Hierarchy of Generative Grammar ....................................................27
V.5 Parsing ............................................................................................................................27
PERTEMUAN VI KETIDAKPASTIAN ..................................................................... 29
VI.1 Definisi ketidakpastian ...........................................................................................29
VI.2 Probabilitas Klasik ....................................................................................................30
VI.3 Probabilitas Bersyarat ............................................................................................31
VI.4 Teorema Bayes ...........................................................................................................32
VI.5 Faktor Kepastian.........................................................................................................32
PERTEMUAN VII FIRST ORDER LOGIC ............................................................... 37

v
VII. Definisi First Order Logic.........................................................................................37
VII.2 Sintaks First Order Logic .......................................................................................39
VII.3 Simantik First Order Logic....................................................................................40
VII.4 Equality ........................................................................................................................43
VII.5 Inferensi pada First Order Logic ........................................................................44
PERTEMUAN VIII UJIAN TENGAH SEMESTER.................................................. 45
PERTEMUAN IX SISTEM PAKAR ........................................................................... 47
IX.1 Pendahuluan ...............................................................................................................47
IX.2 Komponen Sistem Pakar .........................................................................................49
IX.3 Pembangunan Sebuah Sistem Pakar ..................................................................51
PERTEMUAN X LOGIKA FUZZY ............................................................................. 56
X.1 Pengenalan Logika Fuzzy .........................................................................................56
X.2 Komponen Dasar Logika Fuzzy ..............................................................................57
PERTEMUAN XI LOGIKA FUZZY II ....................................................................... 64
XI.I Adaptive Neuro-Fuzzy Inference System ...........................................................64
XI.2 Lalu Lintas ....................................................................................................................68
PERTEMUAN XII ALGORITMA GENETIKA ......................................................... 72
XII.1 Pendahuluan ..............................................................................................................72
XII.2 Pengertian Individu ................................................................................................73
XII.3 Nilai Fitness ................................................................................................................75
XII.4 Siklus Algoritma Genetika ...................................................................................75
PERTEMUAN XIII ALGORITMA GENETIKA II ................................................... 77
XIII.1 Komponen-komponen Utama Algoritma Genetika ...................................77
XIII.1.1 Teknik pengkodean ..................................................................................................... 77
XIII.1.2 Membangkitkan populasi awal .............................................................................. 77
XIII.1.3 Seleksi ............................................................................................................................... 79
XIII.1.4 Mutasi ............................................................................................................................... 87
PERTEMUAN XIV JARINGAN SYARAF TIRUAN ................................................. 90
XIV.1 Jaringan Syaraf Biologis .......................................................................................90
XIV.2 Jaringan Syaraf Tiruan ..........................................................................................92
XIV.3 Model Struktur Neuron JST .................................................................................93
PERTEMUAN XV JARINGAN SYARAF TIRUAN II ............................................. 95
XV.1 Arsitektur JST ............................................................................................................95
XV.2 Proses Pembelajaran Jaringan ............................................................................98
X.3 Aplikasi Jaringan Syaraf Tiruan.......................................................................... 101
PERTEMUAN XVI UJIAN AKHIR SEMESTER ................................................... 103
DAFTAR PUSTAKA ................................................................................................. 104

vi
PERTEMUAN I
PENGANTAR KECERDASAN BUATAN

I.1 Definisi Kecerdasan Buatan


Definisi AI menurut Russel dan Norvig (Russel, Norvig, 2003) dapat
dikategorikan menjadi dua dimensi utama yang membahas proses/penalaran
berpikir (reasoning) dan perilaku/tindakan (behavior). Selanjutnya definisi AI
dapat dijabarkan lagi berdasarkan kinerja (performance) dan rasionalitasnya.
1. Sistem yang bertindak seperti manusia (act humanly)

“Ilmu tentang bidang mental melalui penggunaan model komputasional.”


(Charniak & McDermott, 1985) Tes Turing: Pada tahun 1950 Turing
mengusulkan ide untuk mendefinisikan kecerdasandalam makalahnya yang
berjudul “Computing machinery and intelligence". Pertanyaan utamanya adalah
untuk mengetahui apakah mesin dapat berpikir atau tidak yang masih tidak jelas.
Untuk mengetahui jawaban atas masalah tersebut, ia merancang sebuah skenario
pengujian antara komputer dan manusia, serta seorang interrogator yaitu manusia.
Fokusnya bukan untuk menjawab pertanyaan tentang kemampuan mesin untuk
berpikir, tetapi untuk mengamati kemampuan mesin untuk berperilaku cerdas.
komputer berhasil melewati tes jika interogator manusia, setelah mengajukan
beberapa pertanyaan tertulis , tidak bisa menentukan apakah jawaban tertulis itu
berasal dari komputer atau manusia. Turing memprediksi bahwa pada tahun 2000,
komputer mungkin memiliki kesempatan 30% untuk membodohi orang awam
selama 5 menit. Prediksi Turing tersebut terbukti. Saat ini komputer sudah dapat
melakukan serangkaian tes Turing yang dikenal sebagai imitation game. Untuk
dapat melakukan hal tersebut komputer perlu memiliki beberapa kemampuan
yaitu:
 Pemrosesan bahasa alami (natural language processing) agar komputer
dapat berkomunikasi dengan bahasa alami manusia.
 Representasi pengetahuan (knowledge representation) untuk menyimpan
apa yang diketahuinya.
 Penalaran otomatis (Automated reasoning) yang menggunakan informasi
yang tersimpan untuk menjawab pertanyaan maupun menarik kesimpulan
baru.
 Pembelajaran mesin (Machine learning) untuk beradaptasi pada
lingkungan baru dan mendeteksi serta mengenali pola
 Computer vision untuk menangkap dan mempersepsikan obyek.
 Robotika untuk memanipulasi obyek dan bergerak Keenam disiplin ini
membentuk ilmu AI, dan Allan Turing adalah orang yang berjasa
mendesain serangkaian tes yang tetap relevan 50 tahun kedepan.
2. Sistem yang berpikir seperti manusia (think humanly)

“Upaya untuk membuat komputer dapat berpikir. Mesin dengan pikiran dalam
makna sebenarnya.” (Haugeland, 1985)
Pendekatan pemodelan kognitif:
Untuk menyatakan apakah suatu program komputer dapat berpikir seperti
manusia,haruslah dapat ditentukan bagaimanakah proses manusia berpikir. Untuk
menjawabnya perlu eksperimen psikologi. Jika kita punya cukup pengetahuan
tentang teori pikiran, maka sangat memungkinkan mengekspresikan teori tersebut
dalam program komputer. Pada era 1960an muncul ilmu kognitif sebagai suatu
bidang interdisipliner yang menggabungkan model komputer pada AI dengan
teknik eksperimen pada psikologi untuk membangun teori tentang cara kerja otak
manusia. Ahli komputer menyatakan bahwa algoritma komputer yang berjalan
baik dalam menyelesaikan suatu masalah merupakan model proses berpikir
manusia. Pada akhirnya bidang AI terpisah dari psikologi kognitif. Kedua bidang
tersebut saling mendukung khususnya pada ranah computer vision dan
pemrosesan bahasa alami.
3. Sistem yang berpikir rasional (think rationally)

“Seni menciptakan mesin yang dapat mengerjakan fungsi yang membutuhkan


kecerdasan jika dikerjakan oleh manusia.” (Kurzweil, 1990) “Laws of thought” =

2
pendekatan penalaran Filosofis Yunani, Aristotles adalah orang pertama yang
berupaya mengkodekan “berpikir dengan benar” atau melalui proses penalaran
(reasoning). Proses ini dikenal dengan silogisme, yaitu suatu struktur/pola
memberikan argument melalui sekumpulan premis yang akan selalu memberikan
konklusi yang benar. Contoh silogisme: Premis 1: Socrates adalah manusia
Premis 2: Semua manusia bisa mati Konklusi: Socrates bisa mati Ilmu yang
mempelajari pendekatan penalaran ini disebut Logika. Para ahli logika di abad ke-
19 membangun notasi standar logika untuk menyatakn seluruh kejadian di dunia
beserta relasinya. Ada beberapa hambatan pada pendekatan logika yaitu:
 Tidak mudah untuk memperoleh pengetahuan informal dan
menyatakannya dalam istilah formal (notasi logika).
 Mekanisme logika membutuhkan biaya komputasi yang tinggi.
 Pemecahan masalah "pada prinsipnya" ≠ pemecahan masalah dalam
praktek.

I.2 Sejarah Kecerdasan Buatan


Sejarah perkembangan kecerdasan buatan dibagi menjadi beberapa periode
yang dapat dijabarkan sebagai berikut:
 Cikal bakal Kecerdasan Buatan (1943 – 1955) - Cikal bakal AI dikerjakan
oleh McCulloh & Pitts dengan Neuron buatan yang menirukan cara kerja
neuron manusia dengan logika proposisional. Bisa menyelesaikan fungsi
komputasi dengan struktur neuron network. - Hebbian learning,
memperkenalkan aturan sederhana untuk meng-update kekuatan antar
neuron. - Minsky & Edmonds membangun komputer neural network
pertama pada 1950. - Allan Turing dianggap sebagai orang pertama yang
mengeluarkan pikiran tentang AI secara lengkap pada artikelnya yang
berjudul “Computing machinery and Intelligent” pada tahun 1950.
 Kelahiran Kecerdasan Buatan (1956) - McCarthy menginisiasi Dartmouth
Workshop pada tahun 1956 yang melahirkan suatu nama bidang baru
“Artificial Intelligence”. - Mengapa AI berbeda dengan disiplin ilmu lain
yang serupa? Karena AI berfokus menirukan kemampuan manusia seperti

3
kreatifitas, pengembangan diri, dan penggunaan bahasa. Selain itu juga
karena metodologi AI merupakan cabang dari ilmu komputer yang
berupaya membangun mesin yang berfungsi otonom pada lingkungan
yang kompleks dan berubah-ubah. –
 Awal mula AI yang penuh antusias dan harapan besar (1952 – 1969)
Merupakan tahap pengembangan aplikasi AI yang sukses jika dibandingan
dengan program komputer primitif. Banyak aplikasi AI yang berhasil
sehingga memunculkan istilah “evolusi mesin” 4. AI menjadi industry
(1980 – sekarang)
o Aplikasi komersial pertama menggunakan sistem pakar bernama
R1 yang digunakan oleh perusahaan Ameriak (1982).
o Jepang juga membentuk proyek jangka panjang menggunakan
komputer cerdas berbasis Prolog.
 Kecerdasan Buatan menjadi disiplin ilmu (1987 – sekarang) 6. AI
menampakkan diri di semua bidang (1995 – sekarang)

I.3 Tujuan AI
1. Untuk mengembangkan metode dan sistem untuk menyelesaikan
masalah,masalah yang biasa diselesaikan melalui aktifivitas intelektual
manusia, misalnya pengolahan citra,perencanaan, peramalan dan lain-
lain, meningkatkan kinerja sistem informasi yang berbasis komputer.
2. Untuk meningkatkan pengertian/pemahaman kita pada bagaimana otak
manusia bekerja

I.4 Arah AI
1. Mengembangkan metode dan sistem untuk menyelesaikan masalah AI
tanpa mengikuti cara manusia menyelesaikannya (sistem pakar / expert
systems)
2. Mengembangkan metode dan sistem untuk menyelesaikan masalah AI
melalui pemodelan cara berpikirnya manusia, atau cara bekerjanya
otak manusia (neural networks).

4
I.5 Contoh aplikasi Kecerdasan Buatan
Beberapa contoh aplikasi kecerdasan buatan yang telah diterapkan:
 DEEP BLUE mengalahkan dunia catur Garry Kasparov juara pada tahun
1997.  ALVINN mengemudi melintasibenua Amerika (mengemudi
otonom 98% dari total jarak, dari Pittsburgh ke San Diego).
 Selama Perang Teluk 1991, penggunaan aplikasi AI untuk perencanaan
logistik dan program penjadwalan yang melibatkan hingga 50.000
kendaraan, kargo, dan pasukan AS.
 Program perencanaan otonom milik NASA yang mengontrol penjadwalan
operasi untuk pesawat ruang angkasa.
 Proverb, aplikasi AI untuk memecahkan teka-teki silang yang lebih baik
daripada kebanyakan manusia.

I.6 Latihan

Jelaskan istilah pada bidang AI serta berikan beberapa contoh implementasi untuk
masingmasing sub bidang tersebut!
1. Pengolahan Bahasa Alami
2. Knowledge representation
3. Automated Reasoning
4. Machine Learning
5. Computer Vision
6. Robotika

5
PERTEMUAN II
ASUMSI DASAR

II.1 Physical Symbol System Hypothesis


Physical Symbol System terdiri dari himpunan entitas yang dinamakan
simbol, berpola fisik yang dapat menjadi komponen dari entitas tipe lain yang
dinamakan Ekspresi (struktur simbol)
Struktur simbol terdiri dari sejumlah instant (Token) dari simbol-simbol
yang berhubungan pada beberapa cara fisik. Selain struktur tersebut, sistem juga
berisi koleksi proses-proses yang beroperasi pada ekspresi, untuk menghasilkan
ekspresi lain : proses pembuatan (create), modifikasi, reproduksi, dan
penghancuran (destruksi).
Jadi PSS adalah mesin yang memproduksi suatu koleksi penyusunan
struktur simbol. Sistem seperti itu terdapat dalam suatu objek dunia yang lebih
luas dari hanya ekspresi simbolik itu sendiri.
Perbedaan antara Pemrograman AI dan Konvensional
AI Komputasi Konvensional
Representasi dan Manipulasi simbol Algoritama
Memberitahu komputer tentang suatu Memerintah komputer untuk
masalah menyelesaikan masalah
Komputer diberi pengetahuan dan Memberi data kepada komputer dan
kemampuan inferensi program

Pemrograman AI :
 Bila terjadi perubahan dalam program, maka tidak mengganggu seluruh
“Facts” yang tersimpan dalam “Otak” (layaknya pikiran manusia/seperti
informasi yang terdapat pada pikiran manusia)
 Independen
 Dapat Dimodifikasi tanpa mempengaruhi struktur kesluruhan program
 Fleksibel  efisien dan mudah untuk dimengerti

6
II.2 Penyelesaian Masalah berdasarkan teknik AI
Empat hal untuk membangun sistem atau memecahkan masalah tertentu :
1. Definisikan masalah dengan jelas
2. Analisis masalah
3. Kumpulkan dan representasikan knowledge
4. Pilih teknik pemecah masalah terbaik dan gunakan untuk masalah tertentu
Mendefinisikan Masalah sebagai “State Space Search” (SSS)
Misalnya permainan catur , maka SSS nya adalah :
 Menspesifikasikan posisi awal dari papan catur
 Peraturan (rules) yang mendefinisikan langkah-langkah yang legal
 Posisi papan yang merepresentasikan pemenang dari satu sisi atau sisi
lainnya.
Tujuan (Goal) dari permainan adalah : memenangkan permainan.

II.3 Pendefinisian Masalah Sebagai Pencarian Ruang Keadaan


Masalah utama dalam membangun sistem berbasis AI adalah bagaimana
mengkonversikan situasi yang diberikan ke dalam situasi lain yang diinginkan
menggunakan sekumpulan operasi tertentu.
 A Water Jug Problem

Anda diberi dua buah gelas, yang satu ukuran 4 galon dan yang lain 3 galon.
Kedua gelastidak memiliki skala ukuran. Terdapat pompa yang dapat digunakan
untuk mengisi gelas dengan air. Bagaimana anda mendapatkan tepat 2 galon air di
dalam gelas 4 ukuran galon? Ruang masalah untuk masalah di atas dapat
digambarkan sebagai himpunan pasangan bilangan bulat (x,y) yang terurut,
sedemikian hingga x = 0, 1, 2, 3, atau 4 dan y = 0, 1, 2, atau 3; x menyatakan
jumlah air dalam gelas ukuran 4 galon, dan y menyatakan jumlah air dalam gelas
ukuran 3 galon. Keadaan mula-mula adalah (0,0). State tujuan adalah (2,n) untuk
setiap nilai n. Operator-opeartor (aturan produksi) yang digunakan untuk
memecahkan masalah terlihat pada tabel berikut.

7
1. (x,y) → (4,y) Isi penuh gelas 4 galon
If x < 4

2. (x,y) → (x,3) Isi penuh gelas 3 galon


If y < 3

3. (x,y) → (x-d,y) Buang sebagian air dari gelas


If x > 0 4 galon

4. (x,y) → (x,y-d) Buang sebagian air dari galon


If y > 0 ukuran 3 galon

5. (x,y) → (0,y) Kosongkan gelas 4 galon


If x > 0

6. (x,y) → (x,0) Kosongkan gelas 3 galon


If y > 0

7. (x,y) → (4,y-(4-x)) Tuangkan air dari gelas 3


If x+y ≥4 and y > 0 galon ke gelas 4 galon sampai
gelas 4 galon penuh
8. (x,y) → (x-(3-y),3) Tuangkan air dari gelas 4
If x+y ≥3 and x > 0 galon ke gelas 3 galon sampai
gelas 3 galon penuh

9. (x,y) → (x+y,0) Tuangkan seluruh air dari


If x+y ≤4 and y > 0 gelas 3 galon ke gelas 4 galon

10. (x,y) → (0,x+y) Tuangkan seluruh air dari


If x+y ≤3 and x > 0 gelas 4 galon ke gelas 3 galon

8
11. (0,2) → (2,0) Tuangkan 2 galon air dari
gelas 3 galon ke gelas 4 galon

12. (2,y) → (0,y) Buang 2 galon dalam gelas 4


galon sampai habis.

Solusi masalah water Jug


Jumlah galon dalam gelas Jumlah galon dalam gelas
4 galon 3 galon Aturan yang dilakukan
0 0 -
0 3 2
3 0 9
3 3 2
4 2 7
0 2 5 atau 12
2 0 9 atau 11

Karakteristik Masalah Dalam AI


 Apakah masalahnya dapat didekomposisi menjadi himpunan sub masalah
yang (hampir) independen lebih kecil atau lebih mudah ?
 Dapatkah langkah penyelesaian diacuhkan paling tidak dibatalkan ketika
dapat dibuktikan hal tersebut tidak bijaksana ?
 Apakah universe masalahnya dapat diprediksi ?
 Apakah solusi yang baik dari masalah tertentu jelas tanpa membandingkan
dengan seluruh solusi lain yang mungkin ?
 Apakah solusi yang diinginkan sebuah keadaaan dari dunia atau sebuah
jalur dari keadaan ?
 Apa peran dari pengetahuan ?
 Apakah pekerjaan memerlukan interakasi dengan manusia ?

9
II.4 Sistem Produksi
Sistem produksi terdiri dari:
 Himpunan aturan, masing-masing terdiri dari sisi kiri (pola) yang
menentukan kemampuan aplikasi dari aturan tersebut dan sisi kanan yang
menggambarkan operasi yang dilalukan jika aturan dilaksanakan.
 Satu atau lebih pengetahuan atau basis data yang berisi informasi apapun
untuk tugas tertentu. Beberapa bagian basis data bisa permanen, dan
bagian yang lain bisa hanya merupakan solusi untuk masalah saat ini.
Informasi dalam basis data ini disusun secara tepat.
 Strategi kontrol yang menspesifikasikan urutan dimana aturan akan
dibandingkan dengan basis data dan menspesifikasikan cara pemecahan
masalah yang timbul ketika beberapa aturan sesuai sekaligus pada waktu
yang sama.
 A rule applier (pengaplikasi aturan).
Strategi Kontrol
Syarat-syarat strategi kontrol:
 cause motion. Perhatikan kembali water jug problem. Jika kita
mengimplementasikan strategi kontrol sederhana dengan selalu memilih
aturan pertama pada daftar 12 aturan yang telah dibuat, maka kita tidak
akan pernah memecahkan masalah. Strategi kontrol yang tidak
menyebabkan motion tidak akan pernah mencapai solusi.
 Systematic. Strategi kontrol sederhana yang lain untuk water jug problem:
Pada setiap siklus, pilih secara random aturan-aturan yang dapat
diaplikasikan. Strategi ini lebih baik dari yang pertama, karena
menyebabkan motion. Pada akhirnya strategi tersebut akan mencapai
solusi. Tetapi mungkin kita akan mengunjungi beberapa state yang sama
selama proses tersebut dan mungkin menggunakan lebih banyak langkah
dari jumlah langkah yang diperlukan. ini disebabkan strategi kontrol
tersebut tidak sistematik. Beberapa strategi kontrol yang sistematik telah
diusulkan, yang biasa disebut sebagai metode dalam teknik searching.

10
PERTEMUAN III
METODE PENCARIAN I

III.1 Algoritma Pencarian Dasar

Ide dasar : Eksplorasi secara offline, simulasi state space dengan menghasilkan
turunan dari state yang sudah dieksplorasi (dikenal sebagai expanding state).
Terdapat empat kriteria dalam strategi pencarian, yaitu:
 Completeness: Apakah strategi tersebut menjamin penemuan solusi jika
solusinya memang ada?
 Time complexity: Berapa lama waktu yang diperlukan?
 Space complexity: Berapa banyak memori yang diperlukan?
 Optimality: Apakah strategi tersebut menemukan solusi yang paling baik
jika terdapat beberapa solusi berbeda pada permasalahan yang ada?

Algoritma pencarian dasar:

11
General tree search

III.2 Strategi Pencarian Uninformed


 Sebuah strategi pencarian didefinisikan dengan memilih urutan ekspansi
node. 

 Strategi dievaluasi sepanjang dimensi berikut: 

 kelengkapan: apakah selalu mencari solusi jika ada?

 kompleksitas waktu: jumlah node yang dihasilkan
o
kompleksitas
 ruang: jumlah maksimum node dalam memori

 optimalitas: apa selalu menemukan solusi yang paling murah?
 kompleksitas waktu dan ruang diukur dalam hal:


b: faktor percabangan maksimum search tree

d: kedalaman solusi yang paling murah

m: panjang maksimum setiap path (mungkin ∞)


Strategi pencarian uninformed hanya menggunakan informasi yang tersedia dalam


definisi masalah. Terdapat 5 teknik yang termasukstrategi uninformed, yaitu:

 Breadth-first search
 
Uniform-cost search

12
 
Depth-first search

 Depth-limited search

 Iterative Deepening search

III.3 Breadth-First Search (BFS)


Pencarian dilakukan pada semua node dalam setiap level secara berurutan
dari kiri ke kanan. Jika pada satu level belum ditemukan solusi, maka pencarian
dilanjutkan pada level berikutnya. Demikian seterusnya sampai ditemukan solusi.
Dengan strategi ini, maka dapat dijamin bahwa solusi yang ditemukan adalah
yang paling baik (Optimal). Tetapi BFS harus menyimpan semua node yang
pernah dibangkitkan. Hal ini harus dilakukan untuk penelusuran balik jika solusi
sudah ditemukan.

Properti BFS
 Lengkap? Ya( jika b adalah terbatas)
 Waktu?

1 + 𝑏 2 + 𝑏 3 + 𝑏 4 +. . +𝑏 𝑑 + 𝑏(𝑏 𝑑 − 1) = 𝑂(𝑏 𝑑+1 )


 Ruang? 𝑂(𝑏 𝑑+1 ) (setiap node terus disimpan dalam memori
 Optimal? Ya (jika biaya=1 per langkah)
 Ruang adalah maslah yang lebih besar

13
III.4 Uniform Cost Search (UCS)
 Sama seperti BFS dengan tambahan pembentukan tree diurutkan
berdasarkan cost yang paling murah/least cost
 Urutan ekspansi seperti BFS
 Implementasi: tree/queue diurutkan berdasarkan least-cost
 Lengkap? Ya, jika biaya langkah ≥ 𝜀
𝐶∗⁄ )
 Waktu? Jumlah node dengan 𝑔 ≤ biaya solusi optimal, 𝑂 (𝑏 𝑐𝑒𝑖𝑙𝑖𝑛𝑔( 𝜀 )

dimana C* adalah biaya dari solusi optimal


𝐶∗⁄ )
 Space? Jumlah node dengan 𝑔 ≤ biaya solusi optimal, 𝑂 (𝑏 𝑐𝑒𝑖𝑙𝑖𝑛𝑔( 𝜀 )

 Optimal ? Ya, node dipeluas dalam rangka peningkatan g(n)

III.5 Depth-first search (DFS)


Pencarian unexpanded node terdalam

14
Urutan ekspansi dari A ke M: A-B-D-H-I-E-J-K-C-F-L-M
Properti BFS:

 Lengkap? Tidak: bisa gagal dalam ruang pencarian takterbatas, ruang


pencarian 
dengan loop 

m
 Waktu? O(b ):mengerikan jika m jauh lebih besar daripada d 
tetapi jika
solusi padat, mungkin jauh lebih cepat daripada BFS 

 Space? O (bm), yaitu, ruang linear! 

 Optimal? Tidak 


III.6 Depth Limited Search (DLS)


 Merupakan strategi DFS dengan batas kedalaman tree/ yang didefinisikan
sebelumnya
 Rekursif pelaksanaan DLS:

15
III.7 Iterative Deepening Search (IDS)
 Prinsip dari strategi ini adalah melakukan pencarian DLS secara bertahap
dengan nilai l yang ditambahkan pada setiap iterasinya.

 Strategi ini mengkombinasikan keuntungan BFS dan DFS (kelengkapan
dan kompleksitas ruang linear dijamin). Lakukan pencarian DLS dengan l
= 0,1,2, ... sampai tidak cutoff


Properti IDS

 Lengkap? Ya 

0 1 2 d d
 Waktu?((d+1)b + d b + (d-1)b + ... + b = O(b ) 

 Space? O (bd) 

 Optimal? Ya, jika step cost= 1 


16
PERTEMUAN IV
METODE PENCARIAN II

III.1 Definisi Heuristik


 Kata Heuristic berasal dari sebuah kata kerja bahasa Yunani, heuriskein,
yang berarti ‘mencari’ atau menemukan.
 Dalam dunia pemrograman, sebagian orang menggunakan kata heuristik
sebagai lawan kata algoritmik, dimana kata heuristik ini diartikan sebagai
suatu proses yang dapat menyelesaikan suatu masalah tetapi tidak ada
jaminan bahwa solusi yang dicari selalu dapat ditemukan.
 Pencarian heuristik merupakan suatu strategi untuk melakukan proses
pencarian ruang keadaan (statespace) suatu problem secara selektif, yang
memandu proses pencarian yang dilakukan di sepanjangjalur yang
memiliki kemungkinan sukses paling besar, dan mengesampingkan usaha
yang sia-sia dan memboroskan waktu
 Untuk dapat menerapkan heuristik tersebut dengan baik dalam suatu
domain tertentu, diperlukan suatu Fungsi Heuristik.
 Fungsi heuristik ini digunakan untuk mengevaluasi keadaan-keadaan
problema individual dan menentukan seberapa jauh hal tersebut dapat
digunakan untuk mendapatkan solusi yang diinginkan

III.2 Generate and Test


Algoritma :
1. Bangkitkan suatu kemungkinan solusi (membangkitkan suatu titik tertentu
ataulintasan tertentu dari keadaan awal)
2. Uji apakah node tersebut adalah solusi dengan membandingkan node
tersebut atau node akhir dari lintasan yang dipilih dengan kumpulan tujuan
yang diharapkan
3. Jika solusi ditemukan,langkah–langkah tersebut dihentikan, jika tidak,
kembali ke langkah pertama

17
4. Jika pembangkitan atau pembuatan solusi–solusi yang dimungkinkan
dapat dilakukan secara sistematis, maka prosedur ini akan dapat segera
menemukan solusinya, (bila ada).
5. Namun, jika ruang problem sangat besar, maka proses ini akan
membutuhkan waktu yang lama, sehingga metode generate and test ini kurang
efisien untuk masalah yang besar atau kompleks. Kelemahan metode Generate
and Test:
 Membangkitkan semua kemungkinan sebelum dilakukan pengujian
 Membutuhkan waktu yang cukup besar dalam pencariannya
Kelemahan metode Generate and Test:
 Membangkitkan semua kemungkinan sebelum dilakukan pengujian
 Membutuhkan waktu yang cukup besar dalam pencariannya

III.3 HILL CLIMBING


Hill climbing merupakan salah satu variasi metode Bangkitkan - dan - Uji
(generate and test) dimana umpan balik yang berasal dari prosedur uji digunakan
untuk memutuskan arah gerak dalam ruang pencarian. Dalam prosedur Hill
Climbing, fungsi ujidikombinasikan dengan fungsi heuristik yang menyediakan
pengukuran kedekatan suatu keadaan yang diberikan dengan tujuan (goal).
 Simple Hill Climbing

Algoritma :
1. Mulai keadaan awal, lakukan pengujian: jika tujuan maka stop, jika tidak
maka lanjuntukan dengan keadaan sekarang sebagai keadaan awal.
2. Ulangi langkah berikutnya hingga solusi ditemukan atau sampai tidak ada
operator baru yang diaplikasikan pada keadaan sekarang:
 Pilih operator yang belum pernah digunakan, gunakan operator
untukmendapatkan keadaan yang baru
 Evaluasi keadaan baru tersebut :
i Jika keadaan baru adalah tujuan, keluar
ii Jika tidak, namun nilainya lebih baik dari keadaan sekarang, maka
jadikan keadaan baru tersebutmenjadi keadaan sekarang

18
iii Jika keadaan baru tidaklebih baik daripada keadaan sekarang,
makalanjuntukan iterasi
Masalah yang akan timbul pada prosedur Hill Climbing :
 Local optimum : adalah suatu keadaan yang lebih baik daripada semua
tetangganya namun masih belum lebih baik dari suatu keadaan lain yang
jauh letaknya darinya
 Sering muncul ketika sudah mendekati solusi
 Plateau ( daratan) : adalah suatu daerah datar dari ruang pencarian (search)
dimana keadaan semua tetangga sma dengan keadaan dirinya.
 Ridengane (Punggung) : local optimum yang lbh disebabkan karena
ketidak mampuan untuk menggunakan 2 operator sekaligus.

Solusinya
1. Melakukan langkah balik (backtracking) ke simpul yang lebih awal dan
mencoba bergerak ke arah yang lain.
2. Melakukan lompatan besar ke suatu arah untuk mencoba bagian ruang
pencarian yang baru.
3. Menerapkan dua atau lebih aturan sebelum melakukan uji coba. Ini
bersesuaian dengan bergerak ke beberapa arah sekaligus.
Kelemahan Simple Hill Climbing :
1. Tidak semua solusi dapat ditemukan seperti pada metode generate and test
2. Pembatasan kombinasi operator ( penemuan solusi yang tidak maksimal)
 Steepest-Ascent Hill Climbing

19
Algoritma :

1. Mulai dari keadaan awal, lakukan pengujian: jika merupakan tujuan, maka
berhenti; dan 
jika tidak, lanjuntukan dengan keadaan sekarang sebagai
keadaan awal. 

2. Kerjakan hingga tujuan tercapai atau hingga iterasi tidak memberikan
perubahan pada 
keadaan sekarang. 

a. Tentukan SUCC sebagai nilai heuristik terbaik dari successor-
successor. 

b. Kerjakan untuk tiap operator yang digunakan oleh keadaan sekarang:

 Gunakan operator tersebut dan bentuk keadaan baru.

 Evaluasi keadaan baru tersebut. Jika merupakan tujuan, keluar .
Jika bukan, bandingkan nilai heuristiknya dengan SUCC. Jika
lebih baik, jadikan nilai heuristic keadaan baru tersebut sebagai
SUCC. Namun jika tidak lebih baik, nilai SUCC tidak berubah.
c. Jika SUCC lebih baik daripada nilai heuristik keadaan sekarang, ubah
node SUCC menjadi keadaan sekarang.

Pada steepest-ascent hill climbing ini, ada 3 masalah yang mungkin, yaitu:

1. Local optimum: keadaan semua tetangga lebih buruk atau sama dengan
keadaan 
dirinya. 

2. Plateau: keadaan semua tetangga sama dengan keadaan dirinya. 

3. Ridengane: local optimum yang lebih disebabkan karena ketidakmampuan
untuk 
menggunakan 2 operator sekaligus. 


III.4 Best First Search


Merupakan kombinasi kelebihan teknik depth first search dan breadth first
search 


 Pencarian diperkenankan mengunjungi node yang ada di level yang lebih


rendah jika 
ternyata node pada level yang lebih tinggi ternyata memiliki
nilai heuristik yang buruk 


20
Kecerdasan buatan / MateriKuliah Brawijaya University 2012
o Dari ACBD ini akan dipilih nilai heuristik terbaik dari succesornya yaitu: CABD(15),
ABCD(19), ACDB(13), DCBA(19), ADBC(16) atau BCAD(15). Ternyata dari keenam
successor tersebut memiliki nilai heuristik yang lebih besar disbanding dengan ACBD.
o Sehingga tidak
Bestakan
First ada perubahan
Search nilai keadaan
akan membangkitkan node(tetap ACDB).
berikutnya Hasil yang
dari semua node diperoleh,
lintasannya adalah ACBD (12).
yang pernah 
dibangkitkan 

 Hill climbing tidak diperbolehkan untuk kembali ke node pada lebih rendah
4. BEST FIRST SEARCH
meskipun 
node tersebut memiliki nilai heuristik lebih baik. 

Merupakan kombinasi kelebihan teknik depth first search dan breadth first search
Pencarian Pada best first search,
diperkenankan pencarian diperbolehkan
mengunjungi node yang ada mengunjungi node dilebih
di level yang lebih rendah jika
ternyata node pada level yang lebih tinggi ternyata memiliki nilai heuristik
rendah, jika 
ternyata node di level lebih tinggi memiliki nilai heuristik yang buruk
Best First Search akan membangkitkan node berikutnya dari semua node yang pernah
dibangkitkanlebih buruk. 

Hill climbing tidak diperbolehkan untuk kembali ke node pada lebih rendah meskipun
node Pada
tersebut memiliki
metode nilai
Best First heuristik
Search lebih baik.
cara untuk menentukan sebuah node terbaik saat
Pada best first search, pencarian diperbolehkan mengunjungi node di lebih rendah, jika
inidengan
ternyata node menggunakan
di level lebihbiaya [Link]
tinggi memiliki nilaiperkiraan dapat
heuristik ditentukan
lebih buruk. dengan
fungsi heuristic. Suatu fungsi heuristic dikatakan baik jika bisa memberikan biaya
Pada metode Best First Search cara untuk menentukan sebuah node terbaik saat
inidengan menggunakan
perkiraan biaya perkiraan.
yang mendekati biaya Biaya perkiraan dapatmendekati
[Link] ditentukanbiaya
dengan fungsi
heuristic. Suatu fungsi heuristic dikatakan baik jika bisa memberikan biaya perkiraan
sebenarnya, fungsi heuristic tersebut semakin baik. 
Dalam kasus pencarian rute
yang mendekati biaya [Link] mendekati biaya sebenarnya, fungsi heuristic
tersebutterpendek,
semakin baik.
biaya sebenarnya adalah panjang jalanRaya yang sebenarnya.
Sedangkan fungsi heuristiknya adalah garis lurus dari1 kota ke kota lainnya. 

Dalam kasus pencarian rute terpendek, biaya sebenarnya adalah panjang jalanRaya yang
sebenarnya. Sedangkan fungsi heuristiknya adalah garis lurus dari1 kota ke kota lainnya.

Gambar 4.6. Hill Climbing


Untuk menghitung jarak antar kota bisa digunakan rumus euclidean :
Untuk menghitung jarak antar kota
𝑑𝑎𝑏 bisa
= (𝑦𝑏 − dipergunakan
𝑦𝑎 )2 + (𝑥𝑏 − 𝑥𝑎rumus
)2 euclidian:
2 2
dab = ( yb – ya ) + ( xb – xa )
Untuk mengimplementasikan metode Best First Search ini, dibutuhkan 2 antrian
yang berisi node-nodee, yaitu :
 OPEN : berisi node-node yang sudah dibangkitkan, sudah memiliki fungsi
Untuk mengimplementasikan
heuristik namunmetodeBest
belum [Link] Search
Umumnya ini, dibutuhkan
berupa 2 antrian
antrian berprioritas yang yang berisi
node-node, yaitu :
berisi elemen-elemen dengan nilai heuristik tertinggi.
OPEN : berisi node-node yang sudah dibangkitkan, sudah memiliki fungsi
heuristik
 CLOSEDnamun belum
: berisi diuji. yang
node-node Umumnya berupa antrian berprioritas yang berisi
sudah diuji
elemen-elemen dengan nilai heuristik tertinggi.
CLOSED : berisi node-node yang sudah diuji

Pada modul ini diperkenalkan 2 algoritma yang tergolong Best First Search yaitu :
1. Greedy Best First Search
2. Algoritma A*
21
Page 32 of 98
PERTEMUAN V
NATURAL LANGUAGE PROCESSING

V.1 Pendahuluan
Bahasa sebagai bagian yang terpenting dari kehidupan manusua, dalam
bentuk tulis dapat merupakan catatatan dari pengetahuan yang didapat oleh
manusia dari satu generasi ke generasi berikutnya sedangkan dalam bentuk lisan
merupakan sarana komunikasi antar individu dalam suatu masyarakat. Tujuan
dalam bidan natural language ini adalah melakukan proses pembuatan model
komputasi dari bahasa sehingga dapat terjadi suatu interaksi antara manusia
dengan komputer dengan perantaraan bahasa alami. Model komputasi ini dapat
diguanakn untuk keperluan ilmiah misalnya meneliti sifat-sifat dari suatu bentuk
bahasa alamai maupun unutk keperluan sehari-hari dalam hal ini memudahkan
komunikasi antara manusia dengan komputer.
Sebuah Natural Language system harus memperhatikan pengetahuan
terhadap bahasa itu sendiri, baik dari segi kata yang digunakan, bagaimana kata-
kata tersebut digabung untuk menghasilkan suatu kalimat, apa arti sebuah kata,
apa fungsi sebuah kata dalam sebuah kalimat dan sebagainya. Akan tetapi kita
juga harus mempertimbangkan ada satu hal lagi yang sangat berperan dalam
bahasa, yaitu kemampuan manusia untuk mengerti dan kemampuan untuk itu
didapat dari pengetahuan yang didapat secara terus-menerus sewaktu hidup.
Sebagai contoh dalam suatu percakapan, seseorang mungkin dapat menjawab
suatu pertanyaan atau ikut dalam suatu percakapan, seseorang mungkin dapat
menjawab suatu pertanyaan atau ikut dalam suatu percakapan, seseorang mungkin
dapat menjawab suatu pertanyaan atau ikut dalam suatu percakapan dengan tidah
hanay berdasar pada kemampuan berbahasa tapi juga harus tahu misalnya kata
istilah yang umum digunakan dalam kelompok percakapan itu atau bahkan harus
tahu konteks dari percakapan itu sendiri.
Bidang pengetahuan dalam natural language
Secara singkat pengolahan bahasa alami ( natural language processing) mengenal
beberapa tingkat pengolahan yaitu :

22
1. Fonetik dan fonologi : berhubungan dengan suara yang menghasilkan
kata yang dapat dikenali. Bidang ini menjadi penting dalam proses aplikasi
yang memakai metoda speech based system.
2. Morfologi : yaitu pengetahuan tentang kata dan bentuknya dimanfaatkan
untuk membedakan satu kata dengan lainnya. Pada tingkat ini juga dapat
dipisahkan antara kata dan elemen lain seperti tanda baca. Sebagai contoh
kata going :
 going (word)
 go ( root)
 ing (suffix)

kata understand :
 under ( prefix)
 stand ( root)
3. Sintaksis : yaitu pemahaman tentang urutan kata dalam pembentukan
kalimat dan hubungan antar kata tersebut dalam proses perubahaan bentuk
dari kalimat menjadi bentuk yang sistematis. Meliputi proses pengaturan
tata letak suatu kata dalam kalimat akan membentuk kalimat yang dapat
dikenali. Selain itu dapt pula dikenali bagian-bagian kalimat dalam suatu
kalimat yang lebih besar. Sebagai contoh kalimat S dibentuk dari noun
phrase (NP ) dan verb phrase (VP)

S  NP, VP
Dan berikutnya :
NP  DET, N
VP  V, NP
NP  N
4. Semantik : yaitu pemetaan bentuk struktur sintaksis dengan
memanfaatkan tiap kata kedalam bentuk yang lebih mendasar dan tidak
tergantung struktur kalimat. Semantik mempelajari arti suatu kata dan
bagaiman dari arti kata-arti kata tersebut membentuk suatu arti dari
kalimat yang utuh. Dalam tingkatan ini belum mencakup konteks dari
kalimat tersebut.

23
5. Pragmatik : pengetahuan pada tingkatan ini berkaitan dengan masing-
masing konteks yang berbeda tergantung pada situasi dan tujuan
pembuatan sistem
6. Discourse knowledge : melakukan pengenalan apakah suatu kalimat yang
sudah dibaca dan dikenali sebelumnya akan mempengaruhi arti dari
kalimat selanjutnya. Informasi ini penting diketahui untuk melakukan
pengolahan arti terhadap kata ganti orang dan untuk mengartikan aspek
sementara dari informasi.
7. World Knowledge : mencakup arti sebuah kata secara umum dan apakah
ada arti khusus bagi suatu kata dalam suatu percakapan dengan konteks
tertentu.

Definisi ini tidaklah bersifat kaku, dan untuk setiap bentuk bahasa alami
yang ada biasanya ada pendefinisian lagi yang lebih spesifik sesuai dengan
karakter bahasa tersebut. Pada beberapa masalah mungkin hanya mengambil
beberapa dari pendekatan tersebut bahkan mungkin ada yang melakukan
tambahan proses sesuai dengan karakter dari bahasa yang digunakan dan sistem
yang dibentuk.
Selain yang sudah disebutkan diatas masih ada lagi satu masalah yang cukup
menantang dalam Natural Language yaitu ambiguitas atau makna ganda dari suatu
kata atau kalimat. Dari satu masukan yang sama dapat menjadi beberapa arti yang
berbeda dan masing-masing dapat bernilai benar tergantung pad keperluan
pemakai. Hal ini dapat terjadi pada hampir semua tingkatan pendekatan diatas.

V.2 Aplikasi dalam bidang natural language


Jenis aplikasi yang bisa dibuat pada bidang bidang natural language
adalah :
Text-based application dan dialogue – based applications
Text – based application mencakup segala macam aplikasi yang melakukan proses
terhadap text tertulis seperti misalnya buku, berita disurat kabar, emai dan lain
sebagainya. Contoh penggunaan dari text-based application ini adalah :
a. Mencari topik tertentuk dari buku yang ada pada perpustakaan

24
b. Mencari isi dari surat atau email
c. Menterjemahkan dokumen dari satu bahasa ke bahasa yang lain.

Akan tetapi tidak semua system yang dapat melakukan hal-hal seperti di atas
menggunakan pendekatan natural language, karena seperti misalnya contoh
pencarian topik dari suatu buku diperpustakaan dapat didekati dengan sistem
database yang cukup lengkap. Tetapi kalau dihadapkan pada pertanyaan yang
cukup kompleks dengan bahasa alamai yang ada maka akan diraskan bahwa
pendekatan dengan natural language lebih efisien. Salah satu bentuk yan guckup
menarik adalah apabila sistem diminta untuk mencari isu dari suatu berita atau
artikel, untuk hal ini pendekatan yang dilakukan hampir serupa dengan
pendekatan yang dilakukan manusia apabila menghadapi suatu tes reading dan
comprehension. Bentuk berikutnya adalah bentuk dialogue-based application.
Idealnya pedekatan ini melibatkan bahasa lisan atau pengenalan suara, akan tetapi
bidang ini juga memasukkan interaksi dengan cara memasukkan teks pertanyaan
melalui keyboard. Aplikasi yang sering ditemui untuk bidang ini adalah :
a. Sistem tanya jawab, dimana natural language digunakan dalam
mendapatkan informasi dari suatu database
b. Sistem otomatis pelayanan melalui telepon
c. Control suara pada peralatan elektronik
d. Sistem problem-solving yang membantu untuk melakukan penyelesaian
masalah yang umum dihadapi dalam suatu pekerjaan.

Sebelumnya perlu diberikan batasan bahwa untuk sistem yang dapat melakukan
interaksi melalui bahasa lisan ada bagian speech recognation yang merupakan
bagian terpisah dari Natural language.

V.3 Grammar

Grammar suatu bahasa dapat dilihat sebagai suatu aturan yang menentukan
apakah suatu kumpulan kata dapat diterima sebagai kalimat oleh bahasa tersebut.
Grammar dari Chomsky Hierarchy yaitu context free grammar memiliki sifat
lebih mudah dipahami perilakunay dan pengolahannya serta masih dapat diolah

25
dalam bentuk program yang terstruktur. Sebuah bahasa L dapat dijelaskan sebagai
set dari string, dimana string dibetnuk dari bagian terkecil yang disebut symbol.
Kelompok tertentu v dari symbol biasa dikenal sebagai alfabet atau
perbendaharaan kata. Sebuah kalimat yang dapat dikenali dibentuk dengan
berdasarkan aturan-aturan yang ada yang biasa disebut grammar. Sebuah grammar
G dapat dibentuk dari 4 tupel yaitu :
a. Simbol non terminal
b. Simbol terminal
c. Simbol awal
d. Aturan penulisan atau (rules).

Definisinya adalah :
G = (vn , vt, s. p)
Sebagai contoh dapat kita lihat dari grammar G sederhana berikut ini :
DicJenis = {kata_benda, kata_kerja, Frasa_benda, Frasa_kerja, Keterangan}
DicKata = {Orang, makan, telur, ayam, terbang, tinggi}
Dengan aturan :
S  Frasa_Benda Frasa_Kerja
Frasa_Benda  Kata_Benda Kata_Benda
Frasa_Kerja  Kata_Kerja keterangan
Kata_Benda  { Orang, Telur, Ayam}
Kata_kerja  {Makan, Terbang}
Keterangan  {Tinggi}
Dari grammar G dapat dibentuk kalimat :
Orang makan ayam
Ayam terbang tinggi
Orang Terbang tinggi
Ayam Makan Orang

Semua kalimat tersebut apabila dicari pembentukkannya melalui grammar G


dapat dikatakan benar akan tetapi harus diingat bahwa kalimat dengan grammar

26
yang benar hanya berarti benar secara struktural bukan berarti selalu benar dalam
makna. Seperti kalimat ketiga yang hanya benar apabila berada dalam konteks
‘orang memakai alat’ misalnya pesawat terbang. Sedangkan kalimat keempat
malah sama sekali tidak mungkin dapat dimengerti maknanya, selain hanya kan
menimbulkan tanda tanya bagi orang yang membaca. Dari grammar kita dapat
mempelajari bahasa dari segi strukutur dan bukan dari segi makna bahasa itu
sendiri.

V.4 Chomsky Hierarchy of Generative Grammar

Noam chomsky menyusun grammar dalam urutan yang dia sebut tipe
0,1,2, dan 3. Tipe 0 adalah bentuk yang paling bebas dan paling sulit dikenali,
biasa disebut recursively enumerable set, untuk mengenali bentuk ini biasa
dipakai turing machine. Berikutnya adalah tipe 1 yang disebut context sensivitve
grammar. Type 2 dari grammar yaitu context free grammar dinyatakan dengan
aturan umum yaitu :
<symbol1>  <symbol1>…<symbolk> dengan k >= 1 dan bagian kiri dari ruel
adalah single non terminal symbol. Grammar tipe 3 bernama finite state atau
regular grammar, tipe ini paling sederhana dan mudah dipahami sifatanya.
Secara umum dikatakan bahwa pemakaian context free grammar secara murni
adalah tidak cukup untuk pengolahan bahasa alami. Akan tetapi karena bentuk
context free dan regular grammar tersebut yang paling dipahami perilaku dan
pengolahannya, maka beberapa cara telah dikembangkan untuk dapat melakukan
pengolahan bahasa alami dengan bentuk grammar berikut.

V.5 Parsing

Parsing adalah suatu proses menganalisa suatu kumpulan kata dengan


memisahkan kata tersebut dan menentukan struktur sintaksis dari tiap-tiap kata
tersebut. Gramatika yang dipakai juga sangat berkaitan dengan proses parsing apa
yang digunakan. Pada Bottom-up parsing gramatika yang idpakai akan lebih
banyak bercabang ke arah simbol non-terminal. Hal lain yang juga berkaitan erat
dengan proses kata yang dapat dikenali sebagai simbol terminal dalam grammar

27
dan informasi yang diperlukan untuk tiap kata tersebut untuk proses parsing yang
bersangkutan.
Dari pendekatan dalam mengenali struktur suatu kalimat, proses parsing
dapat dibagi menjadi dua bagian besar yaitu top down parsing dan bottom up
parsing. Top Down parser memulai pemeriksaan dari simbol awal s dan mencoba
untuk mencari bentuk simbol terminal berikutnya yang sesuai dengan jenis kata
dari kalimat masukan. Cara sebaliknya diterapkan Bottom up parser yaitu mencari
simbol-simbol terminal menuju ke arah pembentukan simbol awal s.

28
PERTEMUAN VI
KETIDAKPASTIAN

VI.1 Definisi ketidakpastian


Pada sistem yang menggunakan kecerdasan buatan yang mengandalkan
fakta-fakta dalam melakukan pengambilan kesimpulan logika tidak akan
menggunakan keseluruhan fakta yang ada, sehingga akan muncul kesalahan-
kesalahan dari proses pengambilan kesimpulan. Ketidakpastian dapat dianggap
sebagai suatu kekurangan informasi yang memadai untuk membuat suatu
keputusan. Ketidakpastian merupakan suatu permasalahan karena mungkin
menghalangi kita membuat suatu keputusan yang terbaik. Beberapa teori yang
berhubungan dengan ketidakpastian adalah sebagai berikut :

 
Probabilitas Klasik
 
Probabilitas Bayes
 
Teori Hartley yang berdasarkan pada himpunan klasik
 Teori Shanon yang didasarkan pada peluang

 Teori Dempster-Shafer
 
Teori Fuzzy Zadeh


Contoh aplikasi yang menggunakan ketidakpastian dalam pengambilan


kesimpulan logika yang sukses adalah sistem pakar MYCIN untuk diagnosa
medis dan PROPECTOR untuk ekplorasi mineral.
Salah satu contoh
permasalahan yang memiliki ketidakpastian adalah permasalahan diagnosa pasien
terhadap suatu penyakit. Misalkan terdapat aturan dalam mendiagosa gejala-gejala
dari suatu penyakit sebagai berikut : 


IF badan_demam(pasien) AND


IF badan_ruam(pasien) AND


IF badan_pegal(pasien) THEN mengalami_tifus(pasien)


29
Berdasarkan aturan diatas, terlihat bahwa jika ada pasien yang mengalami ketiga
jenis gejala tersebut maka akan dideteksi bahwa pasien menderita penyakit tifus.
Akan tetapi pada dunia nyata ketika terdapat gejala-gejala tersebut memenuhi
belum tentu penyakit yang diderita adalah tifus. Bisa jadi penyakit lain memiliki
gejala yang sama sehingga bisa terjadi kesalahan diagnosa. Bagaimana jika derajat
gejala yang dialami seorang pasien dengan 
pasien lainnya bisa jadi berbeda.
Kemungkinan-kemungkinan kesalahan yang ada tersebut bisa jadi terjadi dan
merupakan hal ketidakpastian dan kesamaran pengetahuan dalam permasalahan
ini.

VI.2 Probabilitas Klasik


Probabilitas merupakan cara yang digunakan dalam menghitung ketidakpastian
dengan jalan kuantitas. Dalam probabilitas klasik disebut juga dengan a priori
probability karena berhubungan dengan game atau sistem. Secara fundamental
formula probabilitas klasik seperti pada persamaan berikut :

𝑊
𝑃=
𝑁

Dimana :

W adalah jumlah kemenangan dalam permainan.

N adalah jumlah kemungkinan kejadian yang dilakukan dalam percobaan.

Contoh permasalahan adalah pelemparan dadu yang memiliki 6 sisi dan memiliki
6 kemungkinan. Maka peluang-peluang yang mungkin adalah

1
𝑃(1) =
6

1
𝑃(2) =
6

1
𝑃(3) =
6

30
1
𝑃(4) =
6

1
𝑃(5) =
6

Teori formal probabilitas dibuat dengan menggunakan beberapa aturan, aturan-


aturan tersebut antara lain adalah :

I. 𝟎 ≤ 𝑷(𝑬) ≤ 𝟏

Aturan ini menyebutkan bahwa jangkauan dari probabilitas berada antara 0


dan 1. Jika suatu kejadian itu pasti terjadi maka nilai probabilitasnya adalah 1, dan
jika kejadiannya tidak mungkin terjadi maka nilai probabilitasnya adalah 0.

II. ∑ 𝐸𝑖 = 1

Aturan ini menyatakan jumlah semua kejadian tidak memberikan


pengaruh pada kejadian lainnya maka disebut mutually exclusive events yaitu 1.
Pembuktian matematis dari aturan tersebut adalah :

𝑃(𝐸) + 𝑃(𝐸 ′ ) = 1

III. 𝑃(𝐸1 ∪ 𝐸2 ) = 𝑃(𝐸1 + 𝐸2 )

Kejadian E1 dan E2 adalah kejadian mutually exclusive. Kejadian mempunyai


makna bahwa jika E1 dan E2 keduanya tidak dapat terjadi secara simultan, maka
probabilitas dari satu atau kejadian lainnya dalah jumlah dari masing-masing
probabilitasnya.

VI.3 Probabilitas Bersyarat


Probabilitas kondisional merupakan probabilitas yang menghitung pengaruh suatu
kejadian terhadap kejadian lainnya. Hal ini mengindikasikan bahwa kejadian
terjadinya sesuatu bergantung dari kejadian yang lain. Rumusan dari probabilitas
kondisional adalah sebagai berikut :

31
𝑃(𝐴 ∩ 𝐵)
𝑃(𝐸1 |𝐸2 ) =
𝑃(𝐵)

Untuk 𝐵 ≠ 0

Pada contoh diatas tersebut dapat dibaca sebagai peluang A dengan syarat B

VI.4 Teorema Bayes


Teorema peluang Bayes merupakan teori probabilitas dan statistika yang
melakukan penafsiran terhadap seberapa jauh derajat kepercayaab subjektif harus
berubah secara rasional ketika ada petunjuk baru. Dalam melakukan penafsiran
teorema ini melakukan perhitungan terhadap keseluruhan kemungkinan. Teorema
bayes banyak digunakan pada banyak bidang ilmu untuk melakukan pengambilan
keputusan pada permasalahan tertentu. Ilustrasi Teorema Bayes :

 Teorema probablitias bersyarat yang hanya dibatasi oleh dua buah


kejadian dapat diperluas untuk kejadian n buah
 Digunakan bila ingin diketahui probabilitas 𝑃(𝐵1 |𝐴), 𝑃(𝐵2 |𝐴),…,
𝑃(𝐵𝑘 |𝐴)

Secara matematis Teorema Bayes ditulis sebagai persamaan :

𝑃(𝐴|𝐵)𝑃(𝐴)
𝑃(𝐴|𝐵) =
𝑃(𝐵)

VI.5 Faktor Kepastian


Dalam mengekspresikan derajat keyakinan digunakan suatu nilai yang disebut
certain factor (CF) untuk mengasumsikan derajat keyakinan seorang pakar
terhadap suatu data.
Formulasi certain factor :
CF[H,E] = MB[H,E] –MD[H,E]
Dimana:
CF = Certain Factor (faktor kepastian) dalam hipotesis H yang dipengaruhi oleh
fakta E

32
MB = Measure of Belief (tingkat keyakinan), adalah ukuran kenaikan dari
kepercayaan hipotesis H dipengaruhi oleh fakta E.
MD = Measure of Disbelief (tingkat tidakyakinan), adalah kenaikan dari
ketidakpercayaan hipotesis H dipengaruhi fakta E.
E = Evidence(peristiwa ataua fakta).

Penggabungan kepercayaan dan ketidakpercayaan dalam bilangan yang tunggal


memiliki dua kegunaan, yaitu :
 Faktor kepastian digunakan untuk tingkat hipotesis di dalam urutan kepentingan.

Contoh :
jika seorang pasien mempunyai gejala tertentu yang mengindikasikan beberapa
kemungkinan penyakit, maka penyakit dengan CF tertinggi menjadi urutan
pertama dalam urutan pengujian
 Ukuran kepercayaan dan ketidakpercayaan didefinisikan dalam
probabilitas sebagai berikut:

Karakteristik dari MB, MD, dan CF

Karakteristik Nilai

Jangkauan 0 ≤ MB ≤ 1

0 ≤ MD ≤ 1

-1 ≤ CF ≤ 1

Hipotesis pasti benar MB = 1

P(H|E) = 1 MD = 0

33
CF = 1

Hipotesis pasti salah MB = 0

P(H’|E) = 1 MD = 1

CF = -1

Kekurangan fakta MB = 0

P(H|E) = P(H) MD = 0

CF = 0

Faktor kepastian (CF) menunjukkan jaringan kepercayaan dalam suatu hipotesis


yang berdasarkan pada beberapa fakta.


 CF Positif : mendukung hipotesis, karena MB > MD.



 CF=1 : fakta secara definisi membuktikan suatu hipotesis
 CF=0 : CF=MB-MD = 0 , berarti tidak ada fakta. MD=MB, berarti kepercayaan
dihapus/ditiadakan oleh ketidakpercayaan

 CF Negatif : fakta menandakan negasi dari hipotesis, karena MB <MD. Dengan
kata lain menyatakan ketidakpercayaan terhadap hipotesis daripada
mempercayainya.

Faktor kepastian memberikan seorang pakar untuk menyatakan kepercayaan tanpa


menyatakan nilai ketidakpercayaan.

Formulanya :

CF(H,E) + CF(H’,E) = 0

Berarti, fakta mendukung suatu hipotesis dan mengurangi dukungan terhadap


negasi dari hipotesis dengan jumlah yang sama, sehingga jumlahnya selalu nol.

34
Contoh :


Seorang calon karyawan akan diterima jika mendapatkan nilai 80 untuk tes
kemampuan

CF(H,E) = 0,75CF(H’,E) = -0,75


Seberapa kepercayaan Anda bahwa mendapatkan nilai 80 pada tes kemampuan


akan membantu Anda diterima bekerja ?

Jawab : Saya pastikan 75% bahwa saya akan diterima bekerja jika saya
memperoleh nilai 80 untuk tes kemampuan.

Seberapa ketidakpercayaan Anda bahwa mendapatkan nilai 80 pada tes


kemampuan akan membantu Anda diterima bekerja ?

Jawab : Saya pastikan -75% bahwa saya tidak akan diterima bekerja jika saya
memperoleh nilai 80 untuk tes kemampuan

Definisi asli dari CF adalah : CF = MB – MD. Tahun 1977 definisi asli tersebut
diubah dalam MYCIN menjadi :

MB − MD
𝐶𝐹 =
1 – min(MB, MD)

Aturan MYCIN untuk mengkombinasikan antecedent evidence dari ekspresi dasar

Evidence Ketidakpastian antesden

E1 AND E2 Min [CF(H,E1), CF(H,E2)]

E1 AND E2 Max [CF(H,E1), CF(H,E2)]

NOT E -CF (H,E)

Contoh :

Diketahui ekspresi logika untuk penggabungan evicence E=(E1 ANDE2 AND

35
E3) OR (E4 AND NOT E5).

Evidence E akan dihitung sebagai berikut :E = max [min(E1,E2,E3), min (E4,-


E5)]

Jika diketahui : E1 = 0.9E2= 0.8E3 = 0.3E4 = -0.5 E5 = -0.4

Maka hasilnya :E = max [min(0.9;0.8;0.3), min (-0.5;(-0.4))]E = max[0.3;- 0.5]

Rumus dasar untuk CF dari kaidah

IF E THEN H

Adalah:

CF(H,e) = CF(E,e) CF(H,E)

Dimana:

CF(E,e) : faktor kepastian dari fakta E membuat antecedent dari kaidah


berdasarkan pada ketidakpastian fakta e.

CF(H,E) : faktor kepastian dalam hipotesa dengan asumsi bahwa fakta diketahui
dengan pasti, bila CF(E,e)=1 CF(H,e) : faktor kepastian hipotesis yang
didasarkanpada ketidakpastian fakta e.

Jika semua fakta dalam antecedent diketahui dengan pasti rumus faktor
kepastiannya menjadi : CF(H,e) = CF(E,e) , karena CF (E,e) = 1

36
PERTEMUAN VII
FIRST ORDER LOGIC

VII. Definisi First Order Logic


Proses reasoning untuk menyelesaikan masalah dengan merepresentasikan
masalah kedalam logic sudah dilakukan oleh propositional logic. Propositional
logic dalam menyelesaikan permasalahan dengan menggunakan fakta-fakta yang
diproses menggunakan logika-logika sederhana saja. Sedangkan pada first order
logic permasalahan diselesaikan dengan sentence yang merepresentasikan fakta
dan term yang merepresentasikan objek. Komponen-komponen penting yang ada
pada first order logic yaitu : 


Objects : merupakan sesuatu yang dikenai logika-logika yang memiliki identitas


untuk masing-masing individual (komputer, rumah, mobil, ...).

 Properties : sifat yang dimiliki oleh objek dan merupakan pembeda dengan
objek lainnya (merah, besar, lingkaran, ...). 

 Relations : aksi atau aktifitas yang menjadi penghubung antar objek dalam
berelasi (saudara dari, lebih tinggi dari, bagian dari). 

 Functions : merupakan relation yang memiliki satu nilai (ayah dari, teman
baik,...). 


Komponen-komponen yang sudah dijelaskan diatas disebut sebagai ontological


commitment atau hal-hal apa saja yang diketahui dan dijelaskan di dalam logic
yang digunakan dalam menyelesaikan permasalahan. Selanjutnya akan
ditunjukkan beberapa jenis logic lain yang memiliki ontological commitment dan
epistemological commitment (kebenaran apa yang dapat dinyatakan tentang
sebuah sentence). Contoh beberapa logic lain adalah sebagai berikut : 


37
Logic Ontological Epistemological
Propositional logic Facts True/False/unknown
First-order logic Facts, objects, relations, times True/false/unknown
Temporal logic Facts, objects, relations, times True/false/unknown
Probability theory Facts Degree of believe 0..1
Fuzzy logic Degree of truth Degree of believe 0..1

Elemen-elemen dasar terkecil yang dimiliki oleh first order logic adalah sebagai
berikut :

 Constants
Dituliskan dalam huruf besar seperti A, X, NAMA. Pada


simbol konstanta ini, setiap simbol harus menyatakan secara spesifik objek
yang dimaksud. Tetapi, mungkin saja satu simbol mengacu pada beberapa
nama berbeda. Misalnya, MOBIL bisa mengacu pada MOBIL SEDAN,
MOBIL JEEP, dan sebagainya. Oleh karena itu penulisan simbol
konstanta harus dilakukan secara hati-hati agar tidak terjadi kerancuan atau
ambiguitas. 

 Predicates
Menyatakan relasi khusus dalam suatu model yang
menghubungkan antar objek yang memiliki hubungan. Misalkan Berwarna
adalah suatu predicate yang memiliki beberapa nilai. Contoh :
Berwarna(Mobil, Biru), Berwarna(Mobil, Merah), dan sebagainya. 

 Functions
Menyatakan relasi yang hanya membutuhkan satu nilai.
Karena setiap orang hanya memiliki satu ayah, maka Ayah merupakan
suatu function. Misalkan Ayah(Boediono, Zaki). 

 Variables
Dituliskan dalam huruf kecil seperti a, x, s dan sebagainya.
Variable ini menyatakan simbol yang dapat digantikan oleh konstanta
apapun dan bersifat dinamis. 

 Connectives
Merupakan logika yang menghubungkan di dalam suatu

kalimat kompleks seperti 
: ∧∨ ¬ ⇒⇔ 
 Equality
Merupakan

logika yang membandingkan kesamaan antara dua atau lebih kalimat



yang memiliki kesamaan nilai logika.
 Equality disimbolkan dengan tanda = 
 Quantifiers
Terdapat dua
quantifier secara umum yaitu Universal quantifier (∀) yang menyatakan

38
sesuatu yang bersifat umumdan Existential quantifier (∃) yang
menyatakan sesuatu yang berlaku sebagian saja. 


VII.2 Sintaks First Order Logic


Tata bahasa pada first order logic meliputi:
 Terms

Merupakan ekspresi logika yang mengacu pada sebuah objek. Terms bisa berupa
constant, variable, atau function. Penulisan term dapat dilihat pada contoh di
bawah ini : 


Terms
function (term1,…,termn)
atau
constant
atau
variable

 Atomic sentences

Merupakan komponen yang dapat terbentuk dari Predicate (Term,..) atau


Term=Term. Atomic sentence merupakan kalimat paling sederhana dan belum
memiliki komponen logika lainnya. Bentuk penulisan atomic sentences adalah
sebagai berikut:

Atomic sentences
predicate (term1,…,termn)
atau
term1 = term2

Contoh penggunaan adalah sebagai berikut :


Sepatu (agus), Saudara (Ali, Andi), Memberi ( Ahmad, Agus, KueCoklat),
Saudara(Ahmad)=Agus, dan sebagainya.
 Complex sentences


Merupakan kalimat kompleks yang tersusun dari beberapa atomic sentence yang
saling terhubung berdasarkan logika dengan menggunakan connective. Bentuk

39
penulisan dari complex sentences adalah sebagai berikut :

Complex sentences
Predicate1 (term1,termn)  predicate2(term3)

Contoh penggunaan dari complex sentence adalah sebagai berikut:


 Belajar(Andi)⇒ Pintar(Andi) 


 ¬S,S1∧S2,S1∨S2,S1⇒S2,S1⇔S2 


 Saudara(Ahmad,Andi)⇒Saudara(Andi,Ahmad) 


 >(1, 2) ∨ ≤(1, 2) 


 >(1, 2) ∧ ¬>(1, 2) 


 Belajar(x, SC) ⇒ Mengerti(x, AI) 


VII.3 Simantik First Order Logic


Pada first order logic sama halnya dengan propositional logic sebuah kalimat first
order logic dikatakan true terhadap sebuah model, artinya kalimat first order logic
memiliki nilai kebenaran tertentu sehingga dianggap true atau false. Satu kalimat
dalam first order logic dapat diinterpretasikan banyak cara dalam sebuah model.
Model dalam first 
order logic terdiri dari:

 Objects : elemen-elemen yang nyata ada pada permasalahan (domain


elements)

 Relations : hubungan antara elemen-elemen/ objek-objek tertentu

Sebuah interpretasi mendefinisikan referent (yang dipetakan) sebagai berikut:

 Constant symbols : objects


 Predicate symbols : relations
 Functions symbols : functional relations

40
Kecerdasan buatan / MateriKuliah Brawi
order logic terdiri dari :

Objects : elemen-elemen yang nyata ada pada permasalahan


Kecerdasan buatan / MateriKuliah Relations : hubungan antaraBrawijaya University
elemen-elemen 2012
/ objek-objek te
order logic terdiri dari :
Sebuah interpretasi mendefinisikan referent (yang dipetakan) sebag
Constant symbols : objects
Objects : elemen-elemen yang nyata ada pada permasalahan (domain elements)
Predicate symbols : relations
Kalimat : hubungan
Relations first order logic
antara memiliki / maksud
elemen-elemen kalimat atomik
Functions symbolsobjek-objek tertentu
: functional relations
predicate(term ,...,term ) dikatakan bernilai true dalam model m di bawah
1 2
Sebuah interpretasi mendefinisikan
Kalimat referent (yang
first order dipetakan)
logic memilikisebagaimaksud berikut :
kalimat atomik predic
Constant symbols : objects
unterpretasi i jika dandikatakan
hanya jika object yang
bernilai di-refer
true dalam(termmodel
1 , ... , term
m di
2 ) di bawah
bawah unterpretasi i
Predicate symbols object : relations
yang di-refer (term1, ... , term2) di bawah i terhubung oleh r
i terhubung
Functions oleh relation
symbols olehyang di refer dalam
:predicate
functional oleh predicate
relations
m. dalam m.

Kalimat first order logic memiliki maksud kalimat atomik predicate(term1,...,term2)


dikatakan bernilai true dalam model m di bawah unterpretasi i jika dan
Ilustrasi padahanya
gambarjikadisampi
object yang di-refer (term1, ... , term2) di bawah i terhubung oleh relation yang di refer
komponen-komponen yang ad
oleh predicate dalam m. logic. Pada ilustrasi digambark
orang dan raja. Hubungan kedu
saudaramenggambarkan
Ilustrasi pada gambar disamping satu dengan lainnya. D
komponen-komponen yangdapat dilihat first
ada pada masing-masing
order
sebagai berikut :
logic. Pada ilustrasi digambarkan bahwa terdapat
orang dan raja. Hubungan keduanya adalah sebagai
saudara satu dengan lainnya. Dari gambar tersebut
dapat dilihat masing-masing komponen adalah
object
Ilustrasi pada gambar disamping menggambarkan komponen-komponen yang ada
sebagaimenggambarkan
Ilustrasi berikut : ada seorang raja dan orang bias
pada first order logic. Pada ilustrasi
contoh objek yang ada adalah orang
digambarkan bahwa terdapat danraja,
orang, raja. kaki raja dan
Hubungan keduanya adalah memiliki identitas
sebagai saudara satutertentu
dengan yang nantinya
lainnya. akan melalui proses
Dari gambar
object
tersebut dapat dilihat masing-masing komponen adalah sebagai berikut :
Ilustrasi menggambarkan ada seorang raja dan orang biasa, dapat kita ambil
contoha. objek
Objectyang ada adalah orang, raja, kaki raja dan kaki orang. Objek
memiliki identitas tertentu yang nantinya akan melalui proses logika.

function
function merupakan hubungan yang hanya membutuhkan s
objek, contoh pada ilustrasi adalah kaki digunakan oleh orang

function
function
Ilustrasimerupakan hubungan
menggambarkan yang hanya
ada seorang raja danmembutuhkan satukita
orang biasa, dapat nilai untuk satu
ambil
objek, contoh pada ilustrasi adalah kaki digunakan oleh orang untuk berjalan.
contoh objek yang ada adalah relation
orang, raja, kaki raja dan kaki orang. Objek
menyatakan
memiliki identitas tertentu yang hubungan
nantinya akan antarlogika.
melalui proses objek yang memiliki relasi ter
ilustrasi terdapat relasi saudara antara orang dan raja.

b. Function
relation
menyatakan hubungan
Function merupakan 2.4 Quantifiers
antar
hubungan objek yang membutuhkan
yang hanya memiliki relasi
satutertentu,
nilai untukpada
satu gambar
ilustrasi terdapat relasi saudara antara orang dan raja.
Universal quantifiers
Page 64 of 98
41
2.4 Quantifiers
memiliki
contoh objekidentitas
yang adatertentu yang
adalah nantinya
orang, raja,akan
kakimelalui proses
raja dan kakilogika.
orang. Objek
memiliki identitas tertentu yang nantinya akan melalui proses logika.

function
function
function merupakan hubungan yang hanya membutuhkan satu nilai untuk satu
objek, contoh pada ilustrasi adalah digunakan oleh orang untuk berjalan
function
objek,merupakan
contoh pada hubungan yang hanya
ilustrasi adalah membutuhkan
kaki digunakan satu nilai
oleh orang untuk
untuk satu
berjalan.
objek, contoh pada ilustrasi adalah kaki digunakan oleh orang untuk berjalan.

relation
relation c. Relationhubungan antar objek yang memiliki relasi tertentu, pada gambar
menyatakan
menyatakan hubungan
ilustrasi terdapat antar
relasi objekantara
saudara yang memiliki
orang dan relasi
[Link], pada gambar
Menyatakan
ilustrasi hubungan
terdapat antar objek
relasi saudara yang memiliki
antara orang danrelasi tertentu, pada gambar
raja.
ilustrasi terdapat relasi saudara antara orang dan raja.

2.4 Quantifiers
2.4 Quantifiers
Universal quantifiers
Universal quantifiers
VII.4 Quantifiers Page 64 of 98
 Universal quantifiers Page 64 of 98

Universal menyatakan logika yang digunakan untuk menunjuk sesuatu yang


bersifat umum. Simbol ∀ yang memiliki makna "untuk semua atau setiap" atau
"for all" terhadap sebuah variabel x yang disimbolkan dengan ∀x berarti bahwa
kalimat tersebut berlaku untuk setiap objek x. Contoh permasalahan pada first
order logic yang menggunakan Universal Quantifiers adalah sebagai berikut :
Misalkan ada kalimat "Ikhsan adalah anak kecil", kalimat ini akan dinyatakan
sebagai AnakKecil(Ikhsan), dan ada kalimat "Andi suka permen" dinyatakan
sebagai Suka(Andi,Permen). Jika kita ingin membuat kalimat "Untuk setiap objek
x, jika x adalah anak kecil maka x suka permen". Maka kalimat dapat kita tuliskan
pada bentuk first order logic sebagai:

∀x AnakKecil(x)⇒Suka(x,Permen) kalimat tersebut akan bernilai benar jika dan


hanya jika semua kalimat di bawah ini benar.

AnakKecil(Budi)⇒Suka(Budi,Permen)∧

AnakKecil(Rahmad)⇒Suka(Rahmad,Permen)∧

AnakKecil(Anton) ⇒Suka(Anton,Permen)∧

42
Hal-hal yang harus dihindari pada penggunaan Quantifier Universal adalah

penggunaan logika ∧ pada kalimat utama karena akan menimbulkan pengertian

yang ambigu.


 Existential quantifiers

Existential menyatakan logika yang digunakan untuk menunjuk sesuatu yang


bersifat khusus. Artinya hanya beberapa bagian atau sebagian saja dari
keseluruhan himpunan. Logika ini merupakan kebalikan dari logika Universal.
Logika ini disimbolkan dengan ∃ yang memiliki makna "There Exist" atau (ada
satu atau beberapa). Kita dapat menyatakan kalimat "Ada objek x, jika x adalah
anak kecil maka x suka permen" menjadi first order logic sebagai berikut:

∃x AnakKecil(x) ∧ SukaPermen(x).

Hal-hal yang harus dihindari pada penggunaan Quantifier Universal adalah


penggunaan logika⇒pada kalimat utama karena akan menimbulkan pengertian
yang ambigu.

VII.4 Equality
Equality merupakan pembandingan terhadap dua kalimat atau term yang memiliki
nilai logika true atau false. Kedua kalimat dianggap sama jika memiliki nilai
logika yang sama. Term1 =Term2 akan diinterpretasikan benar jika dan hanya jika
memiliki nilai yang sama. Contoh bentuk dari equality adalah sebagai berikut :

Equality

x,ySaudara(x,y)[(x=y)m,f(m=f)OrangTua(m,x)OrangTua(f,x)Orang
Tua (m,y)OrangTua (f,y)]

43
VII.5 Inferensi pada First Order Logic
Proses inferensi pada first order logic menggunakan 7 aturan inferensi yang
digunakan pada propositional logic, dengan ditambah aturan yang lebih kompleks
sehubungan dengan quantifiers, sebagai berikut:
1. Inference Rules Involving Quantifiers

𝑆𝑈𝐵𝑆𝑇(𝜃, 𝛼) : untuk menotasikan hasil dari pengaplikasian operasi substitusi


𝜃 terhadap sentence 𝛼
𝑆𝑈𝐵𝑆𝑇({𝑥/𝐴𝑛𝑑𝑖, 𝑥/𝐵𝑢𝑑𝑖}, 𝑆𝑎𝑢𝑑𝑎𝑟𝑎(𝑥, 𝑦)) = 𝑠𝑎𝑢𝑑𝑎𝑟𝑎 (𝐴𝑛𝑑𝑖, 𝐵𝑢𝑑𝑖)
2. Universal Elimination

Untuk setiap sentences 𝛼 , variabel v, dan ground term (term yang tidak bersisi
variabel) g:
∀𝑣 𝛼
𝑆𝑈𝐵𝑆𝑇({𝑣/𝑔}, 𝑎)
Dari ∀𝑣 Suka (x, Membaca), dapat digunakan substiutsi {x/andi} dan melakukan
inferensi bahwa Suka(Andi, Membaca)
3. Existential Elimination

Untuk setiap sentence 𝛼 , variable v, dan simbol konstanta k yang tidak tampak
dimanapun di dalam basis pengetahuan:
∋𝑣𝛼
𝑆𝑈𝐵𝑆𝑇({𝑣/𝑘}, 𝛼)
Dari ∋ 𝑥 Membunuh(x,korban), kita dapat menyimpulkan
Membunuh{penjahat, korban}, selama penjahat tidaktampak dimanapun di
dalam basis pengetahuan
4. Existential Introduction

Untuk setiap sentence 𝛼, variable v yang tidak terjadi pada 𝛼, dan ground term g
yang terjadi pada 𝛼 :
𝛼
∋ 𝑣 𝑆𝑈𝐵𝑆𝑇({𝑔/𝑣}, 𝛼)
Dari suka(budi, membaca) kita dapat menyimpulkan ∋ 𝑥 suka(𝑥, 𝑀𝑒𝑚𝑏𝑎𝑐𝑎)

44
PERTEMUAN VIII
UJIAN TENGAH SEMESTER
Soal
1. Apa yang dimaksud dengan kecerdasan buatan? Bagaimana sebuah
aplikasi/program dapat disebut cerdas?
2. Dimisalkan pengkodean yang dihasilkan dari penerimaan pengetahuan
sebagai berikut :

A1 = suhu tubuh >= 38°C


A2 = batuk
A3 = pilek
A4 = batuk yang terusmenerus terutama di malam hari
A5 = nafas berbunyi

P1 = demam biasa
P2 = batuk biasa
P3 = influensa/infeksi virus
P4 = batuk rejan
P5 = infeksi saluran nafas

Kaidah-kaidah (rules) pada basis pengetahuan meliputi :


R1 : IF A1 THEN P1
R2 : IF A2 THEN P2
R3 : IF P1 and (P2 or A3) THEN P3
R4 : IF P3 and A4 THEN P4
R5 : IF P3 and A5 THEN P5
Fakta-fakta yang diperoleh dari user adalah demam, batuk, dan batuk tersebut
lebih sering di malam hari (A1, A2, A4 → benar). Jelaskan langkah-langkah
memperoleh kesimpulan jika teknik inferensi yang digunakan adalah :
a. Forward chaining
b. Backward chaining

45
3. Selesaikan kasus ini menggunakan representasi pengetahuan
dengan teknik logika Kasus.
 Setiap mangga atau apel adalah buah
 Setiap buah punya warna merah atau kuning atau biru
 Tidak ada buah yang manis berwarna merah
 Tidak ada mangga berwarna biru

Pertanyaannya :
Benarkah “ Jika mangga tidak kuning maka mangga tidak manis ?”
Buktikan !

46
PERTEMUAN IX
SISTEM PAKAR

IX.1 Pendahuluan
Ketika hendak membuat suatu keputusan yang komplek atau memecahkan
masalah, seringkali kita meminta nasehat atau berkonsultasi dengan seorang pakar
atau ahli. Seorang pakar adalah seseorang yang mempunyai pengetahuan dan
pengalaman spesifik dalam suatu bidang; misalnya pakar komputer, pakar uji tak
merusak, pakar politik dan lain-lain. Semakin tidak terstruktur situasinya, semakin
mengkhusus (dan mahal) konsultasi yang dibutuhkan.
Sistem Pakar (Expert System) adalah usaha untuk menirukan seorang
pakar. Biasanya Sistem Pakar berupa perangkat lunak pengambil keputusan yang
mampu mencapai tingkat performa yang sebanding seorang pakar dalam bidang
problem yang khusus dan sempit. Ide dasarnya adalah: kepakaran ditransfer dari
seorang pakar (atau sumber kepakaran yang lain) ke komputer, pengetahuan yang
ada disimpan dalam komputer, dan pengguna dapat berkonsultasi pada komputer
itu untuk suatu nasehat, lalu komputer dapat mengambil inferensi (menyimpulkan,
mendeduksi, dll.) seperti layaknya seorang pakar, kemudian menjelaskannya ke
pengguna tersebut, bila perlu dengan alasanalasannya. Sistem Pakar malahan
terkadang lebih baik unjuk kerjanya daripada seorang pakar manusia!
Kepakaran (expertise) adalah pengetahuan yang ekstensif (meluas) dan
spesifik yang diperoleh melalui rangkaian pelatihan, membaca, dan pengalaman.
Pengetahuan membuat pakar dapat mengambil keputusan secara lebih baik dan
lebih cepat daripada nonpakar dalam memecahkan problem yang kompleks.
Kepakaran mempunyai sifat berjenjang, pakar top memiliki pengetahuan lebih
banyak daripada pakar yunior.
Tujuan Sistem Pakar adalah untuk mentransfer kepakaran dari seorang
pakar ke komputer, kemudian ke orang lain (yang bukan pakar). Proses ini
tercakup dalam rekayasa pengetahuan (knowledge engineering) yang akan dibahas
kemudian.

47
Manfaat dan Keterbatasan Sistem Pakar
1. Manfaat Sistem Pakar
Mengapa Sistem Pakar menjadi sangat populer? Hal ini disebabkan oleh
sangat banyaknya kemampuan dan manfaat yang diberikan oleh Sistem Pakar, di
antaranya:
a. Meningkatkan output dan produktivitas, karena Sistem Pakar dapat
bekerja lebih cepat dari manusia.
b. Meningkatkan kualitas, dengan memberi nasehat yang konsisten dan
mengurangi kesalahan.
c. Mampu menangkap kepakaran yang sangat terbatas.

d. Dapat beroperasi di lingkungan yang berbahaya.

e. Memudahkan akses ke pengetahuan.

f. Handal. Sistem Pakar tidak pernah menjadi bosan dan kelelahan atau
sakit. Sistem Pakar juga secara konsisten melihat semua detil dan tidak
akan melewatkan informasi yang relevan dan solusi yang potensial.
g. Meningkatkan kapabilitas sistem terkomputerisasi yang lain. Integrasi
Sistem Pakar dengan sistem komputer lain membuat lebih efektif, dan
mencakup lebih banyak aplikasi .
h. Mampu bekerja dengan informasi yang tidak lengkap atau tidak pasti.
Berbeda dengan sistem komputer konvensional, Sistem Pakar dapat
bekerja dengan inofrmasi yang tidak lengkap. Pengguna dapat
merespon dengan: “tidak tahu” atau “tidak yakin” pada satu atau lebih
pertanyaan selama konsultasi, dan Sistem Pakar tetap akan
memberikan jawabannya.
i. Mampu menyediakan pelatihan. Pengguna pemula yang bekerja
dengan Sistem Pakar akan menjadi lebih berpengalaman. Fasilitas
penjelas dapat berfungsi sebagai guru.
j. Meningkatkan kemampuan problem solving, karena mengambil
sumber pengetahuan dari banyak pakar.
k. Meniadakan kebutuhan perangkat yang mahal.

48
l. Fleksibel.

2. Keterbatasan Sistem Pakar


Metodologi Sistem Pakar yang ada tidak selalu mudah, sederhana dan
efektif.

Berikut adalah keterbatasan yang menghambat perkembangan Sistem Pakar:

a. Pengetahuan yang hendak diambil tidak selalu tersedia.

b. Kepakaran sangat sulit diekstrak dari manusia.

c. Pendekatan oleh setiap pakar untuk suatu situasi atau problem bisa
berbedabeda, meskipun sama-sama benar.
d. Adalah sangat sulit bagi seorang pakar untuk mengabstraksi atau
menjelaskan langkah mereka dalam menangani masalah
e. Pengguna Sistem Pakar mempunyai batas kognitif alami, sehingga
mungkin tidak bisa memanfaatkan sistem secara maksimal.
f. Sistem Pakar bekerja baik untuk suatu bidang yang sempit.

g. Banyak pakar yang tidak mempunyai jalan untuk mencek apakah


kesimpulan mereka benar dan masuk akal.
h. Istilah dan jargon yang dipakai oleh pakar dalam mengekspresikan
fakta seringkali terbatas dan tidak mudah dimengerti oleh orang lain.
i. Pengembangan Sistem Pakar seringkali membutuhkan perekayasa
pengetahuan (knowledge engineer) yang langka dan mahal.
j. Kurangnya rasa percaya pengguna menghalangi pemakaian Sistem
Pakar.

k. Transfer pengetahuan dapat bersifat subyektif dan bias.

IX.2 Komponen Sistem Pakar


Secara umum, Sistem Pakar biasanya terdiri atas beberapa komponen yang
masingmasing berhubungan seperti terlihat pada Gambar II-1.

49
Basis Pengetahuan, berisi pengetahuan yang dibutuhkan untuk
memahami, memformulasi, dan memecahkan masalah. Basis pengetahuan
tersusun atas 2 elemen dasar:
1. Fakta, misalnya: situasi, kondisi, dan kenyataan dari permasalahan
yang ada, serta teori dalam bidang itu
2. Aturan, yang mengarahkan penggunaan pengetahuan untuk
memecahkan masalah yang spesifik dalam bidang yang khusus
Mesin Inferensi (Inference Engine), merupakan otak dari Sistem Pakar.
Juga dikenal sebagai penerjemah aturan (rule interpreter). Komponen ini berupa
program komputer yang menyediakan suatu metodologi untuk memikirkan
(reasoning) dan memformulasi kesimpulan. Kerja mesin inferensi meliputi:
1. Menentukan aturan mana akan dipakai

2. Menyajikan pertanyaan kepada pemakai, ketika diperlukan.

3. Menambahkan jawaban ke dalam memori Sistem Pakar.

4. Menyimpulkan fakta baru dari sebuah aturan

5. Menambahkan fakta tadi ke dalam memori.

Struktur skematis sebuah Sistem Pakar

50
Papan Tulis (Blackboard/Workplace), adalah memori/lokasi untuk
bekerja dan menyimpan hasil sementara. Biasanya berupa sebuah basis data.
Antarmuka Pemakai (User Interface). Sistem Pakar mengatur
komunikasi antara pengguna dan komputer. Komunikasi ini paling baik berupa
bahasa alami, biasanya disajikan dalam bentuk tanya-jawab dan kadang
ditampilkan dalam bentuk gambar/grafik. Antarmuka yang lebih canggih
dilengkapi dengan percakapan (voice communication).
Subsistem Penjelasan (Explanation Facility). Kemampuan untuk
menjejak (tracing) bagaimana suatu kesimpulan dapat diambil merupakan hal
yang sangat penting untuk transfer pengetahuan dan pemecahan masalah.
Komponen subsistem penjelasan harus dapat menyediakannya yang secara
interaktif menjawab pertanyaan pengguna, misalnya:
1. “Mengapa pertanyaan tersebut anda tanyakan?”

2. “Seberapa yakin kesimpulan tersebut diambil?”

3. “Mengapa alternatif tersebut ditolak?”

4. “Apa yang akan dilakukan untuk mengambil suatu kesimpulan?”

5. “Fakta apalagi yang diperlukan untuk mengambil kesimpulan akhir?”

Sistem Penghalusan Pengetahuan (Knowledge Refining System).


Seorang pakar mempunyai sistem penghalusan pengetahuan, artinya, mereka bisa
menganalisa sendiri performa mereka, belajar dari pengalaman, serta
meningkatkan pengetahuannya untuk konsultasi berikutnya. Pada Sistem Pakar,
swa-evaluasi ini penting sehingga dapat menganalisa alasan keberhasilan atau
kegagalan pengambilan kesimpulan, serta memperbaiki basis pengetahuannya.

IX.3 Pembangunan Sebuah Sistem Pakar


Mengembangkan Sistem Pakar dapat dilakukan dengan 2 cara:

1. Membangun sendiri semua komponen di atas, atau

2. Memakai semua komponen yang sudah ada kecuali isi basis


pengetahuan.

51
Yang kedua disebut sebagai membangun Sistem Pakar dengan shell, yakni
semua komponen Sistem Pakar, kecuali basis pengetahuan, bersifat generik;
sehingga dapat dipakai untuk bidang yang berlainan. Membangun Sistem Pakar
dengan shell dapat dilakukan dengan lebih cepat dan lebih sedikit keterampilan
memprogram, namun berkurang fleksibilitasnya karena harus mengikuti
kemampuan dari shell tersebut. Salah satu shell Sistem Pakar yang populer
dipakai adalah CLIPS (C Language Integrated Production System) yang dapat
didownload dari internet.

1. Pemilihan Masalah
Pembuatan Sistem Pakar membutuhkan waktu dan biaya yang banyak.
Untuk menghindari kegagalan yang memalukan dan kerugian yang besar, maka
dibuat beberapa pedoman untuk menentukan apakah Sistem Pakar cocok untuk
memecahkan suatu problem:
a. Biaya yang diperlukan untuk pembangunan Sistem Pakar ditentukan
oleh kebutuhan untuk memperoleh solusi. Sehingga harus ada
perhitungan yang realistis untuk cost and benefit.
b. Pakar manusia tidak mudah ditemui untuk semua situasi di mana dia
dibutuhkan. Jika pakar pengetahuan tersebut terdapat di mana saja dan
kapan saja, maka pembangunan Sistem Pakar menjadi kurang
berharga.
c. Problem yang ada dapat diselesaikan dengan teknik penalaran
simbolik, dan tidak membutuhkan kemampuan fisik.
d. Problem tersebut harus terstruktur dengan baik dan tidak
membutuhkan terlalu banyak pengetahuan awam (common sense),
yang terkenal sulit untuk diakuisisi dan dideskripsikan, dan lebih
banyak berhubungan dengan bidang yang teknis.
e. Problem tersebut tidak mudah diselesaikan dengan metode komputasi
yang lebih tradisionil. Jika ada penyelesaian algoritmis yang bagus
untuk problem tersebut, maka kita tidak perlu memakai Sistem Pakar.

52
f. Ada pakar yang mampu memberikan penjelasan tentang kepakarannya
serta mau bekerjasama. Adalah sangat penting bahwa pakar yang
dihubungi benarbenar mempunyai kemauan kuat untuk ikut
berpartisipasi serta tidak merasa pekerjaannya akan menjadi terancam.
g. Problem tersebut mempunyai sekup yang tepat. Biasanya merupakan
problem yang membutuhkan kepakaran yang sangat khusus namun
hanya membutuhkan seorang pakar untuk dapat menyelesaikannya
dalam waktu yang relatif singkat (misalnya paling lama 1 jam).

2. Rekayasa Pengetahuan (Knowledge Engineering)


Proses dalam rekayasa pengetahuan meliputi (Gambar II-2):

a. Akuisisi pengetahuan, yaitu bagaimana memperoleh pengetahuan dari


pakar atau sumber lain (sumber terdokumentasi, buku, sensor, file
komputer, dll.).
b. Validasi pengetahuan, untuk menjaga kualitasnya misalnya dengan uji
kasus.

c. Representasi pengetahuan, yaitu bagaimana mengorganisasi


pengetahuan yang diperoleh, mengkodekan dan menyimpannya dalam
suatu basis pengetahuan.
d. Penyimpulan pengetahuan, menggunakan mesin inferensi yang
mengakses basis pengetahuan dan kemudian melakukan penyimpulan.
e. Transfer pengetahuan (penjelasan). Hasil inferensi berupa nasehat,
rekomendasi, atau jawaban, kemudian dijelaskan ke pengguna oleh
subsistem penjelas.

53
Mulai

Sumber pengetahuan Validasi


(pakar, buku, file) pengetahuan

Akuisisi pengetahuan

Penyajian Basis
pengetahuan pengetahuan
pengkodean

Inferensi/ Penjelasan,
penyimpulan justifikasi

Proses dalam rekayasa pengetahuan

3. Partisipan Dalam Proses Pengembangan


Pakar, yaitu seseorang yang mempunyai pengetahuan, pengalaman, dan
metode khusus, serta mampu menerapkannya untuk memecahkan masalah atau
memberi nasehat. Pakar menyediakan pengetahuan tentang bagaimana nantinya
Sistem Pakar bekerja.
Perekayasa pengetahuan (knowledge engineer), yang membantu pakar
untuk menyusun area permasalahan dengan menerjemahkan dan
mengintegrasikan jawaban pakar terhadap pertanyaan-pertanyaan dari klien,
menarik analogi, serta memberikan contohcontoh yang berlawanan, kemudian
menyusun basis pengetahuan.
Pengguna, yang mungkin meliputi: seorang klien non-pakar yang sedang
membutuhkan nasehat (Sistem Pakar sebagai konsultan atau advisor), seorang
siswa yang sedang belajar (Sistem Pakar sebagai instruktur), seorang pembuat
Sistem Pakar yang hendak meningkatkan basis pengetahuan (Sistem Pakar
sebagai partner), seorang pakar (Sistem Pakar sebagai kolega atau asisten, yang
dapat memberikan opini kedua).
Partisipan lain, dapat meliputi: pembangun sistem (system builder), tool
builder, staf administrasi dsb.

4. Akuisisi Pengetahuan

54
Dalam proses akuisisi pengetahuan, seorang perekayasa pengetahuan
menjembatani antara pakar dengan basis pengetahuan. Perekayasa pengetahuan
mendapatkan pengetahuan dari pakar, mengolahnya bersama pakar tersebut, dan
menaruhnya dalam basis pengetahuan, dengan format tertentu. Pengambilan
pengetahuan dari pakar dapat dilakukan secara (Gambar II-3):
Manual, di mana perekayasa pengetahuan mendapatkan pengetahuan dari
pakar (melalui wawancara) dan/atau sumber lain, kemudian mengkodekannya
dalam basis pengetahuan. Proses ini biasanya berlangsung lambat, mahal, serta
kadangkala tidak akurat.
Semi-otomatik, di mana terdapat peran komputer untuk: (1) mendukung
pakar dengan mengijinkannya membangun basis pengetahuan tanpa (atau dengan
sedikit) bantuan dari perekayasa pengetahuan, atau (2) membantu perekayasa
pengetahuan sehingga kerjanya menjadi lebih efisien dan efektif.
Otomatik, di mana peran pakar, perekayasa pengetahuan, dan pembangun
basis pengetahuan (system builder) digabung. Misalnya dapat dilakukan oleh
seorang system analyst seperti pada metode induksi.

edukasi
Pakar
Knowledge Basis
engineer pengetahuan
Pengetahuan
terdokumentasi

(a)
pengkodean
Wawancara Basis
Pakar terbantukan pengetahuan
komputer

Knowledge
engineer

(b)
Kasus & contoh Sistem Basis
yang lalu induksi pengetahuan

(c)
Metode akuisisi pengetahuan (a) manual (b) akuisisi terkendali-pakar (c) induksi

55
PERTEMUAN X
LOGIKA FUZZY

X.1 Pengenalan Logika Fuzzy


Logika fuzzy adalah cabang dari sistem kecerdasan buatan (Artificial
Inteligent) yang mengemulasi kemampuan manusia dalam berfikir ke dalam
bentuk algoritma yang kemudian dijalankan oleh mesin. Algoritma ini
digunakan dalam berbagai aplikasi pemrosesan data yang tidak dapat
direpresentasikan dalam bentuk biner. Logika fuzzy menginterpretasikan
statemen yang samar menjadi sebuah pengertian yang logis (Sri
Kusumadewi, 2002).
Logika fuzzy merupakan salah satu cabang dari ilmu komputer yang
mempelajari tentang nilai kebenaran yang bernilai banyak. Berbeda dengan
nilai kebenaran pada logika klasik yang bernilai 0 (salah) atau 1 (benar).
Logika fuzzy mempunyai nilai kebenaran real dalam selang [0,1]. Logika
fuzzy pertama kali dikembangkan oleh Lotfi A. Zadeh seorang ilmuwan
Amerika Serikat berkebangsaan Iran dari Universitas California di Berkeley.
Meskipun demikian, logika fuzzy lebih banyak dikembangkan oleh praktisi
Jepang (Novan Parmongan, 2011).

Ungkapan logika Boolean menggambarkan nilai-nilai “benar” atau “salah”.

Logika fuzzy menggunakan ungkapan misalnya : “sangat lambat”, ”agak


sedang”, “sangat cepat” dan lain-lain untuk mengungkapkan derajat
intensitasnya. Ilustrasi antara keanggotaan fuzzy dengan Boolean set dapat
dilihat pada gambar 1.

56
Gambar diatas adalah pendefinisian kecepatan dalam bentuk logika fuzzy
dan logika Boolean

Dimana :
a=sangat lambat d= lambat
b=agak sedang e =sedang
c=sedikit cepat f =cepat

X.2 Komponen Dasar Logika Fuzzy


Logika fuzzy mempunyai beberapa komponen antara lain (Novan,
Parmongan, 2011) : a. Variabel linguistik.
Variabel ini merupakan variable yang memiliki nilai linguistik. Contoh
variabel linguistik adalah kecepatan, jumlah kendaraan.
b. Nilai linguistik.

Nilai linguistik atau terma merupakan nilai dari variable linguistik,


contohnya untuk variable linguistik jumlah kendaraan bisa berupa
tidak ada, sedikit, sedang, banyak, sangat banyak.
c. Nilai kuantitatif dan derajat keanggotaan.

Nilai kuantitatif merupakan nilai eksak yang mewakili nilai linguistik.


Nilai kuantitatif setiap terma ditentukan oleh fungsi keanggotaan.
Fungsi keanggotaan ini menunjukkan derajat keanggotaan dari sebuah
predikat.
d. Fungsi Keanggotaan

Fungsi keanggotaan logika fuzzy digunakan untuk menghitung derajat


keanggotaan suatu himpunan fuzzy. Setiap istilah linguistik
diasosiasikan dengan fuzzy set, yang masing-masing memiliki fungsi
keanggotaan yang telah didefinisikan. Fungsi keanggotaan (membership
function) adalah suatu kurva yang menunjukan pemetaan titik input data
ke dalam nilai keanggotaannya (sering juga disebut dengan derajat
keanggotaan) yang memiliki interval antara 0 sampai 1. Salah satu cara
yang dapat digunakan untuk mendapatkan nilai keanggotaan adalah

57
dengan melalui pendekatan fungsi. Adalah fungsi keanggotaan yang
biasa digunakan dalam penalaran logika fuzzy, diantaranya :
1) Representasi Linear

Pada representasi linear, pemetaan input ke derajat keanggotaannya


digambarkan sebagai sebuah garis lurus. Bentuk ini paling sederhana
dan menjadi pilihan yang baik untuk mendekati suatu konsep yang
kurang jelas. Ada dua keadaan himpunan fuzzy linear. Pertama,
kenaikan himpunan dimulai pada nilai domain yang memiliki derajat
keanggotaan nol [0] bergerak ke kanan menuju ke nilai domain yang
memiliki derajat keanggotaan lebih tinggi yang disebut dengan
representasi fungsi linear naik.

Representasi fungsi keanggotaan untuk linear naik adalah sebagai


berikut :

Grafik dan rumus representasi linear naik

58
Keterangan:

a = nilai domain yang mempunyai derajat keanggotaan nol b = nilai domain yang
mempunyai derajat keanggotaan satu x = nilai input yang akan di ubah ke dalam
bilangan fuzzy Kedua, merupakan kebalikan yang pertama. Garis lurus dimulai
dari nilai domain dengan derajat keanggotaan tertinggi pada sisi kiri, kemudian
bergerak menurun ke nilai domain yang memiliki derajat keanggotaan lebih
rendah.

Representasi fungsi keanggotaan untuk linear turun adalah sebagai berikut:

Grafik dan rumus representasi linear turun

2) Representasi Kurva Segitiga

Kurva segitiga pada dasarnya merupakan gabungan antara 2 garis


(linear).

Nilai-nilai disekitar b memiliki derajat keanggotaan turun cukup


tajam (menjauhi 1).

59
Grafik dan rumus representasi kurva segitiga

Keterangan: a = nilai domain terkecil yang mempunyai


derajat keanggotaan nol b = nilai domain yang
mempunyai derajat keanggotaan satu c = nilai domain
terbesar yang mempunyai derajat keanggotaan nol

3) Representasi Kurva Trapesium

Kurva trapesium pada dasarnya seperti bentuk segitiga, hanya saja


ada beberapa titik yang memiliki nilai keanggotaan 1.

Grafik dan rumus representasi kurva trapesium

60
Keterangan:

a = nilai domain terkecil yang mempunyai derajat


keanggotaan nol b = nilai domain terkecil yang
mempunyai derajat keanggotaan satu c = nilai domain
terbesar yang mempunyai derajat keanggotaan satu d =
nilai domain terbesar yang mempunyai derajat
keanggotaan nol x = nilai input yang akan di ubah ke
dalam bilangan fuzzy.

4) Representasi Kurva Bentuk Bahu

Daerah yang terletak di tengah-tengah suatu variabel yang


direpresentasikan dalam bentuk segitiga, pada sisi kanan dan kirinya
akan naik turun. Tetapi terkadang salah satu sisi dari variabel
tersebut tidak mengalami perubahan.
Himpunan fuzzy “bahu”, bukan segitiga, digunakan untuk
mengakhiri variabel suatu daerah fuzzy. Bahu kiri bergerak dari
benar ke salah, demikian juga bahu kanan bergerak dari salah ke
benar.

61
Grafik dan rumus representasi kurva bentuk bahu
e. Rule dan Implikasi.

Implikasi merupakan cara untuk menyatakan rule. Misalkan diberikan


komposisi rule A dan rule B, maka Implikasi dinyatakan dalam :
IF A THEN B.......(2)

Keterangan :

A disebut antesenden.

B disebut konsekuen.

Implikasi ini digunakan untuk menentukan nilai linguistik dan nilai


kuantitatif dari B jika diberikan A. Bisa digunakan berbagai macam
teknik, tapi untuk metode Mamdani, yang digunakan adalah metode
min (sama seperti AND).
Proses mekanisme dari logika fuzzy dapat dilihat pada gambar 2.

62
Blok diagram logika fuzzy
Fuzzy Inference System

Fuzzy Inference System (FIS) merupakan sistem penarikan kesimpulan dari


sekumpulan kaidah fuzzy, dapat berupa input nilai eksak maupun rules
dalam kaidah fuzzy. Proses fuzzy inference dapat dibagi dalam lima bagian
(A. Naba, 2009), yaitu :

Fuzzyfikasi Input : FIS mengambil masukan-masukan dan


menentukan derajat keanggotaannya dalam semua fuzzy set.
Operasi logika fuzzy : Hasil akhir dari operasi ini adalah derajat
kebenaran antecedent yang berupa bilangan tunggal.
Implikasi : Merupakan proses mendapatkan consequent atau keluaran

sebuah IF THEN rule berdasarkan derajat kebenaran antacedent.


Proses ini menggunakan mengambil nilai MIN/terkecil dari dua
bilangan : Hasil operasi fuzzy logic OR dan fuzzy set banyak.
Agregasi :Yaitu proses mengkombinasikan keluaran semua IF-
THEN rule menjadi sebuah fuzzy set tunggal. Pada dasarnya
agregasi adalah operasi fuzzy logic OR dengan masukannya
adalah semua fuzzy set.
Defuzzyfikasi : Keluaran dari defuzzyfikasi adalah sebuah
bilangan tunggal, cara mendapatkannya ada beberapa versi, yaitu
centroid, bisector, middle of maximum, largest of maximum dan
smallest of maximum.

63
PERTEMUAN XI
LOGIKA FUZZY II

XI.I Adaptive Neuro-Fuzzy Inference System


Adaptive Neuro-Fuzzy Inference System (ANFIS) adalah penggabungan
mekanisme fuzzy inference sistem yang digambarkan dalam arsitektur
jaringan syaraf. Sistem inferensi fuzzy yang digunakan adalah sistem
inferensi fuzzy model Tagaki-SugenoKang (TSK) orde satu dengan
pertimbangan kesederhanaan dan kemudahan komputasi. Contoh ilustrasi
mekanisme inferensi fuzzy TSK orde satu dengan dua masukan x dan y. Basis
aturan dengan dua aturan fuzzy if-then seperti dibawah ini :
Rule 1 : if x is A1 and y is B1 then f1 = p1x + q1y + r1

premis consequent

Rule 2 : if x is A2 and y is B2 then f2 = p2x + q2y + r2.........(3)

premis consequent

Input : x dan y.

Consequent-nya adalah f.

Sistem inferensi fuzzy TSK dua masukan dengan dua aturan

64
Berdasarkan gambar diatas tiap-tiap input tersebut dibagi jadi 2 fungsi
keanggotaan, x dibagi dalam A1 dan A2 anggap misalnya A1 menyatakan
small dan A2 menyatakan big. Begitu juga y dibagi dalam fungsi
keanggotaan B1 yang menyatakan small dan B2 yang menyatakan big. Dari
pemetaan tersebut x dan y sudah jadi variabel fuzzy yang masing-masing
punya nilai m small dan big tertentu. x mempunyai nilai mA1 dan mA2
sedangkan y punya nilai mB1 dan mB2. Nilai masing-masing pasangan
input tersebut lalu diagregasi dengan operasi T-norm, misalnya operasi ini
adalah operasi AND. Jadi w1 = (mA1 AND mA2) sedangkan w2 = (mB1
AND mB2).
Berdasarkan aturan yang telah ada,
didapatkan : if w = w1 then
f1 = p1x + q1y + r1 if w = w2
then f2 = p2x + q2y + r2..........(4)
Telah didapatkan hasil dari f1 dan f2. Ini merupakan nilai output sinyal
kontrol, yaitu tegangan. Terjadi pemindahan dari domain input x dan y
(kecepatan) ke domain output f (tegangan). Tetapi itu adalah nilai p1, q1, r1,
p2, q2, dan r2 dimana itu merupakan nama parameter konsekuen yang
ditentukan dengan nilai awal tertentu dan akan berubah dengan pembelajaran
(algoritma belajar). Selanjutnya diperlukan satu nilai dari tegangan sebagai
sinyal kontrol dari nilai f1 dan f2. Nilai akhir tersebut dapat dihitung dengan
persamaan:

..........(5)

Ini namanya defuzzyfikasi. Rumus tersebut sebenarnya diperoleh dari salah


satu metode defuzzyfikasi yaitu metode rata-rata tengah (Adi, Anton. 2000).
Dalam membangun sebuah sistem fuzzy dikenal beberapa metode penalaran,
antara lain :
a. Metode Tsukamoto

65
Pada aplikasi simulasi lampu lalu lintas ini akan digunakan metode
Tsukamoto. Pada metode Tsukamoto, setiap konsekuen pada aturan yang
berbentuk IF-THEN harus direpresentasikan dengan suatu himpunan
fuzzy dengan fungsi keanggotaan yang monoton. Sebagai hasilnya,
output hasil inferensi dari tiap-tiap aturan diberikan dengan tegas (crisp)
berdasarkan α-predikat (fire strength). Hasil akhirnya diperoleh dengan
menggunakan rata-rata terbobot. Misalnya ada 2 variabel input, var-1(x)
dan var-2(y) serta 1 variabel output var-3(z), dimana var-1 terbagi atas 2
himpunan yaitu A1 dan A2 dan var-2 terbagi atas himpunan B1 dan B2.
Sedangkan var-3 juga terbagi atas 2 himpunan yaitu C1 dan C2
(Kusumadewi, 2003).
Ada dua aturan yang digunakan yaitu:

[R1] IF (x is A1) and (y is B2) THEN (z is C1)

[R2] IF (x is A2) and (y is B1) THEN (z is C2).........(6)

Pada metode penarikan kesimpulan samar Tsukamoto, setiap konsekuen


pada aturan yang berbentuk IF-THEN harus direpresentasikan dengan
suatu himpunan samar dengan fungsi keanggotaan yang monoton.
Sebagai hasilnya, output hasil penarikan kesimpulan (inference) dari
tiap-tiap aturan diberikan secara tegas (crisp) berdasarkanα-predikat (fire
strength). Hasil akhir diperoleh dengan menggunakan rata-rata berbobot
(weight average) (Haryo, Endi .2013).

b. Metode Mamdani

Metode Mamdani sering juga dikenal dengan nama Metode Max-Min.


Metode ini diperkenalkan oleh Ebrahim Mamdani pada tahun 1975.
Untuk mendapatkan output, diperlukan 4 tahapan:
• Pembentukan himpunan fuzzy. Pada proses fuzzifikasi langkah
pertama adalah menentukan variable fuzzy dan himpunan
fuzzinya. Kemudian tentukan derajat kesepadanan (degree of

66
match) antara data masukan fuzzy dengan himpunan fuzzy yang
didefenisikan untuk setiap variabel masukan sistem dari setiap
aturan fuzzy. Pada metode mamdani, baik variabel input maupun
variabel output dibagi menjadi satu atau lebih himpunan fuzzy.
• Aplikasi fungsi implikasi pada metode mamdani. Fungsi
implikasi yang digunakan adalah min. Lakukan implikasi fuzzy
berdasar pada kuat penyulutan dan himpunan fuzzy terdefinisi
untuk setiap variabel keluaran di dalam bagian konsekuensi dari
setiap aturan. Hasil implikasi fuzzy dari setiap aturan ini
kemudian digabungkan untuk menghasilkan keluaran infrensi
fuzzy (Kusumadewi, 2003).
• Komposisi Aturan. Tidak seperti penalaran monoton, apabila
sistem terdiri dari beberapa aturan, maka infrensi diperoleh dari
kumpulan dan korelasi antar aturan. Ada 3 metode yang
digunakan dalam melakukan inferensi sistem fuzzy, yaitu: max,
additive dan probabilistik OR.
• Penegasan (defuzzy). Input dari proses defuzzifikasi adalah suatu
himpunan fuzzy yang diperoleh dari komposisi aturan-aturan
fuzzy, sedangkan output yang dihasilkan merupakan suatu
bilangan pada domain himpunan fuzzy tersebut.

c. Metode Sugeno

Logika fuzzy yang pertama kali diperkenalkan oleh Lotfi A. Zadeh,


memiliki derajat keanggotaan dalam rentang 0 (nol) hingga 1 (satu),
berbeda dengan logika digital yang hanya memiliki dua nilai yaitu 1
(satu) atau 0 (nol). Fuzzy Model Sugeno merupakan varian dari model
Mamdani dan memiliki bentuk aturan seperti :
IF x1 is A1 AND.. xn is An THEN y=f(x1,x2,..xn).......(7)

67
Dimana x merupakan parameter input, A merupakan nilai dari parameter, f
merupakan sembarang fungsi dari variabel-variabel masukan yang nilainya
berada dalam interval variabel keluaran (Purba, Kristo DKK. 2013).

XI.2 Lalu Lintas


Lalu lintas adalah kegiatan gerak atau pindah kendaraan atau orang di jalan
dari suatu tempat ke tempat lain dengan menggunakan alat gerak. Lalu lintas
memegang peranan yang penting dalam stabilitas sosial, pembangunan, dan
peningkatan kehidupan masyarakat. Salah satu faktor yang menyebabkan
terhambatnya jalan transportasi adalah kemacetan lalu lintas. Kemacetan lalu
lintas menimbulkan berbagai dampak buruk, di antaranya terbuangnya
waktu dan tenaga pengguna jalan raya, borosnya konsumsi bahan bakar,
timbulnya polusi udara, dan sebagainya.
Persoalan Lalu Lintas
Persoalan lalu lintas timbul karena volume kendaraan lalu lintas mendekati
kapasitas jaringan jalan sebagai akibat ketidakseimbangan antara kesediaan
berupa kapasitas jaringan jalan dengan permintaan, yakni volume lalu lintas
manusia dan kendaraan. Persoalannya adalah kemacetan lalu lintas dan
kesemrawutan lalu lintas, ketegangan psikis pengguna jalan, kecelakaan lalu
lintas, dan lain-lain.
Rekayasa Lalu-Lintas
Upaya pengaturan lalu lintas tidak cukup hanya diatur melalui peraturan
perundangundangan, tetapi perlu diimbangi dengan upaya di bidang
kerekayasaan guna mendukung upaya hukum. Lalu lintas telah berkembang
dengan sangat pesat sejalan dengan perkembangan otomotif. Kemampuan
olah gerak kendaraan semakin tinggi, terutama kecepatan kendaraan, daya
jelajah, dan daya angkutnya. Oleh karena itu, dituntut pula pengembangan
rekayasa jaringan jalan misalnya sistem persimpangan dengan sistem
simpang susun. Perencanaan sirkulasi lalu lintas, sistem angkutan masal,
sistem perparkiran merupakan sisi lain dari rekayasa lalu lintas.

68
Dalam rangka pelaksanaan pengelolaan lalu lintas di jalan, dilakukan
rekayasa lalu lintas [PP No.43 Th.1993] yang meliputi :
a. Perencanaan, pembangunan dan pemeliharaan jalan.

b. Perencanaan, pengadaan, pemasangan dan pemeliharaan rambu-


rambu, marka jalan, alat pemberi isyarat lalu lintas, serta alat
pengendali dan pemakai jalan.

Perencanaan di atas meliputi perencanaan kebutuhan, pengadaan dan


pemasaran, pemeliharaan serta penyusunan program pelaksanaannya.
Pemasangan dan penghapusan setiap rambu-rambu lalu lintas, alat pemberi
isyarat lalu lintas, serta alat pengendali, marka jalan dan alat pengamanan
pemakai jalan harus didukung oleh sistem informasi yang diperlukan. Jalan
direncanakan dan dirancang sedemikian rupa sehingga ada hirarki yang
membentuk sistem pelayanan yang tak terpisahkan dengan pola tata ruang
kegiatan. Watak jalan yang mampu berperan sebagai pemicu dan pemacu
pembangunan adalah fakta yang nyata. Ruas jalan yang dibangun sebagai
penghubung antara satu kawasan dengan kawasan yang lain, dengan serta
merta mengubah nilai lahan pada jalur yang bersangkutan sebagai akibat dari
akses yang meningkat. Akibatnya, tak terelakkan lagi, kegiatan di sepanjang
jalan tersebut berkembang.
Menurut Guide to Traffic Engineering Practice Part I, Austroads 1988
kinerja arus lalu lintas dan kapasitas jalan dipengaruhi oleh kondisi fisik
jaringan jalan, yaitu : a. Lebar jalur jalan;
b. Rancang geometric jalan;

c. Kondisi dan jenis perkerasan jalan;

d. Lebar dan banyaknya jalur;

e. Gradient;

f. Jarak pandang;

g. Frekuensi dan bentuk persimpangan;

69
h. Kelengkapan jalan;

i. Hamparan dan daya tarik lintas;


Apabila persyaratan teknis semua elemen tersebut di atas terpenuhi, baik
kualitas maupun kuantitas, maka kelancaran arus lalu lintas dapat terjamin.
Guna memperlancar arus lalu lintas kendaraaan, jalur jalan dapat ditetapkan
menjadi jalur searah atau jalur dua arah yang masing-masing dapat dibagi
dalam beberapa jalur sesuai dengan lebar badan jalan. Jalur adalah bagian
jalan yang dipergunakan untuk lalu lintas sedangkan lajur adalah bagian
jalur yang memanjang, dengan atau tanpa marka jalan, yang memiliki lebar
cukup untuk laju satu kendaraan bermotor, selain sepeda motor. Membangun
median jalan untuk membuat satu jalur jalan menjadi dua jalur yang berbeda
arah dan tiap jalur terdiri atas beberapa lajur adalah upaya untuk
memperlancar arus lalu lintas.
Persimpangan jalan adalah sumber konflik lalu lintas. Satu perempatan
jalan sebidang menghasilkan 16 titik konflik. Oleh karena itu, upaya
memperlancar arus lalu lintas adalah dengan meniadakan titik konflik ini,
misalnya dengan membangun pulau lalu lintas atau bundaran, memasang
lampu lalu lintas yang mengatur giliran gerak kendaraan, menerapkan arus
searah, menerapkan larangan belok kanan, maka titik konflik tinggal 4 buah,
dan dengan simpang susun titik konflik secara teori ditiadakan (Triana,
Anggi. 2009).
Rambu Lalu Lintas

Rambu lalu lintas adalah salah satu dari perlengkapan jalan yang berupa
lambang, huruf, angka, kalimat, dan atau perpaduan sebagai peringatan,
larangan, perintah atau petunjuk bagi pemakai jalan. Rambu lalu lintas
mengandung berbagai fungsi yang masing-masing memiliki konsekuensi
hukum. Adapun jenis-jenis rambu lalu lintas adalah rambu peringatan,
rambu larangan, rambu perintah, rambu petunjuk, rambu tambahan, dan
rambu sementara. Salah satu rambu lalu lintas adalah lampu lalu lintas. Alat

70
pemberi isyarat lalu lintas berfungsi untuk mengatur lalu lintas kendaraan
atau para pejalan kaki.
Alat ini terdiri dari :

a. Lampu tiga warna


Banyaknya lampu dan penempatannya yang dibuat sedemikian rupa
pada setiap jalur persimpangan lalu lintas bertujuan untuk
memudahkan para pengguna jalan dalam mematuhi dan mengikuti
pengaturan lalu lintas. Lampu tiga warna ini diperuntukkan untuk
mengatur kendaraan.
b. Lampu dua warna

Lampu dua warna tepat dipasang di samping lampu tiga warna


bertujuan untuk mengatur waktu bagi pejalan kaki untukmenyebrang.
Sehingga tidak sampai menimbulkan kecelakaan lalu lintas.
c. Lampu satu warna

Pada beberapa tempat yang dianggap penting, dapat dipasangi lampu


warna kuning yang terus-menerus berkedip, dengan tujuan memberi
isyarat kepada pengguna jalan untuk tetap berhati-hati.
Lampu isyarat sebagian melekat pada kendaraan, sebagian lagi
menjadi perlengkapan jalan (lampu kedip). Lampu isyarat yang
melekat pada kendaraan seperti: lampu rem, lampu sen, lampu dim.
Lampu isyarat ini menjadi persyaratan teknis minimal pada setiap
kendaraan yang dinyatakan layak jalan. Lampu isyarat yang menjadi
perlengkapan jalan, seperti: lampu kedip berwarna kuning atau
merah, cahaya berwarna kuning atau merah yang bersumber dari
lempeng pantul.

71
PERTEMUAN XII
ALGORITMA GENETIKA

XII.1 Pendahuluan
Algoritma Genetika sebagai cabang dari Algoritma Evolusi merupakan
metode adaptive yang biasa digunakan untuk memecahkan suatu pencarian nilai
dalam sebuah masalah optimasi. Algoritma ini didasarkan pada proses genetic
yang ada dalam makhluk hidup ; yaitu perkembangan generasi dalam sebuah
populasi yang alami, secara lambat laun mengikuti prinsip seleksi alam atau
“siapa yang kuat, dia yang bertahan”. Dengan meniru teori evolusi ini, Algoritma
Genetika dapat digunakan untuk mencari solusi permasalahan-permasalahan
dalam dunia nyata.
Peletak prinsip dasar sekaligus pencipta algoritma Genetika adalah John
Holland. Algoritma Genetika menggunakan analogi secara langsung dari
kebiasaan yang alamai yaitu seleksi alama. Algoritma ini bekerja dengan sebuah
populasi yang terdiri dari individu-individu, yang masing-masing individu
mempresentasikan sebuah solusi yang mungkin bagi personalan yang ada. Dalam
kaitan ini, individu dilambangkan dengan sebuah nilai fitness yang akan diguakan
untuk mecari solusi terbiak dari personalan yang ada.
Pertahanan yang tinggi dari individu memberikan kesempatan untuk
melakukan reproduksi melalui perkawinan silang dengan individu yang lain dalam
populasi tersebut. Individu baru yang dihasilkan dalam hal ini dinamakan
keturunan. Yang membawa beberapa sifat dari induknya. Sedangkan individu
dalam populasi yang tidak terseleksi dalam reproduksi akan mati dengan
sendirinya. Dengan jalan ini, beberapa generasi dengan karakteristik yang bagus
akan bermunculan dalam populasi tersebut, untuk kemudian decamp dan ditukar
dengan karakter yang lain. Dengan mengawinkan semakin banyak individu, maka
akan semakin banyak kemungkinan yang terbiak yang dapat diperoleh.
Sebelum Algoritma Genetika dapat dijalankan, maka sebuah kode yang
sesuai (representative) untuk persoalan harus dirancang. Untuk ini maka titik

72
solusi dalam ruang permasalahan dikodekan dalam bentuk kromosom/string yang
terdiri atas komponen genetic terkecil yaitu gen. Dengan teori evolusi dan teori
genetica, didalam penerapan Algoritma Genetika akan melibatkan beberapa
operator, yaitu:
1. Operasi Evolusi yang melibatkan proses seleksi didalamnya
2. Operasi Genetika yang melibatkan operator pindah silant (crossover) dan
mutasi ( mutation)
Untuk memeriksa hasil optimasi, kita membuthkan fungsi fitnesss, yang
menandakan gambran hasil yang sudah dikodekan. Selama berjalan. Induk hrus
digunakan untuk reproduksi, pindah silang dan mutasi untuk menciptkaan
keturunan. Jika Algoritma Genetika didesaian secara baik, populasi akan
mengalam convergensi dan akan didapatkan sebuah solusi yang optimum.
Hal-hal yang harus dilakukan dalam Algoritma Genetika
Beberapa hal yang harus dilakukan dalam Algortima Genetika adalah:
 Mendefinisikan individu, dimana individu menyatakan salah satu solusi
yang mungkin dari permasalahan yang diangkat.
 Mendefinisikan nilai fitness, yang merupakan ukuran baik-tidaknya
sebuah individu atau baik-tidaknya solusi yang didapatkan.
 Menentukan proses pembangkitan populasi awal. Hal ini bias anya
dilakukan dengan menggunakan pembangkitan acak seperti random-walk
 Menentukan proses seleksi yang akan digunakan
 Menentukan proses perkawinan silang (cross-over) dan mutasi gen yang
akan digunakan

XII.2 Pengertian Individu


Individu menyatakan salah satu solusi yang mungkin. Individu bisa
dikatakan sama dengan kromosom, yang merupakan kumpulan gen. Gen ini bisa
biner, float, dan kombinatorial. Beberapa definisi penting yang perlu diperhatikan
dalam mendefinisikan individu untuk membangun penyelesaian permasalahan
dengan algoritma genetica adalah sebagai berikut:

73
 Genotype (Gen), sebuah nilai yang menyatakan satuan dasar yang
membentuk suatu arti tertentu dalam satu kesatuan gen yang dinamakan
kromosom. Dalam algoritma genetica, gen ini bisa berupa nilai biner,
float, integer maupun karakter, atau kombinatorial.
 Allele, nilai dari gen
 Kromosom, gabungan gen-gen yang membentuk nilai tertentu
 Individu, menyatakan satu nilai atau keadaan yang menyatakan salah satu
solusi yang mungkin dari permasalahan yang diangkat
 Populasi, merupakan sekumpulan individu yang akan diproses bersama
dalama satu siklus proses evolusi
 Generasi, menyatakan satu siklus proses evolusi atau satu iterasi di
dalama algoritma genetika

Ilustrasi Representasi Penyelesaian Permasalahan dalam Algoritma Genetika

74
XII.3 Nilai Fitness
Nilai fitness adalah nilai yang menyatakan baik tidaknya suatu solusi
(individu). Nilai fitness ini yang dijadikan acuan dalam mencapai nilai optimal
dalam algortima genetica. Algoritma genetica bertujuan mencari individu dengan
nilai fitnesss yang paling tinggi.
Dalam TSP, Karena TSP bertujuan meminimalkan jarak, maka nilai fitnesssnya
adalah inversi dari total jarak dari jalur yang didapatkan. Cara melakukan inversi
bisa menggunakan rumus 1/x atau 10000-x, dimana x adalah total jarak jalur yang
didapatkan.

XII.4 Siklus Algoritma Genetika


Siklus dari Algoritma Genetika pertama kali dikenalkan oleh David
Goldberg, dimana gambaran siklus tersebut dapat dilihat pada gambar 7.2

Siklus Algoritma Genetika oleh David Goldberg


Siklus ini kemudian diperbaiki oleh beberapa ilmuwan yang
mengembangkan algoritma genetica, yaitu Zbigniew Michalewicz dengan
menambahkan operator elitism dan membalik proses seleksi setelah proses
reproduksi.

75
Siklus Algoritma Genetika yang diperbarui oleh Michalewicz

76
PERTEMUAN XIII
ALGORITMA GENETIKA II

XIII.1 Komponen-komponen Utama Algoritma Genetika


Terdapat 6 komponen utama dalam algoritma genetica, yaitu :

XIII.1.1 Teknik pengkodean

Teknik pengkodean adalah bagaimana mengkodekan gen dari kromosom,


dimana gen merupakan bagian dari kromosom. Satu gen bias anya akan mewakili
satu variable.
Gen dapat direpresentasikan dalam bentuk : bit, bilangan real, daftar aturan,
elemen permutes, elemen program atau representasi lainya yang dapat
dimplentasikan untuk operator genetica
Dengan demikian kromosom dapat direpresentasikan dengan menggunaka:
 String bit : 10011 dst
 Array bilangan real : 65.65,-67.98, 77.34 dst
 Elemen permutes : E2, E10, E5 dst
 Daftar aturan : R1, R2, R3 dst
 Elemen program : pemrograman genetica
 Struktur lainya

XIII.1.2 Membangkitkan populasi awal

Membangkitkan populasi awal adalah proses membangkitkan sejumlah


individu secara acak atau melalui prosedur tertentu. Ukuran untuk populasi
tergantung pada masalah yang akan diselesaikan dan jenis operator genetica yang
akan dimplentasikan. Setelah ukuran populasi ditentukan, kemudian dilakukan
pembangkitan populasi awal. Syarat-syarat yang harus dipenuhi untuk
menunjukan solusi harus benar-benar diperhatikan dalam pembangkitan setiap
individunya.

77
Teknik dalam pembangkitan populasi awal ini ada beberapa cara, diantaranya
adalah sebagai berikut:
1. Random Generator
Inti dari cara ini adalah melibatkan pembangkitan bilangan random untuk
nilai setiap gen sesuai dengan representasi kromosom yang digunaka. Jika
menggunakan representasi biner, salah satu contoh penggunaan random
generator adalah penggunaan rumus berikut untuk pembangkitan populasi
awal:
𝑰𝑷𝑶𝑷 = 𝒓𝒐𝒖𝒏𝒅{𝒓𝒂𝒏𝒅𝒐𝒎(𝑵𝒊𝒑𝒐𝒑 , 𝑵𝒃𝒊𝒕𝒔 )}

dimana IPOP adalah gen yang natinya berisi pembulatan dari bilangan
random yang dibangkitkan sebanyak 𝑁𝑖𝑝𝑜𝑝 ( jumlah populasi) X 𝑁𝑏𝑖𝑡𝑠
( Jumlah gen dalamm tiap kromosom)
Contoh lain penggunaan random generator dalam representasi permutasi
adalah pada saat dibangkitkan populasi awal untuk penyelesaian
permasalahan Traveling Salesman Problem. Sebagai contoh, sebuah
kromosom untuk 9 kota bisa direpresentasikan.

[0.23 0.82 0.45 0.74 0.87 0.11 0.56 0.69 0.78]

Dimana posisi I dalam list menunjukkan kota i. Nilai acak dalam posisi I
menentukan urutan didatanginya kota I dalam lintasan TSP. dengan kunci-
kunci random diatas, kita dapat menentukan bahwa nilai 0.11 adalah yang
paling kecil, sehingga kota ke-6 menempati urutan pertama, 0.23 adalah
nilai terkecil kedua, sehingga kota ke-1 menempati urutan kedua tst.
Sehingga dengan demikian , dari kunci-kunci random diatas kita dapat
menentukan lintasan:
6-1-3-7-8-4-9-2-5

2. Pendekatan Tertentu ( Memasukkan Nilai tertentu ke dalam Gen)

78
Cara ini adalah dengan memasukkan nilai tertentu ke dalam gen dari
populasi awal yang dibentuk
3. Permutasi Gen
Salah satu cara permutesi gen dalam pembangkitan populasi awal adalah
penggunaan permutesi Josephus dalam permasalahan kombinatorial
seperti TSP. Misalkan ada kota dari 1 sampai 9. Permutasi dari lintasan
dapat dilakukan dengan menentukan titik awal dan selang. Misalkan titik
awal adalah 6 dan selang adalah5. Maka lintasan berangkat dari kota 6,
selang 5 dari kota 6 adalah kota 2 ( dengan asumsi kota 1 sampai 9
membentuk circular list). Kota 2 dihapus dari list. Selang 5 kemudian
adalah kota 7. Proses ini diulang hingga ada satu lintasan dalam list. Hasil
dari permutesi ini adalah
2-7-3-8-4-9-5-1-6

XIII.1.3 Seleksi

Seleksi digunakan untuk Mimilih individu-individu mana saja yang akan


dipilih untuk proses kawin silang dan mutasi. Seleksi digunakan untuk
mendapatkan calon induk yang baik. “Induk yang baik akan menghasilkan
keturuanan yang baik”. Semakin tinggi nilai fitness suatu individu semakin besar
kemungkinannya untuk terpilih
Langkah pertama yang dilakukan dalam seleksi ini adalah pencarian nilai fitnesss.
Nilai fitnesss ini yang nantinya akan digunakan pada tahap-tahap seleksi
berikutnya. Masing-masing individu dalam wadah seleksi akan menerima
probabilitys reproduksi yang tergantung pada nilai obyektif dirinya sendiri
terhadap nilai obyektif dari semua individu dalam wadah seleksi tersebut.
Terdapat beberapa metode seleksi, dlaam buku ini dibahas 2 methode yaitu mesin
roullete, dan turnamen.

 Seleksi dengan mesin Roulette

79
Metode seleksi dengan mesin roulette ini merupakan metode yang paling
sederhana dan sering dikenal dengan nama stochastic sampling with replacement.
Cara kerja metode ini sebagai berikut :
1. Dihitung nilai fitnesss dari masing-masing individu
2. Dihitung total fitness semua individu
3. Dihitung probabilitas masing-masing individu
4. Dari probabilitys tersebut, dihitung jatah masing-masing individu pada angkat
1 sampai 100
5. Dibangkitkan bilangan random antar 1 sampai 100
6. Dari bilangan random yang dihasilkan, ditentukan individu nama yang terpilih
dalam prose seleksi

Ilustrasi Seleksi dengan Mesir Roullete

80
 Seleksi Dengan Turnamen

Pada metode seleksi dengan turnamen, ditetapkan suatu nilai tour untuk
individu-individu yang dipilih secara random dari suatu populasi. Individu-
individu yang terbiak dalam kelompok ini akan diseleksi sebagai induk. Parameter
yang digunakan pada metode ini adalah ukuran tour yang bernilai antara 2 sampai
N ( jumlah individu dalam suatu populasi)
 Pindah silang (Crossover)

Kawin silang (crossover) adalah operator dari algoritma genetica yang


melibatkan dua induk untuk membentuk kromosom baru. Pindah silang
menghasilkan titik baru dalam ruang pencarian yang siap untuk diuji. Operas ini
tidak selalu dilakukan pada semua individu yang ada. Individu dipilih secara acak
untuk dilakukan crossing dengan pc antara 0.6 s/d 0.95. Jika pindah silang tidak
dilakukan, maka nilai dari induk akan diturunkan kepada keturunan. Prinsip dari
pindah silang ini adalah melakukan opersi ( pertukaran, aritmatika) pada gen-gen
yang bersesuaian dari dua induk dengan probabilitys crossover yang ditentukan.
Pada Gambar 7.6 diilustrasikan diagram alir penggunaan probabilitas crossover
pada proses crossover. Operator crossover ini bergantung pada representasi
kromosom yang dilakukan. Berbagai model crossover sesuai dengan representasi
kromosom akan diuraikan pada sub bab selanjutnya.

Diagram Alir Proses Crossover

81
 Crossover satu titik

Crossover satu titik dan banyak titik bias anya digunakan untuk
representasi kromosom dalam biner. Pada crossover satu titik, posisi crossover k
( k=1,2,..,N-1) dengan N=panjang kromosom diseleksi secara random. Variable-
variable ditukar antar kromosom pada titik tersebut untuk menghasilkan anak.
Pada gambar 7.7 dilustrasikan Crossover satu titik.

Ilustrasi Crossover satu titik


Crossover banyak titik
pada crossover banyak titik, m posisi penyilangan ki () dengan N=
panjang kromosom diseleksi secara random dan tidak diperbolehkan ada posisi
yang sama, serta diurutkan naik. Variable-variable ditukar antar kromosom pada
titik tersebut untuk menghasilkan anak. Pada gambar 7.7 diilustrasikan Crossover
dua titik dan pada gambar 7.8 diilustrasikan crossover lebih dari dua titik.
Crossover Aritmatika
Crossover aritmatika digunakan untuk representasi kromosom berupa
bilangan float( pecahan). Crossover ini dilakukan dengan menentukan nilai r
sebagai bilangan random lebih dari 0 dan kurang dari 1. Selain itu juga ditentukan
posisi dari gen yang dilakukan crossover menggunakan bilangan random. Pada

82
gambar 7.9 dilustrasikan bagaimana crossover aritmatika bekerja. Nilai baru gen
pada anak mengikuti rumus 7.1 dan rumus 7.2

Ilustrasi Crossover Dua Titik

Ilustrasi Crossover Lebih Dua Titik

83
Crossover Aritmatika
 Crossover untuk representasi kromosom permuteasi

Sejak pertengahan 80 an, beberapa metode operator pindah silang


diciptakan untuk representasi permutesi, seperti partial-mapped crossover, order
crossover, cycle crossover, position-based crossover, order-based crossover,
heuristic crossover, dll. Beberapa metode pindah silang tersebut dijelaskan sperti
dibawah ini.
Partial-Mapped Crossover (PMX). PMX diciptakan oleh Goldberg dan Lingle.
PMX merupakan rumusan modifikasi dari pindah silang dua-poin. Hal yang
paling penting dari PMX adalah pindah silang 2-poin ditambah dengan beberapa
prosedur tambahan. PMX mempunyai langkah kerja sebagai berikut.
Prosedur PMX
1. Tentukan dua posisi pada kromosom dengan aturan acak. Substring yang
berada dalam dua posisi ini dinamakan daerah pemetaan.
2. Tukar dua substring antar induk untuk menghasilkan proto-child
3. Tentukan hubungan pemetaan diantara dua daerah pemetaan
4. Tentukan kromosom keteurunan mengacu pada hubungan pemetaan

84
Prosedur ini dapat dilihat ilustrasinya pada Gambar 7.9
1. Pilih posisi untuk menentukan substring secara acak

2. Tukar substring di antara induk

3. Menentukan hubungan mapping

4. Menentukan kromosom keturunana mengacu pada hubungan mapping

Ilustrasi dari PMX operator


Order Crossover (OX). OX diciptakan oleh Davis. Metode ini merupakan variasi
dari PMX dengan prosedur tambahan. OX bekerja sebagai berikut
Prosedur OX
1. Pilih substring dari sebuah induk secara acak
2. Bangkitkan sebuah proto-child dengan mengkosongkan tempata substring
induk 2 pada induk 1
3. SHR allele dari substring pada tempat yang bersesuaian
4. Tukar substring antara 2 induk

85
Cycle Crossover (CX). CX diciptakan oleh oliver, Smith dan Holland. Metode ini
mengkopi kota-kota dari satu induk dan memilih kota-kota yang lain dari induk
yang lain, dengan mengingat dan pola cycle. Cara kerja CX adalah sbb :
Prosedur CX
1. Temukan cycle yang didefinisikan dari relasi posisi kota-kota antara induk
2. Salin kota-kota dalam cycle pada proto-child dengan relasi posisi dari
sebuah induk
3. Tentukan kota-kota diingat yang berasal dari induk lain
4. Isi keturunan dengan kota-kota yang diingat tadi
Gambar adalah ilustrasi dari CX
1. Tentukan pola cycle ( asumsi: pola dimulai dari posisi 1)

86
2. Kopi kota-kota dalam cycle pada proto-child

3. Tentukan kota-kota yang diingat dari induk yang lain

4. Mengisikan kota yang diingat dalam keturunan

dengan cara yang sama, diperoleh keturuanan 2

XIII.1.4 Mutasi

Operator berikutnya pada algoritma genetika adalah mutasi gen. operator


ini berperan untuk menggantikan gen yang hilang dari populasi akibat proses
seleksi yang memungkinkan munculnya kembali gen yang tidak muncul pada
inisialisasi populasi. Kromosom anak dimutasi dengan menambahkan nilai
random yang sangat kecil ( ukuran langkah mutasi) , dengan probabilitas yang
rendah. Peluang mutasi (pm) didefinisikan sebagai persentasi dari jumlah total gen
pada populasi yang mengalami mutasi. Peluang mutasi mengendalikan banyaknya
gen baru yang akan dimunculkan untuk dievaluasi. Jika peluang mutasi terlalu
kecil, banyak gen yang mungkin berguna tidak pernah dievaluasi. Tetapi bila
peluang mutasi ini terlalu besar, maka akan terlalu banyak gangguan acak,
sehingga anak akan kehilangan kemiripan dari induknya, dan juga algoritma
kehilangan kemampuan untuk belajar dari histori pencari. Ada beberapa pendapat

87
mengenai laju mutasi ini. Ada yang berpendapat bahwa laju mutasi sebesar 1/n
akan memberikan hasil yang cukup baik. Ada juga yang beranggapan bahwa laju
mutasi tidak tergantung pada ukuran populasinya. Kromosom hasil mutasi harus
diperiksa, apakah masih berada pada domain solusi, dan bila perlu bisa dilakukan
perbaikan.

Pada gambar 7.13 diilustrasikan diagram alir penggunaan probabilitas mutasi pada
proses mutasi. Proses yang dilustrasikan tersebut adalah cara mudah untuk
melakukan mutasi. Proses mutasi yang dilakukan tidak harus seperti pada proses
tersebut. Proses yang lain bisa dengan melakukan mutasi pada gen sebanyak
probabilitas mutasi jumlah gen, dimana posisi gen yang akan dilakaukan mutasi
dipilih secara acak.
Mutasi biner
Cara sederhana untuk mendapatkan mutasi biner adalah dengan mengganti
satu atau beberapa nilai gen dari kromosom. Langkah-langkah mutasi ini adalah :
1. Hitung jumlah gen pada populasi ( panjang kromosom dikalikan dengan
ukuran populasi)
2. Pilih secara acak gen yang akan dimutasi
3. Tentukan kromosom dari gen yang terpilih untuk dimutasi

88
4. Ganti nilai gen (0 ke 1, atau 1 ke 0) dari kromosom yang akan dimutasi
berikut
5.
Hal penting yang harus diperhatikan dalam pemakaian algoritma genetika adalah:
1. Algoritma genetika adalah algoritma yang dikembangkan dari proses
pencarian solusi menggunakan pencarian acak, ini terlihat pada proses
pembangkitan populasi awal yang menyatakan sekumpulan solusi yang
dipilih secara acak.
2. Berikutnya pencarian dilakukan berdasarkan proses-proses teori genetika
yang memperhatikan pemikiran bagaimana memperoleh individu yang
lebih baik, sehingga dalam proses evolusi dapat diharapkan diperoleh
individu yang terbaik

89
PERTEMUAN XIV
JARINGAN SYARAF TIRUAN

XIV.1 Jaringan Syaraf Biologis

Otak manusia berisi sekitar 1011 sel syaraf (neuron) yang bertugas untuk
memproses informasi yang masuk. Tiap sel syaraf dihubungkan dengan sel syaraf
lain hingga sekitar 104sinapsis. Tiap sel bekerja seperti suatu prosesor sederhana.
Masing-masing sel tersebut saling berinteraksi sehingga mendukung kemampuan
kerja otak manusia.

90
Komponen utama neuron dapat dikelompokkan menjadi 3 bagian :
1. Dendrit = bertugas menerima informasi = jalur input bagi soma
2. Badan sel (soma) = tempat pengolahan informasi
3. Akson = bertugas mengirimkan impuls-impuls sinyal ke sel syaraf lain =
jalur output bagi soma
Perhatikan gambar-gambar diatas :
 Sebuah neuron menerima impuls-impuls sinyal (informasi) dari neuron
lain melalui dendrit dan mengirimkan sinyal yang dibangkitkan (hasil
penjumlahan) oleh badan sel melalui akson.
 Akson dari sel syaraf ini bercabang-cabang dan berhubungan dengan
dendrit dari sel syaraf laindengan cara mengirimkan impuls melalui
sinapsis.
 Sinapsis adalah unit fungsional antara 2 buah sel syaraf, misal A dan B,
dimana yang satu adalah serabut akson dari neuron A dan satunya lagi
adalah dendrit dari neuron B.

91
 Kekuatan sinapsis bisa menurun / meningkat tergantung seberapa besar
tingkat propagasi (penyiaran) sinyal yang diterimanya.
 Impuls-impuls sinyal (informasi) akan diterima oleh neuron lain jika
memenuhi batasan tertentu,yang sering disebut dengan nilai ambang
(threshold).

XIV.2 Jaringan Syaraf Tiruan

JST didefinisikan sebagai suatu sistem pemrosesan informasi yang


mempunyai karakteristik menyerupai jaringan syaraf manusia (JSB). JST tercipta
sebagai suatu generalisasi model matematis dari pemahaman manusia (human
cognition) yang didasarkan atas asumsi sebagai berikut :
1. Pemrosesan informasi terjadi pada elemen sederhana yang disebut neuron
2. Sinyal mengalir diantara sel saraf/neuron melalui suatu sambungan
penghubung
3. Setiap sambungan penghubung memiliki bobot yang bersesuaian. Bobot
ini akan digunakan untuk menggandakan / mengalikan sinyal yang
dikirim melaluinya.
4. Setiap sel syaraf akan menerapkan fungsi aktivasi terhadap sinyal hasil
penjumlahan berbobot yang masuk kepadanya untuk menentukan sinyal
keluarannya.

92
Perbandingan kemampuan otak manusia dengan CPU

XIV.3 Model Struktur Neuron JST

93
 Jaringan syaraf tiruan dapat belajar dari pengalaman, melakukan
generalisasi atas contoh-contoh yang diperolehnya dan mengabstraksi
karakteristik esensial input bahkan untuk data yang tidak relevan.
 Algoritma untuk JST beroperasi secara langsung dengan angka sehingga
data yang tidak numerik harus diubah menjadi data numerik.
 JST tidak diprogram untuk menghasilkan keluaran tertentu. Semua
keluaran atau kesimpulan yang ditarik oleh jaringan didasarkan pada
pengalamannya selama mengikuti proses pembelajaran. Pada proses
pembelajaran, ke dalam JST dimasukkan pola-pola input (dan output) lalu
jaringan akan diajari untuk memberikan jawaban yang bisa diterima.
 Pada dasarnya karakteristik JST ditentukan oleh :
1. Pola hubungan antar neuron (disebut arsitektur jaringan)
2. Metode penentuan bobot-bobot sambungan (disebut dengan pelatihan
atau proses belajar jaringan)
3. Fungsi aktivasi

94
PERTEMUAN XV
JARINGAN SYARAF TIRUAN II

XV.1 Arsitektur JST


 Pada JST, neuron-neuron akan dikumpulkan dalam lapisan-lapisan (layer)
yang disebut dengan lapisan neuron (neuron layers).
 Neuron-neuron pada satu lapisan akan dihubungkan dengan lapisan-
lapisan sebelum dan sesudahnya.
 Informasi yang diberikan pada jaringan syaraf akan dirambatkan lapisan
ke lapisan, mulai dari lapisan input sampai ke lapisan output melalui
lapisan tersembunyi (hidden layer).
 Gambar berikut ini jaringan syaraf dengan 3 lapisan dan bukanlah struktur
umum jaringan syaraf karena beberapa jaringan syaraf ada yang tidak
memiliki lapisan tersembunyi.
 Faktor terpenting dalam menentukan kelakuan suatu neuron adalah fungsi
aktivasi dan pola bobotnya.

95
Faktor terpenting dalam menentukan kelakuan suatu neuron adalah fungsi aktivasi
dan pola bobotnya.
 Umumnya neuron-neuron yang terletak pada lapisan yang sama akan
memiliki keadaan yang sama sehingga pada setiap lapisan yang sama
neuron-neuron memiliki fungsi aktivasi yang sama.
 Bila neuron-neuron pada suatu lapisan (misal lapisan tersembunyi) akan
dihubungkan dengan neuron-neuron pada lapisan lain (misal lapisan
output) maka setiap neuron pada lapisan tersebut (lapisan tersembunyi)
juga harus dihubungkan dengan setiap neuron pada lapisan lainnya
(lapisan output)

Macam arsitektur JST ada 3 :


1. Jaringan dengan lapisan tunggal (single layer net)
Hanya memiliki 1 lapisan dengan bobot-bobot terhubung. Jaringan ini
hanya menerima input kemudian secara langsung akan mengolahnya menjadi
output tanpa harus melalui lapisan tersembunyi. Pada gambar berikut neuron-
neuron pada kedua lapisan saling berhubungan.
Seberapa besar hubungan antara 2 neuron ditentukan oleh bobot yang bersesuaian.
Semua unit input akan dihubungkan dengan setiap unit output.

96
2. Jaringan dengan banyak lapisan (multilayer net)
Memiliki 1 atau lebih lapisan yang terletak diantara lapisan input dan
lapisan output. Umumnya ada lapisan bobot-bobot yang terletak antara 2 lapisan
yang bersebelahan. Jaringan dengan banyak lapisan ini dapat menyelesaikan
permasalahan yang lebih sulit daripada lapisan tunggal, tentu saja dengan
pembelajaran yang lebih rumit. Pada banyak kasus, pembelajaran pada jaringan
dengan banyak lapisan ini lebih sukses dalam menyelesaikan masalah.

3. Jaringan dengan lapisan kompetitif (competitive layer net)


Pada jaringan ini sekumpulan neuron bersaing untuk mendapatkan hak
menjadi aktif. Umumnya hubungan antar neuron pada lapisan kompetitif ini tidak

97
diperlihatkan pada diagram arsitektur. Gambar berikut menunjukkan salah satu
contoh arsitektur jaringan dengan lapisan kompetitif yang memiliki bobot –η

XV.2 Proses Pembelajaran Jaringan

Cara belajar JST :


Ke dalam JST diinputkan informasi yang sebelumnya telah diketahui hasil
keluarannya. Penginputan informasi ini dilakukan lewat node-node atau unit-unit
input. Bobot-bobot antarkoneksi dalam suatu arsitektur diberi nilai awal dan
kemudian JST dijalankan. Bobot-bobot ini bagi jaringan digunakan untuk belajar
dan mengingat suatu informasi. Pengaturan bobot dilakukan secara terus-menerus
dan dengan menggunakan kriteria tertentu sampai diperoleh keluaran yang
diharapkan.
 Hal yang ingin dicapai dengan melatih/mengajari JST adalah untuk
mencapai keseimbangan antara kemampuan memorisasi dan generalisasi.
 Kemampuan memorisasi = kemampuan JST untuk memanggil kembali
secara sempurna sebuah pola yang telah dipelajari.
 Kemampuan generalisasi = adalah kemampuan JST untuk menghasilkan
respon yang bisa
diterima terhadap pola-pola input yang serupa (namun tidak identik) dengan pola-
pola yangsebelumnya telah dipelajari. Hal ini sangat bermanfaat bila pada suatu
saat ke dalam JST diinputkan informasi baru yang belum pernah dipelajari, maka

98
JST masih akan tetap dapat memberikan tanggapan yang baik, memberikan
keluaran yang paling mendekati.
Paradigma/metode pembelajaran/pelatihan JST :
1. Pembelajaran terawasi (supervised learning)
Pada pembelajaran ini kumpulan input yang digunakan, output-outputnya
telah diketahui. Perbedaan antara output-output aktual dengan output-output yang
diinginkan digunakan untuk mengoreksi bobot JST agar JST dapat menghasilkan
jawaban sedekat (semirip) mungkin dengan jawaban yang benar yang telah
diketahui oleh JST.
2. Pembelajaran tak terawasi (unsupervised learning) / pembelajaran tanpa
guru
Pada pembelajaran ini, JST mengorganisasi dirinya sendiri untuk
membentuk vektorvektor
input yang serupa, tanpa menggunakan data atau contoh-contoh pelatihan.
Struktur menggunakan dasar data atau korelasi antara pola-pola data yang
dieksplorasi.
Paradigma pembelajaran ini mengorganisasi pola-pola ke dalam kategori-kategori
berdasarkan korelasi yang ada.
3. Gabungan pembelajaran terawasi dan tak terawasi (hybrid)
Merupakan kombinasi dari kedua pembelajaran tersebut. Sebagian dari bobot-
bobotnya ditentukan melalui pembelajaran terawasi dan sebagian lainnya melalui
pembelajaran tak terawasi.
FUNGSI AKTIVASI
 Dipakai ntuk menentukan keluaran suatu neuron
 Merupakan fungsi yang menggambarkan hubungan antara tingkat aktivasi
internal (summation function) yang mungkin berbentuk linier atau
nonlinear. Beberapa fungsi aktivasi JST diantaranya hard limit, purelin,
dan sigmoid. Yang populer digunakan adalah fungsi sigmoid yang
memiliki beberapa varian : sigmoid logaritma, sigmoid biner, sigmoid
bipolar, sigmoid tangen.

99
 Hard limit memberikan batasan tegas 0 atau 1, purelin memisahkan secara
linier, sigmoid berupa fungsi smooth bernilai antara 0 sampai dengan 1
(bila biner) atau antara -1 sampai 1 (bila bipolar)

SUMMATION FUNCTION
 Fungsi yang digunakan untuk mencari rata-rata bobot dari semua elemen
input.
 Bentuk sederhananya adalah dengan mengalikan setiap nilai input (Xj)
dengan bobotnya (Wij) dan menjumlahkannya (disebut penjumlahan
berbobot atau Si)

Diibaratkan dengan sebuah neuron yang memonitor sinyal yang datang dari
neuron-neuron lain. Neuron ini menghitung penjumlahan berbobotnya dan
kemudian menentukan sinyal untuk dikirim ke neuron-neuron lain.

SUM SQUARE ERROR dan ROOT MEAN SQUARE ERROR


 Perhitungan kesalahan merupakan pengukuran bagaimana jaringan dapat
belajar dengan baik sehingga jika dibandingkan dengan pola yang baru
akan dengan mudah dikenali.
 Kesalahan pada keluaran jaringan merupakan selisih antara keluaran
sebenarnya (current output) dan keluaran yang diinginkan (desired output)
 Selisih yang dihasilkan antara keduanya biasanya ditentukan dengan cara
dihitung menggunakan suatu persamaan.
 Sum Square Error (SSE) :
I. Hitung keluaran jaringan syaraf untuk masukan pertama
II. Hitung selisih antara nilai keluaran jaringan syaraf dan nilai
target/yang diinginkan untuk setiap keluaran
III. Kuadratkan setiap keluaran kemudian hitung seluruhnya

100
Tjp : nilai keluaran jaringan syaraf
Xjp : nilai target/yang diinginkan untuk setiap keluaran
• Root Mean Square Error (RMS Error) :
I. Hitung SSE
II. Hasilnya dibagi dengan perkalian antara banyaknya data pada
pelatihan dan banyaknya keluaran, kemudian diakarkan.

Tjp : nilai keluaran jaringan syaraf


Xjp : nilai target/yang diinginkan untuk setiap keluaran
np : jumlah seluruh pola
po : jumlah keluaran
Keberhasilan suatu proses belajar JST ditunjukkan dengan besarnya error yang
minimum. Pada kondisi inilah JST tersebut dapat digunakan. Ketika ada hal baru
yang harus diketahui oleh JST maka proses belajar harus diulang kembali dengan
menggunakan informasi-informasi yang lama ditambah dengan informasi-
infromasi baru.

X.3 Aplikasi Jaringan Syaraf Tiruan


 Aerospace : autopilot pesawat terbang, simulasi jalur penerbangan, sistem
kendali pesawat, perbaikan autopilot, simulasi komponen pesawat
 Otomotif : sistem kendali otomatis mobil

101
 Keuangan dan perbankan: pendeteksian uang palsu, evaluator aplikasi
kredit, pengidentifikasian pola-pola data pasarsaham
 Militer: Pengendali senjata, pendeteksi bom, penelusuran target,
pembedaan objek, pengendali sensor, sonar, radar, dan pengolahan sinyal
citra yang meliputi kompresi data, ekstraksi bagian istimewa, dan
penghilangan derau, pengenalan sinyal atau citra.
 Elektronik: Pembuatan perangkat keras yang bisa mengimplementasikan
JST secara efisien, machine vision, pengontrol gerakan dan penglihatan
robot, sintesis suara
 Broadcast : pencarian klip berita melalui pengenalan wajah
 Keamanan : JST digunakan untuk mengenali mobil dan mengenali wajah
oknum
 Medis : analisis sel kanker
 Pengenalan suara : pengenalan percakapan, klasifikasi suara
 Pengenalan tulisan : pengenalan tulisan tangan, penerjemahan tulisan ke
dalam tulisan latin
 Matematika : alat pemodelan masalah dimana bentuk eksplisit dari
hubungan antara ariabel-variabel tertentu tidak diketahui
 Pengenalan benda bergerak: selain pola dari citra diam, JST juga bisa
digunakan untuk mendeteksi citra bergerak dari video seperti citra orang
yang bergerak, dll.
 JST digunakan sebagai detektor virus komputer, penginderaan bau, dll.

102
PERTEMUAN XVI
UJIAN AKHIR SEMESTER

Soal
1. Tuliskan dengan jelas suatu problem yang bisa diselesaikan dengan sistem
NLP ( Natural Processing) selain yang dibicarakan di kelas.
2. Tuliskan langkah-langkah pembangunan NLP dengan jelas
3. Gambarkan blok diagram system pakar, tuliskan masing-masing 2 fungsi
komponennya.
4. Jika diketahui kaidah-kaidah pengetahuan sbb:
 lf A and B then W
 lf A and B and C and Dt henX ,
 lf A and B and C then y
 lf A and.D then Z

Tuliskan algoritma mekanisme inferensi untuk menentukan konklusi dari


system. Ujikan algoritma tersebut bila user memberikan masukan gejala A
dan B.
5. Diinginkan suatu sistem pengenalan buah-buah masak secara otomatis.
Buatlah diagram blok sistem tersebut, tuliskan fungsi masing-masing
komponen tersebut. Apa yang menjadi fitur untuk diekstrak? Bagaimana
penyimpanan fiturnya? Bagaimana metode pengenalan buah masaknya.

103
DAFTAR PUSTAKA

Bowen, Kenneth A, Prolog and Expert Systems, McGraw-Hill, Singapore, 1991


Giarratano, J and G. Riley, Expert System : Principle and Programming, 4th ed,
PWS Kent, USA,2004
Luger, George F. and Stubblefield, William A, AI : Structures and Strategies For
Complex Problem Solving, 2nd edition, The Benjamin Cumming Pub, California,
1993
Sri Kusumadewi, Artificial Intelligence:Teknik dan Aplikasinya, Graha Ilmu,
Yogjakarta, 2003
Rich, Elaine and Knight, Kevin, Artificial Intelligence, 2nd Edition, McGraw-Hill,
Singapore, 1991

104

Anda mungkin juga menyukai