ho ai

Upload: adrilnursalam

Post on 10-Jul-2015

579 views

Category:

Documents


0 download

TRANSCRIPT

ARTIFICIAL INTELLIGENCE

KECERDASAN BUATAN

DAFTAR PUSTAKA : 1. 2. 3. 4. 5. 6. 7. 8. Louis E. Frenzel, Jr., Crash Course in Artificial Intelligence and Expert System, Howard W. Sams & Co., Indianapolis, USA. Suparman, Mengenal Artificial Intelligence, Penerbit Andi Offset Yogyakarta, Edisi pertama, 1991. Sandi Setiawan, Artificial Intelligence, Penerbit Andi Offset Yogyakarta, Edisi pertama, 1993. M. Farid Azis, Belajar Sendiri Pemrograman Sistem Pakar, PT Elex Media Komputindo, Jakarta, 1994. Uung Ungkawa, Bahasa Pemrograman Logika Turbo Prolog, Penerbit Andi Offset Yogyakarta, Edisi pertama 1992. Tjendry Harianto, Bahasa Turbo Prolog, Penerbit Andi Offset Yogyakarta, Edisi pertama 1992. Sandi Setiawan, Mengenal Network Saraf, Penerbit Aandi Offset Yogyakarta, 1992. Prolog Tutorial by A. Aaby, http://cs.wwc.edu/KU/PR/Prolog.html

SILABUS MATA KULIAH 1. 2. 3. 4. 5. 6. Pendahuluan Pengertian Kecerdasan Buatan Representasi Pengetahuan Pendekatan Penyelesaian Masalah Pembahasan Beberapa Bidang Kecerdasan Buatan Pengenalan Pemrograman Kecerdasan Buatan

TUJUAN PERKULIAHAN Mempelajari pengertian dan konsep kecerdasan buatan (artificial intelligence) kemudian menerapkannya dalam berbagai bidang disiplin ilmu dengan membentuk pemrograman yang spesifik.

BY TONI KHALIMI, S.SI Page 1 of 67

ARTIFICIAL INTELLIGENCE

1. PENDAHULUAN

Riwayat Singkat Kecerdasan Buatan Kecerdasan Buatan sebenarnya sudah dimulai sejak musim panas tahun 1956. pada waktu itu sekelompok pakar komputer, pakar dan peneliti dari disiplin ilmu lain dari berbagai akademi, industri serta berbagai kalangan berkumpul di Dartmouth College untuk membahas potensi komputer dalam rangka menirukan atau mensimulasi kepandaian manusia. Beberapa ilmuwan yang terlibat adalah Allen Newel, Herbert Simon, Marvin Miskey, Oliver Selfridge, dan John McCarthy. Sejak saat itu, para ahli mulai bekerja keras untuk membuat, mendiskusikan, merubah dan mengembangkan sampai mencapai titik kemajuan yang penuh. Mulai dari laboratorium sampai kepada pelaksanaan kerja nyata. Pada mulanya Kecerdasan Buatan hanya ada di universitas-universitas dan laboratorium-laboratorium penelitian, dan hanya sedikit sekali jika ada produk praktis yang sudah dikembangkan. Menjelang akhir tahun 1970-an dan awal tahun 1980-an, mulai dikembangkan secara penuh dan hasilnya secara berangsur-angsur mulai dipasarkan. Saat ini, sudah banyak hasil penelitian yang sedang dan sudah dikonversikan menjadi produk nyata yang membawa keuntungan bagi pemakainya. Revolusi Pengolahan Data oleh Komputer Awalnya komputer hanya mengolah data, kemudian menghasilkan informasi untuk pengambilan keputusan. Seiring dengan perkembangan, saat ini komputer dapt mengolah pengetahuan sehingga proses pengambilan keputusan menjadi lebih cepat dan akurat.PEMAKAI MESIN

PENGAMBILAN KEPUTUSAN

PEMROSESAN PENGETAHUAN

PEMROSESAN INFORMASI

DATA

SISTEM PEMROSESAN DATA

FILEFILE DATA

PENGAMBILAN KEPUTUSAN

PEMROSESAN PENGETAHUAN

INFORMASI

SISTEM PEMROSESAN INFORMASI

BASIS DATA

PENGAMBILAN KEPUTUSAN

PENGETAHUAN

SISTEM PEMROSESAN PENGETAHUAN

BASIS PENGE TAHUAN

Gambar 1. Pengolahan Data, Informasi dan Pengetahuan

BY TONI KHALIMI, S.SI Page 2 of 67

ARTIFICIAL INTELLIGENCE

Apabila komputer mengerjakan pengolahan data, maka manusia harus mengkonversi data tersebut menjadi informasi yang dapat digunakan dalam mengolah pengetahuan untuk menghasilkan keputusan. Apabila komputer mengerjakan pengolahan informasi yang berarti juga termasuk pengolahan data maka manusia cukup mengerjakan pengolahan pengetahuan untuk menghasilkan keputusan. Akan tetapi apabila komputer dapat melakukan pengolahan pengetahuan juga terkandung di dalamnya pengolahan data dan ionformasi maka akan sangat sedikitlah bagian pekerjaan yang harus dilakukan manusia, termasuk dalam penerapan hasil untuk keperluan tertentu. Teknik yang membuat komputer mampu mengolah pengetahuan ini dinamakan teknik kecerdasan buatan (artificial intelligence technique). Dengan pendekatan ini manusia mencoba membuat komputer dapat berpikir seperti cara yang dipakai manusia dalam memecahkan masalah. Apakah Komputer Dapat Berpikir ? Terdapat beberapa tingkat kecerdasan seperti yang diilustrasikan oleh gambar berikut.SAMPLE LOGIC CIRCUITS AI COMPUTERS HUMANS

LOW

HIGH

SPST TOGLE SWITCH

SOME ANIMALS

SUPERIOR ALIENS

Gambar 2. Spektrum Kecerdasan atau kemampuan arah

Pikiran manusia menduduki tingkat tertinggi dalam spektrum kecerdasan, rangkaian logika sederhana ada pada tingkat spektrum terendah, sedangkan Kecerdasan Buatan terletak pada kedua hal tersebut di atas. Beberapa pertanyaan seputar Kecerdasan Buatan yang diterapkan pada komputer: tugasnya ? Apabila kecepatan dan kemudahan serta peningkatan produktifitas kerja dan kemampuannya melakukan Apakah kemudian komputer menjadi lebih pintar? Apakah benar, komputer sekarang mempunyai

kecerdasan seperti yang dimiliki manusia dalam melaksanakan

BY TONI KHALIMI, S.SI Page 3 of 67

ARTIFICIAL INTELLIGENCE

pekerjaan dengan baik sudah tercapai, apakah komputer itu sudah bisa dikatakan mempunyai tingkat kecerdasan tertentu ? Bagaimana kita bisa menyatakan bahwa komputer Kriteria apakah yang bisa digunakan untuk sampai itu memiliki kecerdasan ? pada kesimpulan itu ? Kenyataannya, hampir semua program Kecerdasan Buatan yang dilaksanakan dengan teknik pelacakan dan pencocokan pola mengarah kepada suatu kesimpulan bahwa komputer tidak benar-benar pintar. Kita boleh memberi informasi sebanyak-banyaknya kepada komputer dan beberapa pengarahan tentang cara penggunaanya. Dengan menggunakan informasi dan kriteria yang berlaku, komputer bisa menemukan suatu solusi. Semua yang dilakukannya itu merupakan percobaan atas berbagai alternatif dan usaha untuk menemukan beberapa kombinasi yang cocok dengan kriteria terancang. Bila semua itu sudah dikerjakan, maka secara tipikal solusi tersebut bisa dicapai. Dengan demikian, walaupun komputer itu tidak betul-betul pintar, tetapi kelihatannya seperti berfikir dan sering memberikan solusi yang menakjubkan. Seorang ahli matematika dan Kecerdasan Buatan bernama Allan Turing berkebangsaan Inggris yang memiliki sumbangan besar dalam teori kemampuan penghitungan (computability), bergumul dengan pertanyaan apakah sebuah mesin dapat berpikir atau tidak ? dengan melakukan sebuah percobaan yang disebut dengan imitasi permainan (pseudo game). Dalam uji ini, dilibatkan seorang penanya (manusia), dan 2 obyek yang ditanyai (manusia dan mesin). Penanya dan 2 obyek yang ditanyai itu terletak pada jarak yang jauh sehingga tidak dapat melihat atau berbicara dengan kedua obyek yang ditanyai itu. Penanya hanya dapat berkomunikasi dengan keduanya lewat suatu alat terminal komputer. Penanya mengira bahwa ia sedang berhubungan dengan dua operator lainnya. Dalam mengajukan pertanyaan, penanya bebas memilih pertanyaan. Misalnya, untuk mengetahui mana obyek yang benar-benar manusia, penanya dapat mengajukan pertanyaan yang didasarkan pada sifat emosi kedua obyek yang ditanyai, yakni pertanyaan tentang suatu puisi atau karya seni lain. Walaupun secara dasar percobaan itu masih menimbulkan kesangsian manusiawi, tetapi Turing berpendapat bahwa jika penanya tidak dapat membedakan mana yang manusia dan mana yang mesin, maka mesin tersebut dapat diasumsikan sebagai cerdas.

BY TONI KHALIMI, S.SI Page 4 of 67

ARTIFICIAL INTELLIGENCE

Beberapa hal penting dari uji ini adalah 1. Memberikan tanda-tanda yang obyektif dari kecerdasan, yaitu respon tingkahlaku dari kecerdasan yang telah dikenal terhadap sejumlah pertanyaan tertentu. Cara ini memberikan standar dalam menentukan kecerdasan dan menghindarkan beda pendapat tentang apa itu sifat kecerdasan yang sebenarnya. 2. Dapat membuat kita mempunyai pedoman dalam menerima jawaban yang membingungkan dan ketidakmampuan obyek menjawab pertanyaan kita, terlepas apakah mesin tersebut menggunakan proses internal yang memadai, atau tidak peduli apakah komputer itu sadar atau tidak dengan responya sendiri. 3. Menghapus setiap bias yang menguntungkan organisme hidup (termasuk manusia) dibandingkan mesin cerdas dengan memaksa si penanya agar hanya memfokuskan perhatiannya pada jawabanjawaban dari pertanyaan yang diajukannya. Uji Turing ini menjadi dasar bagi banyak strategi yang digunakan dalam menilai program-program Kecerdasan Buatan modern. Setiap percobaan untuk inteligensia mempunyai nilai dan kedayagunaan yang terbatas. Dia mungkin bisa mengerjakan suatu kasus, tapi belum tentu bisa mengerjakan kasus yang lain. Faktor Pendorong Perkembangan Kecerdasan Buatan Faktor pendorong bagi terlaksananya aplikasi Kecerdasan Buatan adalah 1. Pesatnya perkembangan teknologi perangkat keras. Hampir semua aplikasi Kecerdasan Buatan memerlukan perangkat keras yang memiliki kecepatan daya tampung yang lebih tinggi, walaupun hanya menjalankan perangkat lunak Kecerdasan Buatan yang paling sederhana sekalipun. Disamping itu, harga perangkat keras yang dengan kemampuan lebih memiliki harga yang relatif semakin murah. 2. Pengembangan perangkat lunak Kecerdasan Buatan Dewasa ini bahasa dan alat pemrograman baru yang lebih canggih sudah banyak dikembangkan dan dipasarkaan secara luas, termasuk bahasa khusus untuk Kecerdasan Buatan. 3. Perkembangan computer / PC). Sekarang sudah sangat banyak orang menggunakan komputer mikro (microcomputer) khususnya komputer pribadi baik di sekolah, perusahaan, atau bahkan di rumah yang menyebabkan permintaanBY TONI KHALIMI, S.SI Page 5 of 67

khusus

komputer

pribadi

(personal

ARTIFICIAL INTELLIGENCE

mereka akan perangkat lunak yang lebih unggul untuk pekerjaan mereka. 4. Turut andilnya para investor dalam mendanai penelitian dan pengembangan teknologi Kecerdasan Buatan. Hal ini mengakibatkan terjadinya semacam tekanan di kalnganan masyarakat Kecerdasan Buatan untuk berlomba-lomba dalam mempercepat gerak dan langkah penelitiannya dan segera memproduksi Kecerdasan Buatan dalam waktu yang singkat.

Masalah utama Kecerdasan Buatan adalah sulitnya merumuskan dan memvisualisasi inteligensia itu sendiri, karena mempunyai arti yang banyak. Walaupun AI telah banyak membuat komputer menjadi lebih pintar dan lebih canggih, tapi tampaknya impian manusia agar bisa membuat komputer yang betul-betul bisa membuat duplikasi otak manusia, atau bisa menjadi pengganti otak manusia yang sebenarnya masih jauh dari kenyataan. Mungkin belum bisa terlaksana pada zaman atau masa kini. Kenyataannya, masih banyak persoalan-persoalan yang timbul tentang apakah kita akan selamanya bisa membuat sebuah komputer yang secara akurat dapat melakukan hal-hal yang terbaik seperti yang dilakukan oleh pikiran manusia. Hubert Dreyfus ahli filsafat dari Universitas California di Berkeley berpendapat bahwa masyarakat sekarang ini sedang dikacaukan oleh oleh pengertian Kecerdasan Buatan yang mengira seolah-olah kegunaannya sangat berlebihan dan tidak mungkin bisa mencapai tujuan. Dreyfus berkata: Kita tidak akan pernah bisa membuat suatu kaidah untuk semua cara kita berfikir, karena hal itu sangat kompleks. Tentu saja, para peneliti yang ahli akan lebih bisa mendekati pada komputer pintar, tapi masih banyak masalah yang harus dijawab. Misalnya, bagaimana kita bisa mencerminkan keterampilan dalam menangani masalah manusia, kemampuan belajar, selera, imajinasi, emosi, kreativitas dan rasa berani. Untuk menjawab masalah-masalah tersebut di atas, para ahli kembali pada bidang yang berkaitan, seperti: filosofi, psikologi, linguistik dan sains syaraf (neuro science) dan tentu saja sains komputernya itu sendiri. Dengan demikian akan lahir bidang sains kognitif antar disiplin ilmu tersebut. Walaupun masih banyak kritik, metode Kecerdasan Buatan tetap memperlihatkan nilai lebih dibanding dengan yang lain. Teknik Kecerdasan Buatan menunjukkan bagaimana kita berfikir dan bagaimana kita menerapkan inteligensia dengan lebih baik. Teknik Kecerdasan Buatan akan membuat komputer lebih mudah digunakan dan pengetahuan akan semakin tersebar luas di kalangan masyarakat.

BY TONI KHALIMI, S.SI Page 6 of 67

ARTIFICIAL INTELLIGENCE

Kita membuat komputer pintar bukan untuk menggantikan manusia tapi hanya sekedar untuk menjadi alat bantu manusia.

BY TONI KHALIMI, S.SI Page 7 of 67

ARTIFICIAL INTELLIGENCE

II. PENGERTIAN KECERDASAN BUATAN

Kedudukan Ilmu Kecerdasan BuatanSoftware Engineering Operating System Information System Engineering Comput er Sicence Information Technology Engineering

Networking and Internet Technology Expert System ... Fuzzy Logic Artificial Neural Network Intelligence Natural Language Robotic Gambar 2. Bagan Kedudukan Ilmu Kecerdasan Buatan.

Apakah Kecerdasan Itu ? Kecerdasan berasal dari kata dasar cerdas. Cerdas dapat memiliki konotasi makna lebih baik, cepat, capable, adapted dengan kondisi umumnya/normal. Cerdas juga dapat berarti kemampuan untuk mengerti/memahami. Kecerdasan (intelligence) dimiliki seseorang melaksanakan pengetahuan yang dimilikinya. yang pandai

Walaupun seseorang memiliki banyak pengetahuan, tetapi bila ia tidak bisa melaksanakannya dalam praktek, maka ia tidak bisa digolongkan ke dalam kecerdasan. Dengan perkataan lain, kecerdasan adalah kemampuan manusia untuk memperoleh pengetahuan dan pandai melaksanakannya dalam praktek. Definisi Kecerdasan Buatan Kecerdasan buatan merupakan upa-bidang ilmu komputer (computer science) yang khusus ditujukan untuk membuat perangkat lunak dan perangkat keras yang sepenuhnya bisa menirukan beberapa fungsi otak manusia. Atau cabang ilmu komputer yang mempelajari otomatisasi tingkah laku cerdas (intelligent).

BY TONI KHALIMI, S.SI Page 8 of 67

ARTIFICIAL INTELLIGENCE

Kecerdasan harus didasarkan pada prinsip-prinsip teoritikal dan terapan yang menyangkut : struktur data yang digunakan dalam representasi pengetahuan (knowledge representation), algoritma yang diperlukan dalam penerapan pengetahuan itu, teknik-teknik bahasa dan pemrograman yang dipakai dalam implementasinya. Kecerdasan buatan menawarkan baik media maupun uji teori kecerdasan. Teori-teori semacam ini dapat dinyatakan dalam bahasa program komputer dan dibuktikan melalui eksekusinya pada komputer. Bagian-bagian Kecerdasan Buatan Bagian utama aplikasi kecerdasan buatan adalah pengetahuan (knowledge), yaitu suatu pengertian tentang beberapa wilayah subyek yang diperoleh melalui pendidikan dan pengalaman. Pengetahuan merupakan informasi terorganisir dan teranalisa agar bisa lebih mudah dimengerti dan bisa diterapkan pada pemecahan masalah dan pengambilaan keputusan. Pengetahuan terdiri dari fakta, hubungannya satu sama lain. pemikiran, teori, prosedur, dan

computer Inputs (question s, problems, etc.) Outputs (answers, solutions, etc.)

Knowledge Base

Inferencing capability

Gambar 3. Penerapan konsep Kecerdasan Buatan dalam komputer.

Komputer tidak mungkin mendapatkan pengetahuannya sendiri dengan belajar, berpengalaman atau melakukan penelitian, akan tetapi ia memperolehnya melalui upaya yang diberikan oleh seorang pakar manusia. Hampir semua pangkalan pengetahuan (knowledge base) sangat terbatas, dalam arti terfokuskan kepada suatu masalah khusus. Pada saat pangkalan pengetahuan itu sudah terbentuk, teknik Kecerdasan Buatan bisa digunakan untuk memberi kemampuan baru kepada komputer agar bisa berfikir, menalar, dan membuat inferensi (mengambil keputusan berdasarkan pengalaman) dan membuat pertimbangan-pertimbangan yang didasarkan kepada fakta dan hubungan-hubungannya yang terkandung dalam pangkalan pengetahuan itu.

BY TONI KHALIMI, S.SI Page 9 of 67

ARTIFICIAL INTELLIGENCE

Dengan pangkalan pengetahuan dan kemampuan untuk menarik kesimpulan melalui pengalaman (inferensi), komputer dapat disejajarkan sebgai alat bantu yang bisa digunakan secara praktis dalam memecahkan masalah dan pengambilan keputusan serta bisa mencapai satu atau lebih solusi alternatif pada maslah yang diberikan. Problema Apa Saja yang digumuli oleh Kecerdasan Buatan ? Yang mula-mula digeluti oleh Kecerdasan Buatan adalah pembuktian teorema dan permainan (game). Misalnya Newell, ahli teori logika, berusaha untuk membuktikan teorema-teorema matematika dan Samuel yang membuat program permainan catur. Kemudian para periset Kecerdasan Buatan terus mengembangkan berbagai teknik baru untuk menangani sejumlah besar persoalan, termasuk persepsi, pemahaman bahasa alamiah, dan problema spesifik seperti diagnosa medis. Persoalan-persoalam yang ditangani oleh Kecerdasan Buatan adalah 1. pembuktian teorema (theorem proving), misalnya: MACSYMA untuk tugas-tugas matematika. 2. permainan (game), seperti: chess, tic (= saraf tak sadar) tac toe (= jari kaki), othelo, dan sebagainya. 3. pemecahan problema umum (general problem solving), misalnya pengambilan keputusan otomatis (automated decision making) dan pemodelan kinerja manusia. 4. persepsi / perception (visi / vision dan percakapan / conversation) 5. pemahaman bahasa alamiah (natural language), misalnya ELIZA yang dapat memberikan saran psikologis. 6. pengenalan pola (pattern recognition), seperti pengolahan citra digital untuk kebutuhan ramalan cuaca, foto (kopi), monitor tv, dan sebagainya. 7. pemecahan problema pakar (expert), mencakup bidang matematika simbolik, diagnosa medis, rekayasa rancang bangun, analisis kimia. 8. pembuatan perangkat lunak otomatis (automated software generation). Bidang-bidang teknik kecerdasan buatan diantaranya adalah

processing)

