Senin, 29 April 2013

Pemrograman 'Strawberry Prolog'

            Sebelum kita membahas lebih jauh mengenai bahasa pemrograman Strawberry Prolog, alangkah lebih baik kita mengenal apa itu Prolog.
             Nama Prolog 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 adalah bahasa pemrograman logika atau disebut juga bahasa non prosedural.  Prolog disebut sebagai object oriented language atau declarative language. Dalam prolog tidak terdapat prosedur, tetapi hanya tampilan data-data object (fakta) yang akan diolah dengan relasi antar object yang membentuk suatu aturan. Aturan-aturan ini disebut heuristik dan diperlukan dalam mencari suatu jawaban, dengan kata lain, prolog dalam prolog adalah database.

Bahasa Pemrograman Prolog
  1. Object oriented languange atau declarative languange.
  2. Tidak terdapat prosedur, tetapi  hanya kumpulan data-data objek (fakta) yang akan diolah, dan relasi antar objek tersebut membentuk aturan yang diperlukan untuk mencari suatu jawaban
  3. Programmer menentukan tujuan (goal), dan komputer menentukan bagaimana cara mencapai tujuan tersebut serta mencari jawabannya.
  4. Dilakukan pembuktian terhadap cocok-tidaknya tujuan dengan data-data yang telah ada dan relasinya.
  5. Prolog ideal untuk memecahkan masalah yang tidak terstruktur, dan prosedur pemecahannya tidak diketahui, khususnya untuk memecahkan masalah non numerik.
  6. Prolog bekerja seperti pikiran manusia, proses pemecahan masalah bergerak di dalam ruang masalah menuju suatu tujuan (jawaban tertentu).
Aplikasi Prolog
  1.  Sistem Pakar (Expert System), Program menggunakan teknik pengambilan kesimpulan dari data-data yang didapat, layaknya seorang ahli.
  2. Pengolahan Bahasa Alami (Natural Languange Processing), Program dibuat agar pemakai dapat berkomunikasi dengan komputer dalam bahasa manusia sehari-hari, layaknya penterjemah.
  3. Robotik, Prolog digunakan untuk mengolah data masukanyang berasal dari sensor dan mengambil keputusan untuk menentukan gerakan yang harus dilakukan.
  4. Pengenalan Pola (Pattern Recognition), Banyak digunakan dalam image processing, dimana komputer dapat membedakan suatu objek dengan objek yang lain.
  5. Belajar (Learning), Program belajar dari kesalahan yang pernah dilakukan, dari pengamataqn atau dari hal-hal yang pernah diminta untuk dilakukan.

Terdapat tiga jenis Prolog ,yaitu :
1. Strawberry Prolog
            Strawberry Prolog dihasilkan oleh Institut Matematika dan Informatika pada Akademi Ilmu Pengetahuan Bulgaria . Versi pertama dirilis pada tahun 1996. Pemimpin tim Strawberry Dimiter Dobrev.
            Strawberry Prolog sedang dikembangkan di Institut Matematika dan Informatika dan di Fakultas Matematika dan Informatika. Kompiler Prolog ini merupakan bagian dari proyek AI. Beberapa contoh game yang dibuat menggunakan strawberry prolog adalah Point(Dots), Tic tac toe, Row, chess, checkers, dll.
         Strawberry Prolog adalah dialek dari bahasa pemrograman Prolog. Sintaksnya sangat dekat dengan ISO-Prolog tetapi memiliki banyak ekstensi yang bukan bagian dari standar. Gagasan utama dari Strawberry Prolog sangat mudah digunakan dan oleh karena itu beberapa universitas menggunakan prolog untuk kursus .


2. Visual Prolog
        Visual prolog sebelumnya dikenal sebagai PDC prolog dan turbo prolog merupakan bahasa pemrograman prolog yang berorientasi objek. Sebagai turbo prolog dipasarkan oleh Borland, tetapi sekarang dikembangkan dan dipasarkan oleh perusahaan Denmark Pusat Pengembangan Prolog (PDC). Visual Prolog dapat membangun Microsoft Windows GUI-aplikasi, aplikasi konsol, DLL (Dynamic Link Libraries).


3. SWI Prolog
         SWI Prolog merupakan open source implementasi bahasa pemrograman Prolog, biasanya digunakan untuk pengajaran dan semantic web aplikasi. Memiliki seperangkat kaya fitur, perpustakaan untuk logika pemrograman kendala, multithreading, Unit testing, GUI, dll. SWI Prolog berjalan pada UNIX, Windows, dan Machintosh.

Sumber :

1 komentar: