• Beranda
  • Kelas
  • Blog
  • Lainnya
    • Event
    • Webinar
      • DaftarLogin
    InformatikawanInformatikawan
    • Beranda
    • Kelas
    • Blog
    • Lainnya
      • Event
      • Webinar
      • DaftarLogin

      Artificial Intelligence

      • Beranda
      • Blog
      • Artificial Intelligence
      • Prolog: Pengenalan Prolog

      Prolog: Pengenalan Prolog

      • Ditulis oleh Muhammad Fadillah Arsa
      • Kategori Artificial Intelligence
      • Tanggal 17/04/2019
      • Komentar 0 komentar

      Prolog adalah bahasa pemrograman logika atau disebut juga sebagai bahasa non-procedural.

      Struktur Prolog

      Stuktur prolog terdiri atas: Domain, Predicates, Clauses, dan Goals.

      Domain

      Domain dalam Prolog seperti type dalam C, yaitu untuk menyatakan jenis variabel atau argument. Domain pada prolog:

      • char
      • integer
      • real
      • string
      • symbol

      Contoh:

      Domains
      	orang = symbol
      	kota = symbol
      	alamat = string
      	angka = integer

      Predicates

      Predicates digunakan untuk mendeklarasikan predikat yang digunakan dalam bahasa Prolog, atau bisa juga untuk menggambarkan relasi atau sifat objek. Objek yang terkait oleh predikat disebut argumen.

      Contoh:

      Predicates
      	lelaki(orang).
      	perempuan(orang).
      	ayah(orang,orang).
      	ibu(orang,orang).

      Clauses

      Dalam melakukan pemanggilan klausa, Prolog melacaknya berurutan dari atas ke bawah. Bagian ini merupakan inti dari program Prolog, dimana semua fakta dan aturan diimplementasikan di sini.

      Notes:

      • Yang membedakan value dan variable, variable  diawali dengan huruf capital.
      • Syntax don’t care variable:  “_”
      • Syntax IF: “:-“
      • Syntax AND: “,”
      • Syntax OR: “;”

      Contoh:

      Clauses
      	lelaki(budi).
      	lelaki(tono).
      	perempuan(ani).
      	ayah(budi,tono).
      	ibu(ani,tono).
      	nenek(X,Y):-orangtua(Z,Y),ibu(X,Z),perempuan(X).

      Goals

      Merupakan tempat pertanyaan diberikan atau diminta terhadap Prolog untuk dicari tahu jawabannya.

      Contoh:

      Goal	
      	nenek(ria,X)
      	jurusan(X,informatika)

      List pada Prolog

      List merupakan sebuah struktur data pada prolog. Aturan pembuatan list adalah dimulai dengan tanda “[“ ditutup oleh “]” (square bracket), dan setiap data dipisahkan oleh tanda “,” (comma). Contoh: [a,b,c,d]

      Kita dapat menambahkan sebuah tanda | (bar) untuk membedakan data pertama dan selebihnya. Contoh: [first,second,third] ke dalam [A|B] Dimana A = {first} dan B = {second,third}

      Contoh:

      Domains
      	list = symbol* % tanda * merupakan inisial untuk list
      	elm = symbol
      Predicates
      	split(list,elm,list).
      Clauses
      	split([H|T],H,T).
      Goal
      	split(input_list,X,Y) %missal input_list = [a,b,c,d,e]

      Contoh lain (Penjumlahan 2 List):

      Domains
      	dlist = integer*
      Predicates
      	sum(dlist,dlist,dlist).
      Clauses
      	sum([],[],[]).
      	sum([H1|T1],[H2|T2],[H3|T3]):-H3=H1+H2,sum(T1,T2,T3).

      Cut & Fail

      Cut

      Cut adalah suatu metode dalam prolog untuk mengabaikan salah satu/seluruh bagian dari aturan. Cut terdiri atas dua jenis: Green Cut dan Red Cut.

      Green Cut adalah metode cut yang dilakukan untuk melakukan peningkatan efisiensi pemrograman tanpa mengubah output program. Dilakukan dengan untuk melewatkan aturan klausa setelahnya jika aturan klausa yang diberi green cut bernilai benar.

      Contoh:

      Pada contoh ketika aturan pertama benar secara otomatis aturan kedua salah maka program tidak perlu mengecek aturan kedua. Untuk mencegah program mengecek aturan kedua disaat aturan pertama sudah benar di gunakan green cut.

      Sedangkan Red Cut adalah metode cut yang dilakukan untuk mencegah perhatian prolog terhadap alternative sub-goal yang ada.

      Contoh:

      Fail

      Fail adalah suatu metode dalam prolog untuk mengubah nilai dari aturan klausa menjadi not. Dalam artian, aturan klausa yang diberi metode fail akan akan bersifat berlawanan. Misal:

      suka (X, sayuran):-!,fail.

      Artinya X suka sayuran bersifat fail atau sederhananya X tidak suka sayuran.

      Contoh:

      Tag:Prolog

      • Bagikan:
      Muhammad Fadillah Arsa
      Founder Informatikawan dan Digidik. Mengenyam pendidikan di S1 Teknik Informatika Universitas Padjadjaran. Penulis buku Buku Sakti WordPress. Selengkapnya www.fadillaharsa.id

      Pos sebelumnya

      Prolog: Menggunakan Turbo Prolog dalam DOSBox
      17/04/2019

      Pos selanjutnya

      Prolog: Program Penjumlahan 2 List
      17/04/2019

      Mungkin kamu juga suka

      tampilan-aplikasi-japan-ocr
      #Projek Aplikasi Dekstop Pembaca Huruf Jepang Melalui Kamera atau Foto
      18 Juni, 2019
      backprop
      #SourceCode Back Propagation C++ Jaringan Syaraf Tiruan
      18 Juni, 2019
      perceptron
      #SourceCode Perceptron C++ Jaringan Syaraf Tiruan
      18 Juni, 2019

      Cari

      Pos-pos Terbaru

      • Webinar Flutter for Startup with Ilzam Mulkhaq 05/11/2020
      • Webinar UI/UX Designer with Yunilucki Siswantari 05/11/2020
      • Algoritma Rabin Karp – Metode Pencarian String 15/10/2020

      Kelas Populer

      Ethical Hacking Practical

      Ethical Hacking Practical

      Kelas Terbaru

      UI/UX Design

      UI/UX Design

      Aplikasi Web dengan Python Django

      Aplikasi Web dengan Python Django

      WHATSAPP 3 ADMIN
      BANDUNG INDONESIA
      INFORMATIKAWAN @GMAIL.COM
      BUKA SENIN - SABTU MINGGU: SLOWRESPON

      Informatikawan adalah platform pembelajaran bidang informatika. Menyediakan materi yang lengkap, terarah, dan dibimbing oleh pengajar berpengalaman di bidangnya.

      Fitur

      • Cara Belajar
      • Cara Membeli Kelas

      Lainnya

      • Aturan Penggunaan
      • Kebijakan Privasi
      • Refund Policy
      • Kontak Kami

      Menerima Berbagai Metode Pembayaran

      • ATM Bersama - Pembayaran Informatikawan
      • Prima - Pembayaran Informatikawan
      • Alto - Pembayaran Informatikawan
      • Bank BNI - Pembayaran Informatikawan
      • Bank Mandiri - Pembayaran Informatikawan
      • QRIS - Pembayaran Informatikawan
      • GOPAY GOJEK - Pembayaran Informatikawan
      • LinkAja - Pembayaran Informatikawan
      • OVO - Pembayaran Informatikawan
      • DANA - Pembayaran Informatikawan

      Informatikawan © 2020

      Login with your site account

      Masuk dengan Facebook Masuk dengan Google


      Lost your password?

      Not a member yet? Register now

      Register a new account

      Are you a member? Login now

      Tanya Kelas Berbayar
      Chat Whatsapp kami untuk bertanya perihal kelas online berbayar.
      * Hanya untuk bertanya perihal kelas online berbayar.
      Muhammad Fadillah Arsa
      Admin
      Muhammad Hafidz Alfarizi
      Admin
      I will be back soon
      Naufal Ariful Amri
      Admin