Cognitive Robotics

 

Force Dynamic Modeling

Page history last edited by Nicholas Davis 3 mos ago

Center for Cognition and Culture

Meeting Proceedings 8/19/09

Two crucial aspects of the program: 1) Kinetic—the program must show events in motion, 2) Dynamic—the forces of the environment must influence the behavior of the agent.

The location of the goal is given to the agent. A straight path is calculated to that goal regardless of barriers in the environment. The agent is not aware of barriers at this point. Once the agent approaches a barrier, it will be causally repelled. The agent is reactive to the barriers and objects populating the environment. To start, we will focus on 1 scenario, the basic agent—goal—barrier scenario.

•    The force dynamic environment must be: omniscient when the agent is intending to reach the goal and causal when the agent interacts with elements in the environment—intentionally global and causally local.

o    When the agent intends to get to the goal, it bases its path from an omniscient viewpoint calculating a straight line.

o    When the agent runs into a barrier while on the way to that goal, the reaction is causal.

•    The agent ‘bounces’ off of the wall            

•    Next, it moves one unit along the contour, a part of the causal response—a reflex.

•    Then, omniscient viewpoint is reactivated and a goal path is made to the target. No movement cost is calculated.

•    Omniscient mode provides a straight path.

•    Causal mode follows a certain rule set, presumably some kind of very basic physics engine.

-First part of the path is intentional, after hitting the barrier it is causal, must be programmed differently.

- Internal Rhythm: After get to the barrier, pick direction along barrier, move one unit, calculate path to goal, go towards goal, repeat to perfection.

 

Center for Cognition and Culture

Meeting Proceedings 8/5/09

 

Three program modes:

Force Dynamic Modeling

 

LARCS Project Report

 

Center for Cognition and Culture

Three program modes:

 

1)    Editor

 

a.    Determine the actants, goals, barriers, and helping objects present in the computational narrative

 

2)    Presentation

 

a.    Shows one path that the agent decided to take based upon the forces involved

 

b.    Agent must act in order to receive more information about the situation

 

c.    The knowledge of the agent is limited to his local environment

 

d.    Agent can recount the motivation, reasoning, and rational structure of the forces influencing his decision and create a narrative about solving the map.

 

3)    Analysis

 

a.    Shows all possible paths and state changes and the overall forces of each

 

b.    Omniscient viewpoint

Factors contributing to the force dynamic:

 

1)    Movement cost = distance

 

a.    Every block on the grid has a ‘movement cost’ relative to the agent’s current location.

 

b.    The algorithm sums the number of steps it takes to reach every point on the map and that value is the movement cost.

 

2)    Confidence that the object property currently under inspection matches properties required by the current barrier type = (quality and correctness of information / perceptual range of the agent)

 

a.    When a barrier blocks the agent, it looks up in its knowledge database what kind of objects would help overcome this barrier. With these object properties in mind, the agent searches through the world for a match. 

 

b.    Perceptual range is how far the agent had to extend its visual range in order to ‘see’ an object property.

 

i.    Seeing an object property really means that lines emanating from the agent’s location have intersected one of the concentric circles surrounding the objects in the environment.

 

ii.    The concentric circles each offer a property of the object when intersected by the agent’s ‘perceptual ray’.

 

c.    To calculate confidence, the agent verifies that the found object property aligns with the properties of the object that will help overcome the barrier

 

d.    To simulate visual acuity, the quantitative value assigned to the quality of information is divided by the perceptual range.

 

i.    The quality is based upon the type of information. In the outermost concentric circle, the agent has access to the size of the object, next the shape, then the semantic title. The agent first perceives form, then function, and finally the name.

 

ii.     This creates an inverse relationship between the agent’s distance (as defined by the perceptual range) and the confidence the agent has that this is indeed the object property it was searching for.

3)    Attraction = (Confidence / Movement Cost) *goal number

 

a.    The extent to which the agent believes this path will solve the current goal.

 

b.    Multi-Goal-Model: In the multi goal model (see pp.3-5) multiple goals are active at once, thereby increasing the number of properties that are relevant, and helping the agent to realize that object A might not be relevant to the current goal, but it may certainly help a prior goal.

 

i.    This model was created to handle the problem of dealing with multiple goals. Should goals be solved sequentially? How should the agent manage its goals? If they are solved sequentially, then objects that may help initial goals would be overlooked, the agent would be ‘distracted’ by the current goal and pass by valuable objects.

 

ii.    To overcome this problem and propose a way to manage goals, every goal should be active, but each contributes to the attraction of objects to varying degrees. Each goal will be assigned a sequential number. The higher numbered goals (i.e. more recent goal) contribute more to attraction.

 

iii.    This means that the agent will give priority to solving the current goal while still acknowledging and working to solve previous goals.

