Changeset 3


Ignore:
Timestamp:
03/12/2009 05:04:32 PM (9 years ago)
Author:
myl
Message:

Added ShortTermMemory which will contain a limited number of recent events and data relevant to current goal processing. The AutobiographicalMemory is modified to contain only external events that have an impact on the agent's emotion and internal events. Now, an event is first recorded in ShortTermMemory before being transferred to AutobiographicalMemory. Still need to extend ShortTermMemory to contain data from knowledge base.

Location:
AgentMind/trunk/AgentMind
Files:
21 edited

Legend:

Unmodified
Added
Removed
  • AgentMind/trunk/AgentMind/FAtiMA/src/FAtiMA/Agent.java

    r1 r3  
    4141import FAtiMA.sensorEffector.SpeechAct; 
    4242import FAtiMA.sensorEffector.WorldSimulatorRemoteAgent; 
     43import FAtiMA.shortTermMemory.ShortTermMemory; 
    4344import FAtiMA.socialRelations.LikeRelation; 
    4445import FAtiMA.util.AgentLogger; 
     
    7374                        SAXParserFactory factory = SAXParserFactory.newInstance(); 
    7475                        SAXParser parser = factory.newSAXParser(); 
    75                         parser.parse(new File(MIND_PATH + "scenarios.xml"), scenHandler); 
     76                        parser.parse(new File(MIND_PATH + "Scenarios.xml"), scenHandler); 
     77                        //parser.parse(new File(MIND_PATH + "LIRECScenarios.xml"), scenHandler); 
    7678                        args = scenHandler.getAgentArguments(); 
    7779                } 
     
    186188 
    187189                AutobiographicalMemory.GetInstance().setSelf(_self); 
     190                ShortTermMemory.GetInstance().setSelf(_self); 
    188191 
    189192                try{ 
     
    337340                KnowledgeBase.SaveState(fileName+"-KnowledgeBase.dat"); 
    338341                AutobiographicalMemory.SaveState(fileName+"-AutobiographicalMemory.dat"); 
     342                ShortTermMemory.SaveState(fileName+"-ShortTermMemory.dat"); 
    339343                ActionLibrary.SaveState(fileName+"-ActionLibrary.dat"); 
    340344                _remoteAgent.SaveState(fileName+"-RemoteAgent.dat"); 
     
    371375        { 
    372376                String fileName = _saveDirectory + agentName + "-AM.txt"; 
     377                try 
     378                { 
     379                        FileOutputStream out = new FileOutputStream(fileName); 
     380                        out.write(AutobiographicalMemory.GetInstance().toXML().getBytes()); 
     381                        out.flush(); 
     382                        out.close(); 
     383                } 
     384                catch(Exception e) 
     385                { 
     386                        e.printStackTrace(); 
     387                } 
     388        } 
     389         
     390        public void SaveSTM(String agentName) 
     391        { 
     392                String fileName = _saveDirectory + agentName + "-STM.txt"; 
    373393                try 
    374394                { 
     
    409429                AgentSimulationTime.LoadState(fileName+"-Timer.dat"); 
    410430                AutobiographicalMemory.LoadState(fileName+"-AutobiographicalMemory.dat"); 
     431                ShortTermMemory.LoadState(fileName+"-ShortTermMemory.dat"); 
    411432                ActionLibrary.LoadState(fileName+"-ActionLibrary.dat"); 
    412433                 
     
    543564                                                        AgentLogger.GetInstance().log("Perceiving event: " + e.toName()); 
    544565                                                        //inserting the event in AM 
    545                                                     AutobiographicalMemory.GetInstance().StoreAction(e); 
     566                                                    //AutobiographicalMemory.GetInstance().StoreAction(e); 
     567                                                         
     568                                                        // Meiyii 11/03/09 
     569                                                        ShortTermMemory.GetInstance().StoreAction(e); 
     570                                                         
    546571                                                    //registering an Action Context property in the KB 
    547572                                                        KnowledgeBase.GetInstance().Tell(ACTION_CONTEXT,e.toName().toString()); 
     
    563588                                        //if there was new data or knowledge added we must apply inference operators 
    564589                                        //update any inferred property to the outside and appraise the events 
    565                                         if(AutobiographicalMemory.GetInstance().HasNewData() || 
     590                                        if(ShortTermMemory.GetInstance().HasNewData() || 
    566591                                                        KnowledgeBase.GetInstance().HasNewKnowledge()) 
    567592                                        { 
     
    733758        } 
    734759         
     760        /*public ActiveEmotion simulateAppraisal(String action, String name, ArrayList parameters) 
     761        { 
     762                ArrayList emotions; 
     763                BaseEmotion em; 
     764                Event e; 
     765                ActiveEmotion aem; 
     766                ActiveEmotion maxEmotion = null; 
     767                 
     768                if(action.equals("INSERT_CHARACTER")||action.equals("INSERT_OBJECT")) 
     769                { 
     770                        e = new Event(AutobiographicalMemory.GetInstance().getSelf(), "look-at", name); 
     771                        int like = Math.round(LikeRelation.getRelation(AutobiographicalMemory.GetInstance().getSelf(), name).getValue()); 
     772                        em = EmotionalState.GetInstance().OCCAppraiseAttribution(e, like); 
     773                        return EmotionalState.GetInstance().DetermineActiveEmotion(em); 
     774                } 
     775                else if(action.equals("ACT_FOR_CHARACTER")) 
     776                { 
     777                        if(parameters.size() == 0) 
     778                        { 
     779                                e = new Event(AutobiographicalMemory.GetInstance().getSelf(),name, null); 
     780                        } 
     781                        else 
     782                        { 
     783                                e = new Event(AutobiographicalMemory.GetInstance().getSelf(),name, (String) parameters.get(0)); 
     784                                for(int i = 1; i < parameters.size(); i++) 
     785                                { 
     786                                        e.AddParameter(new Parameter("param",parameters.get(i))); 
     787                                } 
     788                        } 
     789                         
     790                        emotions = _reactiveLayer.AppraiseEvent(e); 
     791                        ListIterator li = emotions.listIterator(); 
     792                         
     793                        while(li.hasNext()) 
     794                        { 
     795                                em = (BaseEmotion) li.next(); 
     796                                aem = EmotionalState.GetInstance().DetermineActiveEmotion(em); 
     797                                if(aem != null && (maxEmotion == null || aem.GetIntensity() > maxEmotion.GetIntensity())) 
     798                                { 
     799                                        maxEmotion = aem; 
     800                                }        
     801                        } 
     802                         
     803                        return maxEmotion; 
     804                } 
     805                else return null; 
     806        }*/ 
     807         
    735808         
    736809        protected ValuedAction SelectBestAction() { 
  • AgentMind/trunk/AgentMind/FAtiMA/src/FAtiMA/Display/AgentDisplay.java

    r1 r3  
    2828 * History:  
    2929 * João Dias: 18/10/2005 - File created 
     30 * Meiyii Lim: 12/03/2009 - Added the STM panel 
    3031 */ 
    3132 
     
    4243 
    4344/** 
    44  * @author  bruno 
     45 * @author  bruno, Meiyii 
    4546 */ 
    4647public class AgentDisplay { 
     
    5556        _frame = new JFrame(ag.displayName()); 
    5657        _frame.getContentPane().setLayout(new BoxLayout(_frame.getContentPane(),BoxLayout.Y_AXIS)); 
    57                 _frame.setSize(650,650); 
     58                _frame.setSize(800,800); 
    5859                _frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
    5960                 
     
    8586                _displayPane.addTab("Episodic Memory", null, panel, "displays all the records in the character's episodic memory"); 
    8687         
     88                panel = new ShortTermMemoryPanel(); 
     89                _displayPane.addTab("Short Term Memory", null, panel, "displays all the records in the character's short term memory"); 
    8790                 
    8891                JButton teste = new JButton("Save"); 
  • AgentMind/trunk/AgentMind/FAtiMA/src/FAtiMA/Display/DrivesDisplay.java

    r1 r3  
    1010 
    1111import FAtiMA.autobiographicalMemory.AutobiographicalMemory; 
     12import FAtiMA.shortTermMemory.ShortTermMemory; 
    1213import FAtiMA.motivationalSystem.MotivationalState; 
    1314import FAtiMA.util.enumerables.MotivatorType; 
  • AgentMind/trunk/AgentMind/FAtiMA/src/FAtiMA/Display/MemoryEpisodeDisplay.java

    r1 r3  
    7777         
    7878        //ABSTRACT  
    79         JPanel aux = new JPanel(); 
     79        /*JPanel aux = new JPanel(); 
    8080        aux.setLayout(new BoxLayout(aux,BoxLayout.Y_AXIS)); 
    8181        aux.setMaximumSize(d2);   
     
    8585        lbl.setMaximumSize(d1); 
    8686        lbl.setMinimumSize(d1); 
    87         aux.add(lbl); 
     87        aux.add(lbl);*/ 
     88         
    8889        //_abstract = new JTextArea(episode.getAbstract()); 
    89         _abstract = new JTextArea(""); 
     90        /*_abstract = new JTextArea(""); 
    9091        _abstract.setLineWrap(true); 
    9192        _abstract.setMaximumSize(d3); 
    9293        _abstract.setMinimumSize(d3); 
    9394        aux.add(_abstract); 
    94         pnl.add(aux); 
     95        pnl.add(aux);*/ 
    9596        
    9697         
    9798         
    9899        //TIME 
    99         aux = new JPanel(); 
     100        JPanel aux = new JPanel(); 
    100101        aux.setLayout(new BoxLayout(aux,BoxLayout.Y_AXIS)); 
    101102        aux.setMaximumSize(d2); 
    102103        aux.setMinimumSize(d2); 
    103104        aux.setBorder(BorderFactory.createLineBorder(new Color(0,0,0))); 
    104         lbl = new JLabel("Time"); 
     105        JLabel lbl = new JLabel("Time"); 
    105106        lbl.setMaximumSize(d1); 
    106107        lbl.setMinimumSize(d1); 
     
    194195        aux.add(lbl);*/ 
    195196         
    196         lbl = new JLabel("Who?"); 
     197        lbl = new JLabel("Subject"); // Who? 
    197198        lbl.setBorder(BorderFactory.createLineBorder(new Color(0,0,0))); 
    198199        lbl.setMinimumSize(new Dimension(50,30)); 
     
    200201        aux.add(lbl); 
    201202         
    202         lbl = new JLabel("What?"); 
     203        lbl = new JLabel("Action"); // What? 
    203204        lbl.setBorder(BorderFactory.createLineBorder(new Color(0,0,0))); 
    204205        lbl.setMinimumSize(new Dimension(80,30)); 
     
    206207        aux.add(lbl); 
    207208         
    208         lbl = new JLabel("Whom?"); 
     209        lbl = new JLabel("Target"); // Whom? 
    209210        lbl.setBorder(BorderFactory.createLineBorder(new Color(0,0,0))); 
    210211        lbl.setMinimumSize(new Dimension(80,30)); 
     
    212213        aux.add(lbl); 
    213214         
    214         lbl = new JLabel("How?"); 
     215        lbl = new JLabel("Parameters"); // How? 
    215216        lbl.setBorder(BorderFactory.createLineBorder(new Color(0,0,0))); 
    216217        lbl.setMinimumSize(new Dimension(100,30)); 
  • AgentMind/trunk/AgentMind/FAtiMA/src/FAtiMA/autobiographicalMemory/ActionDetail.java

    r1 r3  
    3535 *                                                        package 
    3636 * João Dias: 24/03/2008 - Added time to individual actions stored in AM 
     37 * Meiyii Lim: 11/03/2009 - Added location to individual actions  
    3738 */ 
    3839package FAtiMA.autobiographicalMemory; 
     
    5152import FAtiMA.socialRelations.RespectRelation; 
    5253import FAtiMA.util.enumerables.EmotionType; 
     54import FAtiMA.shortTermMemory.ShortTermMemory;; 
    5355 
    5456 
     
    7476        private KnowledgeSlot _targetDetails = null; 
    7577        private Time _time; 
     78        private String _location; 
    7679 
    7780         
     
    8083        private ArrayList _evaluation; 
    8184                 
    82         public ActionDetail(int ID, Event e) 
     85        public ActionDetail(int ID, Event e, String location) 
    8386        { 
    8487                this._id = ID; 
     
    8790                this._action = e.GetAction(); 
    8891                this._target = e.GetTarget(); 
     92                this._location = location; 
    8993                 
    9094                this._time = new Time(); 
     
    123127        { 
    124128                return this._target; 
     129        } 
     130         
     131        // Meiyii 11/03/09 
     132        public String getLocation() 
     133        { 
     134                return this._location; 
    125135        } 
    126136         
     
    462472                action += "<Target>" + this.getTarget() + "</Target>"; 
    463473                action += "<Parameters>" + this.getParameters() + "</Parameters>"; 
     474 
     475                action += "<Time>" + this.getTime() + "</Time>"; 
     476                action += "<Location>" + this.getLocation() + "</Location>"; 
    464477                 
    465478                action += "</Event>\n"; 
  • AgentMind/trunk/AgentMind/FAtiMA/src/FAtiMA/autobiographicalMemory/AutobiographicalMemory.java

    r1 r3  
    5858import FAtiMA.wellFormedNames.Name; 
    5959import FAtiMA.wellFormedNames.Symbol; 
     60import FAtiMA.shortTermMemory.ShortTermMemory; 
    6061 
    6162 
     
    177178        } 
    178179         
    179         public void StoreAction(Event e) 
     180        public void StoreAction(ActionDetail action) 
    180181        { 
    181182                MemoryEpisode event; 
     183                String oldLocation; 
     184                 
     185                synchronized (this) { 
     186                        if(this._memoryEvents.size() == 0) 
     187                        { 
     188                                event = new MemoryEpisode(action.getLocation(), action.getTime()); 
     189                                this._memoryEvents.add(event); 
     190                        } 
     191                        else 
     192                        { 
     193                                event = (MemoryEpisode) this._memoryEvents.get(this._memoryEvents.size()-1); 
     194                                oldLocation = event.getLocation(); 
     195                                if(oldLocation == null) { 
     196                                        event.setLocation(action.getLocation()); 
     197                                } 
     198                                else if(!event.getLocation().equals(action.getLocation()) || 
     199                                                (AgentSimulationTime.GetInstance().Time() - event.getTime().getNarrativeTime()) > 900000) 
     200                                { 
     201                                        event = new MemoryEpisode(action.getLocation(), action.getTime()); 
     202                                        this._memoryEvents.add(event); 
     203                                } 
     204                        } 
     205                        event.AddActionDetail(action); 
     206                } 
     207                /*MemoryEpisode event; 
    182208                String oldLocation; 
    183209                Name locationKey = Name.ParseName(_self + "(location)"); 
     
    207233                        }        
    208234                        event.AddActionDetail(e); 
     235                        //System.out.println("Memory Events size: " + _memoryEvents.size()); 
     236                        //System.out.println("Event: " + e.toString()); 
    209237                         
    210238                        this._newData = true; 
    211                 } 
    212         } 
    213          
    214         public void AssociateEmotionToAction(ActiveEmotion em, Event cause) 
    215         { 
    216                 if(this._memoryEvents.size() > 0) 
    217                 { 
    218                         synchronized (this) 
    219                         { 
    220                                 MemoryEpisode event = (MemoryEpisode) this._memoryEvents.get(this._memoryEvents.size()-1); 
    221                                 event.AssociateEmotionToDetail(em,cause); 
    222                         } 
    223                 } 
     239                }*/ 
    224240        } 
    225241         
     
    267283                int numberOfSuccess; 
    268284                int numberOfTries; 
    269                 numberOfTries = CountEvent(AutobiographicalMemory.GenerateSearchKeys(g.GetActivationEvent())); 
     285                numberOfTries = CountEvent(AutobiographicalMemory.GenerateSearchKeys(g.GetActivationEvent()));                                           
    270286                if(numberOfTries == 0) 
    271287                { 
     
    273289                } 
    274290                 
    275                 numberOfSuccess = CountEvent(AutobiographicalMemory.GenerateSearchKeys(g.GetSuccessEvent())); 
    276                  
     291                numberOfSuccess = CountEvent(AutobiographicalMemory.GenerateSearchKeys(g.GetSuccessEvent()));                                    
    277292                return new Float(numberOfSuccess/numberOfTries); 
    278293        } 
     
    345360        } 
    346361         
    347         public ArrayList SearchForRecentEvents(ArrayList searchKeys) 
     362        /*public ArrayList SearchForRecentEvents(ArrayList searchKeys) 
    348363        { 
    349364                MemoryEpisode currentEpisode; 
     
    357372                        return new ArrayList(); 
    358373                } 
    359         } 
     374        }*/ 
    360375         
    361376        public ArrayList SearchForPastEvents(ArrayList keys)  
     
    391406        } 
    392407         
    393         public boolean ContainsRecentEvent(ArrayList searchKeys) 
     408        /*public boolean ContainsRecentEvent(ArrayList searchKeys) 
    394409        { 
    395410                MemoryEpisode currentEpisode; 
     
    404419                        return false; 
    405420                } 
    406         } 
     421        }*/ 
    407422         
    408423        public boolean ContainsPastEvent(ArrayList searchKeys) 
  • AgentMind/trunk/AgentMind/FAtiMA/src/FAtiMA/autobiographicalMemory/MemoryEpisode.java

    r1 r3  
    6767        //private ArrayList _dominantActions; 
    6868         
    69         public MemoryEpisode(String location) 
     69        public MemoryEpisode(String location, Time time) 
    7070        { 
    7171                this._location = location; 
    72                 this._time = new Time(); 
     72                this._time = time; 
    7373                this._people = new ArrayList(); 
    7474                this._objects = new ArrayList(); 
     
    114114        } 
    115115         
     116        // not called  
    116117        public ActionDetail getActionDetail(int actionID) 
    117118        { 
     
    123124        } 
    124125         
    125         public void AddActionDetail(Event e) 
    126         { 
    127                 ActionDetail action; 
    128                 action = new ActionDetail(_details.size(),e); 
    129                  
    130                  
     126        public void AddActionDetail(ActionDetail action) 
     127        {                
    131128                _details.add(action); 
    132                 //_detailsByKey.put(e.toString(),action); 
    133129                         
    134130                UpdateMemoryFields(action); 
    135131        } 
    136          
    137         public void AssociateEmotionToDetail(ActiveEmotion em, Event cause) 
    138         { 
    139                 ActionDetail action; 
    140                 if(cause != null) 
    141                 { 
    142                         String key = cause.toString(); 
    143                          
    144                         for(int i = _details.size() -1; i >= 0; i--){ 
    145                                 action = (ActionDetail) _details.get(i); 
    146                                 if(action.ReferencesEvent(cause)) 
    147                                 { 
    148                                         action.UpdateEmotionValues(em); 
    149                                         return; 
    150                                 } 
    151                         } 
    152                          
    153                         //if we get here it means that the event doesn't exist in the episode 
    154                         // and we need to add it 
    155                         action = new ActionDetail(_details.size(),cause); 
    156                         _details.add(action); 
    157                         UpdateMemoryFields(action); 
    158                         action.UpdateEmotionValues(em); 
    159                 } 
    160         } 
    161          
    162132         
    163133        private void UpdateMemoryFields(ActionDetail action) 
  • AgentMind/trunk/AgentMind/FAtiMA/src/FAtiMA/conditions/NewEventCondition.java

    r1 r3  
    55 
    66import FAtiMA.autobiographicalMemory.AutobiographicalMemory; 
     7import FAtiMA.shortTermMemory.ShortTermMemory; 
    78import FAtiMA.autobiographicalMemory.SearchKey; 
    89import FAtiMA.sensorEffector.Event; 
     
    7980                } 
    8081         
    81                 conditionVerified = (_positive == AutobiographicalMemory.GetInstance().ContainsRecentEvent(GetSearchKeys())); 
     82                conditionVerified = (_positive == ShortTermMemory.GetInstance().ContainsRecentEvent(GetSearchKeys())); 
    8283                 
    8384                if(conditionVerified){ 
  • AgentMind/trunk/AgentMind/FAtiMA/src/FAtiMA/conditions/RecentEventCondition.java

    r1 r3  
    3131 * João Dias: 24/03/2008 - Restructure, changed the way EventConditions Hierarchy. Now, PastEventConditions 
    3232 *                                                 is the super class, and RecentEventConditions is the child class 
     33 * Meiyii Lim: 12/03/2009 - Search for recent events in Short Term Memory instead of Autobiographical Memory 
    3334 */ 
    3435 
     
    3940 
    4041import FAtiMA.autobiographicalMemory.AutobiographicalMemory; 
     42import FAtiMA.shortTermMemory.ShortTermMemory; 
    4143import FAtiMA.autobiographicalMemory.SearchKey; 
    4244import FAtiMA.sensorEffector.Event; 
     
    189191                if(!_name.isGrounded()) return false; 
    190192                 
    191                 return _positive == AutobiographicalMemory.GetInstance().ContainsRecentEvent(GetSearchKeys());  
     193                //Meiyii 12/03/09 Search for recent events in STM 
     194                return _positive == ShortTermMemory.GetInstance().ContainsRecentEvent(GetSearchKeys());  
    192195        } 
    193196         
    194197        protected ArrayList GetPossibleBindings() 
    195198        { 
    196                 return AutobiographicalMemory.GetInstance(). 
     199                //Meiyii 12/03/09 Search for recent events in STM 
     200                return ShortTermMemory.GetInstance(). 
    197201                                SearchForRecentEvents(GetSearchKeys()); 
    198202        } 
  • AgentMind/trunk/AgentMind/FAtiMA/src/FAtiMA/conditions/RitualCondition.java

    r1 r3  
    3737 
    3838import FAtiMA.autobiographicalMemory.AutobiographicalMemory; 
     39import FAtiMA.shortTermMemory.ShortTermMemory; 
    3940import FAtiMA.autobiographicalMemory.SearchKey; 
    4041import FAtiMA.sensorEffector.Event; 
     
    214215                 
    215216                 
    216                 return AutobiographicalMemory.GetInstance().ContainsRecentEvent(keys); 
     217                return ShortTermMemory.GetInstance().ContainsRecentEvent(keys); 
    217218                 
    218219        } 
  • AgentMind/trunk/AgentMind/FAtiMA/src/FAtiMA/deliberativeLayer/DeliberativeProcess.java

    r1 r3  
    127127import FAtiMA.ValuedAction; 
    128128import FAtiMA.autobiographicalMemory.AutobiographicalMemory; 
     129import FAtiMA.shortTermMemory.ShortTermMemory; 
    129130import FAtiMA.conditions.Condition; 
    130131import FAtiMA.culture.Ritual; 
  • AgentMind/trunk/AgentMind/FAtiMA/src/FAtiMA/deliberativeLayer/Intention.java

    r1 r3  
    3939import java.util.ListIterator; 
    4040 
    41 import FAtiMA.autobiographicalMemory.AutobiographicalMemory; 
     41//import FAtiMA.autobiographicalMemory.AutobiographicalMemory; 
    4242import FAtiMA.culture.Ritual; 
    4343import FAtiMA.deliberativeLayer.goals.ActivePursuitGoal; 
     
    4848import FAtiMA.motivationalSystem.MotivationalState; 
    4949import FAtiMA.sensorEffector.Event; 
     50import FAtiMA.shortTermMemory.ShortTermMemory; 
    5051import FAtiMA.util.AgentLogger; 
    5152 
     
    358359            AgentLogger.GetInstance().logAndPrint("Adding a new Strong Intention: " + _goal.getName().toString()); 
    359360           
    360             AutobiographicalMemory.GetInstance().StoreAction(e); 
     361            // AutobiographicalMemory.GetInstance().StoreAction(e); 
     362            // Meiyii 11/03/09 
     363            ShortTermMemory.GetInstance().StoreAction(e); 
    361364             
    362365            float probability = GetProbability(); 
     
    390393            _goal.setUncertainty(newExpectedError); 
    391394             
    392              
    393             AutobiographicalMemory.GetInstance().StoreAction(e); 
     395            //AutobiographicalMemory.GetInstance().StoreAction(e); 
     396            // Meiyii 11/03/09 
     397            ShortTermMemory.GetInstance().StoreAction(e); 
    394398            EmotionalState.GetInstance().AppraiseGoalFailure(GetHope(),GetFear(), _goal); 
    395399             
     
    422426            MotivationalState.GetInstance().UpdateCertainty(-deltaError); 
    423427            _goal.setUncertainty(newExpectedError); 
    424              
    425              
    426              
    427             AutobiographicalMemory.GetInstance().StoreAction(e); 
     428                     
     429            //AutobiographicalMemory.GetInstance().StoreAction(e); 
     430            // Meiyii 11/03/09 
     431            ShortTermMemory.GetInstance().StoreAction(e); 
    428432            EmotionalState.GetInstance().AppraiseGoalSuccess(GetHope(), GetFear(), _goal); 
    429433             
  • AgentMind/trunk/AgentMind/FAtiMA/src/FAtiMA/deliberativeLayer/goals/ActivePursuitGoal.java

    r1 r3  
    7979import FAtiMA.IntegrityValidator; 
    8080import FAtiMA.autobiographicalMemory.AutobiographicalMemory; 
     81import FAtiMA.shortTermMemory.ShortTermMemory; 
    8182import FAtiMA.conditions.Condition; 
    8283import FAtiMA.conditions.NewEventCondition; 
     
    147148                //IPlanningOperator 
    148149                _agent = new Symbol(AutobiographicalMemory.GetInstance().getSelf()); 
     150                //_agent = new Symbol(AutobiographicalMemory.GetInstance().getSelf()); 
    149151                _effects = new ArrayList(); 
    150152                 
  • AgentMind/trunk/AgentMind/FAtiMA/src/FAtiMA/deliberativeLayer/goals/Goal.java

    r1 r3  
    6161import FAtiMA.IntegrityValidator; 
    6262import FAtiMA.autobiographicalMemory.AutobiographicalMemory; 
     63import FAtiMA.shortTermMemory.ShortTermMemory; 
    6364import FAtiMA.conditions.Condition; 
    6465import FAtiMA.exceptions.UnreachableGoalException; 
     
    306307        } 
    307308         
     309        /*private Event generateEventDescription(String action) 
     310        { 
     311                Event e = new Event(AutobiographicalMemory.GetInstance().getSelf(),action,this._name.GetFirstLiteral().toString()); 
     312                ListIterator li = this._name.GetLiteralList().listIterator(); 
     313            li.next(); 
     314            while(li.hasNext()) 
     315            { 
     316                e.AddParameter(new Parameter("param",li.next().toString())); 
     317            } 
     318             
     319            return e; 
     320        }*/ 
     321         
    308322        private Event generateEventDescription(String action) 
    309323        { 
     
    315329                e.AddParameter(new Parameter("param",li.next().toString())); 
    316330            } 
    317              
    318331            return e; 
    319332        } 
  • AgentMind/trunk/AgentMind/FAtiMA/src/FAtiMA/emotionalState/EmotionalState.java

    r1 r3  
    7171import FAtiMA.reactiveLayer.Reaction; 
    7272import FAtiMA.sensorEffector.Event; 
     73import FAtiMA.shortTermMemory.ShortTermMemory; 
    7374import FAtiMA.socialRelations.LikeRelation; 
    7475import FAtiMA.util.AgentLogger; 
     
    209210                                _emotionPool.put(potEm.GetHashKey(), auxEmotion); 
    210211                                 
    211                                 AutobiographicalMemory.GetInstance().AssociateEmotionToAction(auxEmotion,auxEmotion.GetCause()); 
     212                                //AutobiographicalMemory.GetInstance().AssociateEmotionToAction(auxEmotion,auxEmotion.GetCause()); 
     213                                ShortTermMemory.GetInstance().AssociateEmotionToAction(auxEmotion,auxEmotion.GetCause()); 
     214                                 
    212215                                this.GenerateCompoundEmotions(potEm); 
    213216                        } 
  • AgentMind/trunk/AgentMind/FAtiMA/src/FAtiMA/reactiveLayer/ReactiveProcess.java

    r1 r3  
    6767import FAtiMA.ValuedAction; 
    6868import FAtiMA.autobiographicalMemory.AutobiographicalMemory; 
     69import FAtiMA.shortTermMemory.ShortTermMemory; 
    6970import FAtiMA.emotionalState.BaseEmotion; 
    7071import FAtiMA.emotionalState.EmotionalState; 
  • AgentMind/trunk/AgentMind/FAtiMA/src/FAtiMA/util/parsers/CultureLoaderHandler.java

    r1 r3  
    128128                String parameters = attributes.getValue("parameters"); 
    129129                Event event = Event.ParseEvent(AutobiographicalMemory.GetInstance().getSelf(), subject, action, target, parameters); 
     130                //Event event = Event.ParseEvent(AutobiographicalMemory.GetInstance().getSelf(), subject, action, target, parameters); 
    130131 
    131132                //Create the reaction 
  • AgentMind/trunk/AgentMind/FAtiMA/src/FAtiMA/wellFormedNames/Symbol.java

    r1 r3  
    9595        return this; 
    9696    } 
    97  
     97     
    9898    /** 
    9999     * Generates a list with all symbols contained in the Name 
  • AgentMind/trunk/AgentMind/WorldTest/src/RemoteAgent.java

    r1 r3  
    99 
    1010import FAtiMA.autobiographicalMemory.AutobiographicalMemory; 
     11import FAtiMA.shortTermMemory.ShortTermMemory; 
    1112import FAtiMA.deliberativeLayer.plan.Effect; 
    1213import FAtiMA.deliberativeLayer.plan.Step; 
     
    4950                _r = new Random(); 
    5051                AutobiographicalMemory.GetInstance().setSelf(_name); 
     52                ShortTermMemory.GetInstance().setSelf(_name); 
    5153                this.socket = s; 
    5254 
  • AgentMind/trunk/AgentMind/WorldTest/src/UserInterface.java

    r1 r3  
    2929        JTextArea textArea; 
    3030        JComboBox inputList; 
    31         JComboBox _placeOptions; 
     31        JComboBox _userOptions; 
    3232        JComboBox _timeOptions; 
    3333        WorldTest _world; 
     
    6060        _frame.getContentPane().add(scrollPane); 
    6161         
     62        /* 
    6263        _timeOptions = new JComboBox(); 
    6364        _timeOptions.addItem("beforeDinner"); 
     
    7071                        WriteLine("=> Changing the time: " + _timeOptions.getSelectedItem().toString()); 
    7172                        } 
     73                });*/ 
     74         
     75        // Meiyii 06/03/09 
     76        _timeOptions = new JComboBox(); 
     77        _timeOptions.addItem("Morning"); 
     78        _timeOptions.addItem("Afternoon"); 
     79                _timeOptions.addItem("Evening"); 
     80                _timeOptions.addActionListener(new ActionListener(){ 
     81                        public void actionPerformed(ActionEvent arg0) { 
     82                                _world.ChangeTime(_timeOptions.getSelectedItem().toString()); 
     83                        WriteLine("=> Changing the time: " + _timeOptions.getSelectedItem().toString()); 
     84                        } 
    7285                }); 
    7386                 
     
    7689        timeBox.add(_timeOptions ); 
    7790                 
    78                 _placeOptions = new JComboBox(); 
    79                 _placeOptions.addItem("Outdoor"); 
    80                 _placeOptions.addItem("Party"); 
    81                 _placeOptions.addActionListener(new ActionListener(){ 
     91                _userOptions = new JComboBox(); 
     92                _userOptions.addItem("User1"); 
     93                _userOptions.addItem("User2"); 
     94                _userOptions.addActionListener(new ActionListener(){ 
    8295                        public void actionPerformed(ActionEvent e) { 
    83                                 _world.ChangePlace(_placeOptions.getSelectedItem().toString()); 
    84                                 WriteLine("=> Changing the place: " + _placeOptions.getSelectedItem().toString()); 
    85                         } 
    86                          
     96                                _world.ChangePlace(_userOptions.getSelectedItem().toString()); 
     97                                WriteLine("=> Changing the user: " + _userOptions.getSelectedItem().toString()); 
     98                                String userOptionsFile = _world.GetUserOptionsFile() + _userOptions.getSelectedItem().toString() + ".txt"; 
     99                                 
     100                                // Read user input options from a text file 
     101                                ParseFile(userOptionsFile); 
     102                        } 
    87103                }); 
    88104         
    89105        Box placeBox = new Box(BoxLayout.X_AXIS); 
    90         placeBox.add(new JLabel("Place: ")); 
    91         placeBox.add(_placeOptions); 
     106        placeBox.add(new JLabel("User: ")); 
     107        placeBox.add(_userOptions); 
    92108         
    93109        _frame.getContentPane().add(timeBox); 
     
    97113                _frame.setVisible(true); 
    98114                 
     115                String userOptionsFile = _world.GetUserOptionsFile(); // + _userOptions.getSelectedItem().toString() + ".txt"; 
     116                 
    99117                // Read user input options from a text file 
    100                 this.ParseFile(world_in.GetUserOptionsFile()); 
     118                ParseFile(userOptionsFile); 
    101119                 
    102120    } 
     
    134152                        } 
    135153                        StringTokenizer st = new StringTokenizer(data,"\r\n"); 
     154                        inputList.removeAllItems(); 
    136155                        while(st.hasMoreTokens()) 
    137156                                inputList.addItem(st.nextToken()); 
  • AgentMind/trunk/AgentMind/WorldTest/src/WorldTest.java

    r1 r3  
    2828public class WorldTest { 
    2929         
    30         public static final String SCENARIOS_PATH = "data/characters/minds/scenarios.xml"; 
     30        //public static final String SCENARIOS_PATH = "data/characters/minds/LIRECScenarios.xml"; 
     31        public static final String SCENARIOS_PATH = "data/characters/minds/Scenarios.xml"; 
    3132        private ServerSocket _ss; 
    3233        private ArrayList _objects; 
Note: See TracChangeset for help on using the changeset viewer.