2.

PENGANTAR TEKNOLOGI INFORMASI DAN KOMUNIKASI

PENGANTAR TEKNOLOGI INFORMASI DAN KOMUNIKASI

IDA FARIDA

Selasa, 28 Februari 2012

SWI PROLOG

SWI - PROLOG
Prolog kependekan dari Programming of Logic adalah bahasa pemrograman logika atau di sebut juga sebagai bahasa non-procedural. Namanya diambil dari bahasa Perancis programmation en logique(pemrograman logika). Bahasa ini diciptakan oleh Alain Colmerauer dan Robert Kowalski sekitar tahun 1972 dalam upaya untuk menciptakan suatu bahasa pemrograman yang memungkinkan pernyataan logika alih-alih rangkaian perintah untuk dijalankan komputer.  id.wikipedia.org)
Bahasa prolog memungkinkan bagi kita untuk mengeksplorasi lebih jauh bahasan-bahasan tentang matematika diskrit, logika dan komputabilitas. Prolog biasanya dikaitkan dengan berlogika dan merupakan bahasa pemprograman untuk perhitungan simbolik dan tak-berangka. Prolog paling sesuai untuk menyelesaikan masalah yang berkaitan dengan objek dan hubungan antara objek, masalah persamaan corak, masalah perunutan ke belakang dan masalah yang informasinya tidak lengkap.
Definisi Prolog...
          Prolog adalah bahasa pemrograman logika atau di sebut juga sebagai bahasa non-procedural. Namanya diambil dari bahasa Perancis programmation en logique (pemrograman logika). Bahasa ini diciptakan oleh Alain Colmerauer dan Robert Kowalski sekitar tahun 1972 dalam upaya untuk mencIptakan suatu bahasa pemrograman yang memungkinkan pernyataan logika alih-alih rangkaian perintah untuk dijalankan komputer.
Prolog merupakan singkatan dari Programming in Logic. Idenya berasal dari era 1970-an yang bertujuan untuk menggunakan logic (logika) sebagai bahasa pemrograman.

Algoritma dari prolog terdiri dari logika dan kontrol, logika terdiri dari fakta dan peraturan sedangkan kontrol cara sebuah algoritma untuk diterapkan pada sebuah peraturan. Berikut disajikan contoh program prolog tentang silsilah sebagian anggota pandawa.
INSTALASI PROLOG
aplikasi untuk menjalankan bahasa pemrograman prolog banya ditemui di internet, untuk bahasan ini kami menggunakan aplikasi SWI-Prolog v.5.10.1 (2010-07-25). installasi aplikasi ini cukup mudah, tinggal klik 2 kali installernya w32pl5101.exe, ikuti langkah-langkahnya hingga proses instalasi selesai. pada sebagian langkah-langkahnya kita dapat diberi pilihan untuk memilih paket-paket yang akan diinstal, instalasi folder dan jenis file prolog yang diinginkan, pilihannya adalah .pl atau .pro.
untuk menggunakan prolog, buat dahulu dengan notepad atau aplikasi semisalnya, yang berisi fakta-fakta (sebagaimana penjelasan di bawah, dan contoh dari fakta adalah fakta silsilah pandawa di bawah ini) dan peraturan (rules). setelah itu simpan dengan ekstensi .pl. kemudian buka aplikasi SWI-Prolog dari menu file pilih consult… dan pilih file .pl yang baru saja kita buat.
CONTOH PROGRAM SILSILAH KELUARGA PANDAWA
Sebuah contoh yang biasa digunakan untuk memperkenalkan bahasa prolog adalah silsilah keluarga, satu contoh di bawah adalah silsilah keluarga pandawa, sebuah keluarga yang dikenal dalam cerita pewayangan. Fakta-fakta berikut akan menggambarkan mengenai hubungan antara ibu dengan anak, bapak dengan anak dan beberapa peraturan yang memberikan logika tentang hubungan kakek-cucu, nenek-cucu dan saudara kandung misalnya.

Perbedaan Prolog dengan bahasa pemrograman lainnya


          Banyaknya bahasa pemrograman yang ada seperti Pascal, C, dan Fortran disebut procedural language, untuk menggunakan bahasa tersebut diperlukan algoritma atau procedure yang dibuat untuk menyelesaikan masalah. Program dapat menjalankan Procedure yang sama berulang-ulang dengan data masukan yang berbeda-beda. Procedure serta pengendalian program sepenuhnya ditentukan oleh programmer dan perhitungan yang dilakukan sesuai dengan procedure yang telah dibuat. Dengan kata lain, Pemrogram harus memberi tahu komputer bagaimana komputer harus menyelesaikan masalah. Prolog mempunyai sifat-sifat yang berbeda dengan bahasa yang disebutkan  diatas, prolog disebut sebagai object oriented language atau declarative language. Dalam prolog tidak terdapat prosedur, tapi hanya tampilan data-data object (fakta) yang akan diolah dengan relasi antar object tersebut yang membentuk suatu aturan. Aturan-aturan ini disebut HEURISTIK dan diperlukan dalam mencari suatu jawaban, dengan kata lain, prolog dalam prolog adalah database. Pemrogram menentukan tujuan (Goal) dan komputer akan menentukan bagaimana cara mencapai tujuan tersebut serta mencari jawabannya. Caranya dengan menggunakan “Formal Reasoning” yaitu membuktikan cocok tidaknya tujuan dengan data-data yang telah ada dan relasinya. Prolog memecahkan masalah seperti yang dilakukan oleh fikiran manusia. Dengan demikian, Prolog sangat ideal untuk memecahkan masalah yang tidak terstruktur dan yang prosedur pemecahannya tidak diketahui, khusunya untuk memecahkan masalah non numeric.

