Loading ...
Sorry, an error occurred while loading the content.

788Re: [aima-talk] Performance Measure

Expand Messages
  • Abhijeet Sinha
    Oct 2, 2007
    • 0 Attachment
      Hey,
              I don't know if i would be able to explain it to you very well, but i would still like to make a try.

      In the vacuum cleaner agent we assume that the environment consist of two squares. The agent can sense the square in which it is present, and if any dirt is present in that square.
      The first PEAS description says that "Clean squares remain clean"; the agent gets one point for each clean square at each time. If 1000 time steps would be considered then our agent will score anything above 998(if initially  both squares were dirty) to 1000 (if initially none of the squares were dirty).

      Now in the next description, it is proposed that the vacuum-cleaner agent would be wasting energy if it is allowed to move to the other square if both the squares are clean. So very rightly the performance measure deducts one point for moving into a clean square.
      • If the agent starts with both the squares as dirty and then continues for 1000 time steps as before i.e not stopping if both the squares are clean then it would score -ve 998.
      • Similarly if the agent would have started with one of the squares as dirty and continues for 1000 time steps then it would end up in a score of -ve 999.
      So having one more assumption makes out earlier agent ir-rational.
      So the agent function has to be modified. For this agent, we could consider the following agent function:

      function VACUUM_CLEANER_AGENT ( location , state ) returns action
      ka = 0;  internal memory for square A
      kb = 0;  internal memory for square B

      if ( state == dirt ) then return SUCK
      else if ( ka + kb < 2 ) and location = A then {  ka=1 ; return RIGHT }
      else if ( ka + kb < 2 ) and location = B then {  kb=1 ; return LEFT }
      else if ( ka + kb == 2 ) return NOP

      Here we have ka & kb as state memory as said in 2.9

      Abhijeet.


      On 10/2/07, Chuck Wolber <chuckw@...> wrote:


      This is with regards to AIMA 2nd Ed, page 36.

      The description says that if a performance penalty of one point is
      assessed, the agent will fare poorly. I'm at a bit of a loss to explain
      how the agent could ever perform well in that situation. If, as the first
      bullet indicates, the agent gets one point at each time step for a clean
      square, and loses a point for each movement, wouldn't that mean the agent
      could never possibly score higher than 1 or lower than 0 at the end of its
      run if a peformance penalty is assessed?

      (This same scenario is referenced in question 2.9, but I believe my
      question only asks for clarification, not an answer.)

      ..Chuck..

      P.S. The aima-java class TrivialVacuumEnvironment.java awards 10 points
      for a clean square, rather than the one point that seems warranted based
      on the rules outlined on page 36. Which is correct? I emailed Ravi Mohan
      about that, but never received a response.


    • Show all 5 messages in this topic