Changeset 381


Ignore:
Timestamp:
04/22/2010 03:32:37 PM (10 years ago)
Author:
myl
Message:

Added SA operator but there is a bug that cause error in binding the SA variables

Location:
AgentMind/trunk/AgentMind
Files:
1 added
16 edited

Legend:

Unmodified
Added
Removed
  • AgentMind/trunk/AgentMind/Amy.txt

    r39 r381  
    22isPresent True 
    33has none 
     4location StudyRoom 
  • AgentMind/trunk/AgentMind/FAtiMA/src/FAtiMA/Display/RecordDetailPanel.java

    r328 r381  
    133133        this.add(_evaluation);*/ 
    134134         
    135         _time = new JTextField(String.valueOf(detail.getTime().getNarrativeTime())); 
     135        _time = new JTextField(String.valueOf(detail.getTime().getRealTime())); 
    136136        _time.setMinimumSize(new Dimension(100,30)); 
    137137        _time.setMaximumSize(new Dimension(100,30)); 
  • AgentMind/trunk/AgentMind/FAtiMA/src/FAtiMA/deliberativeLayer/DeliberativeProcess.java

    r326 r381  
    991991                                        AddSubIntention(am, _currentIntention, (ActivePursuitGoal) copingAction);        
    992992                                } 
    993                                  else if(!actionName.startsWith("Inference") && !actionName.endsWith("Appraisal")) 
     993                                 else if(!actionName.startsWith("Inference") && !actionName.endsWith("Appraisal") && !actionName.startsWith("SA")) 
    994994                                { 
    995995                                        fear = i.GetFear(am.getEmotionalState()); 
  • AgentMind/trunk/AgentMind/FAtiMA/src/FAtiMA/memory/ISpreadActivate.java

    r308 r381  
    1212        public void Spread(String question, ArrayList<String> knownInfo, EpisodicMemory episodicMemory); 
    1313        //ArrayList<MemoryEpisode> episodes, ArrayList<ActionDetail> records 
    14         public Hashtable<String, Integer> getSAResult(); 
    15          
     14        public Hashtable<String, Integer> getSAResults(); 
     15        public String getSABestResult(); 
    1616        public ArrayList<ActionDetail> getDetails(); 
    1717} 
  • AgentMind/trunk/AgentMind/FAtiMA/src/FAtiMA/memory/episodicMemory/ActionDetail.java

    r328 r381  
    620620                action += "<Praiseworthiness>" + this.getPraiseworthiness() + "</Praiseworthiness>"; 
    621621                //action += "<Evaluation>" + this.getEvaluation() + "</Evaluation>"; 
    622                 action += "<Time>" + this.getTime().getNarrativeTime() + "</Time>"; 
     622                action += "<Time>" + this.getTime().getRealTime() + "</Time>"; 
    623623                action += "<Location>" + this.getLocation() + "</Location>"; 
    624624                 
  • AgentMind/trunk/AgentMind/FAtiMA/src/FAtiMA/memory/episodicMemory/Time.java

    r278 r381  
    3232 
    3333import java.io.Serializable; 
     34import java.util.Calendar; 
     35import java.util.Date; 
     36import java.util.GregorianCalendar; 
    3437 
    3538import FAtiMA.AgentSimulationTime; 
     
    5255        { 
    5356                this._narrativeTime = AgentSimulationTime.GetInstance().Time(); 
    54                 this._realTime = System.currentTimeMillis(); 
     57                GregorianCalendar gcal = new GregorianCalendar(); 
     58                this._realTime = gcal.get(Calendar.HOUR_OF_DAY); 
    5559                this._eventSequence = _eventCounter; 
    5660                _eventCounter++; 
  • AgentMind/trunk/AgentMind/FAtiMA/src/FAtiMA/sensorEffector/RemoteAgent.java

    r375 r381  
    212212                        action = (ValuedAction) _actions.remove(0); 
    213213                        this.StartAction(am, action); 
    214                          
    215214                } 
    216215        } 
     
    339338                                _agent.getSpreadActivate().Spread(question, knownInfo, _agent.getMemory().getEpisodicMemory()); 
    340339                                 
    341                                 Hashtable<String, Integer> saResult = _agent.getSpreadActivate().getSAResult(); 
     340                                Hashtable<String, Integer> saResult = _agent.getSpreadActivate().getSAResults(); 
    342341                                Iterator it = saResult.keySet().iterator(); 
    343342                                while (it.hasNext()) 
  • AgentMind/trunk/AgentMind/FAtiMA/src/FAtiMA/sensorEffector/SpeechAct.java

    r278 r381  
    197197                } 
    198198                 
     199                int counter = 1; 
    199200                while(li.hasNext()) 
    200201                { 
    201                         _parameters.add(li.next().toString()); 
     202                        counter++; 
     203                        String it = li.next().toString(); 
     204                        _parameters.add(it); 
     205                        _contextVariables.add(new Parameter("it"+counter,it)); 
    202206                } 
    203207                 
  • AgentMind/trunk/AgentMind/FAtiMA/src/FAtiMA/util/parsers/StripsOperatorsLoaderHandler.java

    r359 r381  
    5858import FAtiMA.conditions.PredicateCondition; 
    5959import FAtiMA.conditions.PropertyCondition; 
     60import FAtiMA.conditions.SACondition; 
    6061import FAtiMA.deliberativeLayer.plan.Effect; 
    6162import FAtiMA.deliberativeLayer.plan.EffectOnDrive; 
     
    8182        private Substitution _self; 
    8283        private AgentModel _am; 
     84        private SACondition _sac;        
    8385         
    8486        public StripsOperatorsLoaderHandler(AgentModel am) { 
     
    249251        } 
    250252    } 
     253         
     254        public void SACondition(Attributes attributes) { 
     255                                 
     256                try 
     257        { 
     258                _sac = SACondition.ParseSA(attributes); 
     259                _sac.MakeGround(_self); 
     260        } 
     261        catch(Exception e) 
     262        { 
     263                e.printStackTrace(); 
     264        } 
     265        } 
     266         
     267        public void SAKnown(Attributes attributes) { 
     268                String name; 
     269                Symbol value; 
     270 
     271                try 
     272        { 
     273                name = attributes.getValue("name");              
     274                value = new Symbol(attributes.getValue("value")); 
     275                System.out.println("known " + name + " " + value); 
     276                _sac.AddKnownVariables(name, value); 
     277                _sac.MakeGround(_self); 
     278                if(_precondition)  
     279                        _currentOperator.AddPrecondition(_sac); 
     280                else { 
     281                        String operatorName = _currentOperator.getName().GetFirstLiteral().toString(); 
     282                        _currentOperator.AddEffect(new Effect(_am, operatorName,_probability, _sac));    
     283                } 
     284        } 
     285        catch(Exception e) 
     286        { 
     287                e.printStackTrace(); 
     288        }                
     289        } 
    251290} 
  • AgentMind/trunk/AgentMind/MemoryProcesses/src/main/java/MemoryProcesses/SAQuery.java

    r328 r381  
    3434import java.util.ArrayList; 
    3535import java.util.Hashtable; 
     36import java.util.Iterator; 
    3637import java.util.StringTokenizer; 
    3738 
    3839import FAtiMA.memory.episodicMemory.ActionDetail; 
     40import FAtiMA.wellFormedNames.Symbol; 
    3941 
    4042public class SAQuery { 
     
    5961         
    6062        private String _events; 
     63        private int _maxFrequency; 
    6164         
    6265        private final PropertyChangeSupport changes  = new PropertyChangeSupport( this ); 
     
    8285                 
    8386                this._events = ""; 
     87                this._maxFrequency = 0; 
    8488        } 
    8589             
     
    221225                 
    222226                this._events = ""; 
     227                this._maxFrequency = 0; 
    223228        } 
    224229         
     
    283288        return this._question; 
    284289    } 
     290     
     291    public String getBestResult() 
     292        { 
     293        Iterator<String> it = this._results.keySet().iterator(); 
     294                while (it.hasNext()) 
     295                { 
     296                        String result = it.next(); 
     297                        Integer val = (Integer) _results.get(result); 
     298                        if(val == this._maxFrequency) 
     299                                return result; 
     300                } 
     301                         
     302                return null; 
     303        } 
    285304     
    286305    public Hashtable<String, Integer> getResults() 
     
    358377                                Integer val = (Integer) _results.get(result); 
    359378                                this._results.put(result, ++val); 
     379                                if (this._maxFrequency < val) 
     380                                        this._maxFrequency = val; 
    360381                        } 
    361382        } 
     
    374395                                Integer val = (Integer) _results.get(Integer.toString(result)); 
    375396                                this._results.put(Integer.toString(result), ++val); 
     397                                if (this._maxFrequency < val) 
     398                                        this._maxFrequency = val; 
    376399                        } 
    377400        } 
  • AgentMind/trunk/AgentMind/MemoryProcesses/src/main/java/MemoryProcesses/SpreadActivate.java

    r309 r381  
    8585         * @return a list of answer to the query 
    8686         */ 
    87         public Hashtable<String, Integer> getSAResult() 
     87        public Hashtable<String, Integer> getSAResults() 
    8888        { 
    89                 return _saQuery.getResults(); 
     89                return this._saQuery.getResults(); 
     90        } 
     91         
     92        public String getSABestResult() 
     93        { 
     94                return this._saQuery.getBestResult(); 
    9095        } 
    9196         
    9297        public ArrayList<ActionDetail> getDetails() 
    9398        { 
    94                 return _saQuery.getDetails(); 
     99                return this._saQuery.getDetails(); 
    95100        } 
    96101} 
  • AgentMind/trunk/AgentMind/WorldTest/src/RemoteAgent.java

    r282 r381  
    151151                } 
    152152                else if (type.startsWith("PROPERTY-CHANGED")) 
    153                 { 
    154  
     153                {                        
     154                         
    155155                } 
    156156                else if (type.equals("look-at")) { 
  • AgentMind/trunk/AgentMind/WorldTest/src/UserInterface.java

    r328 r381  
    22import java.io.FileInputStream; 
    33import java.util.ArrayList; 
     4import java.util.Calendar; 
     5import java.util.GregorianCalendar; 
    46import java.util.ListIterator; 
    57import java.util.Random; 
     
    121123            // Meiyii 06/03/09 
    122124        _timeOptions = new JComboBox(); 
     125        GregorianCalendar gcal = new GregorianCalendar(); 
     126                int time = gcal.get(Calendar.HOUR_OF_DAY); 
     127                _timeOptions.addItem(time); 
    123128        _timeOptions.addItem(UserInterface.MORNING); 
    124129        _timeOptions.addItem(UserInterface.AFTERNOON); 
     130         
    125131                _timeOptions.addActionListener(new ActionListener(){ 
    126132                        public void actionPerformed(ActionEvent arg0) { 
     
    279285                //_frame.getContentPane().add(stepButton); 
    280286                _frame.setVisible(true); 
    281                  
     287                  
    282288                String userOptionsFile = _world.GetUserOptionsFile() + _userOptions.getSelectedItem().toString() + ".txt"; 
    283289                _previousUser = _userOptions.getSelectedItem().toString(); 
     
    285291                // Read user input options from a text file 
    286292                ParseFile(userOptionsFile); 
    287                  
    288293    } 
    289294     
  • AgentMind/trunk/AgentMind/data/characters/minds/LIRECScenarios.xml

    r364 r381  
    123123                </Agent> 
    124124        </Scenario>      
     125         
     126        <Scenario name="Review">         
     127                <WorldSimulator port="46874" scenery="HWU" actionsFile="data/characters/minds/LIRECYr2Actions.xml"  
     128                                                agentLanguageFile="data/characters/minds/language/agent/en/language-set-1"  
     129                                                userOptionsFile="LIRECOptions">          
     130                         
     131                        <Objects>                                
     132                                <Object name="User"/>    
     133                                <Object name="Amy"/>                             
     134                        </Objects> 
     135                         
     136                </WorldSimulator> 
     137 
     138                <Agent name="SarahReview" displayName="SarahReview" role="SarahReview" platform="worldsim" host="localhost"  
     139                           port="46874" displayMode="True" sex="M" actionsFile="LIRECYr2Actions"  
     140                           goalsFile="LIRECYr2GoalLibrary" cultureName="NoCulture"> 
     141                         
     142                        <Properties> 
     143                                <Property name="time" value="Morning"/> 
     144                                <Property name="isPerson" value="True"/> 
     145                                <Property name="location" value="LivingRoom"/>   
     146                        </Properties>    
     147                </Agent> 
     148                 
     149        </Scenario>      
    125150</Scenarios> 
  • AgentMind/trunk/AgentMind/data/characters/minds/language/agent/en/language-set-1/templates.tdl

    r43 r381  
    33# global variables 
    44 
    5 #pre1: $T=Type() not(bully()) 
    6 #-> $T bully(value:Luke) 
     5Type(value:replyLocation) it(value:$O) it2(value:$T) 
     6-> Utterance(value: ($O," is at ",$T,".")) 
    77 
    8 #pre2: $T=Type() not(victim()) 
    9 #-> $T victim(value:John) 
    10  
    11 Type(value:greeting) 
    12 -> Utterance(value: "Hi, how are you?") 
    13  
    14 Type(value:welcome) 
    15 -> Utterance(value: "Nice to see you.") 
    16  
    17 Type(value:welcome) 
    18 -> Utterance(value: "Good to have you here.") 
    19  
    20 Type(value:apple) 
    21 -> Utterance(value: "Would you like an apple?") 
    22  
    23 Type(value:orange) 
    24 -> Utterance(value: "Do you want to have an orange?") 
    25  
    26 Type(value:banana) 
    27 -> Utterance(value: "Fancy a banana?") 
    28  
    29 Type(value:cake) 
    30 -> Utterance(value: "Do you want to have a piece of cake?") 
    31  
    32 Type(value:askPreference) 
    33 -> Utterance(value: "Which other fruit do you prefer?") 
    34  
    35 Type(value:acknowledge) 
    36 -> Utterance(value: "OK. I will remember that for next time.") 
    37  
    38 Type(value:swearSecrecy) it(value:$O) 
    39 -> Utterance(value: ("OK. I will keep that secret from ",$O,".")) 
    40  
    41 Type(value:swearSecrecy) it(value:$O) 
    42 -> Utterance(value: ("I won't tell ",$O," about that. Thanks for sharing it with me!")) 
    43  
    44 Type(value:party) it(value:$O) 
    45 -> Utterance(value: ($O," was drunk at the party last night.")) 
    46  
    47 Type(value:newJob) it(value:$O) 
    48 -> Utterance(value: ("Oh... yes, ",$O," is going to get a new job.")) 
    49  
    50 Type(value:hideInfo) 
    51 -> Utterance(value: "I am afraid I don't know anything about that.") 
    52  
    53 Type(value:dontTell) 
    54 -> Utterance(value: "I suggest you ask him later.") 
    55  
    56 Type(value:goodbye) it(value:$O) 
    57 -> Utterance(value: ("Talk to you again soon. Enjoy your ",$O,".")) 
    58  
    59 Type(value:goodbye) it(value:$O) 
    60 -> Utterance(value: ("Hope you enjoy the ",$O,". Bye for now!")) 
  • AgentMind/trunk/AgentMind/data/characters/minds/language/agent/en/language-set-1/types.xml

    r1 r381  
    3232 
    3333  <class name="it" extends="globalContext"/> 
     34  <class name="it2" extends="globalContext"/> 
    3435  <class name="topic" extends="globalContext"/> 
    3536  <class name="episode" extends="globalContext"/> 
Note: See TracChangeset for help on using the changeset viewer.