Laporan Akhir Lab TI Pengantar Kecerdasan Buatan (PKB) Pertemuan 1

Admin 4:44 PM


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.
Berbeda dengan bahasa pemrograman yang lain, yang menggunakan algoritma konvensionl sebagai teknik pencariannya seperti pada Delphi, Pascal, BASIC, COBOL dan bahasa pemrograman yang sejenisnya, maka prolog menggunakan teknik pencarian yang di sebut heuristik (heutistic) dengan menggunakan pohon logika.
SEJARAH PROLOG
Prolog pertama kali dikembangkan oleh Alain Colmetrouer dan P.Roussel di Universitas Marseilles Prancis tahun 1972. Selama tahun 70-an, prolog menjadi populer di Eropa untuk aplikasi AI. Sedangkan di Amerika Serikat, para peneliti juga mengembangkan bahasa lain untuk aplikasi yang sama yaitu LISP. LISP mempunyai kelebihan dibandingkan prolog , tetapi LISP lebih sulit dipelajari.
Pada awalnya, Prolog dan LISP sangat lambat dalam eksekusi program dan memakan memori yang besar sehingga hanya kalangan tertentu yang menggunakannya. Dengan adanya Compileer Prolog, kecepatan eksekusi program dapat ditingkatkan, namun Prolog masih dipandang sebagai bahasa yang terbatas (hanya digunakan di kalangan perguruan tinggi dan riset.
Pandangan tersebut tiba-tiba berubah di tahun 1981 pada konverensi internasional I dalam system generasi kelima di Tokyo, Jepang. Jepang yang saat itu mengalami kesulitan bersaingdalam pemasaran komputer dengan Amerika Serikat, mencanangkan rencana pengembangan teknologi hardware dan software untuk tahun 1990-an. Dan bahasa yang dipilih adalah Prolog.
Sejak saat itu, banyak orang menaruh minat pada prolog dan saat itu telah dikembangkan versi prolog yang mempunyai kecepatan dan kemampuan yang lebih tinggi, lebih murah dan lebih mudah digunakan, baik untuk komputer mainframe maupun komputer pribadi sehingga Prolog menjadi alat yang penting dalam program aplikasi kecerdasan buatan (AI) dan pengembangan system pakar (expert system).

Perbedaan Prolog dengan Bahasa Lain
Hampir semua bahasa pemrograman yang ada pada saat ini seperti Pascal, C, 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 masukkan yang berbeda-beda. Procedure serta pengendalian program sepenuhnya ditentukan oleh programmer dan perhitungan yang dilakukan sesuai dengan procedure yang telah dibuat. Dengan kata lain, Pemrograman 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.
Bahasa Pemrograman Prolog :
  • Object oriented languange atau declarative languange.
  • 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
  • Programmer menentukan tujuan (goal), dan komputer menentukan bagaimana cara mencapai tujuan tersebut serta mencari jawabannya.
  • Dilakukan pembuktian terhadap cocok-tidaknya tujuan dengan data-data yang telah ada dan relasinya.
  • Prolog ideal untuk memecahkan masalah yang tidak terstruktur, dan prosedur pemecahannya tidak diketahui, khususnya untuk memecahkan masalah non numerik.
  • Prolog bekerja seperti pikiran manusia, proses pemecahan masalah bergerak di dalam ruang masalah menuju suatu tujuan (jawaban tertentu).
  • Contoh : Pembuatan program catur dengan Prolog


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.
Macam-macam PROLOG
  1. strawberry prolog
  2. visual prolog
  3. swi-prolog
  4. turbo prolog

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 adalah dialek dari bahasa pemrograman Prolog. Sintaks-nya adalah sangat dekat dengan ISO-Prolog tetapi memiliki banyak ekstensi yang bukan bagian dari standar. Gagasan utama dari Strawberry Prolog adalah sangat mudah digunakan dan itulah sebabnya beberapa universitas menggunakannya untuk kursus mereka Prolog
Strawberry Prolog sedang dikembangkan di Institut Matematika dan Informatika dan di Fakultas Matematika dan Informatika.
Kompiler Prolog ini merupakan bagian dari proyek AI.



 


Pada praktikum kali ini saya akan mencoba menbuat sebuah program sederhana pada Prolog. Pertama yang harus kita lakukan adalah membuka Strawberry Prolog tersebut. Kemudian klik File pada toolbar, lalu pilih New. Setelah itu kita pilih Strawberry Project atau Prolog File. Lalu kita beri nama file tersebut, kemudian kita ketik script-nya seperti di bawah ini :

LISTING PROGRAM





LOGIKA PROGRAM
Pada pertemuan pertama ini saya akan menjelaskan cara membuat gambar pemandangan gunung dan rumah dengan menggunakan strawberry prolog. Strawberry prolog adalah aplikasi yang menggunakan bahasa pemograman prolog. Berikut adalah beberapa penjelasan syntax yang digunakan dalam pembuatan gambar pemandangan rumah dan gunung.
            Sebelum menulis syntax pada strawberry prolog harus di dahului dulu oleh ?- karena itu merupakan awalan dari strawberry prolog. Kemudian window(win_func(), title(“Ini Gunung”), size(1000, 550)). adalah syntax untuk memunculkan fungsi window dengan judul Ini Gunung dan dengan ukuran 1000 x 550 pixel. Lalu win_func(paint):- adalah syntax untuk mengaktifkan fungsi paint pada strawberry prolog.
            Sebelum masuk pada bagian syntax penggambaran terlebih dahulu gunakan perintah pen(0, rgb(255,255,255)), . Perintah tersebut berguna untuk mendefinisikan garis gambar yang akan digunakan. Angka yang paling pertama mendefinisikan ketebalan dari garis yang akan digunakan. Pada kasus ini angka yang digunakan adalah 0 sehingga tidak akan menghasilkan garis outline. Pada bagian dalam fungsi pen terdapat fungsi rgb yang akan digunakan untuk mendefinisikan warna dari garis yang akan digunakan dan angka yang digunakan adalah red untuk angka pertama, green untuk angka kedua, dan blue angka ketiga.
            Selanjutnya ada fungsi brush yang berguna untuk mengisi warna pada suatu shape atau bentuk dengan pembatas garis. Pada bagian dalam fungsi brush juga harus diisi oleh fungsi rgb untuk mendefinisikan warna dari fill yang akan digunakan. Pada kasus ini warna yang digunakan adalah biru langit untuk mewarnai warna langit.
            Fungsi berikutnya adalah rect yang merupakan fungsi dari rectangle atau dapat disebut juga persegi empat. Pada persegi empat menggunakan titik koordinat untuk mendefinisikan lokasi dan besar dari persegi empat yang diinginkan. Sebagai contoh pada kasus ini fungsi rect dibuat pada titik (0,0) sampai pada titik (1000,200).
            Pada syntax berikutnya terdapat fungsi ellipse yang berguna untuk menggambarkan lingkaran. Lingkaran tersebut digambarkan dengan cara mendifinisikan titik koordinat yang sama dengan fungsi rectangle. Ringkasnya fungsi ini adalah dengan mengimplementasikan sebuah lingkaran dalam fungsi persegi empat. Pada kasus ini fungsi ellipse akan digambarkan dimulai dari titik koordinat (800,20) sampai dengan (900,120) jadi hasilnya akan tergambarkan lingkaran dengan diameter 780 pixel.
            Selanjutnya terdapat fungsi line yaitu fungsi untuk menggambarkan sebuah garis yang ditentukan oleh titik koordinat. Caranya adalah dengan menarik garis dari koordinat awal ke koordinat selanjutnya. Sebagai contoh pada kasus ini akan digunakan fungsi garis line(0,200,800,200) sehingga akan ditarik sebuah garis lurus dari titik (0,200) ke titik (800,200).
            Terakhir adalah fungsi fill_polygon yaitu fungsi yang berguna untuk membuat persegi banyak dan langsung mengisinya dengan warna full. Pada kasus ini akan dibuat polygon fill_polygon(100,500,400,200,200,500) sehingga akan membentuk sebuah segitiga dengan warna yang ditentukan oleh fungsi pen sebelumnya yaitu merah.

OUTPUT PROGRAM



Artikel Terkait

Previous
Next Post »
It's possible to trade profitably on the Forex, the nearly $2 trillion worldwide currency exchange market. But the odds are against you, even more so if you don't prepare and plan your trades. According to a 2014 Bloomberg report, several analyses of retail Forex trading, including one by the National Futures Association (NFA), the industry's regulatory body, concluded that more than two out of three Forex traders lose money. This suggests that self-education and caution are recommended. Here are some approaches that may improve your odds of taking a profit. Prepare Before You Begin Trading Because the Forex market is highly leveraged -- as much as 50 to 1 -- it can have the same appeal as buying a lottery ticket: some small chance of making a killing. This, however, isn't trading; it's gambling, with the odds long against you. A better way of entering the Forex market is to carefully prepare. Beginning with a practice account is helpful and risk-free. While you're trading in your practice account, read the most frequently recommended Forex trading books, among them Currency Forecasting: A Guide to Fundamental and Technical Models of Exchange Rate Determination, by Michael R. Rosenberg is short, not too sweet and highly admired introduction to the Forex market. Forex Strategies: Best Forex Strategies for High Profits and Reduced Risk, by Matthew Maybury is an excellent introduction to Forex trading. The Little Book of Currency Trading: How to Make Big Profits in the World of Forex, by Kathy Lien is another concise introduction that has stood the test of time. All three are available on Amazon. Rosenberg's book, unfortunately, is pricey, but it's widely available in public libraries. "Trading in the Zone: Master the Market with Confidence, Discipline and a Winning Attitude," by Mark Douglas is another good book that's available on Amazon, and, again, somewhat pricey, although the Kindle edition is not. Use the information gained from your reading to plan your trades before plunging in. The more you change your plan, the more you end up in trouble and the less likely that elusive forex profit will end up in your pocket. Diversify and Limit Your Risks Two strategies that belong in every trader's arsenal are: Diversification: Traders who execute many small traders, particularly in different markets where the correlation between markets is low, have a better chance of making a profit. Putting all your money in one big trade is always a bad idea. Familiarize yourself with ways guaranteeing a profit on an already profitable order, such as a trailing stop, and of limiting losses using stop and limit orders. These strategies and more are covered in the recommended books. Novice traders often make the mistake of concentrating on how to win; it's even more important to understand how to limit your losses. Be Patient Forex traders, particularly beginners, are prone to getting nervous if a trade does not go their way immediately, or if the trade goes into a little profit they get itchy to pull the plug and walk away with a small profit that could have been a significant profit with little downside risk using appropriate risk reduction strategies. In "On Any Given Sunday," Al Pacino reminds us that "football is a game of inches." That's a winning attitude in the Forex market as well. Remember that you are going to win some trades and lose others. Take satisfaction in the accumulation of a few more wins than losses. Over time, that could make you rich!
No car insurance resource would be complete without a comprehensive glossary of car insurance terms. We've compiled a list of terms and their definitions to better help you navigate the sometimes confusing world of insurance Accident - This is an unexpected sudden event that causes property damage to an automobile or bodily injury to a person. The event may be an at-fault or not-at fault and it may be report or unreported. An accident involving two vehicles may be termed a collision. Accident report form - This is the report filed by police, often called the police report, containing the important information regarding the vehicle collision. This report will include the names of all individuals involved, vehicles involved, property damaged and citations that were issued. Adjuster - This is the person who will evaluate the actual loss reported on the policy after an accident or other incident. They will make the determination on how much will be paid on the auto insurance policy by the Insurer. Agent - This is a licensed and trained individual who is authorized to sell and to service insurance policies for the auto insurance company. At Fault - This is the amount that you, the policy holder, contributed or caused the auto collision. This determines which insurance agency pays which portion of the losses. Auto Insurance Score - This is a score similar to credit score that evaluates the information in your consumer credit report. These scores are used when determining pricing for your auto insurance policy. Negative marks on your credit report can increase your auto insurance premiums. The use of this information to determine policy pricing does vary from state to state. Automobile Insurance - This is a type of insurance policy that covers and protect against losses involving automobiles. Auto Insurance policies include a wide range of coverage's depending on the policy holders needs. Liability for property damage and bodily injury, uninsured motorist, medical payments, comprehensive, and collision are some of the common coverage's offered under an auto insurance policy. Binder - This is a temporary short-term policy agreement put in place while a formal permanent policy is put into place or delivered. Bodily Injury Liability - This is the section of an insurance policy that covers the cost to anyone you may injure. It can include lost wages and medical expenses. Broker - This is a licensed individual who on your behalf sells and services various insurance policies. Claim - This is a formal notice made to your insurance company that a loss has occurred which may be covered under the terms of the auto insurance policy. Claims Adjuster - This person employed by the insurance agency will investigate and settle all claims and losses. A representative for the insurance agency to verify and ensure all parties involved with the loss, get compensated fairly and correctly. Collision - The portion of the insurance policy that covers damage to your vehicle from hitting another object. Objects can include but are not limited to; another vehicle, a building, curbs, guard rail, tree, telephone pole or fence. A deductible will apply. Your insurance company will go after the other parties insurance policy for these cost should they be at fault. Commission - This is the portion of the auto insurance policy that is paid to the insurance agent for selling and servicing the policy on behalf of the company. Comprehensive - This is a portion of the insurance policy that covers loss caused by anything other than a collision or running into another object. A deductible will apply. This includes but is not limited to vandalism, storm damage, fire, theft, etc. Covered loss - This is the damage to yourself, other people or property or your vehicle that is covered under the auto insurance policy. Declarations Page - This is the part of the insurance policy that includes the entire legal name of your insurance company, your full legal name, complete car information including vehicle identification numbers or VIN, policy information, policy number, deductible amounts. This page is usually the front page of the insurance policy. Deductible Amount - This is the portion of the auto insurance policy that is the amount the policy holder must pay up front before the Insurance Company contributes and is required to pay any benefits. This amount can be within a wide range in price and varies from approximately $100 - $1000. The larger amount you pay in a deductible the lower your normal monthly/yearly policy will cost. This is the portion of the auto insurance policy that would be applicable only to comprehensive or collision coverage. Discount - This is a reduction in the overall cost of your insurance policy. Deductions can be given for a variety of different reasons including a good driving record, grades, age, marital status, specific features and safety equipment on the automobile. Emergency Road Service - This is the part of an auto insurance policy that covers the cost of emergency services such as flat tires, keys locked in the car and towing services. Endorsement - This is any written change that is made to the auto insurance policy that is adding or removing coverage on the policy. Exclusion - This is the portion of the auto Insurance policy that includes any provision including people, places or things that are not covered under the insurance policy. First Party - This is the policyholder, the insured in an insurance policy. Gap Insurance - This is a type of auto insurance provided to people who lease or own a vehicle that is worth less than the amount of the loan. Gap auto Insurance will cover the amount between the actual cash value of the vehicle and the amount left on loan should the care be stolen or destroyed. High-Risk Driver - If you have a variety of negative marks on your insurance record including driving under the Influences, several traffic violations, etc. you may be labeled as a risk to the insurance company. This will increase your insurance policy or may make you ineligible for coverage. Insured - The policyholder (s) who are covered by the policy benefits in case of a loss or accident. Insurer - Is the Auto Insurance company who promises to pay the policy holder in case of loss or accident. Liability insurance - This part of an auto insurance policy which legally covers the damage and injuries you cause to other drivers and their vehicles when you are at fault in an accident. If you are sued and taken to court, liability coverage will apply to your legal costs that you incur. Most states will require drivers to carry some variation of liability coverage Insurance and this amount will vary state by state. Limits - This is the portion of the auto insurance policy that explains and lists the monetary limits the insurance company will pay out. In the situation you reach these limits the policy holder will be responsible for all other expenses. Medical Payments Coverage - This is the portion of an auto insurance policy that pays for medical expenses and lost wages to you and any passengers in your vehicle after an accident. It is also known as personal injury protection or PIP. Motor Vehicle Report - The motor vehicle report or MVR is a record issued by the state in which the policy holder resides in that will list the licensing status, any traffic violations, various suspensions and./ or refractions on your record. This is one of the tools used in determining the premium prices offered by the insurance agency. This is also used to determine the probability of you having a claim during your policy period. No-Fault Insurance - If you reside within a state with no-fault insurance laws and regulations, your auto insurance policy pays for your injuries no matter who caused the accident. No-fault insurance states include; Florida, Hawaii, Kansas, Kentucky, Massachusetts, Michigan, Minnesota, New Jersey, New York, North Dakota, Pennsylvania, Utah and Washington, DC.. Non-Renewal - This is the termination of an auto insurance policy on the given expiration date. All coverage will cease as of this date and insurer will be released of promised coverage. Personal Property Liability - This is the portion of the auto insurance policy that covers any damage or loss you cause to another person's personal property. Personal Injury Protection or PIP - This portion of an auto insurance policy pays for any lost wages or medical expenses to you and any passengers in your vehicle following an accident. PIP is also known as medical payments coverage. Premium - This is the amount charged to you monthly, yearly or any other duration agreed upon by insurance company and policy holder and paid directly to the auto insurance company. A premium is based on the type and amount of coverage you choose for your vehicle(s) and yourself. Other factors that will affect your insurance premium prices include your age, marital status, you're driving and credit report, the type of car you drive and whether you live in an urban or rural area. Premiums vary by insurance company and the location you live. Quotation - This is the amount or estimated amount the insurance will cost based on the information provided to the agent, broker or auto insurance company. Rescission.- This is the cancellation of the insurance policy dated back to its effective date. This would result in the full premium that was charged being returned. Rental Reimbursement - This is the portion of the auto insurance policy that covers the cost of an automobile rental of similar size should the covered vehicle be in repair from a reported incident. Replacement Cost - This is the amount of money it would cost to replace a lost or damaged item at it is actually new replacement value. This monetary amount would be based on a new identical item in the current local market. Salvage - This is the auto insurance policy holders property that is turned over tot eh insurance agency in a loss final settlement. Insurance companies will sell the salvage property in hopes to recoup some of its monetary loss due to the loss and settlement. Second Party - this is the actual insurance company in the auto insurance policy. Surcharge - This is the amount added to your auto insurance policy premium after a traffic violation or an accident in which you were found to be at fault. Third Party - This is another person other than the policy holder and auto insurance company who has faced a loss and may be able to collect and be compensated on behalf of the policy holder's negligence. Total Loss - This is complete destruction to the insured property of a policy holder. It has been determined that it would be a great sum of money to repair the item rather than replace the insured piece of property to its state prior to the loss. Towing Coverage - This is the portion of the auto insurance policy that covers a specified amount for towing services and related labor costs. Under insured Driver - This is the portion of an auto insurance policy which covers injuries to you caused by a driver without enough insurance to pay for the medical expenses you have incurred from the accident. This is portion of the policy can vary state by state as some states include damage to the car in this section. Uninsured Driver or Motorist - This is the portion of the auto insurance policy which covers injuries to you caused by a driver who was without liability insurance at the time of the accident. Uninsured driver or motorist coverage comes in two different sections; uninsured motorist bodily injury and uninsured motorist property damage. Uninsured motorist bodily injury coverage covers the injuries to you or any passenger in your vehicle when there is an accident with an uninsured driver. Uninsured motorist property damage coverage covers the cost for the property damage to your vehicle when there is an accident with an identified uninsured driver. Uninsured driver or motorist coverage must be offered when you purchase the required liability coverage for your vehicle. You must sign a declination waiver if you decline Uninsured driver or motorist coverage. The majority of states require drivers to carry some form of uninsured motorist coverage. Some states include damages to your car in this coverage. Vehicle Identification Number or VIN - A VIN is a 17 letter and number combination that is the identification of the specific vehicle. It will identify the make, modem and year of the automobile. This number is typically located on the driver's side window on the dash. It can also be found on the vehicles registration and title