sistem pakar (expert system), robot (robotics), logika samar (fuzzy logic), jaringan syaraf (neural networks) tiruan, dan pengolahan bahasa alami (natural language pengolahan citra.

Sifat Penting Kecerdasan Buatan Beberapa sifat penting Kecerdasan Buatan yang muncul dalam pelbagai bidang penerapannya :

BY TONI KHALIMI, S.SI Page 10 of 67

ARTIFICIAL INTELLIGENCE

1. Digunakannya komputer untuk melakukan pertimbangan dengan proses yang memakai simbol. 2. Pemfokusan ditujukan pada persoalan yang tidak memberikan respon terhadap solusi algoritmik. Hal inilah yang mendasari pencarian (search) heuristik sebagai teknik pemecahan problema Kecerdasan Buatan. 3. Usaha yang dilakukan lebih ditujukan untuk menangkap dan memanipulasi sifat-sifat kualitatif penting dari suatu situasi daripada metode numerik. 4. Usaha yang dilakukan adalah untuk menangani arti-arti semantik dan bentuk sintaksis. 5. Jawaban yang diberikan tidaklah eksak atau optimal, namun lebih bersifat cukup (sufficient). Ini merupakan hasil penting dalam metode pemecahan problema heuristik pada situasi dimana hasil yang eksak atau optimal akan berharga terlalu mahal atau tidak mungkin dilakukan. 6. Penggunaan sejumlah besar pengetahuan khusus dalam memecahkan persoalan. Ini merupakan dasar bagi sistem pakar. 7. Penggunaan pengetahuan tingkat meta (meta-level) untuk mempengaruhi pengendalian lebih canggih dari strategi pemecahan problema. Meskipuan hal ini merupakan persoalan yang sangat sulit dan hanya ditujukan pada sejumlah kecil sistem, namun muncul sebagai obyek riset yang penting. Proses Komputasi Kecerdasan Buatan Perangkat lunak Kecerdasan Buatan didasarkan kepada representasi dan manipulasi simbol (symbol). Sebuah simbol bisa merupakan huruf, kata atau bilangan yang digunakan untuk menggambarkan obyek, proses dan saling hubungannya. Ia bisa merupakan cetakan atau elektronik. Obyek bisa berupa orang, benda, ide, pikiran, peristiwa atau pernyataan suatu fakta. Dengan menggunakan simbol memungkinkan komputer bisa menciptakan suatu basis data yang menyatakan fakta, pikiran dan hubungannya satu sama lain. Berbagai proses digunakan untuk memanipulasi simbol agar mampu memecahkan masalah. Pengolahannya bersifat kwantitatif, dan bukan kwalitatif seperti halnya komputasi yang didasarkan kepada algoritma. Apabila basis pengetahuan, fakta dan hubungannya sudah dibuat, maka penggunaannya untuk memecahkan masalah harus sudah dimulai. Teknik dasar untuk melakukan penalaran dan menarik kesimpulan dari pengalaman melalui basis pengetahuan adalah pelacakan (searching) dan pencocokan pola (pattern matching). Secara harfiah komputer terus memburu dan dan mencari pengetahuan yang ada sampai ia menemukan jawaban yang terbaik atau jawaban yang paling cocok.BY TONI KHALIMI, S.SI Page 11 of 67

ARTIFICIAL INTELLIGENCE

Walaupun secara langsung pemecahan Kecerdasan Buatan tidak didasarkan kepada algoritma, tetapi sebenarnya dalam implementasi proses pelacakan, algoritma tetap digunakan. Program yang didasarkan kepada algoritma melaksanakan manipulasi simbolik yang menyebabkan suatu masalah dapat terpecahkan dengan cara yang sangat mendekati dengan cara kerja berfikir manusia. Persamaan dan Perbedaan Konsep Komputasi Kecerdasan Buatan dengan Komputasi Konvensional Antara

Persamaannya : 1. Sama-sama mengolah simbol-simbol yang dapat berupa huruf, kata, atau bilangan yang digunakan untuk menggambarkan obyek, proses, dan saling hubungannya. Obyek dapat berupa orang, benda, ide, pikiran, peristiwa atau pernyataan suatu fakta. 2. Menggunakan komputer digital untuk melaksanakan operasi. Perbedaanya :KOMPUTASI KONVENSIONALMenggunakan fungsi otak manusia. Komputer diperintahkan untuk menyelesaikan suatu masalah. Hanya dapat ditulis dalam bahasa pemrograman biasa seperti Assembler, C/C++, Fortran, Basic dan Pascal. Dapat dijalankan pada semua jenis komputer tetapi tidak dibuatkan hardware khusus. Komputer diberikan data dan program yang berisi spesifikasi langkah demi langkah bagaimana cara data itu digunakan dan diolah untuk menghasilkan solusi. Didasarkan pada suatu algoritma yang dapat berupa rumus matematika atau prosedur berurutan yang tersusun jelas. Pengolahan obyek bersifat kwalitatif.

KECERDASAN BUATANMeniru beberapa fungsi otak manusia. Komputer diberitahu tentang suatu masalah. Programnya dapat ditulis dalam semua bahasa pemrograman termasuk bahasa pemrograman khusus untuk aplikasi Kecerdasan Buatan seperti Prolog dan LISP. Dapat dibuatkan hardware khusus dan dapat pula dijalankan pada semua jenis komputer. Komputer diberi pengetahuan tentang suatu wilayah subyek masalah tertentu dengan ditambah kemampuan inferensi.

Didasarkan pada repesentasi dan manipulasi simbol. Pengolahan obyek bersifat kwantitatif.

Keuntungan dan Kerugian / Kelemahan Kecerdasan Buatan 1. Komputer masa depan akan memberikan kenikmatan, kenyamanan, dan kesenangan yang lebih bagi penggunanya, tetapi sebaliknya akan mendorong harga komputer menjadi semakin mahal. Hal-hal yang ditawarkan bagi para pengguna komputer Kecerdasan Buatan : akan bisa berkomunikasi dengan komputer dengan bahasa alami / bahasa manusia sehari-hari akan terbebas dari keharusan belajar bahasa pemrograman dan sistem operasi.

BY TONI KHALIMI, S.SI Page 12 of 67

ARTIFICIAL INTELLIGENCE

para pengguna komputer yang tidak terlatih sekalipun akan menghasilkan karya yang sangat berguna bagi kepentingannya dengan menggunakan komputer menggunakan komputer akan tidak lebih sulit daripada menggunakan pesawat telepon 2. Komputer akan menjadi semakin lebih berguna. Hal ini karena bidang-bidang masalah yang tadinya tidak dapat dipecahkan oleh komputer kini akan dapat dapat dipecahkan dengan teknik Kecerdasan Buatan. Biaya pengembangan dan penelitian Kecerdasan Buatan sangat mahal. Pengembangan aplikasi Kecerdasan Buatan merupakan hal yang sangat sulit dan diperlukan waktu yang sangat lama. Masih sedikitnya perangkat lunak khusus untuk Kecerdasan Buatan. Padahal dengan perangkat luinak khusus ini, pekerjaan pembuatan dan pengembangan perangkat lunak Kecerdasan Buatan menjadi lebih mudah dan cepat. Belum terciptanya antarmuka (interface) bahasa alami khusus untuk Kecerdasan Buatan. Perangkat lunak Sistem Manajemen Basis Data (DataBase Management System / DBMS) merupakan salah satu tipe perangkat lunak konvensional pertama yang sudah bisa mengambil keuntungan dari terciptanya bahasa alami ini. Perangakat lunak DBMS ini bisa lebih cepat dan lebih mudah mengambil data yang disimpan dalam basis data tanpa harus menggunakan teknik pemrograman yang rumit.

3. 4. 5.

6.

BY TONI KHALIMI, S.SI Page 13 of 67

ARTIFICIAL INTELLIGENCE

BY TONI KHALIMI, S.SI Page 14 of 67

ARTIFICIAL INTELLIGENCE

III. KONSEP KONSEP DALAM KECERDASAN BUATAN

1. Agen CerdasAgen (agent) adalah sesuatu yang dapat melihat, merasakan (perceiving), memahami, dan mengerti lingkungannya melalui detektor (detektor) / sensor (censor) dan bertindak (acting) atas lingkungan itu pula melalui media sarananya (effector). Manusia mempunyai agen berupa mata, telinga, dan sebagainya yang berupa detektor/sensor. Sedangkan tangan, kaki, mulut, dan sebagainya merupakan efektornya. Robot mempunyai kamera, detektor infra merah, dan sebagainya sebagai sensor; dan motormotor listrik, lengan mekanik sebagai efektornya. Tugas dari Kecerdasan Buatan adalah merancang program agen (agent program), yaitu suatu fungsi yang mengimplementasikan peta agen dari persepsi hingga aksi. Sedangkan program yang dijalankan tersebut memerlukan sebuah peralatan tertentu yang dapat berupa komputer atau perangkat keras khusus untuk menangani tugas tertentu yang dikenal sebagai arsitektur (architecture).

2. Komponen Pendukung Agen Cerdas2.1. Visi (Vision) Visi merupakan indera yang paling mengesankan / impresif (impressive). Informasi tentang dunia luar (environment) diberikan secara detail tanpa butuh banyak usaha. Visi merupakan salah satu obyek studi Kecerdasan Buatan yang paling intensif dan salah satu cara untuk memasukkan fenomena fisik ke dalam representasi internal (internal representation). Visi dimulai dari mata, alat untuk menangkap dan memfokuskan cahaya yang memantul dari obyek, setiap titik dari obyek. Merupakan problematika bagaimana menciptakan alat yang dapat bekerja seperti mata. Sampai akhirnya pada tahun 1950an ditemukannya teori pengenalan pola (pattern recognition).Awal (Low level) Akhir (High level)

Citra mentah

Deskripsi Vision

Citra intrinsik

BY TONI KHALIMI, S.SI Page 15 of 67

ARTIFICIAL INTELLIGENCE

Gambar 3.1. Tahapan pemrosesan visual

2.2. Bahasa (Language) Sebagaimana pada visi, problematika dalam bahasa adalah bagaimana membawa informasi yang disediakan dunia luar dan diterjemahkan ke dalam representasi internal dengan tepat. Dengan adanya penelitian di bidang Kecerdasan Buatan ini telah menimbulkan kebangkitan bahasa dari model konvensional yang hanya mengandalkan bilangan (numerical) dan teks (text) ke arah manipulasi entitas simbolik dan representasi kompleks. Untuk tingkat yang lebih luas, studi tentang bahasa ini lebih banyak menggunakan istilah representasi semantik untuk mewakili representasi internal. Tabel berikut memperlihatkan hubungan antara pemrosesan konvensional dan bahasa komputasi. bahasa

Tabel 3.1. Konsep bahasa pemrograman konvensional v.s bahasa pemrograman Kecerdasan Buatan.

Bahasa Pemrograman Konvensional Komputasi bersifat manipulasi teks dan bilangan Algoritma prosedural sebagai pemecahan masalah Menentukan urutan langkah kepada pemecahan. Kesimpulan yang deterministik secara keseluruhan Tipe data karakter dan angka Peubah terdeklarasi sebelumnya dan bertipe Peubah berdimensi tetap Representasi informasi yang pasti/tepat Jawaban eksak/pasti/tepat yang dicari

Bahasa Pemrograman Kecerdasan Buatan Berupa simbol, konsep, aturan, relasi. Bahasa deskriptif (menggambarkan fakta dan relasi-relasi yang diketahui). Searching/heuristic dipakai untuk pemecahan. Tidak diketahui jika kumpulan algoritma bertemu Tipe data atom, obyek, listing program Tidak perlu pendeklarasian sebelumnya (peubah tipe tertentu dapat dibuat jika diperlukan dalam proses) Dimensi dari struktur data dapat berkembang atau menyusut menurut proses pemecahan Representasi informasi yang tidak pasti Jawaban memuaskan seperti apapun dicaris

Tahapan analisis bahasa untuk melakukan pemecahan masalah dalam bidang Kecerdasan Buatan adalah sebagai berikut: 1. acoustic-phonetic, yaitu tanggung jawab membawa suar dan menerjemahkan input ke dalam kata-kata. 2. morphological-syntactic, adalah tanggung jawab membawa dan menetapkan bentuk sintak dan ucapanBY TONI KHALIMI, S.SI Page 16 of 67

ARTIFICIAL INTELLIGENCE

3.

semantic_pragmatic, adalah tanggung jawab menyiapkan arti analisis ucapan tersebut. Acoustic Acoustic Phonetic Phonetic Morphologica Morphologica ll Syntactic SyntacticGambar 3.2. tiga tingkat analisis linguistik.

Semantic Semantic Pragmatic Pragmatic

Contoh: Jika kita menemukan sebuah suara k seperti kite, diikuti dengan suara a seperti apple, diikuti dengan suara t, maka kita cukup beralasan untuk menyimpulkan bahwa kita mendengar kata cat. Pada tingkat selanjutnya, sintaks suatu bahasa membantu memutuskan bagaimana kata digabungkan untuk membuat makna yang lebih luas. Inilah apa yang disebut dengan struktur fungsional (functional structure). Hingga kita berusaha memahamkan suatu kalimat seperti Sebuah toko menjualkan pedagang seekor anjing. Dari kalimat tersebut perlu ketegasan makna siapa atau apa yang dijual dan kepada siapa. Untuk mengatasi problem ketegasan makna di atas, diperlukan sebuah representasi internal yang dapat mengarahkan informasi sesuai dengan maksud. Level representasi internal ini berada dalam wilayah semantik dan pragmatik, dan sebagai intermediate structure antara kalimat dengan representasi internal. Sebagian peneliti Kecerdasan Buatan sepakat untuk menggunakan parsing. Dalam perancangan parsing ini mutlak diterapkan suatu aturan gramatikal agar makna informasi tidak terbelah. Aturan gramatikal yang biasa digunakan dan mungkin terbaik adalah context-free grammar. 2.3. Representasi Pengetahuan (Knowledge Representation) Representasi pengetahuan berbentuk basis pengetahuan (knowledge base), merupakan sentral komponen dari Kecerdasan Buatan. Secara informal, representasi pengetahuan adalah himpunan tentang fakta-fakta yang berhubungan dengan lingkungan. Tiap-tiap fakta yang ada disebut kalimat (sentence). Jadi, kalimat yang diekspresikan dalam bahasa disebut bahasa representasi pengetahuan (knowledge representation language). Ada tiga tahap pengembangan model Kecerdasan Buatan ini, yaitu: Tahap Konseptual Definisi pengetahuan (menunjukkan dunia mikro yang tidak lengkap). Obyek-obyek dengan ukuran, fungsional dan sifatsifat deskriptif. Tahap Representasi

BY TONI KHALIMI, S.SI Page 17 of 67

ARTIFICIAL INTELLIGENCE

Jaringan semantik untuk merepresentasikan obyek-obyek dan sifat-sifatnya. Tahap Implementasi Reduksi representasi untuk menuju tujuan yang memuaskan. Sistem aturan produksi yang digunakan untuk beroperasi pada obyek-obyek. 2.4. Perencanaan (Planning) Perencanaan merupakan suatu teknik penyelesaian masalah yang melibatkan penentuan suatu aliran (atau urutan) aksi-aksi yang membawa suatu sistem dari suatu keadaan tertentu kepada keadaan atau tujuan yang diingini. Perencanaan berkaitan dengan sistem produksi (production system), kendali (control), temporal reasoning, frame problem, dan pencarian (searching). Contoh perencanaan yang sederhana disajikan sebagai berikut : A. Checker Board (Path Planning) Dalam bentuk yang umum melibatkan pemilihan bagaimana menggerakkan beberapa obyek dalam dua atau tiga dimensi tanpa tumbukan. Dalam dunia nyata, perencanaan Kecerdasan Buatan diaplikasikan pada navigasi otomatisasi kendaraan. Skenarionya berisi area, obyek kendaraan, dan lokasi tujuan. Tugas perencanaan Kecerdasan Buatan adalah mencari jalan terpendek untuk sampai ke tujuan. Operasi: Pindahkan Pindahkan bawah Pindahkan kanan Pindahkan Pindahkan Pindahkan bawah Pindahkan kanan Pindahkan blok A ke atas blok A ke blok A ke blok A ke kiri blok B ke atas blok B ke blok B ke blok B ke kiri

0

1

2

0

1

2

3

4

A

5

3

4

B

5

6

7

8

B

6

7

8

A

i. keadaan awal

ii. akhir

keadaan

Gambar 3.3. Problem perencanaan untuk ilustrasi checker board

B. Block World Pada gambar di bawah, lengan manipulator dipakai untuk memindahkan blok-blok di atas meja. Di sana diberikan mobilitas manipulator, spesifikasi keadaan yang diharapkan dan keadaan awal tertentu (atau pengenal otomat), kemudian diharapkan adanya suatu urutan aksi-aksi untuk mewujudkan keadaan tertentu.BY TONI KHALIMI, S.SI Page 18 of 67

ARTIFICIAL INTELLIGENCE

Lenga n robot

care

A A C B D C D ii. keadaan akhir B

i. keadaan awal

Gambar 3.4. Problem perencanaan untuk ilustrasi block world

Secara umum, sebuah perencanaan Kecerdasan Buatan dinamakan plan generator, membutuhkan entitas-entitas seperti diagram berikut:

Spesifikasi keadaan awal, *Si Spesifikasi keadaan tujuan, *Sg Spesifikasi operasi, *Oi

Algoritma Algoritma plan plan generator generator

Urutan operasi/aks i

* bergantung pada representasi keadaan problem yang dipilih

Gambar 3.5. Entitas yang diperlukan untuk plan generator

2.5. Strategi Pengendalian (Controlling Strategy) Strategi pengendalian Kecerdasan Buatan dilakukan dengan pernyataan (statement) yang merupakan kalimat deklaratif. Pernyataan ini mengandung banyak elemen. Oleh karena itu harus diolah secara bertingkat sebagaimana diagram pada Gambar 3.6. Untuk mengarahkan suatu model Kecerdasan Buatan dapat dilakukan dengan membuat pernyataan dengan memanfaatkanBY TONI KHALIMI, S.SI Page 19 of 67

ARTIFICIAL INTELLIGENCE

antara lain: aturan logika (rule of logic), deduksi (deduction), modus ponen, logika predikat, dan manipulasi well-formed formulas (wffs).

Pernyataan Nilai benar Proposisi Mengijinka n peubah

Mengijinkan sambungan logika

Logika Proporsional (Kalkulus Proporsional)

Predikat (rumus atomik) Kombinasi logika (hubungan dan jumlah) () Kalimat-kalimat Well-formed formulas

Hasil-hasil ekspresi

Logika Predikat (Kalkulus Predikat)

Gambar 3.6. Tahap-tahap pengendalian model

Aturan logika berisi hubungan and, or, irisan, gabungan dan lain sebagainya. Aturan deduksi adalah suatu prosedur penyimpulan yang sistematis atas suatu kondisi dengan melihat fakta-fakta yang cakupannya lebih luas atau keseluruhan. Modus ponen adalah aturan logika dimana bila suatu implikasi bernilai benar disertai dengan diketahui benarnya anteseden maka dapat disimpulkan benarnya konsekuen. Logika predikat adalah suatu kumpulan logika pemodelan kebenaran pernyataan yang berdasar pada nilai-nilai yang diterima oleh bagian-bagian tertentu (atau frase) dari pernyataan tersebut. Misalnya, kita memiliki himpunan bilangan bulat A, maka kita dapat membuat fungsi predikat bilangan ganjil, Aganjil, dimana Aganjil dapat bernilai benar jika anggotanya memang ganjil dan salah untuk selainnya. Manipulasi wffs merupakan strategi yang lebih kompleks dan melibatkan dua topik, yaitu resolusi dan unifikasi. Resolusi Pendekatan resolusi menghasilkan klausa-klausa baru dari sebuah himpunan inisial. Implementasi resolusi mempunyai tujuan untuk mengembangkan suatu prosedur sistematis pada sebuah basis data, dimana wffs-nya tidak memuaaskan, denganBY TONI KHALIMI, S.SI Page 20 of 67

ARTIFICIAL INTELLIGENCE

kata lain tidak ada interpretasi wff yang masuk akal. Untuk itu, hal pertama yang perlu dilakukan adalah mengonversi pernyataan dalam basis data logika dan hipotesis ke dalam bentuk klausa (clause) yang melibatkan disjungsi literal. Resolusi diproses dengan menambahkan basis data dengan negasi hipotesis yang diinginkan. Kemudian klausa diselesaikan dalam basis data tambahan sampai kontradiksinya ditemukan. Jika tidak ditemukan, kita simpulkan bahwa keadaannya konsisten, dan berarti hipotesisnya, pada kenyataannya salah (false). Contoh: Basis data (D1) berisi pernyataan-pernyataan di bawah ini (basis data diasumsikan konsisten): (1). P1 (2). P1 q1 (3). q1 q2 Hasil dibuktikan menggunakan basis data D1, sehingga q2 benar (true). Kemudian, q2 ditambahkan ke D1, klausa dikonversi ke sebuah bentuk yang memudahkan resolusi, dan proses resolusi pasangan dilakukan. Basis data D2 kemudian termodifikasi menjadi (1). P1 (2). P1 q1 (3). q1 q2 (4). q2 Resolusi antara (2) dan (3) adalah sebagai berikut : q1 P1 q1 q2 P1 q2 Hasil D3: (1). P1 (2). P1 q1 (3). q1 q2 (4). q2 (5). P1 q1 Resolusi antara (4) dan (5): q2 q2 q1 P1 Hasil D4: (1). P1 (2). P1 q1 (3). q1 q2 (4). q2 (5). P1 q1 (6). P1 Perhatikan bahwa resolusi antara (1) dengan (6) menghasilkan kontradiksi (P1 P1). Sehingga q2 inkonsisten dengan D1; dimana q2 adalah true.BY TONI KHALIMI, S.SI Page 21 of 67

ARTIFICIAL INTELLIGENCE

Unifikasi Unifikasi adalah usaha untuk mencoba membuat dua ekspresi menjadi identik (mempersatukan keduanya) dengan mencari substitusi-substitusi tertentu untuk mengikuti peubah-peubah dalam ekspresi mereka tersebut. Unifikasi merupakan suatu prosedur sistematik untuk memperoleh peubah-peubah instan dalam wffs. Ketika nilai kebenaran predikat adalah sebuah fungsi dari nilai-nilai yang diasumsikan dengan argumen mereka, keinstanan terkontrol dari nilai-nilai selanjutnya yang menyediakan cara memvalidasi nilai-nilai kebenaran pernyataan yang berisi predikat. Unifikasi merupakan dasar atas kebanyakan strategi inferensi dalam Kecerdasan Buatan. Sedangkan dasar dari unifikasi adalah substitusi. Suatu substitusi (substitution) adalah suatu himpunan penetapan istilah-istilah kepada peubah, tanpa ada peubah yang ditetapkan lebih dari satu istilah. Sebagai pengetahuan jantung dari eksekusi Prolog, adalah mekanisme unifikasi. Aturan-aturan unifikasi : 1. Dua atom (konstanta atau peubah) adalah identik. 2. Dua daftar identik, atau ekspresi dikonversi ke dalam satu buah daftar. 3. Sebuah konstanta dan satu peubah terikat dipersatukan, sehingga peubah menjadi terikat kepada konstanta. 4. Sebuah peubah tak terikat diperssatukan dengan sebuah peubah terikat. 5. Sebuah peubah terikat dipersatukan dengan sebuah konstanta jika pengikatan pada peubah terikat dengan konstanta tidak ada konflik. 6. Dua peubah tidak terikat disatukan. Jika peubah yang satu lainnya menjadi terikat dalam upa-urutan langkah unifikasi, yang lainnya juga menjadi terikat ke atom yang sama (peubah atau konstanta). 7. Dua peubah terikat disatukan jika keduanya terikat (mungkin melalui pengikatan tengah) ke atom yang sama (peubah atau konstanta). 2.6. Pencarian (Searching) Hal pertama yang perlu diperhatikan dalam proses pencarian adalah representasi masalah. Ada beberapa skenario untuk studi pencarian sebagai fungsi untuk memilih representasi. Sebagai contoh, kita mungkin memilih untuk memperhatikan ruang masalah yakni representasi ruang keadaan dalam wilayah representasi graf (graph). Sebelum berjalan jauh, kita perlu mendefinisikan problem pencarian. Sebuah problem pencarian, P, dinyatakan dengan P = {D, S, T, G} dengan, D adalah himpunan keadaan sistem yang mewakili keadaan ruang masalah (problem sate-space).BY TONI KHALIMI, S.SI Page 22 of 67

ARTIFICIAL INTELLIGENCE

Si D adalah keadaan awal T = { t1, t2, . . . } adalah himpunan transformasi (operator dan aturan) G D adalah himpunan keadaan tujuan. Suatu solusi untuk D dinyatakan dengan Ts, yaitu urutan ti= t1, t2, . . ., tn; dengan tn . . . (t2(t1(S1))) G. Catatan: D dan T dapat memiliki nilai tertinggi atau tak terhingga namun dapat dihitung (countably infinite). Kita juga dapat membagi D dengan dua bagian berikut: Dr D dimana terdapat Ts, sehingga tn . . . (t2(t1(S1))) Dr merupakan keadaan yang dapat tercapai (reachable state). Dur D dimana tidak terdapat Ts, sehingga tn . . . (t2(t1(S1))) Dur merupakan keadaan yang tidak dapat tercapai (unreachable state). Jika G Dr, maka dapat diselesaikan. Metode State Space Graph (SSG) Sebuah State Space Graph (SSG) adalah diagraph yang menjelaskan D dan T. Mode SSG mewakili elemen D, sedang busur (arc) mewakili elemen T; ti T menghasilkan busur dalam SSG antara mode di dan dj D ke dj ti a (di) yang diketahui. Contoh: Suatu graf representasi dari P mempunyai aturan sebagai berikut: Fakta (basis data yang diketahui) : {abg} - Si b Dengan aturan : 1 2 3 4 5 jika jika jika jika jika a b, maka c b g, maka d a c, maka e e d, maka f d g, maka f3 1

1).

