Design a prolog script that plays the role of an answerer

Assignment Help Computer Engineering
Reference no: EM132277125

Assignment: Artificial Intelligence Assignments

Instructions: You will need to do one assignment out of these four assignments. Please discuss with the faculty member for the assignment number assigned to you.

Code Documentation and General Requirements

Codes for all programming assignments should be well documented. A working program with no comments will receive only partial credit. Documentation entails writing a description of each predicate and rule as well as comments throughout the code to explain the program logic. Comments in Prolog begin with a /* and end with */. It is understood that some of the exercises in this programming assignment require extremely little code and will not require extensive comments. Nevertheless, comments describing recursions and helper predicates are required.

While few programming assignments pretend to mimic the "real" world, they may, nevertheless, contain some of the ambiguity that exists outside the classroom. If, for example, an assignment is amenable to differing interpretations, such that more than one algorithm may implement a correct solution to the assignment, it is incumbent upon the programmer to document not only the functionality of the algorithm (and more broadly his/her interpretation of the program requirements), but to articulate clearly the reasoning behind a particular choice of solution.

Less than 10 pages report has to be submitted along with the documented code.

Extra marks will be given for design, creativity and interactivity. You are free to work only using Prolog or using multiplatform to achieve the goal of your assignment. Multiplatforms may be Java+Prolog/C+Prolog/ or any other platform of your choice. The core logic should be implemented in Prolog. The project should be executable by the examiner. You may submit a video recording of your assignment sample execution (you may use screen capture/recording app), if it helps in conveying your assignment.

Assignment 1: Ten questions

In the two-people game of ten questions, one person is answerer and the other person is questioner. They decide one topic to confine the scope, say Olympics games. The answerer decides an Olympic game in his/her mind and does not reveal the game to the questioner. Questioner is supposed to ask a maximum of ten questions to guess the answer.

Design a prolog script that plays the role of an answerer. For example, queries can be related to:

• Team size (2 for badminton doubles, 1 for swimming)

• Number of teams in a game (2 for badminton doubles, many for swimming)

• Arena type (court for badminton doubles, pool for swimming)

• Play device (shuttle cock or racket for badminton doubles, water for swimming, ball or racket for tennis, javelin for javelin throw, etc.)

• Game mode (knock out, timed)

• Performance type (score, win)

There should be only one form of query, for example: has(ball), has(pool), has(team), has(teamsize,2), has (teams_per_game, 2), etc. And one form of decision: is(badminton).

Prolog script should be able to play the game 5 times, choosing a different game each time.

Assignment 2: Kid's day at school

Assume that the prolog script is a parent, trying to know about a kid's day at school. The prolog script should converse intelligently with the kid as follows. The prolog script should ask a question to the kid that kid can answer in yes or no. Depending on whether the answer is yes or no, prolog script should ask a related question or another random question. For example, if the kid says yes to whether it ate or not, the query can be a food item, or whether the kid used fork or spoon, or whether the kid washed hand. Similarly, related to games.

Assignment 3: Subway sandwich interactor

The prolog script offers different meal options, sandwich options, meat options, salad options, sauce options, top-up options, sides options etc. to create a customized list of person's choice. The options should be intelligently selected based on previous choices. For example, if the person chose a veggie meal, meat options should not be offered. If a person chose healthy meal, fatty sauces should not be offered. If a person chose vegan meal, cheese top-up should not be offered. If a person chose value meal, no top-up should be offered.

Assignment 4: Patient with a sympathetic doctor

Assume that the prolog script is a sympathetic doctor, conversing with a patient who can answer only yes or no. The doctor should be able to diagnose the patient's condition while asking question sensitively depending upon patient's pain level and mood level. You can choose 5 or more different mood considerations (calm, angry, etc.) and 5 or more levels of pain. Five or more diseases should be diagnosable, each disease characterized by 5 or more symptoms.

Reference no: EM132277125

Questions Cloud

Briefly explain your understanding of countermeasures : Briefly explain your understanding of countermeasures and defense mechanisms that could be used to protect an organizations environment. Make sure to cite.
Social media on the job affect person ability : How might overuse of social media on the job affect a person's ability to receive important business messages?
Define and discuss the various business models : Define EC. Define and discuss the various types of EC, i.e. B2B, B2C etc. Define and discuss the various business models used in EC. How do the business models.
Using peers to review the research of their colleagues : Discuss ONE BENEFIT and ONE DETRIMENT of using peers to review the research of their colleagues.
Design a prolog script that plays the role of an answerer : NanYang Technological University. Design a prolog script that plays the role of an answerer. For example, queries can be related to: Team size (2 for badminton
Explain three different employee development methods : Explain three different employee development methods and their benefits. with reference
What can substitute the function of HR department : What can substitute the function of an HR department? Please give at least three substitutions and supporting reasons.
Different areas of healthcare management practice settings : What are the different areas of healthcare management practice settings? Describe the types of positions and responsibilities in these various areas.
Who of our current customers is next to leave Virgin Media : Assessment - Group report: Understanding Virgin Media customer churn. Task 1: Identify who of our current customers is next to leave Virgin Media

Reviews

Write a Review

Computer Engineering Questions & Answers

  Create a test routine for collecting interpretable data

Design suitable device configurations to produce meaningful results. Create a test routine for collecting interpretable data.

  Discuss the number of exchanges used by radix-exchange sort

Compare the number of exchanges used by radix-exchange sort with the number used by Quicksort for the file 001, 011, 101, 110, 000, 001, 010, 111, 110, 010.

  Write down the program in vb.net

Write down the program in VB.Net with a graphical user interface. Make the program Web based.

  What approaches can you use to better understand your team

What challenges have you had or do you have understanding your team? Based on the video, what approaches can you use to better understand your team?

  Create a mips asm program that requests for three numbers

Create a MIPS asm program that requests for three numbers from the user. Month, Day, and Year. You may assume that a valid date is given.

  Calculates the wind chill temperature

Write a script file that does the following operations. Using the MATLAB built-in function plot function, plot Twc (in red colour) for o 32 F Ta ?

  How to modify the pseudo-code for dijkstras algorithm

Show how to modify the pseudo-code for Dijkstra's algorithm for the case when the graph is directed and we want to compute shortest directed paths.

  What is text mining and what is the purpose of it

You need to research the topic and discuss the topic in at least 400-500 words with references. A post without a reference will not count as a discussion.

  Write a program that will validate credit card transaction

Implement a C++ program that prompts the user for the details of a credit card transaction.

  What causes some operating systems to gain in popularity

What conclusions can be drawn about the evolution of operating systems? What causes some operating systems to gain in popularity and others to fade?

  How would you propose the update to star topology

How would you propose the update to Star topology

  What happened in the given problem how can you fix it

A few days later, however, you are not surprised when your manager expresses disappointment that the SCSI-3 upgrade does not seem to be delivering the performance improvement that she expected. What happened? How can you fix it?

Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd