Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

3. Write a propositional knowledge base for playing tic-tac-toe. The rules are players alternate placing pieces (X or O) on a 3x3 board; a win

image text in transcribed

image text in transcribed

3. Write a propositional knowledge base for playing tic-tac-toe. The rules are players alternate placing pieces (X or O) on a 3x3 board; a win is defined as when a player has 3 of their pieces in a row, column, or diagonal Suppose we use a propositional encoding of the game state as follows: Xij means there is an X in row i, column j, Oij is for O pieces, and ?ij indicates a blank position. For example, the board below is described by the following propositional sentence: {XIIA? 12A? 13aO2IA?22A?23/031^?320x33} (top-left is 1,1) The goal is to write rules in propositional logic for where player 1 (the computer, assumed to be X) should place its next piece. In the board shown above, the best move would be in the middle (2.2), which we can represent as a propositioin moveX22. The reason this is the optimal move is that X can win (canWinX22). In other situations, X might not be able to win, but is forced to make a move to block a potential win by O, as in the following (forcedMoveX32). Note that you only need to make a forced move if there is no way X can win outright Co Write rules to infer all desirable moves (for X) based on the above strategies. Hint you might want to define rules for when placing a piece (X or O) in each postion (i.j) would be a win for that player, and then use this to build up more general rules like for canWinX, canWinO, forcedMoveX, etc. Note that there might be multiple optimal moves in a given situation (in which case, one could be chosen at random; this does not need to be encoded in your rules; see example below). (For a complete tic-tac-toe-playing program, there would be other cases you would need to handle as well, such as defining opening moves, and what to do if there are no positions where canWinX or forcedMoveX. An intelligent player-program might attempt to place two pieces in a row to setup a future situation where there will be two ways to win and the opponent can only block one. You might think 3. Write a propositional knowledge base for playing tic-tac-toe. The rules are players alternate placing pieces (X or O) on a 3x3 board; a win is defined as when a player has 3 of their pieces in a row, column, or diagonal Suppose we use a propositional encoding of the game state as follows: Xij means there is an X in row i, column j, Oij is for O pieces, and ?ij indicates a blank position. For example, the board below is described by the following propositional sentence: {XIIA? 12A? 13aO2IA?22A?23/031^?320x33} (top-left is 1,1) The goal is to write rules in propositional logic for where player 1 (the computer, assumed to be X) should place its next piece. In the board shown above, the best move would be in the middle (2.2), which we can represent as a propositioin moveX22. The reason this is the optimal move is that X can win (canWinX22). In other situations, X might not be able to win, but is forced to make a move to block a potential win by O, as in the following (forcedMoveX32). Note that you only need to make a forced move if there is no way X can win outright Co Write rules to infer all desirable moves (for X) based on the above strategies. Hint you might want to define rules for when placing a piece (X or O) in each postion (i.j) would be a win for that player, and then use this to build up more general rules like for canWinX, canWinO, forcedMoveX, etc. Note that there might be multiple optimal moves in a given situation (in which case, one could be chosen at random; this does not need to be encoded in your rules; see example below). (For a complete tic-tac-toe-playing program, there would be other cases you would need to handle as well, such as defining opening moves, and what to do if there are no positions where canWinX or forcedMoveX. An intelligent player-program might attempt to place two pieces in a row to setup a future situation where there will be two ways to win and the opponent can only block one. You might think

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

Transact SQL Cookbook Help For Database Programmers

Authors: Ales Spetic, Jonathan Gennick

1st Edition

1565927567, 978-1565927568

More Books

Students also viewed these Databases questions

Question

What is the size of the shortage or surplus at a price of 18

Answered: 1 week ago