2).

e

c4

f

2

d5

g

f

(a )

3 2 1 Si abg 2 abgc 5 abgdf Sg abgc 1 3 2 abgce abgcd 3

abgcd f

Sg

4 abgcd e 5

abgcde f

Sg

1-2-3-4 2-1-3-4 1-3-2-4 2-1-3-5 1-3-2-5 1-2-3-5 1-2-5 2-1-5 2-5Page 23 of 67

BY TONI KHALIMI, S.SI

ARTIFICIAL INTELLIGENCE

Gambar 3.7. (a) jaring inferensi; (b) jalur pencarian melalui ruang keadaan sistem; (c) kemungkinan urutan aturan menuju Sg

(b )

(c )

Metode pencarian lain yang dipakai Kecerdasan Buatan adalah tree search, dalam hal ini terdapat dua metode, yaitu depth first dan breath first search. 2.7. Pembelajaran (Learning) Definisi sistem pembelajaran dalam Kecerdasan Buatan adalah pengembangan kemampuan sistem melalui identifikasi dan implementasi algoritma pembelajaran (learning algorithm) yang dapat meningkatkan kinerja algoritma lain atau untuk beradaptasi atas dasar informasi atau pengalaman sebelumnya. Sedangkan definisi pembelajaran sendiri adalah sistem pembelajaran (induktif) untuk melakukan deskripsi internal yang masuk akal (plausible) untuk menjelaskan petunjuk-petunjuk hasil pencarian dan berguna untuk memprediksi petunjukpetunjuk baru. Sistem yang dapat secara otomatis menerapkan suatu konsep high-level baru (semacam aturan), memodifikasi konsep, dan meningkatkan kinerja secara gradual melaui pengalaman merupakan ciri sistem pembelajaran. Generasi sekarang dari sistem Kecerdasan Buatan hampir semua secara eksklusif menggunakan deduksi sebagai dasar pembelajaran. Alasannya adalah karena kemampuan deduksi untuk membuktikan tujuantujuan dan fakta-fakta yang beragam. Namun demikian, mereka tak mampu untuk menghasilkan pengetahuan (fakta-fakta) baru secara otomatis. Dengan kata lain, mereka tidak dapat melakukan inferensi induktif. Secara konseptual, pembelajaran biasanya berhubungan dengan 1. Self-improvement atau pengembangan diri. 2. Adaptasi ke lingkungan yang berbeda atau baru. 3. Modifikasi perilaku. 4. Concept formulation and refinement, termasuk generalisasi atauspesialisai model konseptual. Beberapa paradigma pembelajaran yang digunakan dalam Kecerdasan Buatan antara lain adalah sebagai berikut: 1. Belajar menghafal (rote learning). Ini sama dengan mengingat fakta-fakta dan aksi-aksi. Tidak diperlukan pemahaman terhadap data-data. Dalam konteks ini, lawan kata learning adalah forgetting. 2. Memberi nasihat (advice taking), memberi kontrol informasi. Paradigma ini memudahkan pembuatan representasi aturanaturan tambahan. Sebagai contoh saran : if . . . , then . . . . 3. Mempelajari konsep dari contoh atau bukti (learninng concept from example or evidence). Ini merupakan paradigmaBY TONI KHALIMI, S.SI Page 24 of 67

ARTIFICIAL INTELLIGENCE

pembelajaran yang paling powerful dan memungkinkan untuk diimplementasikan dengan banyak cara. Beberapa aspek untuk paradigma ini adalah: Belajar dari contoh secara langsung. Proses induksi digunakan untuk menghasilkan sebagian dari struktur pengetahuan yang ada dengan menggunakan informasi contoh. Belajar dari contoh mungkin digunakan untuk menghasilkan keseluruhan aturan-aturan baru. Belajar dari contoh hampir sama dengan belajar melaui analogi-analogi. Ini berarti kesimpulan atau aksi-aksi baru berdasar atau mempunyai kesamaan struktur dengan kesimpulan atau aksi-aksi sebelumnya. Belajar dari contoh-contoh dapat dibagi dalam dua kategori, yaitu melibatkan pencarian ruang informasi untuk konsep clustering, dan pada level yang lebih tinggi, untuk mendeskripsikan konsep.Bukti (obserbvasi/data)

Verifikasi konsep / algoritma refutasi

Representasi pengetahuan system KB

Penghasil konsep (hipotesis) Gambar 3.8. Paradigma belajar konsep-konsep dari bukti-bukti

4. Belajar dengan eksplorasi (learning by exploration). Alam memberikan contoh terbaik berupa kemampuan adaptasi makhluk hidup, kemampuan untuk menjaga kehidupan (survival) tercermin dari perilaku makhluk. 5. Belajar dari analogi (learning by analogy). Belajar dari analogi adalah suatu cara untuk menghubungkan pengetahuan dengan domainnya.

BY TONI KHALIMI, S.SI Page 25 of 67

ARTIFICIAL INTELLIGENCE

Masalah Baru

Pemetaan parsial

Penyelesaian masalah sebelumnya penururnan

Penyelesaian masalah yang baru

Proses transformasi

Penyelesaian masalah terdahulu

Gambar 3.9. Paradigma belajar analog

BY TONI KHALIMI, S.SI Page 26 of 67

ARTIFICIAL INTELLIGENCE

IV. ARSITEKTUR DAN LINGKUNGAN SISTEM KECERDASAN BUATAN

4.1. Arsitektur Sistem Kecerdasan Buatan Dalam mengimplementasi sistem Kecerdasan Buatan, diperlukan algoritma-algoritma paralel. Algoritma-algoritma tersebut antara lain untuk pencarian, optimasi, pengukuran kepuasan, sistem produksi, pencocokan pola dan graf. Untuk mendukung algoritmaalgoritma tersebut, diperlukan struktur data untuk merepresentasikan pengetahuan yang mampu melakukan manipulasi paralel. Oleh karena itu, dalam desain arsitektur sistem pengetahuan harus melibatkan komponen-komponen berikut: Penyederhanaan representasi Struktur pengetahuan Mekanisme inferensi Perangkat keras atau arsitektur komputer yang diminta oleh sistem Kecerdasan Buatan adalah sebuah komputer yang dapat melaksanakan pemrosesan paralel. Sedangkan perangkat lunaknya harus dikembangkan dengan bahasa yang mempunyai kemampuan paralel dan logika yang handal, seperti Lisp dan Prolog. Untuk meningkatkan kecepatan pemrosesan dan ukuran memori dimungkinkan untuk tidak melakukan peningkatan kecepatan perangkat keras, tetapi melalui pembuatan arsitektur perangkat lunak dan perangkat keras yang berbeda secara radikal. Solusi yang ditawarkan dalam hal ini adalah: Desain pemrograman dengan kemampuan paralel. Keefisienan programer dalam menggunakan bahasa tersebut. Implementasi bahasa tersebut pada arsitektur/perangkat keras yang tepat. 4.2. Sistem dan Lingkungan Pengembangan Kecerdasan Buatan Komputasi Kecerdasan Buatan adalah komputasi simbolik, dimana dia sangat berbeda dari komputasi konvensional (numerik). Perbedaan komputasi seperti juga yang telah dikemukakan pada Proses Komputasi Kecerdasan Buatan itu dapat dilihat pada Tabel 5.1. Karena perbedaan komputasi tersebut, maka sistem pengembangan perangkat lunak Kecerdasan Buatan dan lingkungannya berbeda dengan sistem komputer konvensional.

BY TONI KHALIMI, S.SI Page 27 of 67

ARTIFICIAL INTELLIGENCE

Tabel 5.1. Perbedaan Komputasi Konvensional dengan Komputasi Kecerdasan Buatan.

Komputasi KonvensionalFormat keluaran berupa bit, byte, angka, dan fungsi Menggunakan algoritma prosedural yang menyelesaikan problem Menggunakan tahap-tahap urutan tertentu untuk penyelesaian (algoritma). Kesimpulan (conclusion)-nya bersifat determistik. Tipe data : angka dan karakter Perlu deklarasi awal dan tipe variabel

Komputasi Kecerdasan BuatanHubungan simbol, konsep, dan aturanaturan Bahasa deskriptif (menguraikan faktafakta yang diketahui dan hubungan) Penggunaan search untuk menemukan penyelesaian (heuristik). Tidak tahu apakah algoritma memusat (converge). Tipe data : atom, obyek, list (program) Tidak perlu deklarasi awal atau tipe data (variabel tipe-tipe tertentu dapat dapat dibuat apabila ia diperlukan selama proses penyelesaian) Dimensi struktur data dapat tumbuh atau menyusut selama proses Representasi informasi yang tidak eksak Jawaban yang memuaskan

Dimensi variabel yang tetap Representasi informasi yang eksak Jawaban yang eksak

Sistem pengembangan perangkat lunak Kecerdasan Buatan membutuhkan fitur-fitur berikut ini: 1. Kemungkinan untuk mengembangkan model-model dan mekanisme penyimpulan secara incemental, dengan dekomposisi penyelesaian problem ke ukuran yang lebih kecil, unit-unit penyelesaian interelated. Incremental adalah program dapat dikembangkan pada compiler/interpreter (sistem) yang berbeda tapi harus dapat dipadukan hasil akhirnya menjadi satu kesatuan. 2. (a). Struktur kontrol yang fleksibel untuk memudahkan pengarahan pemrograman kepada tujuan akhir. (b). Struktur kontrol yang fleksibel untuk memfasilitasi pengarahan program data. (c). Struktur kontrol yang fleksibel untuk memfasilitasi rekursi. 3. Struktur kontrol yang fleksibel untuk memfasilitasi pemrograman paralel. 4. Kemampuan komunikasi sistem yang interaktif. 5. Debugger untuk mencek program, khususnya untuk unifikasi, rekursi, dan lain-lain. 6. Fasilitas representasi data simbolik yang buitl-in, dan cara untuk memperluas representasi tersebut menuju struktur pengetahuan yang kompleks. 7. Fasilitas pattern-matching. 8. Fasilitas strategi-strategi pengikatan variabel sebagaimana pendekatan penyelesaian trial and error. Fitur-fitur lingkungan perangkat lunak Kecerdasan Buatan yang diharapkan adalah sebagai berikut: 1. Pengembangan program bersifat incremental. 2. Editor yang terpadu (cerdas) sebagai bagian sistem. 3. Compiler/interpreter yang bersifat incremental. 4. Debugger yang user friendly dan cerdas. 5. Kemampuan layar berkecepatan dan beresolusi yang tinggi. 6. Antarmuka yang khusus untuk instrumentasinya. 7. Kapasitas memori yang besar.

BY TONI KHALIMI, S.SI Page 28 of 67

ARTIFICIAL INTELLIGENCE

V. REPRESENTASI PENGETAHUAN

Hampir semua aplikasi Kecerdasan Buatan tersusun dari dua bagian pokok, yaitu basis pengetahuan (knowledge base) dan mekanisme inferensi (inference mechanism). Basis pengetahuan berisis fakta-fakta tentang objek dalam domain yang ditentukan dan saling hubungannya satu sama lain. Basis pengetahuan juga bisa berisi pikiran, teori, prosedur praktis dan saling hubungannya. Basis pengetahuan membentuk sumber sistem kecerdasan dan digunakan oleh mekansme inferensi untuk melakukan penalaran dan menarik kesimpulan. Mekanisme inferensi adalah suatu rangkaian prosedur yang digunakan untuk menguji pangkalan pengetahuan dengan cara yang sistematik pada saat menjawab pertanyaaan, memecahkan persoalan atau membuat keputusan dalam suatu domain yang telah ditentukan. Terdapat banyak bentuk representasi pengetahuan dan basisnya. 5.1. Skema Representasi Pengetahuan Agar komputer bisa bertingkah laku seperti seorang cerdas, maka ia harus mempunyai pengetahuan terlebih dahulu tentang sesuatu domain tertentu. Pengetahuan dapat diperoleh dari/terdapat dalam otak seorang pakar atau berupa buku, artikel, jurnal ilmiah, memo, dan prosedur atau apa saja yang penting sudah terkodifikasi. Proses pengumpulan dan pengorganisasian pengetahuan disebut rekayasa pengetahuan. Proses ini barangkali merupakan langkah yang paling sulit dan memerlukan waktu yang banyak dalam pembuatan program Kecerdasan Buatan. Representasi skema pengetahuan memiliki dua karakteristik umum : 1. Bisa diprogram dengan bahasa komputer yang ada dan disimpan dalam memori. 2. Dirancang agar fakta-fakta dan pengetahuan lain yang terkandung di dalamnya bisa digunakan untuk penalaran. Skema representasi pengetahuan secara umum dikategorikan sebagai deklaratif atau prosedural. Skema deklaratif digunakan untuk menggambarkan fakta-fakta pernyataan (assertion). Termasuk metoda ini adalah logika (logic), jaringan semantik (semantic networking), bingkai (frame) dan naskah (script).

BY TONI KHALIMI, S.SI Page 29 of 67

ARTIFICIAL INTELLIGENCE

Skema prosedural berhubungan dengan aksi dan prosedur. Skema representasi pengetahuan prosedural meliputi prosedur atau upa rutin dan kaidah produksi. Kunci keberhasilan setiap pembuatan program Kecerdasan Buatan tertelak pada pemilihan skema representasi pengetahuan yang paling baik dan paling tepat serta yang sesuai dengan domain pengetahuan serta maslah yang akan dipecahkan. 5.2. Logika (Logic) Merupakan bentuk representasi pengetahuan yang paling tua. Logika merupakan suatu pengkajian ilmiah tentang serangkaian penalaran, sistem kaidah dan prosedur yang membantu proses penalaran.OUTPUT INFERENCES OR CONCLUSIONS S

INPUT PREMISES OR FACTS

LOGICAL PROCESS

Gambar 1. Menggunakan logika menuju penalaran

Terdapat dua bentuk dasar penalaran dalam logika untuk membuat inferensi yang diambil dari premis : a. Deduktif Penalaran ini bergerak dari prinsip/premis umum menuju konklusi khusus. Proses deduktif umumnya dimulai dari suatu silogisme atau pernyataan premis dan inferensi. Proses deduktif umumnya terdiri dari tiga bagian : premis mayor, premis minor, dan konklusi. Contoh : Premis mayor : Jika Hujan turun, saya tidak akan lari pagi. Premis minor : Pagi ini hujan turun. Konklusi : Oleh karena itu, pagi ini saya tidak akan lari pagi. b. Induktif Penalaran induktif dimulai dari masalah khusus menuju ke masalah umum. Atau dengan perkataan lain, penalaran induktif menggunakan sejumlah fakta atau premis yang mantap untuk menarik kesimpulan umum. Contoh: Premis 1 : Dioda yang salah menyebabkan peralatan elektronik rusak. Premis 2 : Transistor rusak menyebabkan elektronik rusak. Premis 3 : Sirkuit terpadu (IC) rusak menyebabkan peralatan elektronik tidak berfungsi.BY TONI KHALIMI, S.SI Page 30 of 67

ARTIFICIAL INTELLIGENCE

Konklusi

: Maka, peralatan semi-konduktor rusak merupakan penyebab utama rusaknya peralatan elektronik.

Satu hal yang menarik dari penalaran induktif adalah konklusinya tidak pernah final atau mutlak. Konklusi dapat berubah jika fakta baru sudah ditemukan. Jika semua fakta yang mungkin tidak dimasukkan ke dalam salah satu premis, maka selalu akan timbul ketidakpastian di dalam konklusi. Akibatnya, hasil penalaran induktif akan selalu mengandung beberapa ukuran ketidakpastian. Walaupun demikian, jika lebih banyak fakta dan premis yang digunakan dalam penalarannya, maka ketidakpastian konklusi itu akan berkurang. Semakin banyak pengetahuan yang dimiliki, semakin banyak inferensi konklusi yang akan terjadi. Dalam melaksanakan penalaran menggunakan logika, sebuah komputer harus menggunakan konversi silogisme dan proses penalaran deduktif atau induktif ke dalam bentuk yang sesuai dengan manipulasi komputer. Hal ini merupakan sistem kaidah dan prosedur yang memungkinkan komputer bisa menarik inferensi dari berbagai premis yang menggunakan berbagai teknik logika. Metoda ini dikenal dengan logika komputasional (computational logic). Bentuk logika komputasional ada dua macam : 1. Logika Proposisional / Kalkulus Proposisional Suatu proposisi tidak lebih daripada suatu pernyataan (statement) yang menyatakan benar atau salah. Ini merupakan premis yang dapat digunakan untuk memperoleh proposisi baru atau inferensi. Kaidah ini digunakan untuk menentukan benar atau salah suatu proposisi baru. Suatu proposisi, premis atau kaidah mengunakan huruf besar. Misalnya, disimbolkan denagn

A = Tukang pos mengantar surat mulai senin sampai Sabtu B = Hari ini Hari Minggu C = Maka, hari ini tukang pos tidak mengantar surat Dua atau lebih proposisi bisa digabungkan dengan menggunakan penghubung logika/operator logika, yaitu and, or, not dan implies. Penggunaan penghubung logika / operator logika ini sama dengan penggunaan aljabar Boolean. a. Not Tabel nilai kebenaran untuk not A not A T F F T

BY TONI KHALIMI, S.SI Page 31 of 67

ARTIFICIAL INTELLIGENCE

Contoh : A = Hari ini hujan Not A = Hari ini tidak hujan b. And Kombinasi dua proposisi menggunakan and akan bernilai benar jika kedua proposisi awal bernilai benar. Tabel nilai kebenarannya adalah sebagai berikut A T T F F B T F T F A and B T F F F

Contoh : A = Mobil saya berwarna hitam B = Mesin mobil berwarna hitam itu 6 silinder C = A and B = Mobil saya berwarna hitam dan mesinnya 6 silinder Contoh lain. Sebuah perusahaan akan menerima karyawan baru dengan syarat : 1. Seorang wanita berusia tidak lebih dari 25 tahun and 2. Lulusan Informatika Dengan demikian, seorang pelamar baru bisa diterima menjadi karyawan bila kedua syarat tersebut dipenuhi. c. Or Kombinasi dua proposisi menggunakan or akan bernilai benar jika salah satu atau kedua proposisi awal bernilai benar. Tabel nilai kebenarannya adalah sebagai berikut A T T F F B T F T F A or B T T T F

