Changeset 698


Ignore:
Timestamp:
11/11/2010 02:29:10 PM (8 years ago)
Author:
joao.dias
Message:
 
Location:
AgentMind/branches/FAtiMA-Modular/FAtiMA/src/FAtiMA
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • AgentMind/branches/FAtiMA-Modular/FAtiMA/src/FAtiMA/Core/AgentCore.java

    r676 r698  
    494494 
    495495                                        long time = AgentSimulationTime.GetInstance().Time(); 
     496                                         
     497                                        _emotionalState.Decay(); 
    496498 
    497499                                        for(IComponent c : this._components.values()) 
     
    529531                                                        } 
    530532 
    531                                                         emotions = Appraisal.GenerateSelfEmotions(this, e, appraisal); 
    532  
    533                                                         //TODO emotions for others 
    534                                                         //emotions.addAll(Appraisal.GenerateEmotionForOther(am, event, v, other)) 
     533                                                        emotions = Appraisal.GenerateEmotions(this, e, appraisal); 
     534 
    535535                                                        for(BaseEmotion em : emotions) 
    536536                                                        { 
  • AgentMind/branches/FAtiMA-Modular/FAtiMA/src/FAtiMA/Core/emotionalState/Appraisal.java

    r667 r698  
    4242public abstract class Appraisal { 
    4343         
    44         public static ArrayList<BaseEmotion> GenerateSelfEmotions(AgentModel am, Event event, AppraisalStructure vector) 
     44        public static ArrayList<BaseEmotion> GenerateEmotions(AgentModel am, Event event, AppraisalStructure as) 
    4545        { 
     46                AppraisalStructure appraisalOfOther; 
    4647                ArrayList<BaseEmotion> emotions = new ArrayList<BaseEmotion>(); 
    4748                float desirability; 
     
    4950                float like; 
    5051                 
    51                 desirability = vector.getAppraisalVariable(AppraisalStructure.DESIRABILITY); 
    52                 praiseworthiness = vector.getAppraisalVariable(AppraisalStructure.PRAISEWORTHINESS); 
    53                 like = vector.getAppraisalVariable(AppraisalStructure.LIKE); 
     52                desirability = as.getAppraisalVariable(AppraisalStructure.DESIRABILITY); 
     53                praiseworthiness = as.getAppraisalVariable(AppraisalStructure.PRAISEWORTHINESS); 
     54                like = as.getAppraisalVariable(AppraisalStructure.LIKE); 
    5455                 
    5556                 
     
    6263                if (desirability != 0) { 
    6364                        emotions.add(OCCAppraiseWellBeing(event, desirability)); 
     65                         
     66                        for(String other : as.getOthers()) 
     67                        { 
     68                                appraisalOfOther = as.getAppraisalOfOther(other); 
     69                                emotions.add(Appraisal.GenerateEmotionForOther(am, event, desirability, appraisalOfOther, other)); 
     70                        } 
    6471                } 
    6572                 
     
    189196        } 
    190197         
    191         public static BaseEmotion GenerateEmotionForOther(AgentModel am, Event event, AppraisalStructure v, String other) 
     198        private static BaseEmotion GenerateEmotionForOther(AgentModel am, Event event, float desirability, AppraisalStructure appraisalOfOther, String other) 
    192199        { 
    193                 float desirabilityForOther = v.getAppraisalVariable(AppraisalStructure.DESIRABILITY_FOR_OTHER); 
    194                 float desirability = v.getAppraisalVariable(AppraisalStructure.DESIRABILITY); 
     200                float desirabilityForOther = appraisalOfOther.getAppraisalVariable(AppraisalStructure.DESIRABILITY); 
    195201                float targetBias = 0; 
    196202                float subjectBias = 0; 
  • AgentMind/branches/FAtiMA-Modular/FAtiMA/src/FAtiMA/Core/reactiveLayer/ReactiveProcess.java

    r677 r698  
    6161package FAtiMA.Core.reactiveLayer; 
    6262 
    63 import java.util.ArrayList; 
    64 import java.util.ListIterator; 
    6563 
    6664import FAtiMA.Core.AgentCore; 
     
    7068import FAtiMA.Core.Display.AgentDisplayPanel; 
    7169import FAtiMA.Core.emotionalState.ActiveEmotion; 
    72 import FAtiMA.Core.emotionalState.Appraisal; 
     70 
    7371import FAtiMA.Core.emotionalState.AppraisalStructure; 
    74 import FAtiMA.Core.emotionalState.BaseEmotion; 
    75 import FAtiMA.Core.memory.episodicMemory.ActionDetail; 
    7672import FAtiMA.Core.sensorEffector.Event; 
    77 import FAtiMA.Core.util.Constants; 
    7873import FAtiMA.Core.wellFormedNames.Name; 
    79 import FAtiMA.ToM.ModelOfOther; 
    80 import FAtiMA.socialRelations.LikeRelation; 
     74 
    8175 
    8276/** 
     
    179173                if(selfEvaluation._desirabilityForOther != null) 
    180174                { 
    181                         as.SetAppraisalVariable(NAME, (short)5, AppraisalStructure.DESIRABILITY_FOR_OTHER, selfEvaluation._desirabilityForOther.intValue()); 
     175                        as.SetAppraisalVariableOfOther(selfEvaluation._other.toString(), NAME, (short)5, AppraisalStructure.DESIRABILITY, selfEvaluation._desirabilityForOther.intValue()); 
    182176                } 
    183177                if(selfEvaluation._praiseworthiness != null) 
  • AgentMind/branches/FAtiMA-Modular/FAtiMA/src/FAtiMA/ToM/ModelOfOther.java

    r679 r698  
    22 
    33import java.io.Serializable; 
     4import java.util.ArrayList; 
    45import java.util.Collection; 
    56import java.util.HashMap; 
     
    1011import FAtiMA.Core.IGetModelStrategy; 
    1112import FAtiMA.Core.deliberativeLayer.DeliberativeProcess; 
     13import FAtiMA.Core.emotionalState.ActiveEmotion; 
     14import FAtiMA.Core.emotionalState.Appraisal; 
     15import FAtiMA.Core.emotionalState.AppraisalStructure; 
     16import FAtiMA.Core.emotionalState.BaseEmotion; 
    1217import FAtiMA.Core.emotionalState.EmotionDisposition; 
    1318import FAtiMA.Core.emotionalState.EmotionalState; 
     
    5661        } 
    5762         
     63        public void decay(long time) 
     64        { 
     65                _es.Decay(); 
     66                 
     67                for(IComponent c : _components.values()) 
     68                { 
     69                        c.decay(time); 
     70                } 
     71        } 
     72         
    5873        public void update() 
    5974        { 
     
    7186                } 
    7287        } 
     88         
     89        public void appraisal(Event e, AppraisalStructure as)  
     90        { 
     91                ArrayList<BaseEmotion> emotions; 
     92                ActiveEmotion activeEmotion; 
     93                 
     94                for(IComponent c : this._components.values()) 
     95                { 
     96                        c.appraisal(e,as,this); 
     97                } 
     98 
     99                emotions = Appraisal.GenerateEmotions(this, e, as); 
     100 
     101                for(BaseEmotion em : emotions) 
     102                { 
     103                        activeEmotion = _es.AddEmotion(em, this); 
     104                        if(activeEmotion != null) 
     105                        { 
     106                                for(IComponent c : this._components.values()) 
     107                                { 
     108                                        c.emotionActivation(e,activeEmotion,this); 
     109                                } 
     110                        } 
     111                } 
     112        } 
     113         
    73114         
    74115        public void addComponent(IComponent c) 
     
    100141        @Override 
    101142        public DeliberativeProcess getDeliberativeLayer() { 
    102                 return null; 
     143                return _deliberativeProcess; 
    103144        } 
    104145 
    105146        @Override 
    106147        public ReactiveProcess getReactiveLayer() { 
    107                 // TODO Auto-generated method stub 
    108                 return null; 
     148                 
     149                return _reactiveProcess; 
    109150        } 
    110151 
  • AgentMind/branches/FAtiMA-Modular/FAtiMA/src/FAtiMA/ToM/ToMComponent.java

    r693 r698  
    9797        @Override 
    9898        public void decay(long time) { 
    99                 for(String s : _nearbyAgents) 
    100                 { 
    101                         ModelOfOther m = _ToM.get(s); 
    102                         for(IComponent c : m.getComponents()) 
    103                         { 
    104                                 c.decay(time); 
    105                         } 
     99                 
     100                for(String s : _nearbyAgents) 
     101                { 
     102                        ModelOfOther m = _ToM.get(s); 
     103                        m.decay(time); 
    106104                } 
    107105        } 
     
    138136                 
    139137                AppraisalStructure otherAS; 
    140                 float desirabilityForOther; 
    141138                 
    142139                for(String s : _nearbyAgents) 
     
    144141                        otherAS = new AppraisalStructure(); 
    145142                        ModelOfOther m = _ToM.get(s); 
    146                         m.Appraisal(e, otherAS, m); 
     143                        m.appraisal(e, otherAS); 
    147144                         
    148145                        as.SetAppraisalOfOther(s, otherAS); 
Note: See TracChangeset for help on using the changeset viewer.