Logic-based expert systems - artificial intelligence, Computer Engineering

Assignment Help:

Logic-based Expert Systems - Artificial intelligence:

Expert systems are agents which are programmed to make decisions about real world situations. They are put together by utilizing knowledge illicitation techniques to additional information from human experts. A specific fruitful area is in diagnosis of diseases, where expert systems are utilized to select what disease a patient has given their symptoms.

Expert systems are one of the major success stories of Artificial Intelligence. Russell and Norvig give a very nice example from medicine:

"A leading expert on lymph-node pathology describes a fiendishly hard case to the expert system, and checks the system's diagnosis. He scoffs at the response to the system. Only slightly worried, the creators of the system suggest he command the computer for an explanation of the diagnosis.In this casethe machine points out the main factors influencing its decision and explains the subtle interaction of many of the symptoms. Eventually, the experts admit his error."

Often,  the  instructions  from  the  expert  are  encoded  as  if-then  instruct  in  first-order  logic  and  the implementation of the expert system may be fairly simply achieved in a programming language such as Prolog.

We can take our card game from the previous chapter as an instance for the implementation of a logic-based expert system. The instructions were: 4 cards are laid on the table face up. The Player 1 selectsthe first card, and in turns, they take it till they both have two cards each. To see who has won, they each add their 2 card numbers, and the winner is the 1 with the biggest even number. The winner scores the even number they have. If there is no even number, or both players gain the same even number, then the game is draw.

It could be argued that undertaking a minimax search is not very essential for this game, because we could simply just specify a set of rules for each player, so that they select cards rationally., we will derive down some Prolog rules to demonstrate thiswhich specify how player one should select the first card.

For instance, imagine the cards dealt were: 4, 5, 6, 10. In this case, the best selection of action for player 1 is to choose the ten, followed presumably by the 4, because player 2 will pick the 6. We have to abstract from this particular example to the general case: we see that there were 3 even numbers and 1 odd one, so player 1 is guaranteed another even number to match the one they chose. This is also true if there are 4 even numbers. So we have our first rule:

  • If there are 3 or 4 even numbered cards, then player one should choose the highest even numbered card in their first go.

When there are 3 or 4 odd cards it is not hard to see that the most rational action for player one is to select the highest odd numbered card:

  • If there are 3 or 4 odd numbered cards, then player 1 should select the highest odd numbered card in their first go.

The only other situation is when there are 2 even and 2 odd cards. I will leave it as an exercise to convince you that there are no instructions governing the choice of player one's first card: they can simply choose randomly, because they are not going to win unless player two makes a mistake, inthis type of case.


Related Discussions:- Logic-based expert systems - artificial intelligence

Secondary memory and characteristics, It is desirable that operating speed ...

It is desirable that operating speed of primary storage of a computer system be as fast as possible since most of the data transfer to and from processing unit is via main memory.

Difference between visual basic, Visual basic is useful if you are planning...

Visual basic is useful if you are planning to make the programs from scratch. This language helps you in producing Active x controls, exe files, etc. Visual script is a powerful t

What are the address-sequencing capabilities, What are the address-sequenci...

What are the address-sequencing capabilities required in a control memory? i. Incrementing the control address register ii. Unconditional branch as specified by address fiel

What are function modules, What are function modules? Function m...

What are function modules? Function modules are general-purpose library routines that are available system-wide.

What is the purpose of putchar function, What is the purpose of putchar fun...

What is the purpose of putchar function Putchar writes one character to the standard output file, stdout. Syntax #include int putchar(int c); The putchar macro wr

Grapgh, representation of the adjacency matrix and adjacency list

representation of the adjacency matrix and adjacency list

Communications and synchronization, Communications Parallel tasks class...

Communications Parallel tasks classically need to exchange data. There are many ways in which this can be accomplished, such as, through a network or shared memory bus. The act

Describe the architecture of electronic data exchange, Describe the Electro...

Describe the Electronic Data Exchange (EDI) architecture in brief. Electronic Data Interchange (EDI) may be generally easy to understand as the replacement of paper-based purch

binary division program for signed integer, The program division.c is avai...

The program division.c is available for download as part of this assignment. It is a binary division program which works for signed integers. It contains a function, div32, which d

Explain high performance of instruction execution, Q. Explain High performa...

Q. Explain High performance of Instruction execution? High performance of Instruction execution: While mapping of HLL to machine instruction the compiler favours relatively sim

Write Your Message!

Captcha
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