Jika kita tinjau contoh di atas, A = Seorang wanita berusia tidak lebih dari 25 tahun B = Lulusan Informatika C = A or B Maka cukup salah satu persyaratan dipenuhi, seseorang dapat diterima sebagai karyawan. Bentuk or ini dikenal dengan inclusive or. Bentuk or yang lain adalah exclusive or. Or eksklusif bernilai benar jika salah satu prososisi awal bernilai benar tapi tidak keduanya sekaligus. Notasi yang digunakan untuk eksklusif or adalah xor.

BY TONI KHALIMI, S.SI Page 32 of 67

ARTIFICIAL INTELLIGENCE

d. Implies Penghubung logika implies dimaksudkan, bahwa jika proposisi A benar, maka proposisi B pun harus benar. Kebenaran A memasukkan kebenaran B. Pengertian yang sama untuk operator logika ini adalah if_then. Tabel nilai kebenaran untuk operator ini adalah sebagai berikut A T T F F B T F T F A B T F T T

Misalnya, A = Mobil rusak B = Saya tidak bisa naik mobil C = A implies B = Mobil rusak, karena itu saya tidak bisa naik mobil. = If mobil rusak, then saya tidak bisa naik mobil. Dengan menggunakan berbagai simbol proposisi dan menghubungkannya dengan penghubung logika, maka serangkaian premis yang lengkap dengan konklusinya bisa diekpresikan. Karena masih berkaitan dengan pernyataan, kemampuan untuk merepresentasikan pengetahuan dalam kehidupan nyata dengan benar masih diragukan atau setidaknya masih terbatas. Sehingga penggunaannya dalam Kecerdasan Buatan tidak begitu berarti. Oleh karena itu, dalam Kecerdasan Buatan lebih baik menggunakan logika predikat/kalkulus predikat.

BY TONI KHALIMI, S.SI Page 33 of 67

ARTIFICIAL INTELLIGENCE

2. Logika Predikat / Kalkulus Predikat. Logika predikat merupakan suatu bentuk logika yang seluruhnya menggunakan konsep dan kaidah logika proposisional yang sama. Logika predikat dapat memecah pernyataan ke dalam bagian komponen yang disebut obyek, karakteristik obyek, atau beberapa keterangan obyek. Logika predikat dapat menggunakan variabel dan fungsi variabel di dalam pernyataan logika simbolik. Dengan demikian. Logika simbolik dapat diterapkan untuk pemecahan masalah-masalah praktis. Dalam kalkulus predikat, suatu proposisi atau premis dibagi menjadi 2 bagian, yaitu: - argumen (obyek), dan - predikat (keterangan / karakteristik) Argumen adalah individu atau obyek yang membuat keterangan. Dalam bahasa Inggris, obyek dan individu merupakan kata benda yang berfungsi sebagai subyek dan obyek suatu kalimat (sentence). Dalam sebuah kalimat, predikat bisa berupa kata kerja atau bagian kata kerja. Untuk membuat suatu proposisi, keduanya (argumen dan predikat) digabungkan. Bentuk umumnya sebagai berikut: predikat (individu[obyek]_1, individu[obyek]_2) Contoh: 1. Proposisi : Jhony mencintai Marry. Ekspresi kalkulus predikat : mencintai(Jhony, Mary). Di sini, Mencintai -> produk (keterangan) Jhony -> argumen (obyek) Mary -> argumen (obyek) 2. Proposisi : Baju disimpan di lemari. Ekspresi kalkulus predikat : disimpan_di(lemari, baju).

BY TONI KHALIMI, S.SI Page 34 of 67

ARTIFICIAL INTELLIGENCE

3. Proposisi : Mobil berada di dalam garasi. Ekspresi kalkulus predikat : di_dalam(mobil, garasi). Dalam banyak hal, predikat mungkin hanya mempunyai satu argumen saja. Contoh: 4. Proposisi : Pintu terbuka. Ekspresi kalkulus predikat : buka(pintu). 5. Proposisi : Ban gembos. Ekspresi kalkulus predikat : gembos(ban). 6. Proposisi : Krishna adalah seorang laki-laki. Ekspresi kalkulus predikat : laki-laki(Krishna). Argumen dapat juga berupa peubah (variable). Contoh: 7. Proposisi : Jhony suka Marry. Bila Jhony = x, dan Marry = y, maka ekspresi kalkulus predikatnya : suka(x, y). Dengan menggunakan peubah, basis pengetahuan dapat terbentuk. Pada contoh 7 di atas basis pengetahuannya ialah suka(x, y), yang berarti x suka y. Pengetahuan diekspresikan dalam kalkulus predikat yang bisa dimanipulasi agar menimbulkan inferensi. Contoh: 8. Proposisi : Jhony suka Marry Ramona suka Marry Misalkan Jhony = x, Marry = y, dan Ramona = z. Maka ekspresi Suka(x,y) dan tidak suka(z,y) implies tidak suka(x,z) menerangkan bahwa Jika Jhony suka Marry dan Ramona tidak suka Mary, maka Jhony tidak suka Ramona. Pemberian nilai (assigning) nama individu atau obyek tertentu kepada suatu peubah dinamakan instantiasi. Individu atau obyek itu menjadi suatu instance (contoh) variabel tersebut. Pada contoh 8 di atas, varibel untuk Jhony, Marry, dan Ramona adalah x, y, dan z. Pengukuraan kuantitas (quantifier) adalah simbol yang mengijinkan untuk menyatakan suatu rangkaian atau cakrawala dalam suatu ekspresi logika. Ada dua pengukuran kuantitas yang digunakan, yaitu: ukuran kuantitas universal.

BY TONI KHALIMI, S.SI Page 35 of 67

ARTIFICIAL INTELLIGENCE

Simbol yang digunakan , berarti untuk semua atau untuk setiap. Simbol ini menyatakan bahwa ekspresi berlaku secara universal benar, yaitu untuk semua nilai. Contoh: 1. Semua orang Texas adalah warga negara Serikat Dengan quantifier ditulis (x)[Orang Texas(x), warga negara Serikat(x)] Amerika

Amerika

ukuran kuantitas eksistensial. Simbol yang digunakan , berarti terdapat atau ada. Contoh: 2. Beberapa mobil berwarna merah Dengan quantifier ditulis ( x)[mobil(x)dan berwarna merah(x)] Apa yang telah diuraikan pada bagian di atas merupakan suatu sistem untuk mengekspresikan pengetahuan (berupa fakta-fakta) ke dalam bentuk simbolik. Yang selanjutnya dilakukan adalah menggunakan simbol itu untuk membuat inferensi. Yakni bagaimana cara menggunakan pengetahuan itu untuk menjawab pertanyaan, menalar, atau menarik kesimpulan. Berbagai kaidah digunakan untuk memanipulasi ekspresi logika dalam rangka membuat ekspresi baru. Kaidah yang dimaksud diantaranya adalah modus ponens, modul tollens, dan sillogisma. Apabila proposisi awal benar, maka dengan langkah-langkah yang correct akan menghasilkan kesimpulan yang juga benar. Pengetahuan prosedural dapat direpresentasikan dalam bentuk logika predikat. Pernyataan a1, a2, a3, . . ., an -> B dapat dipandang sebagai prosedur yang digunakan untuk menghasilkan keadaan yang memenuhi kondisi B. 5.3. Jaringan Semantik (Semantic Network) Jaringan semantik merupakan penggambaran grafis pengetahuan yang melibatkan hubungan antara obyek-obyek.

dari

Obyek direpesentasikan sebagai simpul (node) pada suatu grafik berbentuk lingkaran dan hubungan antara obyek-obyek dan faktor deskriptif dinyatakan oleh garis penghubung (link) atau garis lengkung (arch) berlabel. Obyek dapat berupa jenis fisik, seperti: buku, mobil, meja, atau bahkan orang; merupakan pikiran, seperti: hukum Ohm; suatu peristiwa/kejadian, seperti: piknik atau suatu pemilihan; atau tindakan, seperti: membuat rumah atau menulis buku.

BY TONI KHALIMI, S.SI Page 36 of 67

ARTIFICIAL INTELLIGENCE

Atribut obyek, seperti: ukuran, warna, kelas, umur, asal-usul, atau karakteristik lainnya bisa digunakan sebagai node. Dalam hal ini, informasi rinci tentang sesuatu obyek bisa ditampilkan dengan baik. Contoh penerapan jaringan semantik yang mudah ditemui adalah struktur kepegawaian dan garis keturunan.adalah IWAN

pergi ke SEKOLAH

BUDI

p u n y a a n a k

WATI

adalah ANAK LAKI-LAKI MANUSIA

Gambar 2. Jaringan semantik garis keturunan

5.4. Skema (Scheme) Skema adalah metoda pengorganisasian, presentasi dan penggunaan pengetahuan tiruan (stereotype) agar komputer bisa menalar. Pengetahuan tiruan merupakan pengetahuan yang sudah pasti dan sudah dikenal dengan baik. Hal ini didasarkan kepada berbagai penampilan, situasi, dan obyek-obyek khusus, seperti: pengalaman biasa yang konvensional dan proses yang tak bervariasi. Kita representasikan pengetahuan semacam itu ke dalam sistem skema. Ada dua jenis skema: skema kerangka / bingkai (frame), dan skema naskah (script). 3.4.1. Skema Kerangka / Bingkai (Frame) Bingkai adalah blok-blok atau potongan-potongan yang berisi pengetahuan mengenai obyek-obyek khusus, kejadian, lokasi, situasi ataupun elemen-elemen lainnya dengan ukuran yang relatif besar. Blok-blok ini menggambarkan obyek-obyek tersebut dengan sangat rinci.

BY TONI KHALIMI, S.SI Page 37 of 67

pu ny a ist riadalah WANITA

PRIA

punya anak adalah

adalah

adalah

ARTIFICIAL INTELLIGENCE

Detail diberikan dalam bentuk rak (slot) yang menggambarkan berbagai atribut (attribute) dan karakteristik dari obyek tersebut. Sebuah slot dapat berisi nilai default, yaitu nilai yang sudah melekat dan menjadi ciri dari suatu obyek. Misalnya bingkai pengetahuan slot mobil sedan, memiliki nilai untuk slot jumlah ban otomatis 4 buah. Sebuah slot juga dapat mempunyai nilai procedural attachment, yaitu suatu nilai yang besarnya relatif. Akselerasi mesin misalnya, mempunyai nilai yang relatif terhadap waktu. Contohnya akselerasi suatu mesin memiliki nilai 0 60 km/jam dalam waktu 4 detik. Dalam waktu 2 detik, mesin tersebut memilki akselerasi yang berbeda. Sebuah slot dapat berisi bingkai, dimana bingkai ini juga tersusun atas slot-slot. Misalnya slot mesin berisi sebuah bingkai mesin yang terdiri atas slot-slot rasio kompresi, sistem pengapian, besarnya daya dan besarnya torsi.

MODE OF TRANSPORTATION FRAME

CAR SLOT CAR SLOT

GENERAL CAR FRAME

SPECIFIC AUTOMOBILE FRAME (AUDI 5000 TURBO) AUTO SLOT AUTO SLOT

ENGINE FRAME

ENGINE SLOT ENGINE SLOT

BY TONI KHALIMI, S.SI Page 38 of 67

ARTIFICIAL INTELLIGENCE

Gambar 3. Pengetahuan yang ditampilkan dalam hirarki bingkai yang mewariskan property tingkat bingkai pendahuluan.

Diperoleh kesimpulan, BINGKAI MOBIL Kelas Pabrik Negara asal Model Tipe Berat Jumlah roda BINGKAI MESIN Ukuran Silinder Rasio Kompresi Tenaga : : : : : : : Transportasi Audi Jerman 5000 Turbo Sedan 3300 lb 4

: 3.19 inch : 7.9 1 : 140 HP

3.4.2. Naskah (Script) Naskah menggambarkan urutan peristiwa. Naskah biasanya direpresentasikan ke dalam konteks tertentu. Dalam menggambarkan urutan peristiwa, naskah menggunakan serangkaian slot yang berisi informasi tentang orang, obyek, dan tindakan-tindakan yang terjadi dalam suatu peristiwa. Beberapa elemen naskah yang tipikal meliputi: kondisi masukan, pendukung (prop), peran (role) dan adegan (scene). Kondisi masukan menggambarkan situasi yang harus dipenuhi sebelum terjadi atau berlaku suatu peristiwa yang ada dalam naskah. Prop mengacu kepada obyek yang digunakan dalam urutan peristiwa yang terjadi. Role mengacu kepada orangorang terlibat dalam naskah. Hasilnya adalah kondisi yang ada sesudah peristiwa dalam naskah berlangsung. Jalur (track) mengacu kepada variasi yang mungkin terjadi dalam naskah tertentu. Dan akhirnya, scene menggambarkan urutan peristiwa aktual yang terjadi. Gambaran naskah tipikal variasi restoran klasik sebagai contoh representasi pengetahuan dalam format naskah diberikan sebagai berikut. NASKAH RESTORAN Jalur Peran Pendukung : Restoran swalayan (fast food) : Tamu, Pelayan : Counter, baki, makanan, uang, serbet, garam, merica, kecap, sedotan, dll.

