Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

Consider the following vacuum-cleaning world which has 3 squares We assume the f

ID: 3743447 • Letter: C

Question

Consider the following vacuum-cleaning world which has 3 squares We assume the following .The vacuum-cleaning agent knows the configuration of the 3 squares, but does not know which square it is in initially. The initial dirt distribution is not known either .A clean square remains clean and a dirty square remains dirty unless the agent cleans it up. The agent has two sensors: Loc(x) and Status(x). Loc(x) returns the identity ("A" or "B" or "C") of the square x that the agent is located, and Status(x) returns either "Dirty" or "Clean for the square X. Assume that the sensors are 100% reliable Th actions available for the agent are: Left, Right, Suck, NoOp. Each action takes place in The actions are perfectly reliable - perform "Suck" in dirty square will change it to become The agent will be penalized by -1 point for each movement Left, Right, Suck. The agent gets · For a time horizon T (say T = 100) steps, the agent is penalized by-2 points per dirty square one time "step" clean, and moving left when in square C will get the agent to square B +10 points reward for each dirty square cleaned. per time step. (If a square is dirty at the "start" of time step t and the agent performs "Suck" at this time step, the square becomes "clean" at the "end" of step t. Thus for time step t for this particular square, no penality should be applied to the agent) The agent's performance is measured by the total number of points (positive or negative) over T- 100 time steps. (a) Design a simple reflex agent (without states) for this problem - provide pseudo-code for the agent and define the "condition-action" rules. Can such an agent be perfectly rational (i.e., maximizing the expected performance measure) for any initial agent location and dirt distribu- tion? Explain your answer (b) What about a reflex agent with states (i.e., an agent which has an internal state representation of the world environment)? Can such an agent be perfectly rational under the current assump- tions? Design such an agent (pseudo-code, rules, or look-up table, etc.) (c) Now assume that the agent's dirt sensor is more powerful which provides complete information about dirty/clean status of every square in the environment. Can a simple reflex agent be per fectly rational now? And if so, design such an agent (pseudo-code, rules, or look-up table, etc

Explanation / Answer

a) Agent without state information cannot be completely rational due to the obvious reason (Since it doesn't know initially which square has more dirt distribution).

PROGRAM Agent:

START

PROCEDURE CheckAndClean :

IF Status Of Current Square is Dirty

THEN CALL Suck;

END IF

END PROCEDURE

CALL CheckAndClean;

IF location is A

THEN

CALL Right;

CALL CheckAndClean;

CALL Right;

CALL CheckAndClean;

END IF

ELSE IF location is B

THEN

CALL CheckAndClean;

CALL Left;

CALL CheckAndClean;

CALL Right;

CALL Right;

CALL CheckAndClean;

END IF

ELSE IF location is C

THEN

CALL CheckAndClean;

CALL Left;

CALL CheckAndClean;

CALL Left;

CALL CheckAndClean;

END IF

END

b) Yes, it can be perfectly rational if it has the capability to maintain states.

PROGRAM RationalAgent:

START

PROCEDURE CheckAndClean :

IF Status Of Current Square is Dirty

THEN CALL Suck;

END IF

END PROCEDURE

CALL CheckAndClean;

IF the location of the square is A

IF Square B is Dirty // Use a mapping table.

THEN

CALL Right;

CALL Suck;

END IF

IF Square C is Dirty

THEN

CALL Right;

CALL Suck;

END IF

END IF

IF the location of the square is B

IF Square A is Dirty

THEN

CALL LEFT;

CALL Suck;

IF Square C is Dirty

THEN

CALL Right;

CALL Right;

CALL Suck;

END IF

END IF

ELSE IF Square C is Dirty

THEN

CALL Right;

CALL Suck;

END IF

END IF

IF the location of the squre is C

IF Square B is Dirty

THEN

CALL LEFT;

CALL Suck;

IF Square A is Dirty

THEN

CALL Left;

CALL Suck;

END IF

END IF

ELSE IF Square A is Dirty

THEN

CALL Left;

CALL Left;

CALL Suck;

END IF

END IF

END

c) Yes. Equivalent to b, only difference is that it will get the status dynamically every single time. Pseudocode also remains same as B.

Hire Me For All Your Tutoring Needs
Integrity-first tutoring: clear explanations, guidance, and feedback.
Drop an Email at
drjack9650@gmail.com
Chat Now And Get Quote