To start the program, the agent must have an intrinsic desire to reach the initial goal. The agent calculates a path and executes this motor script in order to move towards the pre-encoded coordinates motivated by the ‘mental force’ provided by its intrinsic attraction to the first goal. Upon reaching the barrier, the agent realizes achieving the goal is impossible. It must then disregard the attraction of that goal and make sub goals about overcoming the barrier. Now, some objects in the environment become relevant to the agent. This is modeled by having objects that may potentially help overcome the barriers attract the agent. The objects were always in the environment, but the attraction is internal to the agent and is therefore dynamic and based upon the goals of the agent.

 

There are several factors that interact in order to determine the quantitative value of the attraction, or the ‘attractiveness’ of an object to the agent. As outlined above, these are primarily the movement cost and the agent’s confidence that the perceived object property matches the property required to complete the goal. As the agent moves, the attractions should change based on changing movements costs and relevancies. As the agent moves closer to the objects in the environment, it has access to different kinds of information which may prove to verify that this is indeed the object the agent desires, or the additional information could dissuade the agent of the utility of the object, thereby decreasing the attractiveness.  The concentric information model is used to achieve this effect.

 

Each object has multiple rings of information that are available to the agent. This simulates visual acuity. The outer rings provide the most general information about size and shape. The middle ring provides more acute information and the inner ring provides the identity of the object. The type of information influences the agent’s confidence. Generic information gives some indication that this object may be relevant, but one cannot depend on the size of an object to make the final decision of which object to pursue first. Thus, with only generic information, the agent is not very confident that the perceived object will match the object from memory that is required to overcome the barrier. Conversely, when the agent learns the semantic details of the object, namely its title, it has 100% confidence that this title is in fact the same as that from memory. Another factor influences confidence as well, that is the perceptual range of the agent.

 

When the agent sets his new goal, he will survey the environment to look for objects that may help overcome the barrier. This requires increasing the perceptual range of the agent until it collides with the outer ring of attractors in the environment. Every time the perceptual range increases, the accuracy of the information goes down. This allows a wider visual field while taking into account that farther information is not very conclusive, but it may provide important clues. When there are no objects around, an agent could theoretically move about randomly until it reaches an object, it could even systematically explore every inch of the map until every block was known, but this is not naturalistic. The survey environment function is equivalent to humans looking around, and looking into the distance. The agent incrementally increases its perceptual radius until it encounters an information ring in the environment. However, every increment lowers the confidence the agent has in recognizing the object property. This is due to the fact that things in the distance can be recognized on a basic level, but no great detail can be gleamed. Thus, confidence is a function of quality of information (which information ring) divided by the perceptual range of the agent.

 

The next issue is dealing with the multiple goals that could potentially be generated as maps and storylines become more complex. For example, the story could be as follows: I am outside, and I want to get a sandwich from the fridge. I try to go inside, but the door is locked. The keys are locked in the house and my roommate is the only one with a spare. I have to call my roommate to get him to let me in, but my phone is also in the house. I go to the neighbor to use the phone, but the neighbor is not home. I walk to the gas station to use the payphone, but realize I have no change. I ask someone for change, and then call my roommate and he says he will come let me in. Once he arrives I enter the house and get my sandwich.

 

In this scenario, there are multiple goals that need to be prioritized and sorted through in order to ultimately solve the main goal. As the goals change, factors in the environment become more or less relevant. Let us isolate a list of goals in the above scenario:

 

1)    Main goal: get sandwich

 

a.    Goal: Go to fridge

 

b.    Action: Go in house

 

c.    Barrier: House is locked

 

i.    Solution: Get key

 

ii.    Action: Reach for keys

 

iii.    Barrier: Key is locked in

 

1.    Solution: Get someone who has key

 

2.    Action: Acquire communication to the someone

 

3.    Barrier: Communication method is not available

 

a.    Solution: Go to neighbor to use phone

 

b.    Barrier: Neighbor not home

 

i.    Solution: Acquire communication elsewhere

 

ii.    Action: Go to gas station payphone

 

iii.    Barrier: No money

 

1.    Solution:Get Money

 

2.    Call

 

In this sketch, there is a mix of goals, actions to accomplish them, and barriers preventing these actions. Once a new goal and action is set, one’s attention is focused on carrying that plan out. However, during execution of the sub goal, the actant may be confronted with information or objects that actually solve a prior goal, thus each goal search must active to a certain extent. For example, what if one was working to get inside the house to get the sandwich, but one finds a perfectly fresh delicious looking sandwich right outside the door? One should certainly take the closer sandwich and be content. One should not ignore the outdoor sandwich because one’s current objective is to open the front door and go to the fridge. Or if one passes by a friend with a phone on the way to the gas station, one should ask that individual to use their phone rather than go all the way to the gas station. Whenever a better solution presents itself, the agent should be open to new ways to satisfy old goals. In order for this type of intelligent problem solving behavior to emerge, the agent must have every goal active in its mind to some extent at all times. The key is to manage these goals and calculate to what extent each should be active.

 

