Changeset 768


Ignore:
Timestamp:
12/13/2010 03:38:20 PM (10 years ago)
Author:
joao.dias
Message:
 
Location:
AgentMind/branches/FAtiMA-Modular
Files:
17 edited

Legend:

Unmodified
Added
Removed
  • AgentMind/branches/FAtiMA-Modular/AgentLauncher/.classpath

    r744 r768  
    88        <classpathentry combineaccessrules="false" kind="src" path="/FAtiMA.culture"/> 
    99        <classpathentry combineaccessrules="false" kind="src" path="/FAtiMA.ToM"/> 
     10        <classpathentry combineaccessrules="false" kind="src" path="/FAtiMA.AdvancedMemory"/> 
    1011        <classpathentry kind="output" path="bin"/> 
    1112</classpath> 
  • AgentMind/branches/FAtiMA-Modular/AgentLauncher/src/AgentLauncher.java

    r750 r768  
    1313import FAtiMA.ToM.ToMComponent; 
    1414import FAtiMA.advancedMemoryComponent.AdvancedMemoryComponent; 
    15 import FAtiMA.culture.CulturalDimensionsComponent; 
    1615import FAtiMA.motivationalSystem.MotivationalComponent; 
    1716import FAtiMA.socialRelations.SocialRelationsComponent; 
     
    4039                aG.addComponent(new MotivationalComponent(extraFiles)); 
    4140                aG.addComponent(new ToMComponent(ConfigurationManager.getName())); 
    42                 aG.addComponent(new AdvancedMemoryComponent()); 
     41                //aG.addComponent(new AdvancedMemoryComponent()); 
    4342                aG.StartAgent(); 
    4443        } 
  • AgentMind/branches/FAtiMA-Modular/FAtiMA/src/FAtiMA/Core/conditions/PropertyCondition.java

    r667 r768  
    116116                        else if (op.equals("!=")) 
    117117                                cond = new PropertyNotEqual(name, value,ToM); 
    118                         else if (op.equals("GreaterThan")) 
     118                        else if (op.equalsIgnoreCase("GreaterThan")) 
    119119                                cond = new PropertyGreater(name, value,ToM); 
    120                         else if (op.equals("LesserThan")) 
     120                        else if (op.equalsIgnoreCase("LesserThan")) 
    121121                                cond = new PropertyLesser(name, value,ToM); 
    122                         else if (op.equals("GreaterEqual")) 
     122                        else if (op.equalsIgnoreCase("GreaterEqual")) 
    123123                                cond = new PropertyGreaterEqual(name, value,ToM); 
    124                         else if (op.equals("LesserEqual")) 
     124                        else if (op.equalsIgnoreCase("LesserEqual")) 
    125125                                cond = new PropertyLesserEqual(name,value,ToM); 
    126126                        else 
     
    298298         */ 
    299299        public void Print() { 
    300                 AgentLogger.GetInstance().logAndPrint("    Property= " + _name + " value= " + _value); 
     300                AgentLogger.GetInstance().logAndPrint("Property= " + _name + " value= " + _value); 
    301301        } 
    302302         
  • AgentMind/branches/FAtiMA-Modular/FAtiMA/src/FAtiMA/Core/conditions/PropertyGreater.java

    r667 r768  
    105105                if (propertyValue == null || value == null) 
    106106                        return false; 
    107                 aux = new Float( propertyValue.toString()); 
     107                aux = new Float(propertyValue.toString()); 
    108108                aux2 = new Float(value.toString()); 
    109109                return aux.floatValue() > aux2.floatValue(); 
  • AgentMind/branches/FAtiMA-Modular/FAtiMA/src/FAtiMA/Core/deliberativeLayer/DeliberativeProcess.java

    r756 r768  
    935935                                i.ProcessIntentionSuccess(am);                           
    936936                        } 
    937                         /*else if(!i.getGoal().checkPreconditions(am)) 
    938                         { 
    939                                 RemoveIntention(i); 
    940                                 if(i.IsStrongCommitment()) 
    941                                 { 
    942                                         _actionMonitor = null; 
    943                                         i.ProcessIntentionCancel(am); 
    944                                 } 
    945                         }*/ 
    946937                        else if(i.getGoal().CheckFailure(am)) 
    947938                        { 
     
    966957                                        RemoveIntention(i); 
    967958                                        _actionMonitor = null; 
     959                                } 
     960                        } 
     961                        else if(!i.getGoal().checkPreconditions(am)) 
     962                        { 
     963                                RemoveIntention(i); 
     964                                if(i.IsStrongCommitment()) 
     965                                { 
     966                                        if(_selectedAction != null) 
     967                                        { 
     968                                                am.getRemoteAgent().cancelAction(_selectedAction.getName().GetFirstLiteral().toString()); 
     969                                                _actionMonitor = null; 
     970                                                _selectedAction = null; 
     971                                        } 
     972                                         
     973                                        i.ProcessIntentionCancel(am); 
    968974                                } 
    969975                        } 
  • AgentMind/branches/FAtiMA-Modular/FAtiMA/src/FAtiMA/Core/memory/episodicMemory/ActionDetail.java

    r756 r768  
    5555import FAtiMA.Core.util.enumerables.EventType; 
    5656import FAtiMA.Core.util.enumerables.GoalEvent; 
     57import FAtiMA.Core.wellFormedNames.Substitution; 
    5758 
    5859 
     
    173174                 
    174175                this._evaluation = evaluation; 
     176        } 
     177         
     178        public void applySubstitution(Substitution s) 
     179        { 
     180                if(this._subject.equalsIgnoreCase(s.getVariable().getName())) 
     181                { 
     182                        this._subject = s.getValue().getName(); 
     183                } 
     184                 
     185                if(this._target.equalsIgnoreCase(s.getVariable().getName())) 
     186                { 
     187                        this._target = s.getValue().getName(); 
     188                } 
    175189        } 
    176190         
  • AgentMind/branches/FAtiMA-Modular/FAtiMA/src/FAtiMA/Core/memory/episodicMemory/AutobiographicalMemory.java

    r667 r768  
    5353import FAtiMA.Core.sensorEffector.Event; 
    5454import FAtiMA.Core.util.AgentLogger; 
     55import FAtiMA.Core.wellFormedNames.Substitution; 
    5556 
    5657public class AutobiographicalMemory implements Serializable { 
     
    6667        { 
    6768                this._memoryEvents = new ArrayList<MemoryEpisode>(); 
     69        } 
     70         
     71        public void applySubstitution(Substitution s) 
     72        { 
     73                for(MemoryEpisode mem : _memoryEvents) 
     74                { 
     75                        mem.applySubstitution(s); 
     76                } 
    6877        } 
    6978         
  • AgentMind/branches/FAtiMA-Modular/FAtiMA/src/FAtiMA/Core/memory/episodicMemory/EpisodicMemory.java

    r667 r768  
    1616import FAtiMA.Core.util.enumerables.GoalEvent; 
    1717import FAtiMA.Core.wellFormedNames.Name; 
     18import FAtiMA.Core.wellFormedNames.Substitution; 
    1819 
    1920public class EpisodicMemory implements Serializable { 
     
    130131                        } 
    131132                } 
     133        } 
     134         
     135        public void applySubstitution(Substitution s) 
     136        { 
     137                _stm.applySubstitution(s); 
     138                _am.applySubstitution(s); 
    132139        } 
    133140         
  • AgentMind/branches/FAtiMA-Modular/FAtiMA/src/FAtiMA/Core/memory/episodicMemory/MemoryEpisode.java

    r667 r768  
    4747import FAtiMA.Core.util.Constants; 
    4848import FAtiMA.Core.util.enumerables.EmotionValence; 
     49import FAtiMA.Core.wellFormedNames.Substitution; 
    4950 
    5051 
     
    9798                return this._abstract; 
    9899        }*/ 
     100         
     101        public void applySubstitution(Substitution s) 
     102        { 
     103                for(ActionDetail detail : _details) 
     104                { 
     105                        detail.applySubstitution(s); 
     106                } 
     107        } 
    99108         
    100109        public void setTime(Time time) 
  • AgentMind/branches/FAtiMA-Modular/FAtiMA/src/FAtiMA/Core/memory/episodicMemory/ShortTermEpisodicMemory.java

    r667 r768  
    3939import FAtiMA.Core.memory.Memory; 
    4040import FAtiMA.Core.sensorEffector.Event; 
     41import FAtiMA.Core.wellFormedNames.Substitution; 
    4142 
    4243 
     
    8081                         
    8182                //UpdateMemoryFields(action); 
     83        } 
     84         
     85        public void applySubstitution(Substitution s) 
     86        { 
     87                for(ActionDetail detail : _details) 
     88                { 
     89                        detail.applySubstitution(s); 
     90                } 
    8291        } 
    8392         
  • AgentMind/branches/FAtiMA-Modular/FAtiMA/src/FAtiMA/Core/memory/semanticMemory/SemanticMemory.java

    r667 r768  
    4848                synchronized (this) { 
    4949                        KnowledgeSlot ks = (KnowledgeSlot) _stm.Ask(predicate); 
    50                 if (ks != null && ks.getValue() != null && ks.getValue().toString().equals("True")) 
     50                if (ks != null && ks.getValue() != null && ks.getValue().toString().equalsIgnoreCase("True")) 
    5151                { 
    5252                        _stm.RearrangeWorkingMemory(predicate,ks.getValue()); 
     
    5656                { 
    5757                        ks= (KnowledgeSlot) _kb.Ask(predicate); 
    58                         if (ks != null && ks.getValue() != null && ks.getValue().toString().equals("True")) 
     58                        if (ks != null && ks.getValue() != null && ks.getValue().toString().equalsIgnoreCase("True")) 
    5959                    { 
    6060                                _stm.Tell(_kb,predicate, ks.getValue()); 
  • AgentMind/branches/FAtiMA-Modular/FAtiMA/src/FAtiMA/Core/sensorEffector/IONRemoteAgent.java

    r699 r768  
    106106        } 
    107107         
     108        @Override 
     109        protected void sendCancelActionMsg(RemoteAction ra) 
     110        { 
     111                ra = _processActionStrategy.ProcessActionToWorld(ra); 
     112                 
     113                String msg = CANCEL_ACTION + " " + ra.toXML(); 
     114                 
     115                 
     116                AgentLogger.GetInstance().log("Canceling action: " + ra._actionType); 
     117                Send(msg); 
     118        } 
     119         
    108120        public void ReportInternalPropertyChange(String agentName, Name property, Object value) 
    109121        { 
     
    317329                //the agent last action suceeded! 
    318330                if(event.GetSubject().equals(_agent.getName())) { 
     331                        _currentAction = null; 
    319332                        _canAct = true; 
    320333                } 
  • AgentMind/branches/FAtiMA-Modular/FAtiMA/src/FAtiMA/Core/sensorEffector/RemoteAgent.java

    r742 r768  
    9696import FAtiMA.Core.util.parsers.SocketListener; 
    9797import FAtiMA.Core.wellFormedNames.Name; 
     98import FAtiMA.Core.wellFormedNames.Substitution; 
    9899import FAtiMA.Core.wellFormedNames.SubstitutionSet; 
     100import FAtiMA.Core.wellFormedNames.Symbol; 
    99101 
    100102 
     
    130132        protected static final String GET_STATE = "GET-STATE"; 
    131133        protected static final String SET_STATE = "SET-STATE"; 
     134        protected static final String CANCEL_ACTION = "CANCEL-ACTION"; 
     135        protected static final String IDENTIFY_USER = "IDENTIFY-USER"; 
    132136         
    133137        protected ArrayList<ValuedAction> _actions; 
     
    142146        protected boolean _running; 
    143147        protected String _userName; 
     148        protected ValuedAction _currentAction; 
    144149         
    145150        protected IProcessActionStrategy _processActionStrategy; 
     
    204209                if(_actions.size() > 0) { 
    205210                        action = (ValuedAction) _actions.remove(0); 
     211                        _currentAction = action; 
    206212                        this.StartAction(am, action); 
    207213                } 
     
    229235        } 
    230236         
     237        public void cancelAction(String action) 
     238        { 
     239                if(_currentAction != null && _currentAction.GetAction().GetFirstLiteral().toString().equals(action)) 
     240                { 
     241                        RemoteAction ra = new RemoteAction(_agent, _currentAction); 
     242                        sendCancelActionMsg(ra); 
     243                        _currentAction = null; 
     244                        _canAct = true; 
     245                } 
     246        } 
     247         
    231248        public void setProcessActionStrategy(IProcessActionStrategy strat) 
    232249        { 
    233250                _processActionStrategy = strat; 
    234251        } 
     252         
     253        protected abstract void sendCancelActionMsg(RemoteAction ra); 
    235254                 
    236255        public void processMessage(String msg) { 
     
    322341                        { 
    323342                                ResumeTimePerception(perception); 
     343                        } 
     344                        else if(msgType.equals(IDENTIFY_USER)) 
     345                        { 
     346                                IdentifyUserPerception(perception); 
    324347                        } 
    325348                        else 
     
    670693        } 
    671694         
     695        protected void IdentifyUserPerception(String perc) 
     696        { 
     697                //TODO this is not enough, we also need to update other components.. (In particular Semantic Memory) 
     698                StringTokenizer st = new StringTokenizer(perc," "); 
     699                String id = st.nextToken(); 
     700                String userName = st.nextToken(); 
     701                _agent.getMemory().getEpisodicMemory().applySubstitution(new Substitution(new Symbol(id),new Symbol(userName))); 
     702        } 
     703         
    672704        protected void ChangeImportancePerception(String type, String perc) 
    673705        { 
  • AgentMind/branches/FAtiMA-Modular/FAtiMA/src/FAtiMA/Core/sensorEffector/WorldSimulatorRemoteAgent.java

    r744 r768  
    5454                AgentLogger.GetInstance().log("Sending action for execution: " + msg); 
    5555                return Send(msg); 
     56        } 
     57         
     58        @Override @SuppressWarnings("deprecation") 
     59        protected void sendCancelActionMsg(RemoteAction ra) 
     60        { 
     61                ra = _processActionStrategy.ProcessActionToWorld(ra); 
     62                String msg = CANCEL_ACTION + " " + ra.toPlainStringMessage(); 
     63                AgentLogger.GetInstance().log("Canceling action: " + msg); 
     64                Send(msg); 
    5665        } 
    5766 
     
    260269         
    261270                        AgentLogger.GetInstance().log("can act now!"); 
     271                        _currentAction = null; 
    262272                        _canAct = true; 
    263273                } 
  • AgentMind/branches/FAtiMA-Modular/FAtiMA/src/FAtiMA/Core/wellFormedNames/Name.java

    r667 r768  
    149149            if (o == null) return false; 
    150150        if (!(o instanceof Name)) return false; 
    151         return this.toString().equals(o.toString()); 
     151        return this.toString().equalsIgnoreCase(o.toString()); 
    152152        } 
    153153         
  • AgentMind/branches/FAtiMA-Modular/FAtiMA/src/FAtiMA/Core/wellFormedNames/Symbol.java

    r667 r768  
    4141import java.util.ArrayList; 
    4242import java.util.ListIterator; 
     43import java.util.Locale; 
    4344 
    4445import FAtiMA.Core.memory.Memory; 
     
    196197         { 
    197198             b =  li.next(); 
    198              if (this._name.equals(b.getVariable()._name)) 
     199             if (this._name.equalsIgnoreCase(b.getVariable()._name)) 
    199200             { 
    200201                this._name = b.getValue()._name; 
     
    233234        if (this._grounded) return; 
    234235         
    235         if(this._name.equals(subst.getVariable().toString())) 
     236        if(this._name.equalsIgnoreCase(subst.getVariable()._name)) 
    236237        { 
    237238                this._name = subst.getValue()._name; 
  • AgentMind/branches/FAtiMA-Modular/WorldTest/src/WorldTest.java

    r751 r768  
    390390         
    391391        public void ReadyForNextStep(){ 
    392                 SendPerceptionToAll( "READY-FOR-NEXT-STEP" ); 
     392                //SendPerceptionToAll( "READY-FOR-NEXT-STEP" ); 
     393                SendPerceptionToAll( "IDENTIFY-USER Amy Pixota" ); 
    393394        } 
    394395         
Note: See TracChangeset for help on using the changeset viewer.