Untuk menuliskan bahasa pemrograman ini kita membutuhkan sebuah editor text-nya(software) untuk menjalankannya dan yang dibutuhkan ialah SWI-Prolog. SWI-Prolog merupakan implementasi open source bahasa pemrograman Prolog, biasanya digunakan untuk mengajar dan aplikasi web semantik. Ini memiliki seperangkat kaya fitur, perpustakaan untuk pemrograman kendala logika, multithreading, unit testing, GUI, interfacing ke Jawa, ODBC dan lain-lain, server web,  pengembang alat (termasuk sebuah IDE dengan GUI debugger dan profiler GUI), dan dokumentasi yang ekstensif.

Dan adapun langkah pertama yang harus dilakukan untuk menjalankan program ini ialah men-download SWI-Prolog itu sendiri, dan setelah mendownloadnya lakukan instalas

Instalasi...

Pertama bukalah file software prolog yang telah didonwload, setelah itu lakukan instruksi di bawah ini sesuai dengan petunjuk gambar


 klik-->


                   klik--> Next


lalu pilih--> Next


         klik--> Install


maka instalasi akan berjalan dan silahkan menuggu sampai proses instalasinya              completed, setelah instalasi completed maka klik finished(seperti pada gambar di atas)




klik--> Yes dan SWI-Prolog siap untuk digunakan.

Aplikasi Prolog :
-      Sistem Pakar (Expert System)
Program menggunakan teknik pengambilan kesimpulan dari data-data yang didapat, layaknya seorang ahli.
Contoh dalam mendiagnosa penyakit
-      Pengolahan Bahasa Alami (Natural Languange Processing)
Program dibuat agar pemakai dapat berkomunikasi dengan komputer dalam bahasa manusia sehari-hari, layaknya penterjemah.
-      Robotik
Prolog digunakan untuk mengolah data masukanyang berasal dari sensor dan mengambil keputusan untuk menentukan gerakan yang harus dilakukan.
-      Pengenalan Pola (Pattern Recognition)
Banyak digunakan dalam image processing, dimana komputer dapat membedakan suatu objek dengan objek yang lain.
-      Belajar (Learning)
Program belajar dari kesalahan yang pernah dilakukan, dari pengamataqn atau dari hal-hal yang pernah diminta untuk dilakukan.


Fakta dan Relasi
-      Prolog terdiri dari kumpulan data-data objek yang merupakan suatu fakta.
-      Fakta dibedakan 2 macam :
o   Menunjukkan relasi.
o   Menunjukkan milik/sifat.
-      Penulisannya diakhiri dengan tanda titik “.
-      Contoh :
Fakta
Prolog
Slamet adalah ayah Amin
ayah (slamet, amin).
Anita adalah seorang wanita
wanita (anita).
Angga suka renang dan tenis
suka(angga, renang). dan suka(angga,tenis).
Jeruk berwarna jingga
jngga(jeruk).
Aturan (“Rules”)
-      Aturan adalah suatu pernyataan yang menunjukkan bagaimana fakta-fakta berinteraksi satu dengan yang lain untuk membentuk suatu kesimpulan.
-      Sebuah aturan dinyakatakan sebagai suatu kalimat bersyarat.
-      Kata “if” adalah kata yang dikenal Prolog untuk menyatakan kalimat bersyarat atau disimbolkan dengan “:-“.
-      Contoh :
-      Setiap aturan terdiri dari kesimpulan(kepala) dan tubuh.
-      Tubuh dapat terdiri dari 1 atau lebih pernyataan atau aturan yang lain, disebut subgoal dan dihubungkan dengan logika dan ",".
https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgi3_rPH8YfHrHMttCNTXHvRSAUtBfnOxJooMtXGwWJZpCfx7v5g0CluhlD8lQSFJM1yPTyvq2Tk4fKI3iO0b3RnGvuHnerckG_jz-1Q6N7eIIXpn7Lrfjb98KcdnOODuA3-c58QmiB21mk/s400/sdsds.jpg
-      Aturan memiliki sifat then/if conditional
“Kepala(head) benar jika tubuh (body) benar”.






Fakta dan Aturan
Prolog
F : Slamet adalah ayah dari Amin
F : Amin adalah ayah dari Badu
F : Slamet adalah kakek dari Badu
A :
Slamet adalah benar kakek Badu jika Slamet adalah benar ayah Amin dan Amin adalah benar ayah Badu.
ayah(slamet,amin).
ayah(amin,badu).
kakek(slamet,badu).

kakek(slamet,badu) :-
ayah(slamet,amin),
ayah(amin,badu).
F : Amin adalah saudara kandung Anang
F : Amin mempunyai ayah Slamet
F:  Anang mempunyai ayah Slamet.
A :
Amin adalah benar saudara kandung Anang, jika Amin mempunyai ayah Slamet dan Anang juga mempunyai ayah Slamet.
saudara_kandung(amin,anang).
ayah(slamet,amin).
ayah(slamet,anang).


saudara_kandung(amin,anang) :-
ayah(slamet,amin),
ayah(slamet,anang).

Tidak ada komentar:

Posting Komentar