BY TONI KHALIMI, S.SI Page 39 of 67

ARTIFICIAL INTELLIGENCE

Kondisi Masukan : Tamu lapar Tamu punya uang. Adegan_1 : Masuk Tamu parkir mobil Tamu masuk restoran Tamu antri Tamu baca menu dan mengambil keputusan tentang apa yang dipesan Adegan_2 : Pesanan Tamu memberikan pesanan kepada pelayan Pelayan mengambil pesanan dan meletakkan makanan di atas baki Tamu membayar Adegan_3 : Makan Tamu mengambil serbet, sedotan, garam, dll. Tamu membawa baki makanan ke meja kosong Tamu makan dengan cepat Adegan_3a (option) : Membawa pulang Tamu membawa makanan dan pulang

Adegan_4 Tamu Tamu Tamu Tamu Hasilnya Tamu Uang Tamu Tamu Tamu

: Pulang membereskan meja membuang sampah meninggalkan restoran naik mobil dan pulang

merasa kenyang tamu jadi berkurang senang kecewa sakit perut

Pergi ke restoran merupakan situasi stereotype yang semua elemennya seperti: kondisi masukan, hasil, pendukung, peran, dan adegan adalah sama. Tampak bahwa, naskah dapat menggambarkan dengan akurat situsasi yang terjadi di hampir semua restoran swalayan (cepat saji / fast food). Adegan-adegan merupakan naskah mini yang ada di dalam naskah utama yang melukiskan berbagai upa-bagian dari seluruh proses. Naskah sangat baik untuk meramalkan apa yang akan terjadi dalam situasi tertentu. Walaupun peristiwa itu tidak pernah diobservasi terlebih dahulu, tapi naskah dapat memberikan kemungkinan kepada komputer untuk meramalkan apa yangBY TONI KHALIMI, S.SI Page 40 of 67

ARTIFICIAL INTELLIGENCE

akan terjadi, kepada siapa dan kapan. Bila kmputer bisa menembak naskah, maka pertanyaan apapun bisa diajukan dan jawaban akurat akan keluar, walaupun komputer hanya diberi sedikit input pengetahuan orisinil atau sama sekali tidak diberi input apapun.

BY TONI KHALIMI, S.SI Page 41 of 67

ARTIFICIAL INTELLIGENCE

VI. PENDEKATAN PENYELESAIAN MASALAH

Tiga langkah utama yang dibutuhkan untuk membuat sebuah sistem agar dapat menyelesaikan suatu persoalan khusus, yaitu: 1. Mendefinisikan problema dengan tepat. Definisi ini harus berisi spesifikasi tentang kondisi awal dan situasi akhir yang menghasilkan solusi yang dapat diterima dari problema tersebut. 2. Menganalisis problema. Beberapa sifat yang sangat penting bisa memiliki dampak yang sangat kuat pada kelayakan banyak teknik pemecahan problema yang dimungkinkan. Memilih teknik terbaik dan menerapkannya pada suatu problema.

3.

6.1. Hipotesis Sistem Simbol Fisis Newell dan Simon mengemukakan bahwa aktivitas cerdas (intelligent) dicapai melalui digunakannya : - Pola-pola simbol untuk merepresentasikan aspek-aspek penting dari problema. - Operasi pada pola-pola trersebut untuk menghasilkan solusi potensial dari problema. - Proses pencarian untuk memilih sebuah solusi diantara kemungkinan-kemungkinan yang ada itu. Asumsi-asumsi ini membentuk dasar bagi hipotesis sistem simbol fisis. Hipotesis sistem simbol fisis secara implisit membedakan antara pola yang dibentuk oleh susunan simbol-simbol dan media yang dipakai untuk mengimplementasikannya. Pendefinisian struktur dan operasi simbol yang diperlukan dalam pemecahan problema kecerdasan, serta pengembangan strategi bagi proses pencarian yang bekerja dengan efisien dan benar untuk mendapatkan solusi yang potensial, dihasilkan oleh struktur dan operasi semacam ini. Asumsi-asumsi hipotesis sistem simbol fisis tetap mendasari hampir semua aspek praktis dan teoritis dalam sistem pakar, perencanaan, dan pemahaman bahasa alamiah. 6.2. Representasi Pengetahuan Perepresentasian dimaksud untuk menangkap sifat-sifat penting problema dan membuat informasi itu dapat diakses oleh prosedur pemecahan problema. Bahasa representasi harus dapat membuat seorang pemrogram mampu mnegekspresikan pengetahuan yang diperlukan untukBY TONI KHALIMI, S.SI Page 42 of 67

ARTIFICIAL INTELLIGENCE

mendapatkan solusi problema. Ekspresifitas dan efisiensi merupakan dimensi utama dalam melakukan evaluasi bahasabahasa representasi pengetahuan. Kadang-kadang, ekspresivitas harus dikorbankan untuk meningkatkan efisiensi. Namun, di lain kesempatan, representasi yang terlalu ekspresif sangat tidak efisien untuk digunakan dalam menyelesaikan problema-problema tertentu. Maka yang kemudian harus dilakukan adalah pengoptimalan keduanya. Perepresentasian seharusnya : i. Memadai untuk mengekspresikan informasi yang diperlukan. ii. Mendukung eksekusi yang efisien dari kode yang dihasilkan. iii. Menghasilkan sesuatu yang alamiah untuk mengekspresikan pengetahuan yang dibutuhkan. Pada umumnya, problema yang diusahakan untuk dapat dipecahkan oleh Kecerdasan Buatan tidak dapat menyatakan dirinya sendiri menjadi representasi yang ditawarkan oleh formalisme yang lebih tradisional semacam larik. Kecerdasan Buatan lebih ditujukan untuk menangani pemecahan problema kualitatif daripada kuantitatif, lebih dititikberatkan pada pada sebab-akibat daripada penghitungan, serta lebih diarahkan pada sejumlah pengaturan sejumlah besar pegetahuan yang bervariasi daripada diimplementasikan pada algoritma tunggal dan mapan (well-defined). Untuk mendukung kebutuhan ini, maka bahasa Kecerdasan Buatan haruslah : a. Mampu menangani pengetahuan kualitatif. Pemrograman Kecerdasan Buatan membutuhkan sesuatu untuk menangkap dan menjelaskan alasan tentang aspek-aspek kualitatif dari suatu problema. Untuk itu biasanya digunakan suatu bagian dari logika formal yang disebut kalkulus predikat yang dapat langsung menangkap informasi yang bersifat deskriptif. b. Memperbolehkan dilibatkannya pengetahuan baru dari sejumlah fakta dasar. Suatu bhs representasi pengetahuan haruslah memiliki kemampuan untuk melibatkan pengetahuan tambahan secara sebab-akibat dari suatu deskripsi dasar. Ia dapat merumuskan dan bernalar dari deskripsi abstrak tentang pelbagai obyek dan situasi yang ditemui itu. c. Memperbolehkan digunakannya representasi prinsipprinsip umum dan situasi-situasi khusus. Karena sebuah sistem cerdas harus segeneral mungkin, maka setiap bahasa representasi membutuhkan peubah. Kebutuhan akan penalaran kualitatif membuat penggunaan dan implementasi peubah menjadi berbeda dengan yang dipakai dalam bahasa pemrograman tradisional. Bahasa representasi pengetahuan yang baik mampu menangani nama-nama peubah, obyek dan niali dengan cara yang dinamis.

BY TONI KHALIMI, S.SI Page 43 of 67

ARTIFICIAL INTELLIGENCE

d. Dapat menangkap arti semantik yang rumit. Banyak problema yang disimak oleh Kecerdasan Buatan yang membutuhkan sejumlah besar pengetahuan yang sangat terstruktur dan saling terhubung. Hubungan semantik merupakan hal yang penting dalam menggambarkan hubungan sebab-akibat antara peristiwa yang terjadi sepanjang waktu. Sekalipun dapat digambarkan sebagai sekumpulan predikat, suatu struktur istilah dengan tingkat yang lebih tinggi diperlukan untuk membantu baik pemrogram maupun program agar dapat menangani konsep-konsep rumit secara terpadu. e. Memperbolehkan digunakannya kerangka sebab-akibat meta-level. Sebuah sistem cerdas tidak hanya harus mengetahui sesuatu namun juga harus mengetahui apa yang diketauinya. Ia semestinya tidak hanya dapat menyelesaikan masalah saja namun juga harus mampu menjelaskan bagaimana ia menyelesaikan masalah dan mengapa mengambil suatu keputusan tertentu. Selain itu ia juga dapat menggambarkan pengatahuannya baik dalam istilah yang spesifik maupun yang umum, menyadari keterbatasan pengetahuannya dan belajar dari interaksinya dengan dunia luar. Cara seperti inilah yang menghasilkan pengetahuan dengan tingkat lebih tinggi yang disebut pengetahuan meta. 6.3. Pendefinisian Problema Sebagai Proses Pencarian Ruang Keadaan (State Space Search) Aspek tingkah laku cerdas yang mendasari teknik penyelesaian problema disebut proses pencarian ruang keadaan (space state search). Struktur representasi ruang keadaan bersesuaian dengan struktur pemecahan problema dalam dua cara penting, yaitu: 1. Definisi formal dari sebuah problema diperbolehkan untuk digunakan sebagai kebutuhan untuk mengubah suatu situasi yang diberikan menjadi suatu situasi yang diinginkan dengan menggunakan seperangkat operasi yang diperkenankan. 2. Pendefinisian proses pemecahan problema khusus diijinkan untuk digunakan sebagai kombinasi teknik-teknik yang telah dikenal dan proses pencarian, teknik umum dalam mengamati ruang tersebut untuk mencoba menemukan suatu jalan keluar dari keadaan saat ini menuju keadaan yang dituju. Proses pencarian ruang keadaan itu sendiri tidaklah cukup untuk mengotomatisasikan tingkah laku pemecahan problema secara otomatis. Proses pencarian ruang keadaan pencarian menyeluruh (exhaustive search) melakukan pencarian terhadap seluruh ruang keadaan serangkaian langkah yang paling dimungkinkan untuk menghasilkan kemenangan. Metode ini dapat diterapkan pada setiap ruang keadaan, namun ukuran ruang keadaan yang sangatBY TONI KHALIMI, S.SI Page 44 of 67

ARTIFICIAL INTELLIGENCE

