Re: [Cleveland-AI-ML-support-group] Study Progress

From: Joe
Sent on: Thursday, September 1, 2011 10:39 PM
 Thanks for the thought stimulating reply Tim. I'm still pulling my thoughts together on this. When I wrote that yesterday, in refering to 'search process component' I was thinking of a process of interaction involving the diagram in figure 2.13, with the search functionality being done by some component arrangement within the framework that I hadn't yet encountered in the book. But now after more study of chapter 3 and working on how the framework ideas of chapter 2 may apply to chapter 3, I see that I was reading too much into the general English description diagram of 2.13. Yesterday I was thinking of the framework as something like a flowchart you could put together with component blocks, but with further study today, I'm thinking the framework is a set of data structure, algo and data representation choices and the choice of their composition together.

 Up until a short while ago, this paragraph on p. 48 was the most frustrating part of the book for me:
Finally, Section 2.4.7 describes the variety of ways in which the components themselves can be represented within the agent. This variety provides a major organizing principle for the field and for the book itself.

 Section 2.4.7 on first reading seemed so surprisingly shallow that I forgot about it almost instantly. All it explains is 3 basic very general categories of data representation types-atomic, factored and structured. I thought for a while today about why that would be stressed as a major organizing principle. I think the answer is the major goal of AI design as explained by the book-approximating the huge set of perfect rationality with a program, and the fact that different data representations are only appropriately used with particular AI components. So the optimum data representation choices is a fundamental 'machine oil' that directly determines the resolution of the agents behavior and what components create that behavior.

 The book partly answers the question of 'must search use atomic representation' here:
The algorithms underlying search and game-playing (Chapters 3-5), Hidden Markov models (Chapter 15), and Markov decision processes (Chapter 17) all work with atomic representations—or, at least, they treat representations as if they were atomic.
p. 58

 I think search probably is involved in planning, but it might temporarily 'wrap up' a none atomic state when doing that.

 Your description of an atomic representation of a tictactoe board I believe is correct as a way to transform a matrix board state into an atomic datum. But it also sounds like maybe your description is of a table of all tictacto positions. I'm thinking by the books logic that that would fall under the category of a 'model based reflex agent' rather than a 'problem solving agent.' The difference being that the reflex agent uses a one step boolean lookup table and the problem solving agent uses search to find a sequence of actions that satisfies a goal. I think the way to have an atomic board representation in tictacto for use in a search function would be to do it the same way it's done in chess, which is to assign a board state node found in a search tree an evaluation number. In chess that number depends most of all on the 'material' score of the pieces. A queen is 9, a rook 5,etc. In tictactoe a 3 in a row would be 10, a double two in a row would be 9,etc. Btw I think the book at some point calls the chess minimax function a multi agent system, but I don't see why it should be.

 I think the equivalent of a time slice for a sequence of street driving actions would be equal to the ordered position of an action within it's set of actions. I think the answer to my question of 'is a map atomic' is no, but the current world state for the agent can be atomic,because the current world state it is dealing with in any given 'time slice' is the current city it's in. (it's driving between cities) While the 'model' for the agent contains the none atomic map. I think the book didn't do a good enough job distinguishing between 'current world state' and 'unobserved inferred world state stored in the model.'
 There goes another 20 minutes. Hope to see you at a meeting Tim. Welcome new member David Coulson, especially if you read this far.


--- On Thu, 9/1/11, Tim Musson <[address removed]> wrote:

From: Tim Musson <[address removed]>
Subject: Re: [Cleveland-AI-ML-support-group] Study Progress
To: [address removed]
Date: Thursday, September 1, 2011, 6:41 PM

I'm not entirely sure what you mean by "search process component", but I think that chapters 7 and 11, which deal with planning agents, will show planning done in unknown and possibly dynamic environments (e.g. firefighting robot that puts out a candle in an unknown environment, ala I think you just need to be able to detect changes in your environment and re-plan as necessary.

Regarding atomic world state representation, what comes to mind is tic-tac-toe. If you code each possible board configuration as a number (state), you should be able to train a program to find one of the guaranteed-win first moves without that program even knowing that a state represents X's and O's on a 3x3 grid. The program simply knows the starting state, legal transitions from one state to another, and which states are win/loss/tie conditions. Thus, the entirety of the world is captured in a single (atomic) number. I think this also extends to chess, but the huge problem space is what disallows a brute-force solution.
Regarding your mention of a problem using a map with streets, you need to introduce some element of time. First, create a starting position. Then, for every time slice, create a new world state for every possible decision that your problem-solving agent can make. The easiest representation for this that I can think of is to allow your agent only 3 moves: go forward 1 block; turn left; and turn right. A quanta of time is a single move. Now your world states are defined as all possible combinations of those moves from your start position t your end goal. You can still define atomic world states even if you extend the world to include multiple agents and reduce the sampling time from 1 block down to a millisecond of steering time. The problem is that the number of states quickly grows beyond your ability to analyze them and necessitates a different approach.

I'm very busy the next two weeks, but hope to get more involved and committed after that. I did sign up to receive a certificate, and hope to stick with it :)


On Thu, Sep 1, 2011 at 12:01 AM, Joe <[address removed]> wrote:
 After reading the Linear Algebra review in an appendix of the AI book, I can see that the Videos and problems already posted on the wiki so far look close to sufficient for an LA prep for the AI class. The ML class wiki will need a bunch more LA videos and questions, as that class looks pretty demanding mathematically. I added more flashcards for a chapter 3 prep on O notation and NP-complete, although they use too much formal language from Wikipedia. I haven't gotten to any probability review material yet but I guess that's a good topic for week 3.

 After rereading chapter 2, I realized my earlier idea of what an agent is was mistaken. I was mixing up a 'component' of an agent with the agent itself. An agent is a useful concept of an entity that perceives and acts rationally in an environment. That's useful, because it's an accurate conceptual starting point for describing what an AI bot actually is. Upon the agent concept, a well built theoretical and pragmatic tested framework for classifying all types of AI bots is described. And the main goal of building any AI bot is logically explained-to build the components of the bot's framework in a well designed way such that the bot's behavior reasonably full fills the ideal set of rational behaviors for it's task. The full set of ideal behaviors for most tasks being too large to handle as a database.

  I think that's ultra powerful, because the book is basically giving a recipe for how to build an AI bot for any purpose. All that's needed to do that, is to understand A. the framework theory, B. how to choose the right framework system for a given a problem, and C. how to customize templates of components to create that particular framework system.

 Using that framework, I can see that search, the topic of chapter 3, is a process to make use of the information in a model based agent to select a sequence of actions to achieve a goal. That's a different way of looking at it than the algo oriented way I had previously. I was previously thinking of ch 3 as describing some new search algo twists, but now I see it as describing how search algos apply to the AI framework as a component. This AI programming specialty thing is much more developed as a coherent whole than I realized. It looks like the turning point was work done in 87 to 95 as explained a bit at the end of ch 2.

  I think a search process component only makes sense to use in a task environment that is deterministic, sequential, static, discrete and known. Does anybody see any exceptions to that? One thing I didn't understand about the beginning of ch 3 at first is the books statement that the problem-solving agent's of that chapter use atomic world state representation. Isn't a map of streets something more than atomic? I think I might know the answer to that, but first what do you all think of that question?


Please Note: If you hit "REPLY", your message will be sent to everyone on this mailing list ([address removed])
This message was sent by Joe ([address removed]) from Cleveland AI + ML support group.
To learn more about Joe, visit his/her member profile
To unsubscribe or to update your mailing list settings, click here

Meetup, PO Box 4668 #37895 New York, New York[masked] | [address removed]

Please Note: If you hit "REPLY", your message will be sent to everyone on this mailing list ([address removed])
This message was sent by Tim Musson ([address removed]) from Cleveland AI + ML support group.
To learn more about Tim Musson, visit his/her member profile
To unsubscribe or to update your mailing list settings, click here

Meetup, PO Box 4668 #37895 New York, New York[masked] | [address removed]

Our Sponsors

People in this
Meetup are also in:

Sign up

Meetup members, Log in

By clicking "Sign up" or "Sign up using Facebook", you confirm that you accept our Terms of Service & Privacy Policy