Application+Of+Prolog+Today

__amelia's notes__ marks: Content - 5/5 Creativity - 4/5 Structure - 5/5 Collaboration - 5/5 Total = 19/20 (will round all wiki-marks to 10% at the end of the semester)

=__APPLICATION OF PROLOG TODAY__=
 * < 1 ||< INTRODUCTION ||
 * < 2 ||< APPLICATIONS ||
 * < 3 ||< REFERENCES ||
 * < 4 ||< AUTHOR ||

=
Prolog programming language was created by Robert A.Kowalski at Edinburgh University, London and Alain Colmerauer at the University of Marseilles, France in the early 1970s. Research done by Kowalski on the subject of automated deduction in 1972 has led towards development with Colmerauer about the use of formal logic as a programming language. This research provided the thereotical framework, while Colmerauer's develop the programming language Prolog. Colmerauer and Phillipe Roussel built the first Prolog intrepreter, and David Warren at the University of Edinburgh built the first Prolog compiler (for the DEC-10 machine).======

=
Clocksin and Mellish at the University of Edinburgh continued their masterpiece, and today their version called "C & M syntax" or "Edinburgh syntax" is accepted as the standard. Prolog stands for **Pro**grammation en **Log**ique. It is a logic language that is particularly used by programs that use non-numeric objects. For this reason it is a frequently used language in Artificial Intelligence where manipulation of symbols is a common task. Today, Most commercial implementations of Prolog now use this same Edinburgh Prolog syntax======

**Understanding Prolog**
Prolog differs from the most common programmings languages because it is declarative language. Traditional programming languages are said to be procedural. This means that the programmer specify how to solve a problem.

In declarative languages the programmers only give the problem and the language find himself how to solve the problem. Although it can be, and often is, used by itself, Prolog complements traditional languages when used together in the same application. Example of procedural situation:

mix ingredients; beat until smooth; bake for 20 minutes in a moderate oven; remove tin from oven; put on bench; close oven; turn off oven;

This is written as declarative languages which the programmer only states what the problem is and the language system will solve the problem itself. It is merely by giving facts to the program, query the program to analyze and give us the solution.

__APPLICATIONS__
//**Practical Application of Prolog** By Al Roth (Al Roth is a freelance writer and group secretary of the Prolog Vendors Group) Source: AI Expert, April 1993 // "Prolog is no longer confined to research laboratories, but is now considered to be a powerful tool for the development of commercial applications." **Prolog Technologies** Prolog is nowadays not as trendy as it used to be, although at one time it was the main competitor of Lisp (at least for AI-people living in Europe). However, it is often said that it is an advantage to learn Lisp even if it is just for the learning experience. A.I is a one of good example for showing Prolog applications.There are some application of Prolog in A.I which applied today :

**Entertainment & Games**
media type="youtube" key="0AHPMFpvkGU" height="344" width="425"

You can buy machines that can play master level chess for a few hundred dollars. There is some AI in them, but they play well against people mainly through brute force computation--looking at hundreds of thousands of positions. To beat a world champion by brute force and known reliable heuristics requires being able to look at 200 million positions per second.

**Natural Language Processing**
media type="youtube" key="Sx3Fpw0XCXk" height="340" width="560"

Just getting a sequence of words into a computer is not enough. Parsing sentences is not enough either. The computer has to be provided with an understanding of the domain the text is about, and this is presently possible only for very limited domains.

media type="youtube" key="DsVUySikcVw" height="344" width="425"** This robot was developed by Ford.His name was Hank and he could actually understand what you were saying and respond to you.
 * Artificial intelligence in robotic


 * Computer Vision**

 The world is composed of three-dimensional objects, but the inputs to the human eye and computers' TV cameras are two dimensional. Some useful programs can work solely in two dimensions, but full computer vision requires partial three-dimensional information that is not just a set of two-dimensional views. At present there are only limited ways of representing three-dimensional information directly, and they are not as good as what humans evidently use.

Examples of applications of computer vision systems include systems for:
 * Controlling processes
 * Detecting events
 * Organizing information
 * Modeling objects or environments
 * Interaction



Another application of prolog is The Youbet Architecture. The Youbet architecture is website([]) that provides a real-time racing and handicapping services for established horse racing costomers. This site can be access by 60 countries and provides many services to the customer such as infromation product sales,live audio/video and soon. This site architecture using the prolog rule base to performs it functions. This using the //N-Tier Architecture// to connect the web browsers through a session layers, databased and the vendor systems. The vendor interchange, and the codification of business rule are all implemented through messaging middleware of the application tier. A java based application server with an integrated Prolog rule base will perform this functions. The process of interfacing the Prolog rule base with Java very simple using Prolog implementation such as Amzi! Prolog + Logic Server. When the Amzi.ls package is imported into the Java application, we can **consult** the Prolog files. We also can optimize or extend the Prolog by using mapping Java methods to extended predicates, which called from the Prolog code.

 **Figure 1: N-Tier Architecture**

**Figure 2: Application Server Architecture**

A ``knowledge engineer'' interviews experts in a certain domain and tries to embody their knowledge in a computer program for carrying out some task. How well this works depends on whether the intellectual mechanisms required for the task are within the present state of AI. When this turned out not to be so, there were many disappointing results. One of the first expert systems was MYCIN in 1974, which diagnosed bacterial infections of the blood and suggested treatments. It did better than medical students or practicing doctors, provided its limitations were observed. Namely, its ontology included bacteria, symptoms, and treatments and did not include patients, doctors, hospitals, death, recovery, and events occurring in time. Its interactions depended on a single patient being considered. Since the experts consulted by the knowledge engineers knew about patients, doctors, death, recovery, etc., it is clear that the knowledge engineers forced what the experts told them into a predetermined framework. In the present state of AI, this has to be true. The usefulness of current expert systems depends on their users having common sense.
 * Expert Sytem**

One of the most feasible kinds of expert system given the present knowledge of AI is to put some information in one of a fixed set of categories using several sources of information. An example is advising whether to accept a proposed credit card purchase. Information is available about the owner of the credit card, his record of payment and also about the item he is buying and about the establishment from which he is buying it (e.g., about whether there have been previous credit card frauds at this establishment).
 * Heuristic Classification**


 * Other Applications**
 * intelligent data base retrieval
 * specification language
 * machine learning
 * robot planning
 * automated reasoning
 * problem solving

__REFERENCES__
1. [] 2. [|http://www.cse.unsw.edu.au/~billw/cs9414/notes/prolog/intro.html] 3. [] 4. [] 5. [] 6. http://www.amzi.com/articles/youbet.htm[|6.]

**__AUTHORS__**
Noor Fadhlihana Bt Muhamad Asral Norsulianaeliani Abdul Wahab Nur Aimi Binti Abdullah Sani Izzah Izzati Hamzah Nurashidah Rosman