besar membuat pendekatan ini secara praktis tidak dimungkinkan. Misalnya, dalam permainan catur, terdapat 10120 keadaan atau konfigurasi papan yang berbeda. Kita tidak menggunakan exhaustive search tetapi menjalankan langkah-langkah yang terbukti efektif yang didasarkan pada aturanaturan tertentu yang memandu proses pencarian ke arah ruang keadaan yang paling menjanjikan. Aturan inilah yang dikenal sebagai heuristik (heuristic dari bahasa Yunani yang artinya menemukan). A. Proses Pencarian Heuristik Heuristik merupakan strategi untuk melakukan proses pencarian ruang problema secara selektif, yang memandu proses pencarian di sepanjang jalur yang memiliki kemungkinan suskses paling besar, dan mengesampingkan usaha yang bodoh dan memboroskan waktu. Jika proses pencarian ruang keadaan merupakan alat untuk memformalkan proses pemecahan problema, maka heuristik menyuntikkan formalisme tersebut agar dapat bekerjasama dengan kecerdasan. Heuristik mengembangkan efisiensi dalam proses pencarian, namun dengan kemungkinan mengorbankan kelengkapan. Contoh heuristik adalah algoritma tempat terdekat (shortest path job), menghasilkan prosedur berikut : i. pilih sebuah kota secara sembarang sebagai awal perjalanan ii. untuk memilih kota persinggahan berikutnya, simak seluruh kota yang belum pernah disinggahi. Pilih kota terdekat dengan kota yang saat ini sedang dikunjungi. iii. ulangi langkah kedua sampai semua kota telah dikunjungi. Eksekusi prosedur ini membutuhkan waktu n2. Dalam heuristik, seringkali dimungkinkan untuk membutktikan adanya batas-batas kesalahan yang membuat tidak terlalu banyak mengorbankan ketepatan demi kecepatan. B. Deskripsi Formal Sebuah Problema Persoalan seringkali berisi pernyataan eksplisit atau tersirat dimana di dalamnya dapat ditemukan rangkaian terpendek atau termurah. Jika hal seperti ini didapati pada suatu problema, persyaratan ini akan mempunyai pengaruh yang penting dalam memilih mekanisme yang memadai untuk memandu dalam mencari solusinya. Secara ringkas dapat dikatakan bahwa langkah-langkah untuk mendapatkan deskripsi formal dari sebuah problema menjadi representasi ruang keadaan adalah sebagai berikut : i. Definisikan ruang keadaan yang berisi semua konfigurasi yang dimungkinkan dari obyek-obyek yang relevan (dan bisa pula yangBY TONI KHALIMI, S.SI Page 45 of 67

ARTIFICIAL INTELLIGENCE

tidak dimungkinkan). Tentu saja dimungkinkan untuk mendefinisikan ruang seperti ini tanpa menyebutkan semua ruang yang dikandungnya secara eksplisit. ii. Spesifikasikan satu atau lebih keadaan di dalam ruang keadaan yang menggambarkan situasi-situasi yang dimungkinkan sebagai keadaan awal proses pemecahan problema. Keadaan-keadaan ini disebut dengan keadaan awal. iii. Spesifikasikan satu atau lebih keadaan yang dapat diterima sebagai solusi problema. Keadaan-keadaan ini disebut dengan keadaan tujuan. iv. Spesifikasikan seperangkat aturan yang menggambarkan sesuatu yang dimungkinkan untuk dilakukan oleh operator. Untuk hal ini dibutuhkan pemikiran tentang : asumsi-asumsi tersirat yang terkandung dalam deskripsi problema informal tingkat generalitas aturan-aturan yang dibuat pekerjaan yang harus dilakukan untuk memecahkan problema dalam bentuk pra-perhitungan dan tergambarkan dalam aturan-aturan yang ada. Contoh problema ember air Kita mempunyai 2 ember. Satu ember bervolume 4 liter dan ember lainnya bervolume 3 liter. Problemanya adalah bagaimanakah kita bisa mendapatkan air bervolume tepat 2 liter di dalam ember bervolume 4 liter? Proses penakaran hanya dengan memakai dua ember yang ada. Ruang keadaannya dapat digambarkan sebagai himpunan pasangan bilangan bulat (x, y); x = 0, 1, 2, 3 atau 4, dan y = 0, 1, 2 atau 3; dengan x = jumlah air (liter) pada ember bervolume 4 liter, dan y = jumlah air (liter) pada ember bervolume 4 liter. Keadaan awal adalah (0, 0). Keadaan yang dituju adalah (2, n), untuk sembarang nilai n (persoalan ini tidak menentukan berapa berapa liter air yang ada di ember bervolume 3 liter). Aturan yang digunakan untuk memecahkan problema ini adalah sebagai berikut: 1. (x, y x < 4) (4, y) 2. (x, y y < 3) (x, 3) 3. (x, y x > 0) (x-D, y) 4. (x, y y > 0) (x, y-D) 5. (x, y x > 0) (0, y) 6. (x, y y > 0) (x, 0) 7. (x, y x+y 4 y > 0) (4, y-(4-x)) 8. (x, y x+y 3 x > 0) (x-(3-y), 3) 9. (x, y x+y 4 y > 0) (x+y, 0) 10. (x, y x+y 3 x > 0) (0, x+y) Arti dari masing-masing operator aturan di atas adalah 1. Mengisi ember bervolume 4 liter. 2. Mengisi ember bervolume 3 liter. 3. Mengisi sejumlah air dari ember bervolume 4 liter.

BY TONI KHALIMI, S.SI Page 46 of 67

ARTIFICIAL INTELLIGENCE

4. 5. 6. 7.

Mengisi sejumlah air dari ember bervolume 3 liter. Mengosongkan/membuang air dari ember bervolume 4 liter. Mengosongkan/membuang air dari ember bervolume 3 liter. Menuangkan air dari ember bervolume 3 liter ke ember bervolume 4 liter sampai ember bervolume 4 liter menjadi penuh. 8. Menuangkan air dari ember bervolume 4 liter ke ember bervolume 3 liter sampai ember bervolume 3 liter menjadi penuh. 9. Menuangkan semua air dari ember bervolume 3 liter ke ember bervolume 4 liter. 10. Menuangkan semua air dari ember bervolume 4 liter ke ember bervolume 3 liter. Asumsi eksplisit yang diberikan misalnya : - ember-ember dapat diisi air dari PAM - membuang air dari dalam ember ke luar - menuangkan air dari ember yang satu ke ember yang lain, dan - tidak ada alat ukur. Salah satu operasi yang dapat memecahkan problema ini adalah sebagai berikut Jumlah air (liter) dalam ember ember bervolum bervolum e 4 liter e 3 liter 0 0 0 3 3 0 3 3 4 2 0 2 2 0

Aturan yang diterapkan 2 9 2 7 5 9

C. Strategi Pengendalian Untuk dapat memecahkan problema, dibutuhkan juga suatu struktur pengendalian/kontrol yang melakukan pengulangan (looping) melalui siklus sederhana. Selama melakukan proses pencarian untuk mendapatkan solusi dari sebuah problema, kita tentu akan bertanya-tanya tentang bagaimanakah caranya memutuskan aturan berikutnya yang akan digunakan kemudian. Strategi pengendalian yang baik haruslah 1. Dapat menimbulkan adanya gerak. Strategi pengendalian yang tidak menyebabkan adanya gerak tidak akan pernah sampai pada sebuah solusi.BY TONI KHALIMI, S.SI Page 47 of 67

ARTIFICIAL INTELLIGENCE

Pada problema ember air, jika kita mulai dengan memilih aturan yang pertama, maka kita tidak akan pernah dapat menyelesaikan problema. 2. Sistematik Strategi pengendalian yang tidak sistematik akan menyebabkan penggunaan serangkaian operator aturan beberapa kali sebelum sampai pada sebuah solusi. Jika kita memilih aturan-aturan yang dapat digunakan secara acak (random) pada setiap siklus, walaupun akan menimbulkan adanya gerak dan akan menghasilkan solusi, namun kita akan sampai pada keadaan yang sama beberapa kali dan menggunakan lebih banyak langkah yang semestinya diperlukan. Strategi sistematik yang dapat digunakan adalah breadth-first search, depth-first search, dan best-first search. D. Sistem Produksi Sistem produksi memiliki struktur proses pencarian. Sistem produksi terdiri dari : 1. Seperangkat aturan yang masing-masing berisi pola sisi kiri yang menentukan pemakaian aturan tertentu, dan sisi kanan yang menggambarkan tindakan yang harus dilakukan jika aturan tertentu tersebut digunakan. 2. Satu atau lebih basis data yang berisi informasi tentang tugas-tugas khusus. Beberapa bagian basis data mungkin bersifat permanen, sedang yang lain hanya berisi solusi problema yang sedang dihadapi saat ini. Informasi yang terdapat dalam basis data tersebut mungkin terstruktur dengan cara tertentu. 3. Suatu strategi pengendalian yang menentukan urutan pembandingan suatu aturan dengan basis data dan cara menyelesaikan suatu konflik yang muncul bila beberapa aturan saling bertumbukan pada saat yang bersamaan. 6.4. Penganalisisan dan Karakteristik Problema Penganalisisan problema untuk memilih metode (atau gabungan beberapa metode) yang paling baik untuk suatu problema tertentu sangatlah penting. Beberapa pertanyaan berkenaan dengan penganalisisan suatu problema dapat diajukan seperti : 1. Apakah suatu problema dapat didekomposisi/dipilah-pilah menjadi sejumlah upa-problema independen yang lebih kecil atau lebih mudah ? Contoh problema yang dapat didekomposisi adalah problema menghitung integral tak berbatas. Misalnya, (x4 + 7x + cos2x) dxBY TONI KHALIMI, S.SI Page 48 of 67

ARTIFICIAL INTELLIGENCE

Problema tersebut didekomposisi menjadi (x4 + 7x + cos2x) dx x4 dx 7x dx cos2x dx

x5/5

7 x dx

(1 + cos 2x) dx cos 2x dx

7x /2

2

1 dx

x

sin 2x

Untuk problema yang tidak dapat didekomposisi, ditangani dengan teknik bagi dan taklukan (divide and conquer). 2. Dapatkah langkah-langkah penyelesaian yang terbukti tidak tepat, diabaikan atau tidak perlu dikerjakan ? Berkaitan dengan langkah-langkah yang diambil dalam penyelesaian problema, akan muncul 3 problema penting yang berbeda - dapat diabaikan, dimana langkah solusi dapat diabaikan, seperti pada pembuktian teorema. - dapat diulang (recoverable), dimana langkah solusi dapat dibatalkan, seperti pada permainan teka-teki 8 (the 8-puzzle). - tidak dapat diulang (irrecoverable), dimana langkah solusi tidak dapat dibatalkan, seperti pada permainan catur. Problema yang dapat diulang dapat dipecahkan dengan strategi pengendalian yang agak rumit yang kadang-kadang dapat melakukan langkah yang salah. Dibutuhkan pelacakan kembali untuk mengungkap kesalahan tersebut. Sehingga struktur pengendalian harus dilakukan dengan memakai pushdown stack, dimana keputusan-keputusan direkam agar bisa dibatalkan kemudian. Problema yang tidak dapat diulang / dibatalkan akan membutuhkan pemecahan oleh suatu sistem yang mampu melakukan prakiraaan setiap keputusan, karena keputusan yang diambil merupakan keputusan terakhir. Beberapa problema yang tidak dapat diulang dapat dipecahkan dengan cara memakai proses perencanaan (planning), dimana seluruh urutan langkah dianalisis terlebih dahulu untukBY TONI KHALIMI, S.SI Page 49 of 67

ARTIFICIAL INTELLIGENCE

menemukan apa yang bakal terjadi bila langkah tersebut benarbenar dilaksanakan. 3. Apakah ruang lingkup atau problema dapat diprakirakan ? semesta pembicaraan

Perencanaan merupakan pemecahan problema tanpa adanya umpan balik (feedback) dari lingkungannya. Ada jenis problema yang mempunyai penyelesaian yang pasti dan ada yang tidak pasti. Untuk memecahkan problema dengan penyelesaian yang pasti, pendekatan loop terbuka akan dapat bekerja dengan baik begitu hasil suatu tindakan dapat diprakirakan dengan sempurna. Di sini, perencanaan dapat digunakan untuk menghasilkan serangkaian operator (aturan) yang dijamin dapat sampai pada solusi. Untuk problema yang penyelesaiannya tidak pasti, perencanaan hanya dapat menghasilkan serangkaian operator (aturan) yang memiliki probabilitas yang baik untuk sampai pada solusi. Untuk memecahkan problema semacam ini, dibutuhkan adanya proses revisi rencana dengan cara melibatkan adanya proses umpan balik. Perencanaan seringkali menjadi sangat mahal karena jumlah jalan menuju solusi yang harus diungkapkan akan naik secara eksponensial terhadap jumlah titik yang keluarannya tidak dapat diprakirakan. Memang, jenis problema yang paling sulit ditangani adalah problema yang tidak dapat diulang/dibatalkan dan juga dengan keluaran yang tidak pasti. 4. Apakah solusi problema yang baik telah dibandingkan dengan semua solusi yang dimungkinkan ? Sebuah solusi problema yang baik dapat bersifat mutlak atau relatif dengan cara dibandingkan dengan semua solusi yang dimungkinkan. Sebuah solusi untuk suatu problema mungkin telah memperoleh jawaban yang diinginkan dengan mengikuti sebuah lintasan penalaran saja, dengan tidak mempedulikan lintasan mana yang digunakan. Contoh sebuah problema untuk menjawab pertanyaan Apakah Agus hidup?, berdasarkan pada basis data fakta-fakta sederhana berikut: 1. Agus adalah seorang laki-laki 2. Agus adalah seorang berkebangsaan x 3. Agus dilahirkan pada tahun 140 4. Semua manusia adalah fanaBY TONI KHALIMI, S.SI Page 50 of 67

ARTIFICIAL INTELLIGENCE

5. Semua orang berkebangsaan x meninggal karena adanya bencana banjir di tahun 179 6. Tidak ada manusia yang dapat hidup lebih lama dari 170 tahun 7. Sekarang tahun 1990 Dengan merepresentasikan setiap fakta dalam bahasa formal, seperti dalam logika predikatif, dan kemudian dengan memakai metode inferensi (sebab-akibat), maka akan dapat memperoleh jawaban dari pertanyaan itu. Dua lintasan (path) penalaran berikut akan sampai pada jawaban yang benar Lintasan penalaran 1 1. 4. 8. 3. 7. 9. 6. Agus adalah seorang laki-laki Semua manusia adalah fana Agus adalah fana Agus dilahirkan pada tahun 140 Sekarang adalah tahun 1990 Umur agus adalah 1854 tahun Tidak ada manusia yang dapat hidup lebih lama dari 170 tahun 1 Agus sudah meninggal 0. Lintasan penalaran 2 7. Sekarang adalah tahun 1992 5. Semua orang berkebangsaan x meninggal pada tahun 179 1 Semua orang berkebangsaan x telah 1. meninggal seluruhnya saat ini Agus adalah seorang 2. berkebangsaan x 1 Agus sudah meninggal 2. Pembenaran Aksioma 7 Aksioma 5 7, 5 Aksioma 2 11, 2 Pembenaran Aksioma 1 Aksioma 4 1, 4 Aksioma 3 Aksioma 7 3, 7 Aksioma 6 8, 6, 9

Karena yang diinginkan adalah jawaban dari pertanyaan di atas, maka tidak memperdulikan lintasan mana yang digunakan. Persoalan di atas merupakan problema sembarang lintasan. Untuk problema ini, apabila dengan mengikuti sebuah lintasan penalaran sudah berhasil memperoleh