Beberapa soal-jawab kecerdasan buatan Oleh Hazman Halid, Consultant Developer Ford Motor Company, Dearborn, MI USA. Artificial intelligence ialah satu cabang programming yang bertujuan untuk membolehkan komputer berfikir dengan akal-fikiran. Kita tahu bahawa komputer pandai mengira -- kalau bab kira-mengira, memang laju dan tepat. Tak ada tolok-bandingnya di dunia ini. Komputer juga pandai itu dan ini, asalkan kita tahu memprogramnya. Tetapi komputer hari ini mempunyai satu batasan yang amat besar: mereka tidak mempunyai kecerdasan. Mereka hanya tahu buat apa yang programmer suruh buat, dan tidak lebih dari itu. Dalam ertikata lain, mereka tidak mampu membuat rumusan sendiri, mempelajari ilmu sendiri, menggunakan "common-sense". Jadi AI (artificial intelligence) bertujuan untuk, sekurang-kurangnya dalam skop yang terhad, memberi kebolehan berfikir ini kepada komputer. Setakat ini AI digunakan dalam bidang-bidang yang terhad saja, seperti voice recognition (mengenal suara), permainan (catur, Quake). Asasnya bila kita memprogramkan AI, kita mengajar komputer peraturan-peraturan inferense. Contohnya: Kalau binatang ini ada bulu maka ia mamalia. Kalau binatang ini ada kaki maka ia hidup di darat. ... Kemudian kita beri seekor kucing kepada komputer tersebut. Dia akan analisis kembali ciri-ciri kucing itu (ada bulu, ada kaki, etc.). Dan kalau ia cukup diajar ia akan dapat beritahu kita bahawa "hey ini seekor kucing.". --- BAGAIMANA, MISALNYA, KOMPUTER BOLEH 'MEMAHAMI' PENULISAN MANUSIA? Untuk mencapai matlamat ini, pertama sekali kita perlu tulis sebuah text parser. Text parser ini menerima teks yang ditulis oleh pengguna, kemudian memecahkan teks tersebut kepada perkataan-perkataan. Contohnya: "Mahu makan apa?" Akan menghasilkan senarai perkataan: Mahu Makan Apa ? Dari peringkat ini, kerjanya menjadi lebih rumit, dan ia bergantung kepada tahap "kecerdasan" yang ingin kita kandungi di dalam program kita. Saya hanya akan terangkan mekaniks sebuah program yang "agak bodoh". Program kita mempunyai satu pengkalan data yang mengandungi perkataan-perkataan yang boleh dikenali oleh sistem ini. Katakan program kita tak mengenali perkataan "Mahu". Maka ia akan buang saja perkataan itu. Yang tinggal adalah "makan", "apa" dan "?". Program kita nampak tanda "?", jadi dia tahu ini satu soalan. Bila dia nampak perkataan "apa", dia tahu bahawa kita meminta satu "objek". Objek jenis apa? "Makan". Maka, dia cari dalam databasenya objek-objek yang boleh dikira sebagai "makanan". Maka dia pun jawablah: nasi kerabu roti canai .. dan apa-apa lagi yang ada dalam database dia. Ini cuma satu contoh yang ringkas saja, dan sudah semestinya tidak cukup bagus untuk membina sebuah sistem komersil. Tapi ia memberi gambaran yang asas tentang langkah-langkah yang diperlukan. Text parser bertaraf komsersil menggunakan teknik rekursif untuk mengesan pattern di dalam ayat yang dibaca dan menyamakannya dengan peraturan nahu yang sudah diprogramkan ke dalamnya. --- CONTOH PENGGUNAAN AI DI DALAM PERMAINAN Itu juga satu cabang AI yang dipanggil heuristics -- kalau tak silap. Permainan Othello, Scrabble, Catur, Dam, Tic-Tac-Toe menggunakan prinsip yang sama. Komputer mencuba segala kombinasi yang boleh dicuba, dan memilih yang terbaik berdasarkan satu "sistem pemarkahan" yang tertentu. Kita ambil Tic Tac Toe (TTT) sebagai contoh, kerana ia mudah. Terdapat 3x3 kotak. Setelah kita jalan, komputer pula kena jalan, bukan? Goal: untuk meletakkan 'x' dalam satu daripada semua kotak yang belum dipenuhi. Langkah: komputer akan scan semua kotak yang masih kosong. Di sini, setiap kotak yang di scan akan diberi satu markah. Pada akhir scan, kotak yang mempunyai markah yang tertinggi akan diletakkan 'x'. Bagaimanakah setiap kotak ditentukan markahnya? Dengan menggunakan peraturan-peraturan tertentu (inilah bahagian program tersebut yang mengandungi kecerdasan). Contohnya, kalau di sebelah kotak itu sudah ada 2 O sebaris, maka markah yang diberi adalah tinggi kerana kalau tak letak di situ sudah pasti opponent menang. Of course, teknik pemarkahan ini semata-mata tidak mencukupi kerana ia membuatkan program tersebut 'predictable' dan boleh ditipu oleh manusia. Maka, dalam permainan catur yang advanced, teknik pemarkahan ini ditambah pula dengan teknik-teknik tambahan yang lebih cerdas supaya pandai pula menipu opponent. Scrabble, bila saya fikir berkali-kali, kemungkinan tidak menggunakan AI. Kalau guna pun tak terlalu intensif. Dalam scrabble, sistem pemarkahannya tidak memerlukan sebarang "judgement" di pihak komputer. Dalam permainan2 lain misalnya, senario-senario mempunyai nilai yang kualitatif dan memerlukan satu 'kepandaian' untuk menterjemahkannya kepada nombor. Padahal dalam Scrabble, markah-markah itu sudah ditentukan dengan jelas dan terang pada tile-tile. Jadi dalam Scrabble, apa yang komputer buat sebenarnya ialah mencari dalam databasenya setiap perkataan yang boleh disusun daripada tile-tilenya. Ini tidak memerlukan AI -- sekadar pemanipulasian perkataan yang intensif. Bila dia sudah selesai mencari, maka dia akan ada satu senarai perkataan yang boleh dibuat. Dia akan cari kedudukan yang sesuai pula untuk meletakkan perkataan-perkataan tersebut. Untuk setiap kedudukan yang mungkin, dia akan cuba setiap perkataan yang boleh diletak di situ, merekodkan markah yang mungkin diperolehi apabila perkataan itu diletak di situ. Setelah dia selesai menilaikan setiap kedudukan/perkataan, dia carilah dalam senarainya kedudukan/perkataan mana yang akan memberikannya paling banyak markah. Yang mana yang tertinggi akan digunakan, lalu ia meletakkan perkataan tersebut di situ. --- ADAKAH KOMPUTER AKAN MENJAJAH DUNIA SATU HARI NANTI? Dalam science fiction, biasa komputer digambarkan menjadi terlalu cerdas sehingga melawan manusia. Namun dalam realiti, komputer -- sekurang-kurangnya pada zaman ini dan pada pendapat saya sampai bila-bila sekalipun -- tidak mampu diajar melepasi kecerdasan seekor kucing. Jika kita berikan sekuntum bunga kepada seorang kanak-kanak, bunga itu datang dengan 1001 jenis maklumat kepada kanak-kanak tersebut. Baunya begini, warnanya begitu, bentuknya begini, kelembutannya begitu. Dan kebanyakan maklumat ini adalah kualitatif, bukan kuantitatif. Kita tidak boleh, misalnya, mengukur "bau" atau "kecantikan" sesuatu benda dengan satu skala numerik. Sebaliknya jika sesuatu itu wangi atau cantik, kita "tahu-tahu saja". Jika kita ingin mengajar komputer supaya dapat mengenali sekuntum bunga, kita perlu memasukkan kesemua ciri yang terdapat pada bunga tersebut ke dalam komputer. Adalah mudah untuk memasukkan berat dan dimensi bunga itu tetapi bagaimana dengan ciri-ciri kualitatifnya? Jika kita ingin katakan bunga itu wangi, bagaimanakah boleh kita terjemahkan kewangian itu ke dalam bentuk nombor? (Menggunakan fuzzy logic dan neural network, kita boleh -- kepada satu tahap yang terbatas -- tetapi ia merupakan satu proses yang sukar). Dan kalau kita boleh sekalipun, adakah ia dapat memberi apa-apa makna kepada sebuah mesin yang tidak berperasaan? Bila kita hidu bunga yang wangi, mungkin timbul perasaan gembira pada hati kita tetapi perkara ini tidak boleh dirasai oleh sebuah komputer. Satu lagi yang terdapat pada manusia dan tiada pada komputer ialah common-sense. Jika kita tanya pada kawan kita yang sedang makan ayam percik dan minum air kosong: "sedap tak?", kawan kita sudah tentu faham yang kita bukan bertanya tentang air kosong tersebut. Tetapi bagi sebuah komputer, pertanyaan ini kemungkinan akan menyebabkan dia confused apa yang sedap -- ayam, air, kerusi, lampu, dinding? Dalam dunia kini, AI ada faedahnya, misalnya dalam bidang pengilangan kereta di mana robot-robot memasang bahagian-bahagian kereta. Tetapi kebolehan robot-robot ini amat terhad kepada skop penggunaannya saja. Di luar dari itu ia tak tahu apa-apa. -- Sekian, terima kasih --