Each goal may have several factors that contribute to satisfying that goal. For example, after having met the barrier, the agent must ‘remember’ what the requirements are to overcome this barrier, which in the current code are three properties (relating to the concentric information model). The goal, then, is to find any one of these three properties. Does this mean there are actually three goals or is there just one goal with three dimensions? And how should these and other sub goals be stored and organized? There is a computational issue here that needs dealing with, namely the storage of goals and in what order they are executed.

 

 The first method that was suggested to store goals was the computational stack method. This algorithm takes information and places it on a ‘stack’, like a stack of papers, that tells the program which to work on first (the one on top). This approach, in its most basic implementation of ‘last-in-first-out’ (LIFO) meaning that the last goal added to the stack is the first addressed in the situation. But executing goals in this manner runs the risk of rejecting objects that may be relevant to prior goals. Additionally, it is ambiguous if each element in the stack can have several components, such as the multiple object properties relevant to overcome barrier, or if each element is strictly one goal. If goals were organized in this LIFO manner, then the agent would not be naturalistic.

 

This process may be more naturalistic, however, if a new stack is created for each new goal. Each new goal has sub goals of its own, such as above goal of ‘find telephone’ has sub goals of: go next-door, knock on the door, ask for the phone, etc. So, it may make sense to make a stack for each new goal, but there may be a more computationally efficient method for achieving the same result. At any rate, each new stack should have priority over those created before, but every goal should still contribute to the relevance and attraction of every object. Goals should not just be waiting to be activated on the bottom of the stack. With multiple qualities on each problem ‘slot’ in the stack, the agent may come across objects that should be interesting because the object would help solve a goal of the agent’s, but not necessarily the current goal the agent has (in the normal stack scenario). Conversely, if a new stack was created for each goal, then each stack has the potential to be simultaneously contributing to the attraction rating of objects in the environment.

 

If creating a new stack for each goal is not computationally intuitive, the concept may be achieved by searching through a traditional stack each time a new object or object property is encountered. This will ensure that relevant objects in the environment are considered ‘attractive’ to the agent.

 

The key is to keep all goal searches active, but some more active than others. To manage the extent to which goals contribute to attraction, there should be an attention mechanism that determines which goals are the most active: goals that are attended to exert a much larger psychological force upon the agent. The goals that fall outside of the attention of the agent exert significantly smaller psychological force, but importantly, they still contribute, thereby overcoming the sandwich paradox explained above.  These miniscule forces could be said to exist in the ‘unconscious’ of the agent’s ‘mind’. Eventually, the agent should be able to explain which forces are influencing what decisions and provide a narrative of its actions. The agent will not know the contribution of unconscious forces and will therefore only provide an account including those forces that are conscious at the time of the action. The agent is then able to have behavior similar intuitions and gut feelings about the attractiveness of objects even though there is no real connection with conscious goals.

 

By making some goals conscious while others unconscious, the agent can prioritize and try to accomplish the current goals with full vigor, but still have the capacity to recognize solutions to previous goals. Problem solving is then done in parallel rather than sequentially, and parallel processing promises to be more productive and naturalistic. See Figure 1 for an explanation of relationship between the mental attractions an object has versus the goal number that the object potentially satisfies.

 

The width of the attention section on the above graph corresponds to how many goals of which the agent is conscious. Attention has (arbitrarily) 10 units and each goal counts as using up one of those units. The other units may be mental effort devoted to simulating hypothetical paths and solutions. In this model, the agent does not have access to all computations determining the attraction of objects in the environment, furthermore, the extent to which the agent is simulating possible paths (without execution, i.e. mental simulation) influences how many goals the agent can consciously maintain (because this takes attention and concentration). The key word here is consciously maintain, for every goal ever instantiated will be active, but the conscious goals are different in that the agent could theoretically use the conscious goals to fabricate a narrative describing why it is acting in this particular manner.  In this model, consciousness or the agent’s computational resources can be divided between two cognitive operations: calculating attractions based on their relevance to goals (searching through goals to compare current input) and mentally simulating potential paths, which is essentially cloning the agent and having it act out a path in the agents mental map to evaluate the result. For the sake of quantification, let us say that each potential path requ

 

ires 10% of mental resources in order to maintain. Additionally, each conscious goal search requires 10% of mental resources in order to maintain. So, if the agent is thinking about 3 different path options, then 7 goal searches are currently active (and influencing the meta-mental forces of the simulation).

   

 

    When the agent is visually searching the environment for clues as to where to go to solve the current problem, it will minimize mental simulations in order to have the most goals active in consciousness. This will maximize the relevant objects in the environment thereby giving the agent more choices to simulate possible paths. Next the agent will formulate a plan that evaluates that forces and potential outcomes by cloning itself on its mental map and acting out possible scenarios to infer the result.

Comments (0)

You don't have permission to comment on this page.