Changeset 191


Ignore:
Timestamp:
11/01/2009 04:25:04 PM (10 years ago)
Author:
joao.dias
Message:

Removed +1000 warnings from FAtiMA by changing from older ArrayLists? to generics, e.g. ArrayList?<String>. Yes, it was a lot of boring work.

Right now, we only have 19 warnings, mostly related to unchecked cast conversions after cloning an object.

Location:
AgentMind/branches/FAtiMA2/src/FAtiMA
Files:
91 edited

Legend:

Unmodified
Added
Removed
  • AgentMind/branches/FAtiMA2/src/FAtiMA/ActionLibrary.java

    r190 r191  
    4747import FAtiMA.util.parsers.StripsOperatorsLoaderHandler; 
    4848import FAtiMA.wellFormedNames.Name; 
     49import FAtiMA.wellFormedNames.Substitution; 
    4950import FAtiMA.wellFormedNames.Unifier; 
    5051 
     
    126127        } 
    127128 
    128         private ArrayList _actions; 
     129        private ArrayList<Step> _actions; 
    129130         
    130131        /** 
     
    134135        private ActionLibrary() 
    135136        { 
    136                 _actions = new ArrayList(); 
     137                _actions = new ArrayList<Step>(); 
    137138        } 
    138139         
     
    159160        } 
    160161         
    161         public ArrayList GetActions() 
     162        public ArrayList<Step> GetActions() 
    162163        { 
    163164                return _actions; 
     
    167168        { 
    168169                Step s; 
    169                 ArrayList subst; 
     170                ArrayList<Substitution> subst; 
    170171                 
    171                 for(ListIterator li = _actions.listIterator(); li.hasNext();) 
     172                for(ListIterator<Step> li = _actions.listIterator(); li.hasNext();) 
    172173                { 
    173174                        s = (Step) li.next(); 
  • AgentMind/branches/FAtiMA2/src/FAtiMA/Agent.java

    r190 r191  
    2121 
    2222import FAtiMA.Display.AgentDisplay; 
    23 import FAtiMA.conditions.Condition; 
    2423import FAtiMA.culture.CulturalDimensions; 
    2524import FAtiMA.culture.Ritual; 
     
    2726import FAtiMA.deliberativeLayer.EmotionalPlanner; 
    2827import FAtiMA.deliberativeLayer.goals.GoalLibrary; 
    29 import FAtiMA.deliberativeLayer.plan.Effect; 
    30 import FAtiMA.deliberativeLayer.plan.Step; 
    3128import FAtiMA.emotionalState.ActiveEmotion; 
    3229import FAtiMA.emotionalState.Appraisal; 
     
    3532import FAtiMA.emotionalState.EmotionalState; 
    3633import FAtiMA.exceptions.UnknownGoalException; 
    37 import FAtiMA.knowledgeBase.KnowledgeBase; 
    3834import FAtiMA.memory.KnowledgeSlot; 
    3935import FAtiMA.memory.Memory; 
     
    5652import FAtiMA.util.parsers.ScenarioLoaderHandler; 
    5753import FAtiMA.wellFormedNames.Name; 
    58 import FAtiMA.wellFormedNames.SubstitutionSet; 
    5954 
    6055public class Agent implements AgentModel { 
     
    118113                                        new Agent(agentPlatform, args[1],Integer.parseInt(args[2]),saveDirectory,args[3]); 
    119114                                }else if(args.length >= 11){ 
    120                                         HashMap properties = new HashMap(); 
    121                                         ArrayList goals = new ArrayList(); 
     115                                        HashMap<String,String> properties = new HashMap<String,String>(); 
     116                                        ArrayList<String> goals = new ArrayList<String>(); 
    122117                                        readPropertiesAndGoals(args, properties, goals); 
    123118                                        new Agent(agentPlatform,args[1], Integer.parseInt(args[2]),saveDirectory,Boolean.parseBoolean(args[3]),args[4],null,null, args[5], args[6], args[7],args[8],args[9],args[10], properties, goals);                
     
    130125        } 
    131126         
    132         static private void readPropertiesAndGoals(String args[],HashMap properties,ArrayList goals){ 
     127        static private void readPropertiesAndGoals(String args[],HashMap<String,String> properties,ArrayList<String> goals){ 
    133128                StringTokenizer st; 
    134129                String left; 
     
    154149        protected DialogManager _dialogManager; 
    155150 
    156         protected ArrayList _actionsForExecution; 
    157         protected ArrayList _perceivedEvents; 
     151        protected ArrayList<ValuedAction> _actionsForExecution; 
     152        protected ArrayList<Event> _perceivedEvents; 
    158153 
    159154        protected RemoteAgent _remoteAgent; 
     
    175170        private static final Name ACTION_CONTEXT = Name.ParseName("ActionContext()"); 
    176171 
    177         public Agent(short agentPlatform, String host, int port, String saveDirectory, boolean displayMode, String name,String lActDatabase, String userLActDatabase, String sex, String role, String displayName, String actionsFile, String goalsFile, String cultureName, HashMap properties, ArrayList goalList) { 
     172        public Agent(short agentPlatform, String host, int port, String saveDirectory, boolean displayMode, String name,String lActDatabase,  
     173                        String userLActDatabase, String sex, String role,  
     174                        String displayName, String actionsFile,  
     175                        String goalsFile, String cultureName, HashMap<String,String> properties, ArrayList<String> goalList) { 
    178176 
    179177                _emotionalState = new EmotionalState(); 
     
    190188                _showStateWindow = displayMode; 
    191189                _currentEmotion = EmotionType.NEUTRAL;//neutral emotion - no emotion 
    192                 _actionsForExecution = new ArrayList(); 
    193                 _perceivedEvents = new ArrayList(); 
     190                _actionsForExecution = new ArrayList<ValuedAction>(); 
     191                _perceivedEvents = new ArrayList<Event>(); 
    194192                _dialogManager = new DialogManager(); 
    195193 
     
    263261                        else if (agentPlatform == AgentPlatform.WORLDSIM) 
    264262                        { 
    265                                 _remoteAgent = new WorldSimulatorRemoteAgent(host,port,this,new HashMap()); 
     263                                _remoteAgent = new WorldSimulatorRemoteAgent(host,port,this,new HashMap<String,String>()); 
    266264                        } 
    267265                          
     
    282280        } 
    283281         
    284         private void loadPersonality(String personalityFile, short agentPlatform, ArrayList goalList)  
     282        private void loadPersonality(String personalityFile, short agentPlatform, ArrayList<String> goalList)  
    285283                throws  ParserConfigurationException, SAXException, IOException, UnknownGoalException{ 
    286284                 
     
    300298                //The WorldSimulator Agent loads additional goals provided in the starting goal list 
    301299                if(agentPlatform == AgentPlatform.WORLDSIM){ 
    302                         ListIterator lt = goalList.listIterator(); 
     300                        ListIterator<String> lt = goalList.listIterator(); 
    303301                        String goal; 
    304302                        String goalName; 
     
    329327                 
    330328                Ritual r; 
    331                 ListIterator li = culture.GetRituals(this).listIterator(); 
     329                ListIterator<Ritual> li = culture.GetRituals(this).listIterator(); 
    332330                while(li.hasNext()) 
    333331                { 
     
    400398                this._displayName = (String) s.readObject(); 
    401399                this._showStateWindow = ((Boolean) s.readObject()).booleanValue(); 
    402                 this._actionsForExecution = (ArrayList) s.readObject(); 
    403                 this._perceivedEvents = (ArrayList) s.readObject(); 
     400                this._actionsForExecution = (ArrayList<ValuedAction>) s.readObject(); 
     401                this._perceivedEvents = (ArrayList<Event>) s.readObject(); 
    404402                this._saveDirectory = (String) s.readObject(); 
    405403                s.close(); 
     
    554552                                        synchronized (this) 
    555553                                        { 
    556                                                 for(ListIterator li = this._perceivedEvents.listIterator(); li.hasNext();) 
     554                                                for(ListIterator<Event> li = this._perceivedEvents.listIterator(); li.hasNext();) 
    557555                                                { 
    558556                                                        Event e = (Event) li.next(); 
     
    590588                                                synchronized (_memory.getWM()) 
    591589                                                { 
    592                                                         ArrayList facts = _memory.getWM().GetNewFacts(); 
     590                                                        ArrayList<KnowledgeSlot> facts = _memory.getWM().GetNewFacts(); 
    593591                                                         
    594                                                         for(ListIterator li = facts.listIterator();li.hasNext();) 
     592                                                        for(ListIterator<KnowledgeSlot> li = facts.listIterator();li.hasNext();) 
    595593                                                        { 
    596594                                                                KnowledgeSlot ks = (KnowledgeSlot) li.next(); 
     
    702700        } 
    703701         
    704         public ActiveEmotion simulateAppraisal(String action, String name, ArrayList parameters) 
    705         { 
    706                 ArrayList emotions; 
     702        public ActiveEmotion simulateAppraisal(String action, String name, ArrayList<String> parameters) 
     703        { 
     704                ArrayList<BaseEmotion> emotions; 
    707705                BaseEmotion em; 
    708706                Event e; 
     
    736734                        Reaction r = _reactiveLayer.Evaluate(this, e); 
    737735                        emotions = Appraisal.GenerateEmotions(this, e, _reactiveLayer.translateEmotionalReaction(r),r.getOther()); 
    738                         ListIterator li = emotions.listIterator(); 
     736                        ListIterator<BaseEmotion> li = emotions.listIterator(); 
    739737                         
    740738                        while(li.hasNext()) 
  • AgentMind/branches/FAtiMA2/src/FAtiMA/AgentModel.java

    r190 r191  
    22 
    33import FAtiMA.emotionalState.EmotionalState; 
    4 import FAtiMA.knowledgeBase.KnowledgeBase; 
    54import FAtiMA.memory.Memory; 
    6 import FAtiMA.memory.autobiographicalMemory.AutobiographicalMemory; 
    75import FAtiMA.motivationalSystem.MotivationalState; 
    86 
  • AgentMind/branches/FAtiMA2/src/FAtiMA/AgentProcess.java

    r190 r191  
    5454public abstract class AgentProcess implements Serializable { 
    5555 
    56         protected ArrayList _eventPool; 
     56        /** 
     57         *  
     58         */ 
     59        private static final long serialVersionUID = 1L; 
     60         
     61        protected ArrayList<Event> _eventPool; 
    5762        protected String _self; 
    5863         
     
    7176        public AgentProcess(String name) { 
    7277                _self = name; 
    73                 _eventPool = new ArrayList(); 
     78                _eventPool = new ArrayList<Event>(); 
    7479        } 
    7580         
  • AgentMind/branches/FAtiMA2/src/FAtiMA/Display/AgentDisplayPanel.java

    r1 r191  
    3838public abstract class AgentDisplayPanel extends JPanel { 
    3939     
    40     public abstract boolean Update(Agent ag);  
     40    /** 
     41         *  
     42         */ 
     43        private static final long serialVersionUID = 1L; 
     44 
     45        public abstract boolean Update(Agent ag);  
    4146 
    4247} 
  • AgentMind/branches/FAtiMA2/src/FAtiMA/Display/ConditionsPanel.java

    r1 r191  
    5151        private static final long serialVersionUID = 1L; 
    5252 
    53         public ConditionsPanel(String title, ListIterator conditions) { 
     53        public ConditionsPanel(String title, ListIterator<Condition> conditions) { 
    5454                 
    5555                super(); 
  • AgentMind/branches/FAtiMA2/src/FAtiMA/Display/DrivesDisplay.java

    r190 r191  
    99import javax.swing.JProgressBar; 
    1010 
    11 import FAtiMA.Agent; 
    1211import FAtiMA.AgentModel; 
    1312import FAtiMA.motivationalSystem.MotivationalState; 
  • AgentMind/branches/FAtiMA2/src/FAtiMA/Display/EmotionalStatePanel.java

    r190 r191  
    5858    JPanel _emotionsPanel; 
    5959     
    60     protected Hashtable _emotionDisplays; 
     60    protected Hashtable<String,EmotionDisplay> _emotionDisplays; 
    6161     
    6262    public EmotionalStatePanel() { 
     
    6464        this.setLayout(new BoxLayout(this,BoxLayout.Y_AXIS)); 
    6565         
    66         _emotionDisplays = new Hashtable(); 
     66        _emotionDisplays = new Hashtable<String,EmotionDisplay>(); 
    6767 
    6868         
     
    116116            //since the emotions displayed in the previous update are the same emotions 
    117117            //in the current update 
    118              Iterator it = es.GetEmotionsIterator(); 
     118             Iterator<ActiveEmotion> it = es.GetEmotionsIterator(); 
    119119             EmotionDisplay emotionDisplay; 
    120120             while(it.hasNext()) { 
    121                  em = (ActiveEmotion) it.next();      
     121                 em = it.next();      
    122122                 emotionDisplay = (EmotionDisplay) _emotionDisplays.get(em.GetHashKey()); 
    123123                 emotionDisplay.SetValue(em.GetIntensity()); 
     
    131131            _emotionDisplays.clear(); 
    132132             
    133             Iterator it = es.GetEmotionsIterator(); 
     133            Iterator<ActiveEmotion> it = es.GetEmotionsIterator(); 
    134134            EmotionDisplay emotionDisplay; 
    135135            while(it.hasNext()) { 
    136                 em = (ActiveEmotion) it.next(); 
     136                em = it.next(); 
    137137                emotionDisplay = new EmotionDisplay(em); 
    138138                 
     
    151151         
    152152        if(em != null) { 
    153                 Iterator it = _emotionDisplays.values().iterator(); 
     153                Iterator<EmotionDisplay> it = _emotionDisplays.values().iterator(); 
    154154                EmotionDisplay emotionDisplay; 
    155155                while(it.hasNext()) { 
  • AgentMind/branches/FAtiMA2/src/FAtiMA/Display/EpisodicMemoryPanel.java

    r190 r191  
    5050         */ 
    5151        private static final long serialVersionUID = 1L; 
    52         private ArrayList _memoryEpisodeDisplays; 
     52        private ArrayList<MemoryEpisodeDisplay> _memoryEpisodeDisplays; 
    5353    private JPanel _memoryEpisodes; 
    5454     
     
    5858        this.setLayout(new BoxLayout(this,BoxLayout.Y_AXIS)); 
    5959         
    60         _memoryEpisodeDisplays = new ArrayList(); 
     60        _memoryEpisodeDisplays = new ArrayList<MemoryEpisodeDisplay>(); 
    6161                 
    6262                _memoryEpisodes = new JPanel(); 
     
    8484                 
    8585                synchronized(ag.getMemory().getAM().GetSyncRoot()){ 
    86                         Iterator it = ag.getMemory().getAM().GetAllEpisodes().iterator(); 
     86                        Iterator<MemoryEpisode> it = ag.getMemory().getAM().GetAllEpisodes().iterator(); 
    8787                MemoryEpisodeDisplay mDisplay; 
    8888                MemoryEpisode episode; 
    8989                while(it.hasNext()) { 
    90                         episode = (MemoryEpisode) it.next(); 
     90                        episode = it.next(); 
    9191                        mDisplay = new MemoryEpisodeDisplay(episode); 
    9292                        _memoryEpisodes.add(mDisplay.getMemoryEpisodePanel()); 
     
    102102        { 
    103103        int aux=0; 
    104         ListIterator li = this._memoryEpisodeDisplays.listIterator(); 
     104        ListIterator<MemoryEpisodeDisplay> li = this._memoryEpisodeDisplays.listIterator(); 
    105105        while(li.hasNext()) 
    106106        { 
  • AgentMind/branches/FAtiMA2/src/FAtiMA/Display/GoalsPanel.java

    r190 r191  
    4242import FAtiMA.Agent; 
    4343import FAtiMA.deliberativeLayer.DeliberativeProcess; 
    44 import FAtiMA.deliberativeLayer.EmotionalPlanner; 
    4544import FAtiMA.deliberativeLayer.Intention; 
    4645import FAtiMA.deliberativeLayer.goals.Goal; 
     46import FAtiMA.wellFormedNames.Name; 
    4747 
    4848 
     
    5454        private static final long serialVersionUID = 1L; 
    5555         
    56         private HashMap _intentionDisplays; 
    57     private ArrayList _goalDisplays; 
     56        private HashMap<Name,IntentionDisplay> _intentionDisplays; 
     57    private ArrayList<GoalDisplay> _goalDisplays; 
    5858    private JPanel _goals; 
    5959    private JPanel _intentions; 
     
    6464        this.setLayout(new BoxLayout(this,BoxLayout.Y_AXIS)); 
    6565         
    66         _intentionDisplays = new HashMap(); 
    67         _goalDisplays = new ArrayList(); 
     66        _intentionDisplays = new HashMap<Name, IntentionDisplay>(); 
     67        _goalDisplays = new ArrayList<GoalDisplay>(); 
    6868                 
    6969                _goals = new JPanel(); 
     
    9999                _goalDisplays.clear(); 
    100100                 
    101                 Iterator it = deliberative.GetGoals().iterator(); 
     101                Iterator<Goal> it = deliberative.GetGoals().iterator(); 
    102102                GoalDisplay gDisplay; 
    103103                Goal g; 
    104104                while(it.hasNext()) { 
    105                         g = (Goal) it.next(); 
     105                        g = it.next(); 
    106106                        gDisplay = new GoalDisplay(ag, g); 
    107107                         
     
    115115            //since the emotions displayed in the previous update are the same emotions 
    116116            //in the current update 
    117              Iterator it = deliberative.GetIntentionsIterator(); 
     117             Iterator<Intention> it = deliberative.GetIntentionsIterator(); 
    118118             IntentionDisplay iDisplay; 
    119119             Intention i; 
    120120             while(it.hasNext()) { 
    121121                  
    122                  i = (Intention) it.next();      
     122                 i = it.next();      
    123123                 iDisplay = (IntentionDisplay) _intentionDisplays.get(i.getGoal().getName().toString()); 
    124124                 iDisplay.Update(ag, i); 
     
    130130            _intentionDisplays.clear(); 
    131131             
    132             Iterator it = deliberative.GetIntentionsIterator(); 
     132            Iterator<Intention> it = deliberative.GetIntentionsIterator(); 
    133133            IntentionDisplay iDisplay; 
    134134            Intention i; 
    135135            while(it.hasNext()) { 
    136                 i = (Intention) it.next(); 
     136                i = it.next(); 
    137137                iDisplay = new IntentionDisplay(ag, i); 
    138138                 
  • AgentMind/branches/FAtiMA2/src/FAtiMA/Display/KnowledgeBasePanel.java

    r190 r191  
    5151        private static final long serialVersionUID = 1L; 
    5252 
    53         private ArrayList _knowledgeFactList; 
     53        private ArrayList<KnowledgeFactDisplay> _knowledgeFactList; 
    5454     
    5555    private JPanel _knowledgeFactsPanel; 
     
    5959        this.setLayout(new BoxLayout(this,BoxLayout.Y_AXIS)); 
    6060         
    61         _knowledgeFactList = new ArrayList(); 
     61        _knowledgeFactList = new ArrayList<KnowledgeFactDisplay>(); 
    6262         
    6363        _knowledgeFactsPanel = new JPanel(); 
     
    7373        KnowledgeBase kb = ag.getMemory().getKB(); 
    7474         
    75         ListIterator li = kb.GetFactList(); 
     75        ListIterator<KnowledgeSlot> li = kb.GetFactList(); 
    7676         
    7777        KnowledgeSlot slot; 
  • AgentMind/branches/FAtiMA2/src/FAtiMA/Display/MemoryEpisodeDisplay.java

    r190 r191  
    240240                JScrollPane propertiesScroll = new JScrollPane(prop); 
    241241                 
    242                 ListIterator li = episode.getDetails().listIterator(); 
     242                ListIterator<ActionDetail> li = episode.getDetails().listIterator(); 
    243243                while(li.hasNext()) 
    244244                { 
    245                         prop.add(new MemoryDetailPanel((ActionDetail)li.next())); 
     245                        prop.add(new MemoryDetailPanel(li.next())); 
    246246                        _numberOfDetails ++; 
    247247                } 
  • AgentMind/branches/FAtiMA2/src/FAtiMA/Display/NeedsPanel.java

    r190 r191  
    1313import FAtiMA.Agent; 
    1414import FAtiMA.AgentModel; 
    15 import FAtiMA.motivationalSystem.MotivationalState; 
    1615 
    1716public class NeedsPanel extends AgentDisplayPanel { 
    1817        private static final long serialVersionUID = 1L; 
    1918         
    20         private Hashtable _drivesDisplays; 
     19        private Hashtable<String,DrivesDisplay> _drivesDisplays; 
    2120          
    2221        private JPanel _needs; 
     
    3029        this.setLayout(new BoxLayout(this,BoxLayout.Y_AXIS)); 
    3130       
    32         _drivesDisplays = new Hashtable(); 
     31        _drivesDisplays = new Hashtable<String, DrivesDisplay>(); 
    3332                 
    3433        _needs = new JPanel(); 
     
    5453 
    5554                CheckForOtherAgents(ag); 
    56          
    57                 Collection displays  = _drivesDisplays.values(); 
    5855                 
    59                 Iterator it = displays.iterator(); 
    60                  
    61                 while(it.hasNext()){ 
    62                         DrivesDisplay dd = (DrivesDisplay)it.next(); 
    63                          
     56                for(DrivesDisplay dd : _drivesDisplays.values()) 
     57                { 
    6458                        dd.Update(ag); 
    6559                } 
     60         
    6661                return false; 
    6762        } 
     
    7469                        _previousKnownAgents = numOfKnownAgents; 
    7570                         
    76                         Collection otherAgentsNames  = am.getMotivationalState().getOtherAgentsMotivators().keySet(); 
     71                        Collection<String> otherAgentsNames  = am.getMotivationalState().getOtherAgentsMotivators().keySet(); 
    7772                 
    78                         Iterator it = otherAgentsNames.iterator(); 
     73                        Iterator<String> it = otherAgentsNames.iterator(); 
    7974                         
    8075                        while(it.hasNext()){ 
  • AgentMind/branches/FAtiMA2/src/FAtiMA/Display/RelationDisplay.java

    r190 r191  
    3737import javax.swing.JProgressBar; 
    3838 
    39 import FAtiMA.knowledgeBase.KnowledgeBase; 
    4039import FAtiMA.memory.Memory; 
    4140import FAtiMA.socialRelations.LikeRelation; 
  • AgentMind/branches/FAtiMA2/src/FAtiMA/Display/STMRecordDisplay.java

    r190 r191  
    3939import javax.swing.JPanel; 
    4040import javax.swing.JScrollPane; 
    41 import javax.swing.JTextArea; 
    4241 
    4342import java.util.ArrayList; 
     
    4645import FAtiMA.memory.ActionDetail; 
    4746import FAtiMA.memory.shortTermMemory.STMemoryRecord; 
    48 import FAtiMA.memory.shortTermMemory.ShortTermMemory; 
    49 import FAtiMA.memory.shortTermMemory.WorkingMemory; 
    5047 
    5148public class STMRecordDisplay { 
     
    5350        private JPanel _panel; 
    5451    private JPanel _details; 
    55     private static int _lastID = 0; 
    56     private static int _previousID = 0; 
    5752     
    5853    public STMRecordDisplay(AgentModel am, STMemoryRecord records) { 
     
    138133                propertiesScroll.setAutoscrolls(true); 
    139134                 
    140                 ListIterator li = records.getDetails().listIterator(); 
     135                ListIterator<ActionDetail> li = records.getDetails().listIterator(); 
    141136         
    142                 ArrayList newRecords = am.getMemory().getSTM().GetNewRecords(); 
     137                ArrayList<ActionDetail> newRecords = am.getMemory().getSTM().GetNewRecords(); 
    143138                 
    144139                while(li.hasNext()) 
  • AgentMind/branches/FAtiMA2/src/FAtiMA/Display/ShortTermMemoryPanel.java

    r190 r191  
    3333import java.awt.Dimension; 
    3434import java.util.ArrayList; 
    35 import java.util.Iterator; 
    3635import java.util.ListIterator; 
    3736 
     
    4241 
    4342import FAtiMA.Agent; 
    44 import FAtiMA.AgentModel; 
    4543import FAtiMA.memory.KnowledgeSlot; 
    4644import FAtiMA.memory.shortTermMemory.WorkingMemory; 
    4745import FAtiMA.memory.shortTermMemory.STMemoryRecord; 
    48 import FAtiMA.memory.shortTermMemory.ShortTermMemory; 
    49 import FAtiMA.knowledgeBase.KnowledgeBase; 
    5046 
    5147public class ShortTermMemoryPanel extends AgentDisplayPanel { 
     
    6056    //private JPanel _knowledgePanel; 
    6157    private static int _knowledgeSize = 0; 
    62     private ArrayList _knowledgeFactList; 
     58    private ArrayList<KnowledgeFactDisplay> _knowledgeFactList; 
    6359    private JPanel _knowledgeFactsPanel; 
    6460    
     
    8278                this.add(eventsScrool); 
    8379                 
    84                 _knowledgeFactList = new ArrayList(); 
     80                _knowledgeFactList = new ArrayList<KnowledgeFactDisplay>(); 
    8581                
    8682            _knowledgeFactsPanel = new JPanel(); 
     
    138134        }      
    139135         
    140         ListIterator li = ag.getMemory().getKB().GetFactList(); 
     136        ListIterator<KnowledgeSlot> li = ag.getMemory().getKB().GetFactList(); 
    141137         
    142138        KnowledgeSlot slot; 
     
    162158         
    163159        li = ag.getMemory().getWM().GetFactList(); 
    164         ArrayList changeList = ag.getMemory().getWM().GetChangeList(); 
     160        ArrayList<KnowledgeSlot> changeList = ag.getMemory().getWM().GetChangeList(); 
    165161        _workingFactsSubPanel1.removeAll(); 
    166162        _workingFactsSubPanel2.removeAll(); 
  • AgentMind/branches/FAtiMA2/src/FAtiMA/Display/SocialRelationsPanel.java

    r190 r191  
    2222        JPanel _relationsPanel; 
    2323 
    24         protected Hashtable _realationsDisplay; 
     24        protected Hashtable<String, RelationDisplay> _realationsDisplay; 
    2525 
    2626        public SocialRelationsPanel() { 
     
    2828                this.setLayout(new BoxLayout(this, BoxLayout.Y_AXIS)); 
    2929 
    30                 _realationsDisplay = new Hashtable(); 
     30                _realationsDisplay = new Hashtable<String, RelationDisplay>(); 
    3131 
    3232                _relationsPanel = new JPanel(); 
     
    4242 
    4343        public boolean Update(Agent ag) { 
    44                 ArrayList relations = LikeRelation.getAllRelations(ag.getMemory(),Constants.SELF); 
    45                 relations.addAll(RespectRelation.getAllRelations(ag.getMemory(), Constants.SELF)); 
     44                ArrayList<Relation> relations = new ArrayList<Relation>(); 
     45                relations.addAll(LikeRelation.getAllRelations(ag.getMemory(),Constants.SELF)); 
     46                relations.addAll(RespectRelation.getAllRelations(ag.getMemory(), Constants.SELF));  
     47                 
    4648                boolean updated = false; 
    4749 
     
    5355                                                                                        // from the panel 
    5456                        _realationsDisplay.clear(); 
    55                         Iterator it = relations.iterator(); 
     57                        Iterator<Relation> it = relations.iterator(); 
    5658                        while (it.hasNext()) { 
    5759                                Relation r = (Relation) it.next(); 
     
    6365                } 
    6466 
    65                 Iterator it = relations.iterator(); 
     67                Iterator<Relation> it = relations.iterator(); 
    6668                while (it.hasNext()) { 
    6769                        Relation r = (Relation) it.next(); 
  • AgentMind/branches/FAtiMA2/src/FAtiMA/IntegrityValidator.java

    r1 r191  
    4848 
    4949 
     50import FAtiMA.conditions.Condition; 
    5051import FAtiMA.exceptions.UnknownSpeechActException; 
    5152import FAtiMA.sensorEffector.SpeechAct; 
     
    6263public class IntegrityValidator { 
    6364     
    64     ArrayList _operators; 
     65   // ArrayList _operators; 
    6566    /*LanguageEngine _language; 
    6667    LanguageEngine _user;*/ 
     
    9495     * @return true if any of the conditions received is unreacheable, false otherwise 
    9596     */ 
    96     public boolean FindUnreachableConditions(String objectName, ArrayList conditions) 
     97    public boolean FindUnreachableConditions(String objectName, ArrayList<Condition> conditions) 
    9798        { 
    9899           /* boolean foundUnreachable = false; 
  • AgentMind/branches/FAtiMA2/src/FAtiMA/conditions/Condition.java

    r190 r191  
    6868import FAtiMA.wellFormedNames.IGroundable; 
    6969import FAtiMA.wellFormedNames.Name; 
     70import FAtiMA.wellFormedNames.Substitution; 
    7071import FAtiMA.wellFormedNames.SubstitutionSet; 
    7172 
     
    8485 
    8586public abstract class Condition implements IGroundable, Cloneable, Serializable { 
     87 
     88        /** 
     89         *  
     90         */ 
     91        private static final long serialVersionUID = 1L; 
    8692 
    8793        /** 
     
    101107         * @see SubstitutionSet 
    102108         */ 
    103         public static ArrayList CheckActivation(AgentModel am, ArrayList preconditions) { 
    104                 ListIterator subsi; 
    105                 Condition cond; 
     109        public static ArrayList<SubstitutionSet> CheckActivation(AgentModel am, ArrayList<Condition> preconditions) { 
     110                ListIterator<SubstitutionSet> subsi; 
    106111                Condition newCond; 
    107112                SubstitutionSet subSet; 
    108                 ArrayList aux; 
    109                 SubstitutionSet newSubSet; 
    110                 ArrayList validSubstitutionsSet = new ArrayList(); 
    111                 ArrayList newValidSubstitutionsSet; 
     113                ArrayList<SubstitutionSet> aux; 
     114                ArrayList<SubstitutionSet> validSubstitutionsSet = new ArrayList<SubstitutionSet>(); 
     115                ArrayList<SubstitutionSet> newValidSubstitutionsSet; 
    112116                 
    113                 for(ListIterator li = preconditions.listIterator(); li.hasNext();) 
     117                for(Condition cond : preconditions) 
    114118                { 
    115119                        //For each condition we need to verify if it is valid 
    116                         cond = (Condition) li.next(); 
     120                         
    117121 
    118122                        //This list contains the SubstitutionSets that correspond to Substitutions  
     
    120124                        //this list is rebuilt from scratch at each condition, because a previous 
    121125                        //valid Substitution may become invalid when testing another condition  
    122                         newValidSubstitutionsSet = new ArrayList(); 
     126                        newValidSubstitutionsSet = new ArrayList<SubstitutionSet>(); 
    123127                         
    124128                        //if there are substitutions that resulted from testing previous conditions 
     
    148152                                                //So, for each valid set of substitutions we need to add the substitutions 
    149153                                                //that satisfy the previous conditions, and the result is a valid SubstitutionSet 
    150                                                 for(ListIterator li2 = aux.listIterator();li2.hasNext();) 
    151                                                 { 
    152                                                         newSubSet = (SubstitutionSet) li2.next(); 
     154                                                for(SubstitutionSet newSubSet : aux){ 
    153155                                                        //We're adding the substitutions needed for the previous conditions 
    154156                                                        //to the SubstitutionSet that verifies the current condition  
     
    223225         * @see AutobiographicalMemory 
    224226         */ 
    225         public ArrayList GetValidBindings(AgentModel am) { 
    226                 ArrayList validSubstitutionSets = new ArrayList(); 
    227                 ArrayList bindingSets; 
    228                 ArrayList bindings; 
    229                 ArrayList aux; 
     227        public ArrayList<SubstitutionSet> GetValidBindings(AgentModel am) { 
     228                ArrayList<SubstitutionSet> validSubstitutionSets = new ArrayList<SubstitutionSet>(); 
     229                ArrayList<SubstitutionSet> bindingSets; 
     230                ArrayList<Substitution> bindings; 
     231                ArrayList<Substitution> aux; 
    230232                SubstitutionSet subSet; 
    231233                Condition cond; 
     
    243245                        return null; 
    244246 
    245                 ListIterator li = bindingSets.listIterator(); 
     247                ListIterator<SubstitutionSet> li = bindingSets.listIterator(); 
    246248                while (li.hasNext()) { 
    247249                        subSet = (SubstitutionSet) li.next(); 
     
    297299     * @return returns all set of Substitutions that make the condition valid. 
    298300         */ 
    299         protected abstract ArrayList GetValueBindings(AgentModel am); 
     301        protected abstract ArrayList<Substitution> GetValueBindings(AgentModel am); 
    300302} 
  • AgentMind/branches/FAtiMA2/src/FAtiMA/conditions/Context.java

    r190 r191  
    66import FAtiMA.wellFormedNames.Name; 
    77import FAtiMA.wellFormedNames.Substitution; 
     8import FAtiMA.wellFormedNames.SubstitutionSet; 
    89 
    910/** 
     
    2021        private TimeCondition _timeCondition; 
    2122        private PlaceCondition _placeCondition; 
    22         private ArrayList _socialConditions; 
     23        private ArrayList<SocialCondition> _socialConditions; 
    2324         
    2425        public Context(){ 
    2526                _timeCondition = NullTimeCondition.GetInstance(); 
    2627                _placeCondition = NullPlaceCondition.GetInstance(); 
    27                 _socialConditions = new ArrayList(); 
     28                _socialConditions = new ArrayList<SocialCondition>(); 
    2829        } 
    2930         
     
    4445        } 
    4546         
    46         public void SetSocialConditions( ArrayList socialConditions ){ 
     47        public void SetSocialConditions( ArrayList<SocialCondition> socialConditions ){ 
    4748                _socialConditions = socialConditions; 
    4849        } 
     
    6768                aux._placeCondition = (PlaceCondition)_placeCondition.clone(); 
    6869                for( int i = 0, limit = _socialConditions.size(); i != limit; ++i ) 
    69                         aux._socialConditions.add( ((SocialCondition)_socialConditions.get(i)).clone() ); 
     70                        aux._socialConditions.add((SocialCondition)_socialConditions.get(i).clone() ); 
    7071                return aux; 
    7172        } 
     
    8182        } 
    8283 
    83         public Object Ground(ArrayList bindingConstraints) 
     84        public Object Ground(ArrayList<Substitution> bindingConstraints) 
    8485        { 
    8586                Context aux = (Context) this.clone(); 
     
    9596        } 
    9697         
    97         public void MakeGround(ArrayList bindings) 
     98        public void MakeGround(ArrayList<Substitution> bindings) 
    9899    { 
    99100                _timeCondition.MakeGround(bindings); 
     
    137138        } 
    138139         
    139         public ArrayList GetValidBindings(AgentModel am) 
     140        public ArrayList<SubstitutionSet> GetValidBindings(AgentModel am) 
    140141        { 
    141                 ArrayList conditions = new ArrayList(); 
     142                ArrayList<Condition> conditions = new ArrayList<Condition>(); 
    142143                conditions.add(_timeCondition); 
    143144                conditions.add(_placeCondition); 
     
    152153        } 
    153154 
    154         protected ArrayList GetValueBindings(AgentModel am) { 
     155        protected ArrayList<Substitution> GetValueBindings(AgentModel am) { 
    155156                return null; 
    156157        } 
  • AgentMind/branches/FAtiMA2/src/FAtiMA/conditions/EmotionCondition.java

    r190 r191  
    162162         * @see EmotionalState 
    163163         */ 
    164         public ArrayList GetValidBindings(AgentModel am) { 
    165                 ArrayList bindingSets = new ArrayList(); 
    166                 ArrayList subSets; 
     164        public ArrayList<SubstitutionSet> GetValidBindings(AgentModel am) { 
     165                ArrayList<SubstitutionSet> bindingSets = new ArrayList<SubstitutionSet>(); 
     166                ArrayList<SubstitutionSet> subSets; 
    167167                 
    168168                if (_name.isGrounded()) { 
     
    183183        } 
    184184         
    185         private ArrayList SearchEmotion(EmotionalState es) 
     185        private ArrayList<SubstitutionSet> SearchEmotion(EmotionalState es) 
    186186        { 
    187187                ActiveEmotion aem; 
    188                 ArrayList bindings; 
    189                 ArrayList substitutionSets = new ArrayList(); 
    190                  
    191                 for(Iterator it = es.GetEmotionsIterator();it.hasNext();) 
     188                ArrayList<Substitution> bindings; 
     189                ArrayList <SubstitutionSet>substitutionSets = new ArrayList<SubstitutionSet>(); 
     190                 
     191                for(Iterator<ActiveEmotion> it = es.GetEmotionsIterator();it.hasNext();) 
    192192                { 
    193193                        aem = (ActiveEmotion) it.next(); 
     
    255255         * @see Substitution 
    256256         */ 
    257         public Object Ground(ArrayList bindings) { 
     257        public Object Ground(ArrayList<Substitution> bindings) { 
    258258                EmotionCondition aux = (EmotionCondition) this.clone(); 
    259259                aux.MakeGround(bindings); 
     
    269269         * @see Substitution 
    270270         */ 
    271     public void MakeGround(ArrayList bindings) 
     271    public void MakeGround(ArrayList<Substitution> bindings) 
    272272    { 
    273273        this._name.MakeGround(bindings); 
  • AgentMind/branches/FAtiMA2/src/FAtiMA/conditions/MoodCondition.java

    r190 r191  
    197197         * @see EmotionalState 
    198198         */ 
    199         public ArrayList GetValidBindings(AgentModel am) { 
     199        public ArrayList<SubstitutionSet> GetValidBindings(AgentModel am) { 
    200200                if(CheckCondition(am)) 
    201201                { 
    202                         ArrayList bindings = new ArrayList(); 
     202                        ArrayList<SubstitutionSet> bindings = new ArrayList<SubstitutionSet>(); 
    203203                        bindings.add(new SubstitutionSet()); 
    204204                        return bindings; 
     
    207207        } 
    208208         
    209         public ArrayList GetValueBindings(AgentModel am) 
     209        public ArrayList<Substitution> GetValueBindings(AgentModel am) 
    210210        { 
    211211                if(CheckCondition(am)) { 
    212                         return new ArrayList(); 
     212                        return new ArrayList<Substitution>(); 
    213213                } 
    214214                else return null; 
     
    254254         * @see Substitution 
    255255         */ 
    256         public Object Ground(ArrayList bindings) { 
     256        public Object Ground(ArrayList<Substitution> bindings) { 
    257257                MoodCondition aux = (MoodCondition) this.clone(); 
    258258                aux.MakeGround(bindings); 
     
    268268         * @see Substitution 
    269269         */ 
    270     public void MakeGround(ArrayList bindings) 
     270    public void MakeGround(ArrayList<Substitution> bindings) 
    271271    { 
    272272    } 
  • AgentMind/branches/FAtiMA2/src/FAtiMA/conditions/MotivatorCondition.java

    r190 r191  
    99import FAtiMA.wellFormedNames.Name; 
    1010import FAtiMA.wellFormedNames.Substitution; 
     11import FAtiMA.wellFormedNames.SubstitutionSet; 
    1112import FAtiMA.wellFormedNames.Symbol; 
    1213 
    1314public class MotivatorCondition extends Condition { 
    1415         
     16        /** 
     17         *  
     18         */ 
     19        private static final long serialVersionUID = 1L; 
     20 
    1521        /** 
    1622         * Parses a Motivator given a XML attribute list 
     
    1925         */ 
    2026        public static MotivatorCondition ParseMotivator(Attributes attributes) { 
    21                 MotivatorCondition cond; 
    2227                String drive; 
    2328                Name target; 
     
    134139         * @see Substitution 
    135140         */ 
    136         public Object Ground(ArrayList bindingConstraints) 
     141        public Object Ground(ArrayList<Substitution> bindingConstraints) 
    137142        { 
    138143                MotivatorCondition aux = (MotivatorCondition) this.clone(); 
     
    149154         * @see Substitution 
    150155         */ 
    151     public void MakeGround(ArrayList bindings) 
     156    public void MakeGround(ArrayList<Substitution> bindings) 
    152157    { 
    153158        this._target.MakeGround(bindings); 
     
    200205        } 
    201206         
    202         protected ArrayList GetBindings(Name groundValue, Name value) { 
     207        protected ArrayList<SubstitutionSet> GetBindings(Name groundValue, Name value) { 
    203208                return null; 
    204209                //TODO: implement using motivational component 
     
    214219     * @return returns all set of Substitutions that make the condition valid. 
    215220     */ 
    216         protected ArrayList GetValueBindings(AgentModel am) { 
     221        protected ArrayList<Substitution> GetValueBindings(AgentModel am) { 
    217222                return null; 
    218223                //TODO: implement using motivational component 
  • AgentMind/branches/FAtiMA2/src/FAtiMA/conditions/NewEventCondition.java

    r190 r191  
    66import FAtiMA.AgentModel; 
    77import FAtiMA.memory.SearchKey; 
    8 import FAtiMA.sensorEffector.Event; 
    98import FAtiMA.wellFormedNames.Name; 
    109import FAtiMA.wellFormedNames.Symbol; 
     
    3736                } 
    3837                 
    39                 newEvent._parameters = new ArrayList(this._parameters.size()); 
     38                newEvent._parameters = new ArrayList<Symbol>(this._parameters.size()); 
    4039                 
    41                 ListIterator li = this._parameters.listIterator(); 
     40                ListIterator<Symbol> li = this._parameters.listIterator(); 
    4241                 
    4342                while(li.hasNext()) 
    4443                { 
    45                         newEvent._parameters.add(((Symbol)li.next()).clone()); 
     44                        newEvent._parameters.add((Symbol)li.next().clone()); 
    4645                } 
    4746                 
     
    8988         
    9089         
    91         protected ArrayList GetSearchKeys() 
     90        protected ArrayList<SearchKey> GetSearchKeys() 
    9291        { 
    93                 ArrayList keys = super.GetSearchKeys(); 
     92                ArrayList<SearchKey> keys = super.GetSearchKeys(); 
    9493                 
    9594                //we only want to search for events that happened at most 1 second before 
  • AgentMind/branches/FAtiMA2/src/FAtiMA/conditions/NullPlaceCondition.java

    r190 r191  
    3131        } 
    3232         
    33         public void MakeGround(ArrayList bindings) 
     33        public void MakeGround(ArrayList<Substitution> bindings) 
    3434    { 
    3535                return; 
     
    4949        } 
    5050         
    51         public ArrayList GetValidBindings(AgentModel am) { 
    52                 ArrayList list = new ArrayList(); 
     51        public ArrayList<SubstitutionSet> GetValidBindings(AgentModel am) { 
     52                ArrayList<SubstitutionSet> list = new ArrayList<SubstitutionSet>(); 
    5353                list.add(new SubstitutionSet()); 
    5454                return list; 
  • AgentMind/branches/FAtiMA2/src/FAtiMA/conditions/NullTimeCondition.java

    r190 r191  
    3131        } 
    3232         
    33         public void MakeGround(ArrayList bindings) 
     33        public void MakeGround(ArrayList<Substitution> bindings) 
    3434    { 
    3535                return; 
     
    4949        } 
    5050         
    51         public ArrayList GetValidBindings(AgentModel am) { 
    52                 ArrayList list = new ArrayList(); 
     51        public ArrayList<SubstitutionSet> GetValidBindings(AgentModel am) { 
     52                ArrayList<SubstitutionSet> list = new ArrayList<SubstitutionSet>(); 
    5353                list.add(new SubstitutionSet()); 
    5454                return list; 
  • AgentMind/branches/FAtiMA2/src/FAtiMA/conditions/PastEventCondition.java

    r190 r191  
    6666                Symbol action; 
    6767                Symbol target = null; 
    68                 ArrayList parameters = new ArrayList(); 
     68                ArrayList<Symbol> parameters = new ArrayList<Symbol>(); 
    6969                 
    7070                String aux; 
     
    105105        protected Symbol _action; 
    106106        protected Symbol _target; 
    107         protected ArrayList _parameters; 
     107        protected ArrayList<Symbol> _parameters; 
    108108         
    109109         
     
    113113        } 
    114114         
    115         public PastEventCondition(boolean occurred, Symbol subject, Symbol action, Symbol target, ArrayList parameters) 
     115        public PastEventCondition(boolean occurred, Symbol subject, Symbol action, Symbol target, ArrayList<Symbol> parameters) 
    116116        { 
    117117                this._positive = occurred; 
     
    128128                } 
    129129                 
    130                 ListIterator li = this._parameters.listIterator(); 
     130                ListIterator<Symbol> li = this._parameters.listIterator(); 
    131131                while(li.hasNext()) 
    132132                { 
     
    143143                this._action = new Symbol(e.GetAction()); 
    144144                this._target = new Symbol(e.GetTarget()); 
    145                 this._parameters = new ArrayList(e.GetParameters().size()); 
     145                this._parameters = new ArrayList<Symbol>(e.GetParameters().size()); 
    146146                 
    147147                String aux = this._subject + "," + this._action; 
     
    152152                 
    153153                Parameter p; 
    154                 ListIterator li = e.GetParameters().listIterator(); 
     154                ListIterator<Parameter> li = e.GetParameters().listIterator(); 
    155155                while(li.hasNext()) 
    156156                { 
    157                         p = (Parameter) li.next(); 
     157                        p = li.next(); 
    158158                        _parameters.add(new Symbol(p.GetValue().toString())); 
    159159                        aux = aux + "," + p.GetValue(); 
     
    167167                super(occurred, event); 
    168168                 
    169                 ListIterator li = event.GetLiteralList().listIterator(); 
     169                ListIterator<Symbol> li = event.GetLiteralList().listIterator(); 
    170170                li.next(); 
    171171                this._subject = (Symbol) li.next(); 
     
    175175                        this._target = (Symbol) li.next(); 
    176176                } 
    177                 this._parameters = new ArrayList(); 
     177                this._parameters = new ArrayList<Symbol>(); 
    178178                while(li.hasNext()) 
    179179                { 
     
    195195                } 
    196196                 
    197                 newEvent._parameters = new ArrayList(this._parameters.size()); 
    198                  
    199                 ListIterator li = this._parameters.listIterator(); 
     197                newEvent._parameters = new ArrayList<Symbol>(this._parameters.size()); 
     198                 
     199                ListIterator<Symbol> li = this._parameters.listIterator(); 
    200200                 
    201201                while(li.hasNext()) 
    202202                { 
    203                         newEvent._parameters.add(((Symbol)li.next()).clone()); 
     203                        newEvent._parameters.add((Symbol)li.next().clone()); 
    204204                } 
    205205                 
     
    213213        } 
    214214 
    215         public Object Ground(ArrayList bindingConstraints) { 
     215        public Object Ground(ArrayList<Substitution> bindingConstraints) { 
    216216                 
    217217                PastEventCondition event = (PastEventCondition) this.clone(); 
     
    226226        } 
    227227         
    228         protected ArrayList GetPossibleBindings(AgentModel am) 
     228        protected ArrayList<ActionDetail> GetPossibleBindings(AgentModel am) 
    229229        { 
    230230                return am.getMemory().getAM().SearchForPastEvents(GetSearchKeys()); 
     
    237237         * @see AutobiographicalMemory 
    238238         */ 
    239         public ArrayList GetValidBindings(AgentModel am) { 
     239        public ArrayList<SubstitutionSet> GetValidBindings(AgentModel am) { 
    240240                ActionDetail detail; 
    241241                Substitution sub; 
    242242                SubstitutionSet subSet; 
    243243                Symbol param; 
    244                 ArrayList bindingSets = new ArrayList(); 
    245                 ArrayList details; 
     244                ArrayList<SubstitutionSet> bindingSets = new ArrayList<SubstitutionSet>(); 
     245                ArrayList<ActionDetail> details; 
    246246                 
    247247                if (_name.isGrounded()) { 
     
    270270                if(details.size() == 0) return null; 
    271271                 
    272                 Iterator it = details.iterator(); 
     272                Iterator<ActionDetail> it = details.iterator(); 
    273273                while(it.hasNext()) 
    274274                { 
     
    318318        } 
    319319         
    320         protected ArrayList GetSearchKeys() 
     320        protected ArrayList<SearchKey> GetSearchKeys() 
    321321        { 
    322322                Symbol param; 
    323323                 
    324                 ArrayList keys = new ArrayList(); 
     324                ArrayList<SearchKey> keys = new ArrayList<SearchKey>(); 
    325325                if(this._subject.isGrounded()) 
    326326                { 
     
    337337                if(this._parameters.size() > 0) 
    338338                { 
    339                         ArrayList params = new ArrayList(); 
    340                         for(ListIterator li = this._parameters.listIterator();li.hasNext();) 
     339                        ArrayList<String> params = new ArrayList<String>(); 
     340                        for(ListIterator<Symbol> li = this._parameters.listIterator();li.hasNext();) 
    341341                        { 
    342342                                param = (Symbol) li.next(); 
  • AgentMind/branches/FAtiMA2/src/FAtiMA/conditions/PlaceCondition.java

    r190 r191  
    55import FAtiMA.AgentModel; 
    66import FAtiMA.exceptions.ContextParsingException; 
    7 import FAtiMA.knowledgeBase.KnowledgeBase; 
    87import FAtiMA.wellFormedNames.Name; 
    98 
  • AgentMind/branches/FAtiMA2/src/FAtiMA/conditions/PredicateCondition.java

    r190 r191  
    170170         * @see Substitution 
    171171         */ 
    172         public Object Ground(ArrayList bindings) { 
     172        public Object Ground(ArrayList<Substitution> bindings) { 
    173173                PredicateCondition aux = (PredicateCondition) this.clone(); 
    174174                aux.MakeGround(bindings); 
     
    184184         * @see Substitution 
    185185         */ 
    186     public void MakeGround(ArrayList bindings) 
     186    public void MakeGround(ArrayList<Substitution> bindings) 
    187187    { 
    188188        this._name.MakeGround(bindings); 
     
    263263     * @return returns all set of Substitutions that make the condition valid. 
    264264         */ 
    265         protected ArrayList GetValueBindings(AgentModel am) { 
     265        protected ArrayList<Substitution> GetValueBindings(AgentModel am) { 
    266266                if(CheckCondition(am)) { 
    267                         return new ArrayList(); 
     267                        return new ArrayList<Substitution>(); 
    268268                } 
    269269                else return null; 
  • AgentMind/branches/FAtiMA2/src/FAtiMA/conditions/PropertyCondition.java

    r190 r191  
    5959 
    6060import FAtiMA.AgentModel; 
    61 import FAtiMA.knowledgeBase.KnowledgeBase; 
    6261import FAtiMA.util.AgentLogger; 
    6362import FAtiMA.wellFormedNames.Name; 
     
    7877 
    7978    /** 
     79         *  
     80         */ 
     81        private static final long serialVersionUID = 1L; 
     82 
     83        /** 
    8084         * Parses a PropertyTest given a XML attribute list 
    8185         * @param attributes - A list of XMl attributes 
     
    211215         * @see Substitution 
    212216         */ 
    213         public Object Ground(ArrayList bindingConstraints) 
     217        public Object Ground(ArrayList<Substitution> bindingConstraints) 
    214218        { 
    215219                PropertyCondition aux = (PropertyCondition) this.clone(); 
     
    226230         * @see Substitution 
    227231         */ 
    228     public void MakeGround(ArrayList bindings) 
     232    public void MakeGround(ArrayList<Substitution> bindings) 
    229233    { 
    230234        this._name.MakeGround(bindings); 
     
    279283        } 
    280284         
    281         protected ArrayList GetBindings(AgentModel am, Name groundValue, Name value) { 
     285        protected ArrayList<Substitution> GetBindings(AgentModel am, Name groundValue, Name value) { 
    282286                Object val; 
    283                 ArrayList bindings; 
     287                ArrayList<Substitution> bindings; 
    284288                if (!groundValue.isGrounded()) 
    285289                        return null; 
     
    287291                        val = groundValue.evaluate(am.getMemory()); 
    288292                        if (val != null) { 
    289                                 bindings = new ArrayList(); 
     293                                bindings = new ArrayList<Substitution>(); 
    290294                                if(Unifier.Unify(value, Name.ParseName((String) val), bindings)) 
    291295                                        return bindings; 
     
    295299                } 
    296300                else if (this.CheckCondition(am)) { 
    297                         return new ArrayList(); 
     301                        return new ArrayList<Substitution>(); 
    298302                } 
    299303                else return null; 
     
    309313     * @return returns all set of Substitutions that make the condition valid. 
    310314     */ 
    311         protected ArrayList GetValueBindings(AgentModel am) { 
     315        protected ArrayList<Substitution> GetValueBindings(AgentModel am) { 
    312316                return GetBindings(am, _name, _value); 
    313317        } 
  • AgentMind/branches/FAtiMA2/src/FAtiMA/conditions/PropertyEqual.java

    r190 r191  
    5151 
    5252import FAtiMA.AgentModel; 
    53 import FAtiMA.knowledgeBase.KnowledgeBase; 
    5453import FAtiMA.util.AgentLogger; 
    5554import FAtiMA.wellFormedNames.Name; 
  • AgentMind/branches/FAtiMA2/src/FAtiMA/conditions/PropertyGreater.java

    r190 r191  
    5454 
    5555import FAtiMA.AgentModel; 
    56 import FAtiMA.knowledgeBase.KnowledgeBase; 
    5756import FAtiMA.util.AgentLogger; 
    5857import FAtiMA.wellFormedNames.Name; 
  • AgentMind/branches/FAtiMA2/src/FAtiMA/conditions/PropertyGreaterEqual.java

    r190 r191  
    3232 
    3333import FAtiMA.AgentModel; 
    34 import FAtiMA.knowledgeBase.KnowledgeBase; 
    3534import FAtiMA.util.AgentLogger; 
    3635import FAtiMA.wellFormedNames.Name; 
  • AgentMind/branches/FAtiMA2/src/FAtiMA/conditions/PropertyLesser.java

    r190 r191  
    5353package FAtiMA.conditions; 
    5454 
    55 import java.util.ArrayList; 
    5655 
    5756import FAtiMA.AgentModel; 
    58 import FAtiMA.knowledgeBase.KnowledgeBase; 
    5957import FAtiMA.util.AgentLogger; 
    6058import FAtiMA.wellFormedNames.Name; 
  • AgentMind/branches/FAtiMA2/src/FAtiMA/conditions/PropertyLesserEqual.java

    r190 r191  
    3232 
    3333import FAtiMA.AgentModel; 
    34 import FAtiMA.knowledgeBase.KnowledgeBase; 
    3534import FAtiMA.util.AgentLogger; 
    3635import FAtiMA.wellFormedNames.Name; 
  • AgentMind/branches/FAtiMA2/src/FAtiMA/conditions/PropertyNotEqual.java

    r190 r191  
    7676 
    7777import FAtiMA.AgentModel; 
    78 import FAtiMA.knowledgeBase.KnowledgeBase; 
    7978import FAtiMA.util.AgentLogger; 
    8079import FAtiMA.wellFormedNames.Inequality; 
     
    138137     * @return A list with all SubstitutionsSets that make the condition valid 
    139138         */ 
    140         public ArrayList GetValidBindings(AgentModel am) { 
    141                 ArrayList validSubstitutionSets = new ArrayList(); 
    142                 ArrayList bindingSets; 
    143                 SubstitutionSet subSet; 
     139        public ArrayList<SubstitutionSet> GetValidBindings(AgentModel am) { 
     140                ArrayList<SubstitutionSet> validSubstitutionSets = new ArrayList<SubstitutionSet>(); 
     141                ArrayList<SubstitutionSet> bindingSets; 
    144142                Condition cond; 
    145143                 
     
    167165                        return null; 
    168166 
    169                 for(ListIterator li = bindingSets.listIterator(); li.hasNext();) 
    170                 { 
    171                         subSet = (SubstitutionSet) li.next(); 
     167                for(SubstitutionSet subSet : bindingSets) 
     168                { 
    172169                        cond = (Condition) this.clone(); 
    173170                        cond.MakeGround(subSet.GetSubstitutions()); 
     
    194191     * that if they are verified, the NotEqualCondition is also verified 
    195192         */ 
    196         public ArrayList GetValidInequalities(AgentModel am) { 
    197                 ArrayList validSubstitutionSets = new ArrayList(); 
    198                 ListIterator li; 
    199                 ArrayList bindings; 
     193        public ArrayList<SubstitutionSet> GetValidInequalities(AgentModel am) { 
     194                ArrayList<SubstitutionSet> validSubstitutionSets = new ArrayList<SubstitutionSet>(); 
     195                ListIterator<Substitution> li; 
     196                ArrayList<Substitution> bindings; 
    200197                SubstitutionSet subSet; 
    201198 
     
    220217                li = bindings.listIterator(); 
    221218                while (li.hasNext()) { 
    222                         subSet.AddSubstitution(new Inequality((Substitution)li.next())); 
     219                        subSet.AddSubstitution(new Inequality(li.next())); 
    223220                } 
    224221                validSubstitutionSets.add(subSet); 
     
    227224         
    228225         
    229         protected ArrayList GetValueBindings() 
     226        protected ArrayList<Substitution> GetValueBindings() 
    230227        { 
    231228                //this method should never be called 
  • AgentMind/branches/FAtiMA2/src/FAtiMA/conditions/RecentEventCondition.java

    r190 r191  
    3939 
    4040import FAtiMA.AgentModel; 
     41import FAtiMA.memory.ActionDetail; 
     42import FAtiMA.memory.SearchKey; 
    4143import FAtiMA.sensorEffector.Event; 
    4244import FAtiMA.wellFormedNames.Name; 
     
    7779        } 
    7880         
    79         public RecentEventCondition(boolean occurred, Symbol subject, Symbol action, Symbol target, ArrayList parameters) 
     81        public RecentEventCondition(boolean occurred, Symbol subject, Symbol action, Symbol target, ArrayList<Symbol> parameters) 
    8082        { 
    8183                super(occurred, subject, action, target, parameters); 
     
    100102                } 
    101103                 
    102                 newEvent._parameters = new ArrayList(this._parameters.size()); 
    103                  
    104                 ListIterator li = this._parameters.listIterator(); 
    105                  
    106                 while(li.hasNext()) 
    107                 { 
    108                         newEvent._parameters.add(((Symbol)li.next()).clone()); 
     104                newEvent._parameters = new ArrayList<Symbol>(this._parameters.size()); 
     105                 
     106                ListIterator<Symbol> li = this._parameters.listIterator(); 
     107                 
     108                while(li.hasNext()) 
     109                { 
     110                        newEvent._parameters.add((Symbol)li.next().clone()); 
    109111                } 
    110112                 
     
    127129                } 
    128130                 
    129                 ListIterator li = this._parameters.listIterator(); 
    130                 while(li.hasNext()) 
    131                 { 
    132                         ((Symbol) li.next()).ReplaceUnboundVariables(variableID); 
    133                 } 
    134         } 
    135  
    136         public Object Ground(ArrayList bindingConstraints) { 
     131                ListIterator<Symbol> li = this._parameters.listIterator(); 
     132                while(li.hasNext()) 
     133                { 
     134                        li.next().ReplaceUnboundVariables(variableID); 
     135                } 
     136        } 
     137 
     138        public Object Ground(ArrayList<Substitution> bindingConstraints) { 
    137139                 
    138140                RecentEventCondition event = (RecentEventCondition) this.clone(); 
     
    141143        } 
    142144 
    143         public void MakeGround(ArrayList bindings) { 
     145        public void MakeGround(ArrayList<Substitution> bindings) { 
    144146                this._name.MakeGround(bindings); 
    145147                this._subject.MakeGround(bindings); 
     
    150152                } 
    151153                 
    152                 ListIterator li = this._parameters.listIterator(); 
    153                 while(li.hasNext()) 
    154                 { 
    155                         ((Symbol) li.next()).MakeGround(bindings); 
     154                ListIterator<Symbol> li = this._parameters.listIterator(); 
     155                while(li.hasNext()) 
     156                { 
     157                        li.next().MakeGround(bindings); 
    156158                } 
    157159        } 
     
    172174                } 
    173175                 
    174                 ListIterator li = this._parameters.listIterator(); 
    175                 while(li.hasNext()) 
    176                 { 
    177                         ((Symbol) li.next()).MakeGround(subst); 
     176                ListIterator<Symbol> li = this._parameters.listIterator(); 
     177                while(li.hasNext()) 
     178                { 
     179                        li.next().MakeGround(subst); 
    178180                } 
    179181        } 
     
    191193        } 
    192194         
    193         protected ArrayList GetPossibleBindings(AgentModel am) 
     195        protected ArrayList<ActionDetail> GetPossibleBindings(AgentModel am) 
    194196        { 
    195197                return am.getMemory().getSTM(). 
     
    198200         
    199201         
    200         protected ArrayList GetSearchKeys() 
    201         { 
    202                 ArrayList keys = super.GetSearchKeys(); 
     202        protected ArrayList<SearchKey> GetSearchKeys() 
     203        { 
     204                ArrayList<SearchKey> keys = super.GetSearchKeys(); 
    203205                 
    204206                //we only want to search for events that happened at most 1 second before 
  • AgentMind/branches/FAtiMA2/src/FAtiMA/conditions/RitualCondition.java

    r190 r191  
    3838import FAtiMA.AgentModel; 
    3939import FAtiMA.memory.SearchKey; 
    40 import FAtiMA.sensorEffector.Event; 
    4140import FAtiMA.wellFormedNames.Name; 
    4241import FAtiMA.wellFormedNames.Substitution; 
     
    6160        public static final RitualCondition ParseRitualCondition(Attributes attributes) 
    6261        { 
    63                 ArrayList roles = new ArrayList(); 
     62                ArrayList<Symbol> roles = new ArrayList<Symbol>(); 
    6463        String aux; 
    6564        Symbol ritualName = null; 
     
    8382        } 
    8483         
    85         protected ArrayList _roles; 
     84        protected ArrayList<Symbol> _roles; 
    8685        protected Symbol _ritualName; 
    8786 
     
    9089        } 
    9190         
    92         public RitualCondition(Symbol ritualName, ArrayList roles) 
     91        @SuppressWarnings("unchecked") 
     92        public RitualCondition(Symbol ritualName, ArrayList<Symbol> roles) 
    9393        { 
    9494                this._ritualName = ritualName; 
    9595                this._positive = true; 
    96                 this._roles = (ArrayList) roles.clone(); 
     96                this._roles = (ArrayList<Symbol>) roles.clone(); 
    9797                 
    9898                String name = ritualName + "("; 
     
    123123                rc._name = (Name) this._name.clone(); 
    124124                 
    125                 rc._roles = new ArrayList(this._roles.size()); 
    126                 ListIterator li = this._roles.listIterator(); 
    127                  
    128                 while(li.hasNext()) 
    129                 { 
    130                         rc._roles.add(((Symbol)li.next()).clone()); 
     125                rc._roles = new ArrayList<Symbol>(this._roles.size()); 
     126                ListIterator<Symbol> li = this._roles.listIterator(); 
     127                 
     128                while(li.hasNext()) 
     129                { 
     130                        rc._roles.add((Symbol)li.next().clone()); 
    131131                } 
    132132                 
     
    144144                this._ritualName.ReplaceUnboundVariables(variableID); 
    145145                 
    146                 ListIterator li = this._roles.listIterator(); 
    147                 while(li.hasNext()) 
    148                 { 
    149                         ((Symbol) li.next()).ReplaceUnboundVariables(variableID); 
    150                 } 
    151         } 
    152  
    153         public Object Ground(ArrayList bindingConstraints) { 
     146                ListIterator<Symbol> li = this._roles.listIterator(); 
     147                while(li.hasNext()) 
     148                { 
     149                        li.next().ReplaceUnboundVariables(variableID); 
     150                } 
     151        } 
     152 
     153        public Object Ground(ArrayList<Substitution> bindingConstraints) { 
    154154                 
    155155                RitualCondition rc = (RitualCondition) this.clone(); 
     
    158158        } 
    159159 
    160         public void MakeGround(ArrayList bindings) { 
     160        public void MakeGround(ArrayList<Substitution> bindings) { 
    161161                this._name.MakeGround(bindings); 
    162162                this._ritualName.MakeGround(bindings); 
    163163                                 
    164                 ListIterator li = this._roles.listIterator(); 
    165                 while(li.hasNext()) 
    166                 { 
    167                         ((Symbol) li.next()).MakeGround(bindings); 
     164                ListIterator<Symbol> li = this._roles.listIterator(); 
     165                while(li.hasNext()) 
     166                { 
     167                        li.next().MakeGround(bindings); 
    168168                } 
    169169        } 
     
    179179                this._ritualName.MakeGround(subst); 
    180180                 
    181                 ListIterator li = this._roles.listIterator(); 
    182                 while(li.hasNext()) 
    183                 { 
    184                         ((Symbol) li.next()).MakeGround(subst); 
     181                ListIterator<Symbol> li = this._roles.listIterator(); 
     182                while(li.hasNext()) 
     183                { 
     184                        li.next().MakeGround(subst); 
    185185                } 
    186186        } 
     
    195195                if(!_name.isGrounded()) return false; 
    196196                 
    197                 ArrayList keys = new ArrayList(); 
     197                ArrayList<SearchKey> keys = new ArrayList<SearchKey>(); 
    198198                 
    199199                keys.add(new SearchKey(SearchKey.SUBJECT,am.getName())); 
     
    218218        } 
    219219         
    220         protected ArrayList GetPossibleBindings(AgentModel am) 
    221         { 
    222                 return null; 
    223         } 
    224220 
    225221        public void setRepeat(boolean repeat) { 
  • AgentMind/branches/FAtiMA2/src/FAtiMA/conditions/SocialCondition.java

    r190 r191  
    66import FAtiMA.AgentModel; 
    77import FAtiMA.exceptions.ContextParsingException; 
    8 import FAtiMA.knowledgeBase.KnowledgeBase; 
    98import FAtiMA.util.AgentLogger; 
    109import FAtiMA.wellFormedNames.Name; 
  • AgentMind/branches/FAtiMA2/src/FAtiMA/conditions/TimeCondition.java

    r190 r191  
    22 
    33 
    4 import java.util.ArrayList; 
    54 
    65import org.xml.sax.Attributes; 
     
    87import FAtiMA.AgentModel; 
    98import FAtiMA.exceptions.ContextParsingException; 
    10 import FAtiMA.knowledgeBase.KnowledgeBase; 
    119import FAtiMA.wellFormedNames.Name; 
    1210 
  • AgentMind/branches/FAtiMA2/src/FAtiMA/culture/CulturalDimensions.java

    r190 r191  
    22 
    33import java.util.ArrayList; 
    4 import java.util.Iterator; 
    5 import java.util.Random; 
     4 
    65 
    76import FAtiMA.AgentModel; 
    87import FAtiMA.deliberativeLayer.goals.ActivePursuitGoal; 
    9 import FAtiMA.knowledgeBase.KnowledgeBase; 
    10 import FAtiMA.motivationalSystem.MotivationalState; 
    118import FAtiMA.motivationalSystem.Motivator; 
    12 import FAtiMA.util.AgentLogger; 
    139import FAtiMA.util.enumerables.CulturalDimensionType; 
    1410import FAtiMA.util.enumerables.MotivatorType; 
    1511import FAtiMA.wellFormedNames.Name; 
    16 import FAtiMA.wellFormedNames.SubstitutionSet; 
     12 
    1713 
    1814public class CulturalDimensions { 
     
    2117 
    2218        int[] _dimensionalValues; 
    23         ArrayList _positiveLSignals; 
    24         ArrayList _negativeLSignals; 
    25         ArrayList _positiveReplyLSignals; 
    26         ArrayList _negativeReplyLSignals; 
     19        ArrayList<String> _positiveLSignals; 
     20        ArrayList<String> _negativeLSignals; 
     21        ArrayList<String> _positiveReplyLSignals; 
     22        ArrayList<String> _negativeReplyLSignals; 
    2723         
    2824         
     
    4743        private CulturalDimensions() { 
    4844                _dimensionalValues = new int[CulturalDimensionType.numberOfTypes()]; 
    49                 _positiveLSignals = new ArrayList(); 
    50                 _negativeLSignals = new ArrayList(); 
    51                 _positiveReplyLSignals = new ArrayList(); 
    52                 _negativeReplyLSignals = new ArrayList(); 
     45                _positiveLSignals = new ArrayList<String>(); 
     46                _negativeLSignals = new ArrayList<String>(); 
     47                _positiveReplyLSignals = new ArrayList<String>(); 
     48                _negativeReplyLSignals = new ArrayList<String>(); 
    5349        } 
    5450 
     
    10399 
    104100                 
    105                 float powerDistanceCoefficient = _dimensionalValues[CulturalDimensionType.POWERDISTANCE] * 0.01f; 
     101                //float powerDistanceCoefficient = _dimensionalValues[CulturalDimensionType.POWERDISTANCE] * 0.01f; 
    106102                float collectivismCoefficient = _dimensionalValues[CulturalDimensionType.COLLECTIVISM] * 0.01f; 
    107103                float individualismCoefficient = 1 - collectivismCoefficient;  
    108104         
    109                 String goalName = goal.getName().GetFirstLiteral().toString();   
     105                //String goalName = goal.getName().GetFirstLiteral().toString();         
    110106                String target = goal.getName().GetLiteralList().get(1).toString(); 
    111107                 
    112108                float likeValue = this.obtainLikeRelationshipFromKB(am, target); 
    113                 float differenceInPower = this.obtainDifferenceInPowerFromKB(am, target); 
     109                //float differenceInPower = this.obtainDifferenceInPowerFromKB(am, target); 
    114110                         
    115111                float result = selfContrib + //(otherContrib * Math.pow(POWER_DISTANCE_K, differenceInPower) +  
     
    131127        } 
    132128 
    133         private int obtainDifferenceInPowerFromKB(AgentModel am, String targetAgent){ 
     129        /*private int obtainDifferenceInPowerFromKB(AgentModel am, String targetAgent){ 
    134130 
    135131                String agentName = am.getName(); 
     
    149145                        return targetPowerValue - selfPowerValue; 
    150146                } 
    151         } 
     147        }*/ 
    152148 
    153149        public float determineAffiliationEffectFromLSignal(String subject, String target, String signalName, float signalValue) { 
  • AgentMind/branches/FAtiMA2/src/FAtiMA/culture/Ritual.java

    r190 r191  
    4040import FAtiMA.AgentModel; 
    4141import FAtiMA.conditions.Condition; 
    42 import FAtiMA.conditions.NewEventCondition; 
    43 import FAtiMA.conditions.RecentEventCondition; 
    4442import FAtiMA.conditions.RitualCondition; 
    4543import FAtiMA.deliberativeLayer.goals.ActivePursuitGoal; 
    4644import FAtiMA.deliberativeLayer.plan.CausalLink; 
    4745import FAtiMA.deliberativeLayer.plan.Effect; 
     46import FAtiMA.deliberativeLayer.plan.IPlanningOperator; 
    4847import FAtiMA.deliberativeLayer.plan.OrderingConstraint; 
    4948import FAtiMA.deliberativeLayer.plan.Plan; 
     49import FAtiMA.deliberativeLayer.plan.ProtectedCondition; 
    5050import FAtiMA.deliberativeLayer.plan.Step; 
    5151import FAtiMA.exceptions.InvalidReplaceUnboundVariableException; 
     
    6363         */ 
    6464         
    65         private static final float EXPECTED_AFFILIATION_ONIGNORE_VALUE = -10f; 
     65        //private static final float EXPECTED_AFFILIATION_ONIGNORE_VALUE = -10f; 
    6666        private static final long serialVersionUID = 1L; 
    6767         
    68         private ArrayList _roles; 
     68        private ArrayList<Symbol> _roles; 
    6969        private Plan _plan; 
    70         private ArrayList _steps; 
    71         private ArrayList _links; 
     70        private ArrayList<Step> _steps; 
     71        private ArrayList<OrderingConstraint> _links; 
    7272         
    7373        private Ritual() 
     
    8181                 
    8282                //this.SetExpectedEffectOnDrive("OnIgnore","Affiliation","[SELF]",EXPECTED_AFFILIATION_ONIGNORE_VALUE); 
    83                 _steps = new ArrayList(5); 
    84                 _links = new ArrayList(); 
    85                 _roles = new ArrayList(3); 
     83                _steps = new ArrayList<Step>(5); 
     84                _links = new ArrayList<OrderingConstraint>(); 
     85                _roles = new ArrayList<Symbol>(3); 
    8686        } 
    8787         
    8888        public void AddStep(Name actionName, Name role) 
    8989        { 
    90                 ArrayList subst; 
     90                ArrayList<Substitution> subst; 
    9191                Step action = ActionLibrary.GetInstance().GetAction(_steps.size(), actionName); 
    9292                if(action != null) 
     
    149149        } 
    150150         
    151         public ArrayList GetRoles() 
     151        public ArrayList<Symbol> GetRoles() 
    152152        { 
    153153                return this._roles; 
     
    158158                Step s; 
    159159                OrderingConstraint o; 
    160                 _plan = new Plan(new ArrayList(),_successConditions); 
     160                _plan = new Plan(new ArrayList<ProtectedCondition>(),_successConditions); 
    161161                 
    162162                for(int i=0; i < _steps.size(); i++) 
     
    208208        } 
    209209         
    210         public ArrayList getPlans(AgentModel am) 
    211         { 
    212                 ArrayList plans = new ArrayList(); 
     210        public ArrayList<Plan> getPlans(AgentModel am) 
     211        { 
     212                ArrayList<Plan> plans = new ArrayList<Plan>(); 
    213213                this._plan.UpdatePlan(am); 
    214214                plans.add(this._plan); 
     
    253253    { 
    254254         
    255         ListIterator li; 
     255        ListIterator<Condition> li; 
    256256     
    257257        this._name.ReplaceUnboundVariables(variableID); 
     
    275275        } 
    276276         
    277         li = this._effects.listIterator(); 
    278         while(li.hasNext()) 
    279         { 
    280                 ((Effect) li.next()).ReplaceUnboundVariables(variableID); 
    281         } 
    282          
    283         li = this._roles.listIterator(); 
    284         while(li.hasNext()) 
    285         { 
    286                 ((Symbol) li.next()).ReplaceUnboundVariables(variableID); 
    287         } 
     277        for(Effect e : this._effects) 
     278        { 
     279                e.ReplaceUnboundVariables(variableID); 
     280        } 
     281         
     282        for(Symbol s : this._roles) 
     283        { 
     284                s.ReplaceUnboundVariables(variableID); 
     285        } 
     286         
    288287         
    289288        this._agent.ReplaceUnboundVariables(variableID); 
     
    302301         * @see Substitution 
    303302         */ 
    304         public Object Ground(ArrayList bindingConstraints)  
     303        public Object Ground(ArrayList<Substitution> bindingConstraints)  
    305304        { 
    306305                Ritual aux = (Ritual) this.clone(); 
     
    317316         * @see Substitution 
    318317         */ 
    319     public void MakeGround(ArrayList bindings) 
     318    public void MakeGround(ArrayList<Substitution> bindings) 
    320319    { 
    321         ListIterator li; 
    322320         
    323321        this._name.MakeGround(bindings); 
    324          
    325         li = this._preConditions.listIterator(); 
    326         while(li.hasNext()) 
    327         { 
    328                 ((Condition) li.next()).MakeGround(bindings); 
    329         } 
    330          
    331         li = this._failureConditions.listIterator(); 
    332         while(li.hasNext()) 
    333         { 
    334                 ((Condition) li.next()).MakeGround(bindings); 
    335         } 
    336          
    337         li = this._successConditions.listIterator(); 
    338         while(li.hasNext()) 
    339         { 
    340                 ((Condition) li.next()).MakeGround(bindings); 
     322 
     323        for(Condition c : this._preConditions) 
     324        { 
     325                c.MakeGround(bindings); 
     326        } 
     327         
     328        for(Condition c : this._failureConditions) 
     329        { 
     330                c.MakeGround(bindings); 
     331        } 
     332         
     333        for(Condition c : this._successConditions) 
     334        { 
     335                c.MakeGround(bindings); 
    341336        } 
    342337         
    343338        this._plan.AddBindingConstraints(bindings); 
    344339         
    345         li = this._roles.listIterator(); 
    346         while(li.hasNext()) 
    347         { 
    348                 ((Symbol) li.next()).MakeGround(bindings); 
     340        for(Symbol s : this._roles) 
     341        { 
     342                s.MakeGround(bindings); 
    349343        } 
    350344         
    351345        this._agent.MakeGround(bindings); 
    352346         
    353         li = this._effects.listIterator(); 
    354         while(li.hasNext()) 
    355         { 
    356                 ((Effect) li.next()).MakeGround(bindings); 
    357         } 
    358  
     347        for(Effect e : this._effects) 
     348        { 
     349                e.MakeGround(bindings); 
     350        } 
    359351    } 
    360352     
     
    386378    public void MakeGround(Substitution subst) 
    387379    { 
    388         ListIterator li; 
    389          
    390380        this._name.MakeGround(subst); 
    391          
    392         li = this._preConditions.listIterator(); 
    393         while(li.hasNext()) 
    394         { 
    395                 ((Condition) li.next()).MakeGround(subst); 
    396         } 
    397          
    398         li = this._failureConditions.listIterator(); 
    399         while(li.hasNext()) 
    400         { 
    401                 ((Condition) li.next()).MakeGround(subst); 
    402         } 
    403          
    404         li = this._successConditions.listIterator(); 
    405         while(li.hasNext()) 
    406         { 
    407                 ((Condition) li.next()).MakeGround(subst); 
     381 
     382        for(Condition c : this._preConditions) 
     383        { 
     384                c.MakeGround(subst); 
     385        } 
     386         
     387        for(Condition c : this._failureConditions) 
     388        { 
     389                c.MakeGround(subst); 
     390        } 
     391         
     392        for(Condition c : this._successConditions) 
     393        { 
     394                c.MakeGround(subst); 
    408395        } 
    409396         
    410397        this._plan.AddBindingConstraint(subst); 
    411398         
    412         li = this._roles.listIterator(); 
    413         while(li.hasNext()) 
    414         { 
    415                 ((Symbol) li.next()).MakeGround(subst); 
     399        for(Symbol s : this._roles) 
     400        { 
     401                s.MakeGround(subst); 
    416402        } 
    417403         
    418404        this._agent.MakeGround(subst); 
    419405         
    420         li = this._effects.listIterator(); 
    421         while(li.hasNext()) 
    422         { 
    423                 ((Effect) li.next()).MakeGround(subst); 
    424         } 
    425          
     406        for(Effect e : this._effects) 
     407        { 
     408                e.MakeGround(subst); 
     409        }        
    426410    } 
    427411         
     
    433417        public Object clone() 
    434418        { 
    435                 ListIterator li; 
    436419                Ritual r = new Ritual(); 
    437420                r._goalID = this._goalID; 
     
    445428                r._numberOfTries = this._numberOfTries; 
    446429                 
    447                 r._expectedEffects = (Hashtable) this._expectedEffects.clone(); 
     430                r._expectedEffects = (Hashtable<String,Float>) this._expectedEffects.clone(); 
    448431                 
    449432                if(this._preConditions != null) 
    450433                { 
    451                         r._preConditions = new ArrayList(this._preConditions.size()); 
    452                         li = this._preConditions.listIterator(); 
    453                         while(li.hasNext()) 
    454                         { 
    455                                 r._preConditions.add(((Condition) li.next()).clone()); 
     434                        r._preConditions = new ArrayList<Condition>(this._preConditions.size()); 
     435                        for(Condition c : this._preConditions) 
     436                        { 
     437                                r._preConditions.add((Condition) c.clone()); 
    456438                        } 
    457439                } 
     
    459441                if(this._failureConditions != null) 
    460442                { 
    461                         r._failureConditions = new ArrayList(this._failureConditions.size()); 
    462                         li = this._failureConditions.listIterator(); 
    463                         while(li.hasNext()) 
    464                         { 
    465                                 r._failureConditions.add(((Condition) li.next()).clone()); 
     443                        r._failureConditions = new ArrayList<Condition>(this._failureConditions.size()); 
     444                         
     445                        for(Condition c : this._failureConditions) 
     446                        { 
     447                                r._failureConditions.add((Condition) c.clone()); 
    466448                        } 
    467449                } 
     
    469451                if(this._successConditions != null) 
    470452                { 
    471                         r._successConditions = new ArrayList(this._successConditions.size()); 
    472                         li = this._successConditions.listIterator(); 
    473                         while(li.hasNext()) 
    474                         { 
    475                                 r._successConditions.add(((Condition) li.next()).clone()); 
     453                        r._successConditions = new ArrayList<Condition>(this._successConditions.size()); 
     454                         
     455                        for(Condition c : this._successConditions) 
     456                        { 
     457                                r._successConditions.add((Condition) c.clone()); 
    476458                        } 
    477459                } 
     
    479461                if(this._roles != null) 
    480462                { 
    481                         r._roles = new ArrayList(this._roles.size()); 
    482                         li = this._roles.listIterator(); 
    483                         while(li.hasNext()) 
    484                         { 
    485                                 r._roles.add(((Symbol) li.next()).clone()); 
     463                        r._roles = new ArrayList<Symbol>(this._roles.size()); 
     464                        for(Symbol s : this._roles) 
     465                        { 
     466                                r._roles.add((Symbol) s.clone()); 
    486467                        } 
    487468                } 
     
    500481                if(this._effects != null) 
    501482                { 
    502                         r._effects = new ArrayList(this._effects.size()); 
    503                         li = this._effects.listIterator(); 
    504                         while(li.hasNext()) 
    505                         { 
    506                                 r._effects.add(((Effect) li.next()).clone()); 
     483                        r._effects = new ArrayList<Effect>(this._effects.size()); 
     484                        for(Effect e : this._effects) 
     485                        { 
     486                                r._effects.add((Effect) e.clone()); 
    507487                        } 
    508488                } 
     
    512492        } 
    513493         
    514         public ArrayList findMatchWithStep(Symbol agent, Name stepName) 
    515         { 
    516                 ArrayList substitutions = new ArrayList(); 
     494        public ArrayList<SubstitutionSet> findMatchWithStep(Symbol agent, Name stepName) 
     495        { 
     496                ArrayList<SubstitutionSet> substitutions = new ArrayList<SubstitutionSet>(); 
    517497                SubstitutionSet subSet; 
    518                 ArrayList subst; 
    519                 Step s; 
    520                  
    521                 for(ListIterator li = this._plan.GetFirstActions().listIterator(); li.hasNext();) 
    522                 { 
    523                         s = (Step) li.next(); 
    524                          
    525                         subst = Unifier.Unify(s.getName(), stepName); 
     498                ArrayList<Substitution> subst; 
     499                IPlanningOperator ip; 
     500                 
     501                for(ListIterator<IPlanningOperator> li = this._plan.GetFirstActions().listIterator(); li.hasNext();) 
     502                { 
     503                        ip = li.next(); 
     504                         
     505                        subst = Unifier.Unify(ip.getName(), stepName); 
    526506                        if(subst != null) 
    527507                        { 
    528                                 if(Unifier.Unify(s.getAgent(), agent)!=null) 
     508                                if(Unifier.Unify(ip.getAgent(), agent)!=null) 
    529509                                { 
    530510                                        subSet = new SubstitutionSet(subst); 
    531                                         subSet.AddSubstitution(new Substitution(s.getAgent(),agent)); 
     511                                        subSet.AddSubstitution(new Substitution(ip.getAgent(),agent)); 
    532512                                        substitutions.add(subSet); 
    533513                                } 
  • AgentMind/branches/FAtiMA2/src/FAtiMA/culture/SymbolTranslator.java

    r1 r191  
    22 
    33import java.util.HashMap; 
    4 import java.util.Iterator; 
    54 
    65import FAtiMA.exceptions.DuplicateSymbolTranslatorEntry; 
    7 import FAtiMA.knowledgeBase.KnowledgeBase; 
    8 import FAtiMA.sensorEffector.RemoteAction; 
    9 import FAtiMA.util.AgentLogger; 
    10 import FAtiMA.wellFormedNames.Name; 
    116 
    127/** @author: Samuel Mascarenhas 
     
    1510public class SymbolTranslator { 
    1611 
    17         private HashMap _symbolToAction; //symbols are Strings 
    18         private HashMap _actionToSymbol; //actions are Strings 
     12        private HashMap<String,String> _symbolToAction; //symbols are Strings 
     13        private HashMap<String,String> _actionToSymbol; //actions are Strings 
    1914         
    2015        /** 
     
    2520         
    2621        private SymbolTranslator(){ 
    27                 this._symbolToAction = new HashMap(); 
    28                 this._actionToSymbol = new HashMap(); 
     22                this._symbolToAction = new HashMap<String,String>(); 
     23                this._actionToSymbol = new HashMap<String,String>(); 
    2924        } 
    3025         
  • AgentMind/branches/FAtiMA2/src/FAtiMA/deliberativeLayer/DeliberativeProcess.java

    r190 r191  
    138138import FAtiMA.deliberativeLayer.plan.Step; 
    139139import FAtiMA.emotionalState.ActiveEmotion; 
    140 import FAtiMA.emotionalState.EmotionalState; 
    141140import FAtiMA.exceptions.InvalidMotivatorTypeException; 
    142141import FAtiMA.exceptions.UnknownGoalException; 
    143 import FAtiMA.motivationalSystem.MotivationalState; 
    144142import FAtiMA.sensorEffector.Event; 
    145143import FAtiMA.sensorEffector.Parameter; 
    146144import FAtiMA.util.AgentLogger; 
     145import FAtiMA.util.Constants; 
    147146import FAtiMA.wellFormedNames.Name; 
    148147import FAtiMA.wellFormedNames.Substitution; 
     
    168167        private static final float SELECTIONTHRESHOLD = 1.2f;  
    169168         
    170         private ArrayList _goals; 
    171         private ArrayList _rituals; 
     169        private ArrayList<Goal> _goals; 
     170        private ArrayList<Ritual> _rituals; 
    172171        private GoalLibrary _goalLibrary; 
    173172        private EmotionalPlanner _planner; 
     
    177176        private Step _selectedAction; 
    178177        private ActiveEmotion _selectedActionEmotion; 
    179         private ArrayList _options; 
    180         private HashMap _intentions; 
    181         private HashMap _ritualOptions; 
    182         private ArrayList _protectionConstraints; 
     178        private ArrayList<ActivePursuitGoal> _options; 
     179        private HashMap<String,Intention> _intentions; 
     180        private HashMap<String,Ritual> _ritualOptions; 
     181        private ArrayList<ProtectedCondition> _protectionConstraints; 
    183182        private Intention _currentIntention; 
    184          
    185         private DeliberativeProcess() 
    186         { 
    187         } 
    188183         
    189184        /** 
     
    196191        public DeliberativeProcess(String name, GoalLibrary goalLibrary,  EmotionalPlanner planner) { 
    197192                super(name); 
    198                 _goals = new ArrayList(); 
    199                 _rituals = new ArrayList(); 
     193                _goals = new ArrayList<Goal>(); 
     194                _rituals = new ArrayList<Ritual>(); 
    200195                _goalLibrary = goalLibrary; 
    201196                _planner = planner; 
     
    203198                _selectedAction = null; 
    204199                _selectedPlan = null; 
    205                 _options = new ArrayList(); 
    206                 _ritualOptions = new HashMap(); 
    207                 _intentions = new HashMap(); 
    208                 _protectionConstraints = new ArrayList(); 
     200                _options = new ArrayList<ActivePursuitGoal>(); 
     201                _ritualOptions = new HashMap<String,Ritual>(); 
     202                _intentions = new HashMap<String,Intention>(); 
     203                _protectionConstraints = new ArrayList<ProtectedCondition>(); 
    209204                _currentIntention = null; 
    210205        } 
     
    216211        public void AddGoal(Goal goal) { 
    217212                InterestGoal iGoal; 
    218                 ArrayList protectionConstraints; 
    219                 ListIterator li; 
     213                ArrayList<Condition> protectionConstraints; 
     214                ListIterator<Condition> li; 
    220215                 
    221216                synchronized (this) { 
     
    261256         */ 
    262257        public void CheckLinks(AgentModel am) { 
    263                 Iterator it; 
     258                Iterator<Intention> it; 
    264259                 
    265260                synchronized(this) 
     
    298293         */ 
    299294        public void ChangeGoalImportance(AgentModel am, String goalName, float importance, String importanceType) { 
    300                 ListIterator li; 
     295                ListIterator<Goal> li; 
    301296                 
    302297                synchronized (this) { 
     
    405400         */ 
    406401        public void AddIntention(AgentModel am, ActivePursuitGoal goal) { 
    407                 ArrayList plans; 
     402                ArrayList<Plan> plans; 
    408403                Plan newPlan; 
    409404                Intention intention; 
     
    432427        public void AddSubIntention(AgentModel am, Intention mainIntention, ActivePursuitGoal goal) 
    433428        { 
    434                 ArrayList plans; 
     429                ArrayList<Plan> plans; 
    435430                Plan newPlan; 
    436431                Intention subIntention; 
     
    457452         * @return a list with the agent's goals 
    458453         */ 
    459         public ArrayList GetGoals() { 
     454        public ArrayList<Goal> GetGoals() { 
    460455                return _goals; 
    461456        } 
     
    481476         * @return a set with the keys used to store all intentions 
    482477         */ 
    483         public Set GetIntentionKeysSet() { 
     478        public Set<String> GetIntentionKeysSet() { 
    484479                synchronized(this) 
    485480                { 
     
    493488         * @return 
    494489         */ 
    495         public Iterator GetIntentionsIterator() { 
     490        public Iterator<Intention> GetIntentionsIterator() { 
    496491                return _intentions.values().iterator(); 
    497492        } 
     
    501496                Goal g; 
    502497                coping = coping.toLowerCase(); 
    503                 for(ListIterator li = _goalLibrary.GetGoals();li.hasNext();) 
     498                for(ListIterator<Goal> li = _goalLibrary.GetGoals();li.hasNext();) 
    504499                { 
    505500                        g = (Goal) li.next(); 
     
    603598         */ 
    604599        public void Appraisal(AgentModel am) { 
    605                 ListIterator li; 
     600                ListIterator<Event> li; 
    606601                Event event; 
    607602                 
     
    630625                                 
    631626                        while (li.hasNext()) { 
    632                                         event = (Event) li.next(); 
     627                                        event = li.next(); 
    633628                                         
    634629                                        am.getMotivationalState().UpdateMotivators(am, event, _planner.GetOperators()); 
     
    689684                Goal g; 
    690685                ActivePursuitGoal aGoal; 
    691                 ListIterator li,li2; 
     686                ListIterator<Goal> li; 
     687                ListIterator<SubstitutionSet> li2; 
    692688                ActivePursuitGoal desire; 
    693689                SubstitutionSet subSet; 
    694                 ArrayList substitutionSets; 
     690                ArrayList<SubstitutionSet> substitutionSets; 
    695691                 
    696692                Ritual r; 
    697693                Ritual r2; 
    698694                Ritual r3; 
    699                 ArrayList substitutions; 
    700                 ArrayList substitutions2; 
     695                ArrayList<SubstitutionSet> substitutions; 
     696                ArrayList<SubstitutionSet> substitutions2; 
    701697                SubstitutionSet sSet; 
    702698                SubstitutionSet sSet2; 
     
    707703                 
    708704                 
    709                 for(ListIterator eventIterator = this._eventPool.listIterator(); eventIterator.hasNext();) 
    710                 { 
    711                         event = (Event) eventIterator.next(); 
     705                for(ListIterator<Event> eventIterator = this._eventPool.listIterator(); eventIterator.hasNext();) 
     706                { 
     707                        event = eventIterator.next(); 
    712708                 
    713709                        //this section detects if a ritual has started with another agent's action 
    714                         if(!event.GetSubject().equals("SELF")) 
    715                         { 
    716                                 for(ListIterator rIterator = this._rituals.listIterator(); rIterator.hasNext();) 
     710                        if(!event.GetSubject().equals(Constants.SELF)) 
     711                        { 
     712                                for(ListIterator<Ritual> rIterator = this._rituals.listIterator(); rIterator.hasNext();) 
    717713                                { 
    718                                         r = (Ritual) rIterator.next(); 
     714                                        r = rIterator.next(); 
    719715                                         
    720716                                                 
    721717                                        substitutions = r.findMatchWithStep(new Symbol(event.GetSubject()),event.toStepName()); 
    722                                         for(ListIterator sIterator = substitutions.listIterator(); sIterator.hasNext();) 
     718                                        for(ListIterator<SubstitutionSet> sIterator = substitutions.listIterator(); sIterator.hasNext();) 
    723719                                        { 
    724720                                                // a possible activation of a ritual 
     
    731727                                                if(substitutions2 != null) 
    732728                                                { 
    733                                                         for(ListIterator s2Iterator = substitutions2.listIterator(); s2Iterator.hasNext();) 
     729                                                        for(ListIterator<SubstitutionSet> s2Iterator = substitutions2.listIterator(); s2Iterator.hasNext();) 
    734730                                                        { 
    735731                                                                //good, the preconditions are satisfied by this subset 
     
    798794        } 
    799795         
    800         public ActivePursuitGoal Filter(AgentModel am, ArrayList options) { 
     796        public ActivePursuitGoal Filter(AgentModel am, ArrayList<ActivePursuitGoal> options) { 
    801797                ActivePursuitGoal g;  
    802                 Intention currentIntention = null; 
    803798                ActivePursuitGoal maxGoal = null; 
    804799                float maxUtility; 
     
    806801                float EU; 
    807802                 
    808                 int i = 0; 
    809803                 
    810804                 
    811805                maxUtility = -200; 
    812806                 
    813                 ListIterator li = options.listIterator(); 
     807                ListIterator<ActivePursuitGoal> li = options.listIterator(); 
    814808                while(li.hasNext()) 
    815809                { 
    816                         g = (ActivePursuitGoal) li.next(); 
     810                        g = li.next(); 
    817811                        if(!ContainsIntention(g)) 
    818812                        {                
     
    849843         */ 
    850844        public Intention Filter2ndLevel(AgentModel am) { 
    851                 Iterator it; 
     845                Iterator<Intention> it; 
    852846                Intention intention; 
    853847                float highestUtility;  
     
    10991093                } 
    11001094                 
    1101                 ListIterator li = _selectedAction.getName().GetLiteralList().listIterator(); 
     1095                ListIterator<Symbol> li = _selectedAction.getName().GetLiteralList().listIterator(); 
    11021096             
    11031097            action = li.next().toString(); 
     
    11541148        public void UpdateProbabilities() { 
    11551149                 
    1156                 Iterator it;  
     1150                Iterator<Intention> it;  
    11571151                 
    11581152                it = _intentions.values().iterator(); 
  • AgentMind/branches/FAtiMA2/src/FAtiMA/deliberativeLayer/EmotionalPlanner.java

    r190 r191  
    111111import java.io.Serializable; 
    112112import java.util.ArrayList; 
    113 import java.util.HashMap; 
    114 import java.util.Iterator; 
    115113import java.util.ListIterator; 
    116 import java.util.Set; 
    117114 
    118115import FAtiMA.AgentModel; 
     
    121118import FAtiMA.conditions.PropertyNotEqual; 
    122119import FAtiMA.deliberativeLayer.goals.ActivePursuitGoal; 
    123 import FAtiMA.deliberativeLayer.goals.Goal; 
    124120import FAtiMA.deliberativeLayer.plan.CausalConflictFlaw; 
    125121import FAtiMA.deliberativeLayer.plan.CausalLink; 
     
    134130import FAtiMA.emotionalState.Appraisal; 
    135131import FAtiMA.emotionalState.BaseEmotion; 
    136 import FAtiMA.emotionalState.EmotionalState; 
    137132import FAtiMA.exceptions.UnknownSpeechActException; 
    138133import FAtiMA.exceptions.UnspecifiedVariableException; 
    139 import FAtiMA.motivationalSystem.MotivationalState; 
    140 import FAtiMA.sensorEffector.Event; 
    141134import FAtiMA.util.AgentLogger; 
    142135import FAtiMA.wellFormedNames.Name; 
     136import FAtiMA.wellFormedNames.Substitution; 
    143137import FAtiMA.wellFormedNames.SubstitutionSet; 
    144138import FAtiMA.wellFormedNames.Unifier; 
     
    152146        private static final long serialVersionUID = 1L; 
    153147         
    154         private ArrayList _actions; 
     148        private ArrayList<Step> _actions; 
    155149        private int _variableIdentifier; 
    156150        //private int _numberOfGoalsTried = 0; 
     
    162156         * @param es - the character's emotional state 
    163157         */ 
    164         public EmotionalPlanner(ArrayList operators) 
     158        public EmotionalPlanner(ArrayList<Step> operators) 
    165159        { 
    166160            this._variableIdentifier = 1; 
     
    226220         */ 
    227221        public void CheckIntegrity(IntegrityValidator val) throws UnspecifiedVariableException, UnknownSpeechActException { 
    228             ListIterator li = _actions.listIterator(); 
     222            ListIterator<Step> li = _actions.listIterator(); 
    229223             
    230224            while(li.hasNext()) { 
    231                 ((Step) li.next()).CheckIntegrity(val); 
     225                 li.next().CheckIntegrity(val); 
    232226            } 
    233227        } 
     
    247241         */ 
    248242        public void FindStepFor(Intention intention, Plan p, OpenPrecondition openPrecond, boolean newStep) { 
    249                 ListIterator li; 
     243                ListIterator<? extends IPlanningOperator> li; 
    250244                Condition cond; 
    251245                Effect effect; 
    252246                Condition effectCond; 
    253                 ArrayList substs; 
     247                ArrayList<Substitution> substs; 
    254248                Name condValue; 
    255249                Name effectValue; 
     
    269263 
    270264                while (li.hasNext()) { 
    271                         op = (IPlanningOperator) li.next(); 
     265                        op = li.next(); 
    272266                        if(!op.getName().equals(oldOp.getName())) { 
    273267                                if (newStep) 
     
    282276                                        effect = (Effect) op.getEffects().get(i); 
    283277                                        effectCond = effect.GetEffect(); 
    284                                         substs = new ArrayList(); 
     278                                        substs = new ArrayList<Substitution>(); 
    285279                                        if (Unifier.Unify(cond.getName(), effectCond.getName(), substs)) { 
    286280                                                condValue = cond.GetValue(); 
     
    345339         * @return a list with Steps 
    346340         */ 
    347         public ArrayList GetOperators() { 
     341        public ArrayList<Step> GetOperators() { 
    348342            return _actions; 
    349343        } 
    350344         
    351         public void AddOperator(IPlanningOperator op) 
     345        public void AddOperator(Step op) 
    352346        { 
    353347                _actions.add(op); 
     
    360354         */ 
    361355        public Step GetStep(Name name) { 
    362                 ListIterator li; 
     356                ListIterator<Step> li; 
    363357                Step s; 
    364                 ArrayList substs; 
    365                 ArrayList bestSubsts=null; 
     358                ArrayList<Substitution> substs; 
     359                ArrayList<Substitution> bestSubsts=null; 
    366360                Step bestStep=null; 
    367361                 
     
    369363                while(li.hasNext()) { 
    370364                        s = (Step) li.next(); 
    371                         substs = new ArrayList(); 
     365                        substs = new ArrayList<Substitution>(); 
    372366                        if(Unifier.Unify(s.getName(),name, substs)) { 
    373367                            if(bestSubsts != null) { 
     
    406400                boolean newPlans = false; 
    407401                CausalConflictFlaw flaw; 
    408                 SubstitutionSet subSet; 
    409402                OpenPrecondition openPrecond; 
    410403                Condition cond; 
    411                 ArrayList substitutionSets; 
    412                 ArrayList openConditions; 
    413                 ListIterator li; 
     404                ArrayList<SubstitutionSet> substitutionSets; 
     405                ArrayList<OpenPrecondition> openConditions; 
     406                ListIterator<GoalThreat> li; 
    414407                GoalThreat goalThreat; 
    415408                 
     
    467460                li = p.getThreatenedInterestConstraints().listIterator(); 
    468461                while(li.hasNext()) { 
    469                         float threatImportance; 
     462                        //float threatImportance; 
    470463                        float failureImportance; 
    471                         float aux; 
     464                        //float aux; 
    472465                         
    473466                        goalThreat = (GoalThreat) li.next(); 
    474467                        prob = goalThreat.getEffect().GetProbability(am); 
    475                         threatImportance = goalThreat.getCond().getGoal().GetImportanceOfFailure(am); 
    476                         aux = prob * threatImportance; 
     468                        //threatImportance = goalThreat.getCond().getGoal().GetImportanceOfFailure(am); 
     469                        //aux = prob * threatImportance; 
    477470                        failureImportance = intention.getGoal().GetImportanceOfFailure(am); 
    478471                         
     
    546539                 
    547540                //emotion-focused coping: Denial/Positive Thinking 
    548                 ArrayList ignoredConflicts = p.getIgnoredConflicts(); 
     541                ArrayList<CausalConflictFlaw> ignoredConflicts = p.getIgnoredConflicts(); 
    549542                if(ignoredConflicts.size() > 0)  
    550543                { 
     
    552545                        if(deltaPot >= 0 && deltaPot <= 2)  
    553546                        { 
    554                                 li = ignoredConflicts.listIterator(); 
    555                                 while(li.hasNext()) { 
    556                                         flaw = (CausalConflictFlaw) li.next(); 
    557                                         flaw.GetEffect().DecreaseProbability(am); 
     547                                for(CausalConflictFlaw f : ignoredConflicts) 
     548                                { 
     549                                        f.GetEffect().DecreaseProbability(am); 
    558550                                        AgentLogger.GetInstance().log("DENIAL - Effect probability lowered - " + intention.getGoal().getName().toString()); 
    559551                                } 
     
    636628                                 
    637629                                if (substitutionSets != null) { 
    638                                         li = substitutionSets.listIterator(); 
    639                                         while (li.hasNext()) { 
    640                                                 subSet = (SubstitutionSet) li.next(); 
     630                                        for(SubstitutionSet subSet : substitutionSets) 
     631                                        { 
    641632                                                newPlan = (Plan) p.clone(); 
    642633                                                newPlan.AddBindingConstraints(subSet.GetSubstitutions()); 
     
    653644                                                    intention.AddPlan(newPlan); 
    654645                                                } 
     646                                                 
    655647                                        } 
    656648                                } 
     
    683675        public Plan DevelopPlan(AgentModel am, ActivePursuitGoal goal) 
    684676    { 
    685             Plan p = new Plan(new ArrayList(),goal.GetSuccessConditions()); 
     677            Plan p = new Plan(new ArrayList<ProtectedCondition>(),goal.GetSuccessConditions()); 
    686678        Intention i = new Intention(goal); 
    687679        i.AddPlan(p); 
  • AgentMind/branches/FAtiMA2/src/FAtiMA/deliberativeLayer/Intention.java

    r190 r191  
    4848import FAtiMA.emotionalState.BaseEmotion; 
    4949import FAtiMA.emotionalState.EmotionalState; 
    50 import FAtiMA.motivationalSystem.MotivationalState; 
    5150import FAtiMA.sensorEffector.Event; 
    5251import FAtiMA.util.AgentLogger; 
     
    7170        private String _hopeEmotionID; 
    7271        private ActivePursuitGoal _goal; 
    73         private ArrayList _planConstruction; 
     72        private ArrayList<Plan> _planConstruction; 
    7473        private Intention _subIntention = null; 
    7574        private Intention _parentIntention = null; 
     
    8685        public Intention(ActivePursuitGoal g) { 
    8786                _goal = g; 
    88                 _planConstruction = new ArrayList(); 
     87                _planConstruction = new ArrayList<Plan>(); 
    8988                _fearEmotionID = null; 
    9089                _hopeEmotionID = null; 
     
    107106        } 
    108107         
    109         public void AddPlans(ArrayList plans) 
    110         { 
    111                 ListIterator li; 
     108        public void AddPlans(ArrayList<Plan> plans) 
     109        { 
     110                ListIterator<Plan> li; 
    112111                Plan p; 
    113112                li = plans.listIterator(); 
     
    211210         */ 
    212211        public Plan GetBestPlan(AgentModel am) { 
    213                 ListIterator li; 
     212                ListIterator<Plan> li; 
    214213                Plan p; 
    215214                Plan bestPlan = null; 
     
    232231         */ 
    233232        public float GetProbability(AgentModel am) { 
    234                 ListIterator li; 
     233                ListIterator<Plan> li; 
    235234                float p; 
    236235                float bestProb = 0; 
     
    320319         */ 
    321320        public void CheckLinks(AgentModel am) { 
    322             ListIterator li; 
     321            ListIterator<Plan> li; 
    323322            li = _planConstruction.listIterator(); 
    324323             
     
    338337         */ 
    339338        public void UpdateProbabilities() { 
    340             ListIterator li; 
     339            ListIterator<Plan> li; 
    341340            li = _planConstruction.listIterator(); 
    342341             
  • AgentMind/branches/FAtiMA2/src/FAtiMA/deliberativeLayer/goals/ActivePursuitGoal.java

    r190 r191  
    8484import FAtiMA.culture.CulturalDimensions; 
    8585import FAtiMA.deliberativeLayer.plan.Effect; 
     86import FAtiMA.deliberativeLayer.plan.EffectOnDrive; 
    8687import FAtiMA.deliberativeLayer.plan.IPlanningOperator; 
     88import FAtiMA.deliberativeLayer.plan.Plan; 
    8789import FAtiMA.exceptions.InvalidMotivatorTypeException; 
    8890import FAtiMA.exceptions.UnreachableGoalException; 
    89 import FAtiMA.knowledgeBase.KnowledgeBase; 
    90 import FAtiMA.motivationalSystem.MotivationalState; 
    9191import FAtiMA.util.AgentLogger; 
     92import FAtiMA.util.Constants; 
    9293import FAtiMA.util.enumerables.MotivatorType; 
    9394import FAtiMA.wellFormedNames.Name; 
     
    111112         
    112113        protected boolean _active; 
    113         protected ArrayList _failureConditions; 
    114         protected ArrayList _preConditions; 
    115         protected ArrayList _successConditions; 
     114        protected ArrayList<Condition> _failureConditions; 
     115        protected ArrayList<Condition> _preConditions; 
     116        protected ArrayList<Condition> _successConditions; 
    116117        protected int _numberOfTries; 
    117         protected Hashtable _expectedEffects; 
     118        protected Hashtable<String, Float> _expectedEffects; 
    118119                 
    119120        protected Float _probability = null; 
     
    125126        protected Integer _id; 
    126127        protected Symbol _agent; 
    127         protected ArrayList _effects; 
     128        protected ArrayList<Effect> _effects; 
    128129 
    129130         
     
    138139                super(description); 
    139140                 
    140                 _expectedEffects = new Hashtable(); 
    141                 _preConditions = new ArrayList(5); 
    142                 _successConditions = new ArrayList(2); 
    143                 _failureConditions = new ArrayList(2); 
     141                _expectedEffects = new Hashtable<String,Float>(); 
     142                _preConditions = new ArrayList<Condition>(5); 
     143                _successConditions = new ArrayList<Condition>(2); 
     144                _failureConditions = new ArrayList<Condition>(2); 
    144145                _active = false; 
    145146                _numberOfTries = 0; 
    146147                 
    147148                //IPlanningOperator 
    148                 _agent = new Symbol("SELF"); 
    149                 _effects = new ArrayList(); 
     149                _agent = new Symbol(Constants.SELF); 
     150                _effects = new ArrayList<Effect>(); 
    150151                 
    151152        } 
     
    179180         */ 
    180181        public boolean CheckFailure(AgentModel am) { 
    181             ListIterator li; 
     182            ListIterator<Condition> li; 
    182183                Condition cond; 
    183184                li = _failureConditions.listIterator(); 
     
    213214         */ 
    214215        public boolean CheckSucess(AgentModel am) { 
    215             ListIterator li; 
     216            ListIterator<Condition> li; 
    216217                Condition cond; 
    217218                li = _successConditions.listIterator(); 
     
    229230        public boolean mayContainSelf() 
    230231        { 
    231                 ListIterator li = this._successConditions.listIterator(); 
     232                ListIterator<Condition> li = this._successConditions.listIterator(); 
    232233                Condition cond; 
    233234                while(li.hasNext()) 
     
    236237                        if(cond.isGrounded()) 
    237238                        { 
    238                                 if(cond.getName().toString().contains("SELF")) 
     239                                if(cond.getName().toString().contains(Constants.SELF)) 
    239240                                { 
    240241                                        return true; 
     
    321322        private float GetGoalUrgency(){ 
    322323                 
    323                 ListIterator li; 
     324                ListIterator<Condition> li; 
    324325                Condition cond; 
    325326                 
     
    344345        } 
    345346         
    346         private float GetGoalFamiliarity(AgentModel am) 
     347        /*private float GetGoalFamiliarity(AgentModel am) 
    347348        { 
    348349                if (_familiarity == null) 
     
    352353                 
    353354                return _familiarity.floatValue(); 
    354         } 
     355        }*/ 
    355356         
    356357        public Float GetProbability(AgentModel am) 
     
    387388                float result = 0;                
    388389                 
    389                 List goalTargets = _name.GetLiteralList(); 
    390                 Iterator it = goalTargets.iterator(); 
     390                List<Symbol> goalTargets = _name.GetLiteralList(); 
     391                Iterator<Symbol> it = goalTargets.iterator(); 
    391392                it.next();// first literal is the name of the goal; 
    392393                 
     
    435436                try { 
    436437                         
    437                         //TODO: DEBUG ONLY 
    438                         if(this.getName().GetFirstLiteral().toString().equalsIgnoreCase("ExpressGiftContentment")){ 
    439                                 int i=0;                                 
    440                         } 
    441                          
    442                         if(this.getName().GetFirstLiteral().toString().equalsIgnoreCase("MockJoke")){ 
    443                                 int i=0;                                 
    444                         } 
    445438                                 
    446439                        // If target is SELF 
    447                         if(target.equalsIgnoreCase("SELF")){ 
     440                        if(target.equalsIgnoreCase(Constants.SELF)){ 
    448441                                auxMultiplier = 1; 
    449442                                //Calculate the effect on Non-Cognitive Needs 
     
    569562         * @return a list with the goal's failure conditions 
    570563         */ 
    571         public ArrayList GetFailureConditions() { 
     564        public ArrayList<Condition> GetFailureConditions() { 
    572565            return _failureConditions; 
    573566        } 
     
    577570         * @return a list with the goal's success conditions  
    578571         */ 
    579         public ArrayList GetSuccessConditions() { 
     572        public ArrayList<Condition> GetSuccessConditions() { 
    580573                return _successConditions; 
    581574        } 
     
    585578         * @return a list with the goal's preconditions 
    586579         */ 
    587         public ArrayList GetPreconditions() { 
     580        public ArrayList<Condition> GetPreconditions() { 
    588581                return _preConditions; 
    589582        } 
     
    614607    public void ReplaceUnboundVariables(int variableID) 
    615608    { 
    616         ListIterator li; 
     609        ListIterator<Condition> li; 
    617610         
    618611        this._name.ReplaceUnboundVariables(variableID); 
     
    636629        } 
    637630         
    638         li = this._effects.listIterator(); 
    639         while(li.hasNext()) 
    640         { 
    641                 ((Effect) li.next()).ReplaceUnboundVariables(variableID); 
     631        for(Effect e : this._effects) 
     632        { 
     633                e.ReplaceUnboundVariables(variableID); 
    642634        } 
    643635    } 
     
    652644         * @see Substitution 
    653645         */ 
    654         public Object Ground(ArrayList bindingConstraints)  
     646        public Object Ground(ArrayList<Substitution> bindingConstraints)  
    655647        { 
    656648                ActivePursuitGoal aux = (ActivePursuitGoal) this.clone(); 
     
    667659         * @see Substitution 
    668660         */ 
    669     public void MakeGround(ArrayList bindings) 
     661    public void MakeGround(ArrayList<Substitution> bindings) 
    670662    { 
    671         ListIterator li; 
     663        ListIterator<Condition> li; 
    672664         
    673665        this._name.MakeGround(bindings); 
     
    691683        } 
    692684         
    693         li = this._effects.listIterator(); 
    694         while(li.hasNext()) 
    695         { 
    696                 ((Effect) li.next()).MakeGround(bindings); 
     685        for(Effect e : this._effects) 
     686        { 
     687                e.MakeGround(bindings); 
    697688        } 
    698689    } 
     
    700691     
    701692    public String getNameWithCharactersOrdered(){ 
    702         ArrayList nameLiterals = this.getName().GetLiteralList(); 
    703                 ArrayList characterNames = new ArrayList(); 
     693        ArrayList<Symbol> nameLiterals = this.getName().GetLiteralList(); 
     694                ArrayList<String> characterNames = new ArrayList<String>(); 
    704695                 
    705696                String ritualName = nameLiterals.get(0).toString(); 
     
    757748    public void MakeGround(Substitution subst) 
    758749    { 
    759         ListIterator li; 
     750        ListIterator<Condition> li; 
    760751         
    761752        this._name.MakeGround(subst); 
     
    779770        } 
    780771         
    781         li = this._effects.listIterator(); 
    782         while(li.hasNext()) 
    783         { 
    784                 ((Effect) li.next()).MakeGround(subst); 
     772        for(Effect e : this._effects) 
     773        { 
     774                e.MakeGround(subst); 
    785775        } 
    786776    } 
     
    793783        public Object clone() 
    794784        { 
    795                 ListIterator li; 
     785                ListIterator<Condition> li; 
    796786                ActivePursuitGoal g = new ActivePursuitGoal(); 
    797787                g._goalID = this._goalID; 
     
    805795                g._numberOfTries = this._numberOfTries; 
    806796         
    807                 g._expectedEffects = (Hashtable) this._expectedEffects.clone(); 
     797                g._expectedEffects = (Hashtable<String,Float>) this._expectedEffects.clone(); 
    808798                 
    809799                if(this._preConditions != null) 
    810800                { 
    811                         g._preConditions = new ArrayList(this._preConditions.size()); 
     801                        g._preConditions = new ArrayList<Condition>(this._preConditions.size()); 
    812802                        li = this._preConditions.listIterator(); 
    813803                        while(li.hasNext()) 
    814804                        { 
    815                                 g._preConditions.add(((Condition) li.next()).clone()); 
     805                                g._preConditions.add((Condition) li.next().clone()); 
    816806                        } 
    817807                } 
     
    819809                if(this._failureConditions != null) 
    820810                { 
    821                         g._failureConditions = new ArrayList(this._failureConditions.size()); 
     811                        g._failureConditions = new ArrayList<Condition>(this._failureConditions.size()); 
    822812                        li = this._failureConditions.listIterator(); 
    823813                        while(li.hasNext()) 
    824814                        { 
    825                                 g._failureConditions.add(((Condition) li.next()).clone()); 
     815                                g._failureConditions.add((Condition) li.next().clone()); 
    826816                        } 
    827817                } 
     
    830820                { 
    831821                         
    832                         g._successConditions = new ArrayList(this._successConditions.size()); 
     822                        g._successConditions = new ArrayList<Condition>(this._successConditions.size()); 
    833823                        li = this._successConditions.listIterator(); 
    834824                        while(li.hasNext()) 
    835825                        { 
    836                                 g._successConditions.add(((Condition) li.next()).clone()); 
     826                                g._successConditions.add((Condition) li.next().clone()); 
    837827                        } 
    838828                } 
     
    852842                { 
    853843                         
    854                         g._effects = new ArrayList(this._effects.size()); 
    855                         li = this._effects.listIterator(); 
    856                         while(li.hasNext()) 
     844                        g._effects = new ArrayList<Effect>(this._effects.size()); 
     845                        for(Effect e : this._effects) 
    857846                        { 
    858                                 g._effects.add(((Effect) li.next()).clone()); 
     847                                g._effects.add((Effect)e.clone()); 
    859848                        } 
    860849                } 
    861850                 
    862                  
    863851                return g; 
    864852                 
    865853        } 
    866854         
    867         public ArrayList getPlans(AgentModel am) 
     855        public ArrayList<Plan> getPlans(AgentModel am) 
    868856        { 
    869857                return null; 
     
    886874 
    887875        public boolean checkPreconditions(AgentModel am) { 
    888                 ListIterator li; 
     876                ListIterator<Condition> li; 
    889877                li = this._preConditions.listIterator(); 
    890878                 
     
    917905        } 
    918906 
    919         public ArrayList getEffects() { 
     907        public ArrayList<Effect> getEffects() { 
    920908                return this._effects; 
    921909        } 
     
    929917        } 
    930918 
    931         public ArrayList getPreconditions() { 
     919        public ArrayList<Condition> getPreconditions() { 
    932920                return this._preConditions; 
    933921        } 
     
    946934        } 
    947935 
    948         public ArrayList getEffectsOnDrives() { 
     936        public ArrayList<EffectOnDrive> getEffectsOnDrives() { 
    949937                //TODO return the appropriate effects on drives 
    950                 return new ArrayList(); 
     938                return new ArrayList<EffectOnDrive>(); 
    951939        } 
    952940} 
  • AgentMind/branches/FAtiMA2/src/FAtiMA/deliberativeLayer/goals/Goal.java

    r190 r191  
    6363import FAtiMA.conditions.Condition; 
    6464import FAtiMA.exceptions.UnreachableGoalException; 
    65 import FAtiMA.knowledgeBase.KnowledgeBase; 
    6665import FAtiMA.sensorEffector.Event; 
    6766import FAtiMA.sensorEffector.Parameter; 
     
    6968import FAtiMA.wellFormedNames.Name; 
    7069import FAtiMA.wellFormedNames.Substitution; 
     70import FAtiMA.wellFormedNames.Symbol; 
    7171 
    7272 
     
    7878 */ 
    7979public abstract class Goal implements IGroundable, Cloneable, Serializable { 
     80         
     81        /** 
     82         *  
     83         */ 
     84        private static final long serialVersionUID = 1L; 
     85         
    8086         
    8187        public static final String GOALSUCCESS = "GS"; 
     
    132138            String aux; 
    133139            aux = status + "("; 
    134                 ListIterator li = _name.GetLiteralList().listIterator(); 
     140                ListIterator<Symbol> li = _name.GetLiteralList().listIterator(); 
    135141                 
    136142                aux = aux + li.next(); 
     
    309315        { 
    310316                Event e = new Event("SELF",action,this._name.GetFirstLiteral().toString()); 
    311                 ListIterator li = this._name.GetLiteralList().listIterator(); 
     317                ListIterator<Symbol> li = this._name.GetLiteralList().listIterator(); 
    312318            li.next(); 
    313319            while(li.hasNext()) 
     
    348354         * @see Substitution 
    349355         */ 
    350         public abstract Object Ground(ArrayList bindingConstraints); 
     356        public abstract Object Ground(ArrayList<Substitution> bindingConstraints); 
    351357 
    352358        /** 
     
    358364         * @see Substitution 
    359365         */ 
    360     public abstract void MakeGround(ArrayList bindings); 
     366    public abstract void MakeGround(ArrayList<Substitution> bindings); 
    361367     
    362368    
     
    463469         * @see Substitution 
    464470         */ 
    465         protected ArrayList GroundConditionList(ArrayList originalList, ArrayList bindings) { 
    466                 ArrayList newList; 
     471        protected ArrayList<Condition> GroundConditionList(ArrayList<Condition> originalList, ArrayList<Substitution> bindings) { 
     472                ArrayList<Condition> newList; 
    467473                Condition cond; 
    468474                Condition newCondition; 
    469                 ListIterator li; 
    470  
    471                 newList = new ArrayList(originalList.size()); 
     475                ListIterator<Condition> li; 
     476 
     477                newList = new ArrayList<Condition>(originalList.size()); 
    472478                li = originalList.listIterator(); 
    473479 
  • AgentMind/branches/FAtiMA2/src/FAtiMA/deliberativeLayer/goals/GoalLibrary.java

    r1 r191  
    5858        private static final long serialVersionUID = 1L; 
    5959         
    60         private ArrayList _goals; 
     60        private ArrayList<Goal> _goals; 
    6161         
    6262        /** 
     
    7979         * @return a ListIterator over goals 
    8080         */ 
    81         public ListIterator GetGoals() { 
     81        public ListIterator<Goal> GetGoals() { 
    8282            return _goals.listIterator(); 
    8383        } 
     
    9898         */ 
    9999        public Goal GetGoal(Name goalName) { 
    100                 ListIterator li; 
     100                ListIterator<Goal> li; 
    101101                Goal g; 
    102102 
  • AgentMind/branches/FAtiMA2/src/FAtiMA/deliberativeLayer/goals/InterestGoal.java

    r1 r191  
    6363        private static final long serialVersionUID = 1L; 
    6464         
    65         private ArrayList _protectionConstraints; 
     65        private ArrayList<Condition> _protectionConstraints; 
    6666         
    6767        /** 
     
    7171        public InterestGoal(Name description) { 
    7272                super(description); 
    73                 _protectionConstraints = new ArrayList(1); 
     73                _protectionConstraints = new ArrayList<Condition>(1); 
    7474        } 
    7575 
    7676        private InterestGoal() { 
    77                 _protectionConstraints = new ArrayList(1); 
     77                _protectionConstraints = new ArrayList<Condition>(1); 
    7878        } 
    7979 
     
    109109         * @return an ArrayList with the conditions that the goal wants to protect 
    110110         */ 
    111         public ArrayList getProtectionConstraints() { 
     111        public ArrayList<Condition> getProtectionConstraints() { 
    112112                return _protectionConstraints; 
    113113        } 
     
    138138    public void ReplaceUnboundVariables(int variableID) 
    139139    { 
    140         ListIterator li; 
     140        ListIterator<Condition> li; 
    141141         
    142142        this._name.ReplaceUnboundVariables(variableID); 
     
    158158         * @see Substitution 
    159159         */ 
    160         public Object Ground(ArrayList bindingConstraints)  
     160        public Object Ground(ArrayList<Substitution> bindingConstraints)  
    161161        { 
    162162                InterestGoal aux = (InterestGoal) this.clone(); 
     
    173173         * @see Substitution 
    174174         */ 
    175     public void MakeGround(ArrayList bindings) 
     175    public void MakeGround(ArrayList<Substitution> bindings) 
    176176    { 
    177         ListIterator li; 
     177        ListIterator<Condition> li; 
    178178         
    179179        this._name.MakeGround(bindings); 
     
    213213    public void MakeGround(Substitution subst) 
    214214    { 
    215         ListIterator li; 
     215        ListIterator<Condition> li; 
    216216         
    217217        this._name.MakeGround(subst); 
     
    231231        public Object clone() 
    232232        { 
    233                 ListIterator li; 
     233                ListIterator<Condition> li; 
    234234                InterestGoal g = new InterestGoal(); 
    235235                 
     
    243243                if(this._protectionConstraints != null) 
    244244                { 
    245                         g._protectionConstraints = new ArrayList(this._protectionConstraints.size()); 
     245                        g._protectionConstraints = new ArrayList<Condition>(this._protectionConstraints.size()); 
    246246                        li = this._protectionConstraints.listIterator(); 
    247247                        while(li.hasNext()) 
    248248                        { 
    249                                 g._protectionConstraints.add(((Condition) li.next()).clone()); 
     249                                g._protectionConstraints.add((Condition) li.next().clone()); 
    250250                        } 
    251251                } 
  • AgentMind/branches/FAtiMA2/src/FAtiMA/deliberativeLayer/plan/Effect.java

    r190 r191  
    4444import FAtiMA.AgentModel; 
    4545import FAtiMA.conditions.Condition; 
    46 import FAtiMA.knowledgeBase.KnowledgeBase; 
    4746import FAtiMA.wellFormedNames.IGroundable; 
    4847import FAtiMA.wellFormedNames.Name; 
     
    161160         * @return a new Effect with its variables grounded 
    162161         */ 
    163         public Object Ground(ArrayList substs) { 
     162        public Object Ground(ArrayList<Substitution> substs) { 
    164163                Effect aux = (Effect) this.clone(); 
    165164                aux.MakeGround(substs); 
     
    175174         * @see Substitution 
    176175         */ 
    177     public void MakeGround(ArrayList bindings) 
     176    public void MakeGround(ArrayList<Substitution> bindings) 
    178177    { 
    179178        this._effect.MakeGround(bindings); 
  • AgentMind/branches/FAtiMA2/src/FAtiMA/deliberativeLayer/plan/EffectOnDrive.java

    r1 r191  
    1010 
    1111import FAtiMA.conditions.Condition; 
    12 import FAtiMA.knowledgeBase.KnowledgeBase; 
    1312import FAtiMA.wellFormedNames.IGroundable; 
    14 import FAtiMA.wellFormedNames.Name; 
    1513import FAtiMA.wellFormedNames.Substitution; 
    1614 
     
    8785         * @return a new Effect with its variables grounded 
    8886         */ 
    89         public Object Ground(ArrayList substs) { 
     87        public Object Ground(ArrayList<Substitution> substs) { 
    9088                Effect aux = (Effect) this.clone(); 
    9189                aux.MakeGround(substs); 
     
    10199         * @see Substitution 
    102100         */ 
    103     public void MakeGround(ArrayList bindings) 
     101    public void MakeGround(ArrayList<Substitution> bindings) 
    104102    { 
    105103        this._effectOnDrive.MakeGround(bindings); 
  • AgentMind/branches/FAtiMA2/src/FAtiMA/deliberativeLayer/plan/IPlanningOperator.java

    r190 r191  
    7171         * @return an ArrayList with all the operators's effects 
    7272         */ 
    73         public ArrayList getEffects(); 
     73        public ArrayList<Effect> getEffects(); 
    7474         
    7575         
     
    7878         * @return an ArrayList with all the step's effects on drives 
    7979         */ 
    80         public ArrayList getEffectsOnDrives(); 
     80        public ArrayList<EffectOnDrive> getEffectsOnDrives(); 
    8181         
    8282        /** 
     
    103103         * @return an ArrayList with all the Operator's preconditions 
    104104         */ 
    105         public ArrayList getPreconditions();  
     105        public ArrayList<Condition> getPreconditions();  
    106106         
    107107        /** 
  • AgentMind/branches/FAtiMA2/src/FAtiMA/deliberativeLayer/plan/OrderRelation.java

    r1 r191  
    4848         
    4949        private Integer _stepID; 
    50     private ArrayList _after; 
    51     private ArrayList _before; 
     50    private ArrayList<Integer> _after; 
     51    private ArrayList<Integer> _before; 
    5252 
    5353    /** 
     
    5858    { 
    5959        this._stepID = stepID; 
    60         this._after = new ArrayList(); 
    61         this._before = new ArrayList(); 
     60        this._after = new ArrayList<Integer>(); 
     61        this._before = new ArrayList<Integer>(); 
    6262    } 
    6363 
     
    7878     * @return the id's stored in a arraylist 
    7979     */ 
    80     public ArrayList getAfter() 
     80    public ArrayList<Integer> getAfter() 
    8181    { 
    8282        return this._after; 
     
    8787     * @return the id's stored in a arraylist 
    8888     */ 
    89     public ArrayList getBefore() 
     89    public ArrayList<Integer> getBefore() 
    9090    { 
    9191        return this._before; 
     
    133133        OrderRelation order = new OrderRelation(); 
    134134        order._stepID = this._stepID; 
    135         order._after = (ArrayList) this._after.clone(); 
    136         order._before = (ArrayList) this._before.clone(); 
     135        order._after = (ArrayList<Integer>) this._after.clone(); 
     136        order._before = (ArrayList<Integer>) this._before.clone(); 
    137137 
    138138        return order; 
  • AgentMind/branches/FAtiMA2/src/FAtiMA/deliberativeLayer/plan/Plan.java

    r190 r191  
    108108import java.util.ArrayList; 
    109109import java.util.HashMap; 
    110 import java.util.Iterator; 
    111110import java.util.ListIterator; 
    112111 
     
    114113import FAtiMA.conditions.Condition; 
    115114import FAtiMA.util.AgentLogger; 
     115import FAtiMA.util.Constants; 
    116116import FAtiMA.wellFormedNames.Inequality; 
    117117import FAtiMA.wellFormedNames.Substitution; 
     
    137137    private Step _start; 
    138138 
    139     private ArrayList _steps; 
    140  
    141     private HashMap _bindingConstraints; 
    142  
    143     private ArrayList _causalConflicts; 
    144  
    145     private ArrayList _ignoredConflicts; 
    146  
    147     private ArrayList _inequalityConstraints; 
    148  
    149     private ArrayList _links; 
    150  
    151     private ArrayList _openPreconditions; 
    152  
    153     private ArrayList _orderingConstraints; 
    154  
    155     private ArrayList _protectedConditions; 
    156  
    157     private ArrayList _protectionThreats; 
     139    private ArrayList<IPlanningOperator> _steps; 
     140 
     141    private HashMap<String, Substitution> _bindingConstraints; 
     142 
     143    private ArrayList<CausalConflictFlaw> _causalConflicts; 
     144 
     145    private ArrayList<CausalConflictFlaw> _ignoredConflicts; 
     146 
     147    private ArrayList<Inequality> _inequalityConstraints; 
     148 
     149    private ArrayList<CausalLink> _links; 
     150 
     151    private ArrayList<OpenPrecondition> _openPreconditions; 
     152 
     153    private ArrayList<OrderRelation> _orderingConstraints; 
     154 
     155    private ArrayList<ProtectedCondition> _protectedConditions; 
     156 
     157    private ArrayList<GoalThreat> _protectionThreats; 
    158158 
    159159    private float _probability; 
     
    222222    }*/ 
    223223     
    224     public Plan(ArrayList protectedConditions, 
    225             ArrayList finishConditions) 
     224    public Plan(ArrayList<ProtectedCondition> protectedConditions, 
     225            ArrayList<Condition> finishConditions) 
    226226    { 
    227227        _valid = true; 
    228228        _stepCounter = 0; 
    229         _links = new ArrayList(); 
    230         _openPreconditions = new ArrayList(); 
    231         _causalConflicts = new ArrayList(); 
    232         _bindingConstraints = new HashMap(); 
    233         _orderingConstraints = new ArrayList(); 
    234         _inequalityConstraints = new ArrayList(); 
    235         _steps = new ArrayList(); 
    236         _protectedConditions = new ArrayList(); 
    237         _protectionThreats = new ArrayList(); 
    238         _ignoredConflicts = new ArrayList(); 
     229        _links = new ArrayList<CausalLink>(); 
     230        _openPreconditions = new ArrayList<OpenPrecondition>(); 
     231        _causalConflicts = new ArrayList<CausalConflictFlaw>(); 
     232        _bindingConstraints = new HashMap<String,Substitution>(); 
     233        _orderingConstraints = new ArrayList<OrderRelation>(); 
     234        _inequalityConstraints = new ArrayList<Inequality>(); 
     235        _steps = new ArrayList<IPlanningOperator>(); 
     236        _protectedConditions = new ArrayList<ProtectedCondition>(); 
     237        _protectionThreats = new ArrayList<GoalThreat>(); 
     238        _ignoredConflicts = new ArrayList<CausalConflictFlaw>(); 
    239239        _probability = 1.0f; 
    240240        _probabilityChanged = false; 
    241241 
    242242        _start = new Step( 
    243                         new Symbol("SELF"), 
     243                        new Symbol(Constants.SELF), 
    244244                        new Symbol("Start"), 
    245245                        1, 
     
    249249        _start.setID(new Integer(_stepCounter++)); 
    250250        _finish = new Step( 
    251                         new Symbol("SELF"), 
     251                        new Symbol(Constants.SELF), 
    252252                        new Symbol("Finish"), 
    253253                        1, 
     
    277277    public void AddBindingConstraint(Substitution bind) 
    278278    { 
    279         Iterator it; 
    280279        Substitution subst; 
    281280        Substitution newSubst; 
     
    283282        Symbol bindValue; 
    284283        Inequality ineq; 
    285         ArrayList substs; 
    286         substs = new ArrayList(); 
     284        ArrayList<Substitution> substs; 
     285        substs = new ArrayList<Substitution>(); 
    287286 
    288287        if (bind instanceof Inequality) 
    289288        { 
    290289            //we'r adding a inequality constraint like {[x]!=john} 
    291             it = _bindingConstraints.values().iterator(); 
    292             while (it.hasNext()) 
    293             { 
    294                 substs.add(it.next()); 
    295             } 
     290                for(Substitution s : _bindingConstraints.values()) 
     291                { 
     292                        substs.add(s); 
     293                } 
     294             
    296295            ineq = (Inequality) ((Inequality) bind).clone(); 
    297296            ineq.MakeGround(substs); 
     
    358357     * @see Substitution 
    359358     */ 
    360     public void AddBindingConstraints(ArrayList substs) 
    361     { 
    362         ListIterator li; 
    363  
    364         li = substs.listIterator(); 
    365         while (li.hasNext()) 
    366         { 
    367             AddBindingConstraint((Substitution) li.next()); 
    368         } 
     359    public void AddBindingConstraints(ArrayList<Substitution> substs) 
     360    { 
     361        for(Substitution s : substs) 
     362        { 
     363                AddBindingConstraint(s); 
     364        } 
    369365    } 
    370366 
     
    401397    public void AddOperator(IPlanningOperator op) 
    402398    { 
    403         ListIterator li; 
     399        ListIterator<Condition> li; 
    404400      
    405401        op.setID(new Integer(_stepCounter++)); 
     
    427423    private void CheckProtectedConstraints(IPlanningOperator op) 
    428424    { 
    429         ListIterator li; 
    430         ListIterator li2; 
     425        ListIterator<ProtectedCondition> li; 
     426        ListIterator<Effect> li2; 
    431427        ProtectedCondition pCond; 
    432428        Condition cond; 
     
    457453    public void CheckProtectedConstraints() 
    458454    { 
    459         for(ListIterator li = this._steps.listIterator();li.hasNext();) 
     455        for(IPlanningOperator ip : this._steps) 
    460456        { 
    461                 CheckProtectedConstraints((IPlanningOperator)li.next());  
     457                CheckProtectedConstraints(ip);  
    462458        } 
    463459    } 
     
    472468        Condition cond; 
    473469        CausalLink link; 
    474         ListIterator li; 
    475         ListIterator li2; 
     470        ListIterator<CausalLink> li; 
     471        ListIterator<Effect> li2; 
    476472        Effect eff; 
    477473 
     
    512508    public void CheckCausalConflicts() 
    513509    { 
    514         ListIterator li = this._steps.listIterator(); 
    515         IPlanningOperator op; 
    516         while (li.hasNext()) 
    517         { 
    518             op = (IPlanningOperator) li.next(); 
    519             CheckCausalConflicts(op); 
    520         } 
     510        for(IPlanningOperator ip : this._steps) 
     511        { 
     512                CheckCausalConflicts(ip); 
     513        } 
    521514    } 
    522515 
     
    553546    { 
    554547        OrderRelation order; 
    555         ListIterator li = this._orderingConstraints.listIterator(); 
     548        ListIterator<OrderRelation> li = this._orderingConstraints.listIterator(); 
    556549 
    557550        while (li.hasNext()) 
     
    578571    { 
    579572        CausalLink link; 
    580         ArrayList linksToRemove = new ArrayList(); 
    581         ArrayList linksToAdd = new ArrayList(); 
     573        ArrayList<CausalLink> linksToRemove = new ArrayList<CausalLink>(); 
     574        ArrayList<CausalLink> linksToAdd = new ArrayList<CausalLink>(); 
    582575        Condition cond; 
    583576        IPlanningOperator op; 
     
    598591        //first stage, searching and removing unnecessary steps 
    599592 
    600         for(ListIterator li = _links.listIterator(); li.hasNext();) 
     593        for(ListIterator<CausalLink> li = _links.listIterator(); li.hasNext();) 
    601594        { 
    602595            link = (CausalLink) li.next(); 
     
    650643        //this is still the first stage, now we need to add to the plan 
    651644        //all the links to Start created 
    652         for(ListIterator li = linksToAdd.listIterator(); li.hasNext();) 
     645        for(ListIterator<CausalLink> li = linksToAdd.listIterator(); li.hasNext();) 
    653646        { 
    654647                AddLink((CausalLink) li.next()); 
     
    663656        if(linksToRemove.size() > 0) 
    664657        { 
    665                 for(ListIterator li = linksToRemove.listIterator(); li.hasNext();) 
     658                for(ListIterator<CausalLink> li = linksToRemove.listIterator(); li.hasNext();) 
    666659            { 
    667660                link = (CausalLink) li.next(); 
     
    693686        //second stage. Now that all redundant links and steps have been 
    694687        //removed, we can safely search for unsupported links 
    695         for(ListIterator li = _links.listIterator(); li.hasNext();) 
     688        for(ListIterator<CausalLink> li = _links.listIterator(); li.hasNext();) 
    696689        { 
    697690                link = (CausalLink) li.next(); 
     
    716709        //finally at the end of the second stage we must still remove 
    717710        //all the unsupported links that were found 
    718         for(ListIterator li = linksToRemove.listIterator(); li.hasNext();) 
     711        for(ListIterator<CausalLink> li = linksToRemove.listIterator(); li.hasNext();) 
    719712        { 
    720713                link = (CausalLink) li.next(); 
     
    742735        boolean foundRedundantSteps = false; 
    743736         
    744         for(ListIterator li = _steps.listIterator();li.hasNext();) 
     737        for(ListIterator<IPlanningOperator> li = _steps.listIterator();li.hasNext();) 
    745738        { 
    746739                op = (IPlanningOperator) li.next(); 
     
    771764    public Object clone() 
    772765    { 
    773         ListIterator li; 
    774766 
    775767        Plan p = new Plan(); 
     
    783775 
    784776        //Clone member by member 
    785         p._inequalityConstraints = new ArrayList(); 
    786         li = this._inequalityConstraints.listIterator(); 
    787         while (li.hasNext()) 
    788         { 
    789             p._inequalityConstraints.add(((Inequality) li.next()).clone()); 
    790         } 
    791  
    792         p._orderingConstraints = new ArrayList(); 
    793         li = this._orderingConstraints.listIterator(); 
    794         while (li.hasNext()) 
    795         { 
    796             p._orderingConstraints.add(((OrderRelation) li.next()).clone()); 
    797         } 
    798  
    799         p._steps = new ArrayList(); 
    800         li = this._steps.listIterator(); 
    801         while (li.hasNext()) 
    802         { 
    803             p._steps.add(((IPlanningOperator) li.next()).clone()); 
     777        p._inequalityConstraints = new ArrayList<Inequality>(); 
     778        for(Inequality ine : this._inequalityConstraints) 
     779        { 
     780            p._inequalityConstraints.add((Inequality)ine.clone()); 
     781        } 
     782 
     783        p._orderingConstraints = new ArrayList<OrderRelation>(); 
     784         
     785        for(OrderRelation or : this._orderingConstraints) 
     786        { 
     787                p._orderingConstraints.add((OrderRelation)or.clone()); 
     788        } 
     789         
     790 
     791        p._steps = new ArrayList<IPlanningOperator>(); 
     792        for(IPlanningOperator ip : this._steps) 
     793        { 
     794                p._steps.add((IPlanningOperator)ip.clone()); 
    804795        } 
    805796 
    806797        //no need to clone the elements 
    807         p._bindingConstraints = (HashMap) _bindingConstraints.clone(); 
    808         p._openPreconditions = (ArrayList) _openPreconditions.clone(); 
    809         p._links = (ArrayList) _links.clone(); 
    810         p._causalConflicts = (ArrayList) _causalConflicts.clone(); 
     798        p._bindingConstraints = (HashMap<String,Substitution>) _bindingConstraints.clone(); 
     799        p._openPreconditions = (ArrayList<OpenPrecondition>) _openPreconditions.clone(); 
     800        p._links = (ArrayList<CausalLink>) _links.clone(); 
     801        p._causalConflicts = (ArrayList<CausalConflictFlaw>) _causalConflicts.clone(); 
    811802 
    812803        //TODO think about these ones 
    813804        p._protectedConditions = _protectedConditions; 
    814         p._protectionThreats = (ArrayList) _protectionThreats.clone(); 
    815         p._ignoredConflicts = (ArrayList) _ignoredConflicts.clone(); 
     805        p._protectionThreats = (ArrayList<GoalThreat>) _protectionThreats.clone(); 
     806        p._ignoredConflicts = (ArrayList<CausalConflictFlaw>) _ignoredConflicts.clone(); 
    816807 
    817808        return p; 
     
    832823     * @return an ArrayList with ignored CausalConflicts 
    833824     */ 
    834     public ArrayList getIgnoredConflicts() 
     825    public ArrayList<CausalConflictFlaw> getIgnoredConflicts() 
    835826    { 
    836827        return _ignoredConflicts; 
     
    841832     * @return an ArrayList with all the plan's CausalLinks 
    842833     */ 
    843     public ArrayList getLinks() 
     834    public ArrayList<CausalLink> getLinks() 
    844835    { 
    845836        return _links; 
     
    859850     * @return an ArrayList with all the plan's preconditions 
    860851     */ 
    861     public ArrayList getOpenPreconditions() 
     852    public ArrayList<OpenPrecondition> getOpenPreconditions() 
    862853    { 
    863854        return _openPreconditions; 
     
    868859     * @return an ArrayList with OrderRelations between the distinct steps in the plan 
    869860     */ 
    870     public ArrayList getOrderingConstraints() 
     861    public ArrayList<OrderRelation> getOrderingConstraints() 
    871862    { 
    872863        return _orderingConstraints; 
     
    906897        } 
    907898         
    908         for(ListIterator li = _steps.listIterator();li.hasNext();) 
     899        for(ListIterator<IPlanningOperator> li = _steps.listIterator();li.hasNext();) 
    909900        { 
    910901                op = (IPlanningOperator) li.next(); 
     
    941932     * @return an ArrayList with all the plan's steps 
    942933     */ 
    943     public ArrayList getSteps() 
     934    public ArrayList<IPlanningOperator> getSteps() 
    944935    { 
    945936        return _steps; 
     
    950941     * @return an ArrayList with the plan's GoalThreats to InterestGoals 
    951942     */ 
    952     public ArrayList getThreatenedInterestConstraints() 
     943    public ArrayList<GoalThreat> getThreatenedInterestConstraints() 
    953944    { 
    954945        return _protectionThreats; 
     
    957948 
    958949    /** 
    959      * Gets a heuristic value H for the plan. Usefull for comparing plans. 
     950     * Gets a heuristic value H for the plan. Useful for comparing plans. 
    960951     * The lowest value of H corresponds to the likely better plan to  
    961952     * continue planning. 
     
    10181009    public int NumberOfSourceLinks(Integer stepID) 
    10191010    { 
    1020         ListIterator li; 
     1011        ListIterator<CausalLink> li; 
    10211012        int number = 0; 
    10221013        li = _links.listIterator(); 
     
    10381029    { 
    10391030        IPlanningOperator op; 
    1040         for(ListIterator li = _steps.listIterator(); li.hasNext();) 
     1031        for(ListIterator<IPlanningOperator> li = _steps.listIterator(); li.hasNext();) 
    10411032        { 
    10421033                op = (IPlanningOperator) li.next(); 
     
    10671058    public void RemoveCausalLinks(Integer stepID) 
    10681059    { 
    1069         ListIterator li; 
     1060        ListIterator<CausalLink> li; 
    10701061        CausalLink link; 
    10711062        li = _links.listIterator(); 
     
    10901081    public void RemoveOpenPreconditions(Integer stepID) 
    10911082    { 
    1092         ListIterator li; 
     1083        ListIterator<OpenPrecondition> li; 
    10931084        OpenPrecondition openPre; 
    10941085 
     
    11091100        CausalConflictFlaw conflict; 
    11101101         
    1111         for(ListIterator li = _causalConflicts.listIterator();li.hasNext();) 
     1102        for(ListIterator<CausalConflictFlaw> li = _causalConflicts.listIterator();li.hasNext();) 
    11121103        { 
    11131104                conflict = (CausalConflictFlaw) li.next(); 
     
    11271118        CausalConflictFlaw conflict; 
    11281119         
    1129         for(ListIterator li = _ignoredConflicts.listIterator();li.hasNext();) 
     1120        for(ListIterator<CausalConflictFlaw> li = _ignoredConflicts.listIterator();li.hasNext();) 
    11301121        { 
    11311122                conflict = (CausalConflictFlaw) li.next(); 
     
    11451136        GoalThreat threat; 
    11461137         
    1147         for(ListIterator li = _protectionThreats.listIterator();li.hasNext();) 
     1138        for(ListIterator<GoalThreat> li = _protectionThreats.listIterator();li.hasNext();) 
    11481139        { 
    11491140                threat = (GoalThreat) li.next(); 
     
    11611152    public void RemoveOrderingConstraint(OrderingConstraint orderConstraint) 
    11621153    { 
    1163         ListIterator li; 
     1154        ListIterator<OrderRelation> li; 
    11641155        OrderRelation order; 
    11651156        li = this._orderingConstraints.listIterator(); 
     
    11881179    public void RemoveOrderingConstraints(Integer stepID) 
    11891180    { 
    1190         ListIterator li; 
     1181        ListIterator<OrderRelation> li; 
    11911182        OrderRelation order; 
    11921183        li = this._orderingConstraints.listIterator(); 
     
    12261217    public IPlanningOperator UnexecutedAction(AgentModel am) 
    12271218    { 
    1228         ListIterator li; 
     1219        ListIterator<IPlanningOperator> li; 
    12291220        IPlanningOperator op; 
    12301221        IPlanningOperator possibleActionOfOther = null; 
     
    12771268     * @return a list with steps that are the first to be executed in a plan 
    12781269     */ 
    1279     public ArrayList GetFirstActions() 
    1280     { 
    1281         ArrayList nextActions = new ArrayList(); 
    1282         ListIterator li; 
     1270    public ArrayList<IPlanningOperator> GetFirstActions() 
     1271    { 
     1272        ArrayList<IPlanningOperator> nextActions = new ArrayList<IPlanningOperator>(); 
     1273        ListIterator<IPlanningOperator> li; 
    12831274        IPlanningOperator op; 
    12841275 
     
    13081299        OrderRelation orderBefore = null; 
    13091300        OrderRelation orderAfter = null; 
    1310         OrderRelation order; 
    13111301        OrderRelation aux; 
    13121302 
    13131303        boolean afterChanged = false; 
    13141304        boolean beforeChanged = false; 
    1315  
    1316         ListIterator li; 
    1317         Integer stepID; 
    13181305 
    13191306        if (before.equals(after)) 
     
    13291316        } 
    13301317 
    1331         li = this._orderingConstraints.listIterator(); 
    1332         while (li.hasNext()) 
    1333         { 
    1334             order = (OrderRelation) li.next(); 
    1335  
     1318        for(OrderRelation order : this._orderingConstraints) 
     1319        {         
    13361320            if (order.getStepID().equals(before)) 
    13371321            { 
     
    13871371        { 
    13881372            //Adding ciclic relations 
    1389             li = orderBefore.getBefore().listIterator(); 
    1390             while (li.hasNext()) 
    1391             { 
    1392                 stepID = (Integer) li.next(); 
    1393                 AddOrderingConstraint(stepID, after); 
    1394             } 
     1373                for(Integer i : orderBefore.getBefore()) 
     1374                { 
     1375                        AddOrderingConstraint(i, after); 
     1376                } 
    13951377        } 
    13961378 
     
    13981380        { 
    13991381            //Adding ciclic relations 
    1400             li = orderAfter.getAfter().listIterator(); 
    1401             while (li.hasNext()) 
    1402             { 
    1403                 stepID = (Integer) li.next(); 
    1404                 AddOrderingConstraint(before, stepID); 
    1405             } 
     1382                for(Integer i : orderAfter.getAfter()) 
     1383                { 
     1384                        AddOrderingConstraint(before,i); 
     1385                } 
    14061386        } 
    14071387    } 
     
    14091389    public void ReplaceUnboundVariables(int variableID)  
    14101390    { 
    1411         ListIterator li; 
    1412         Iterator it; 
    1413         Substitution oldBinding; 
    1414         HashMap newBindings = new HashMap(); 
     1391        HashMap<String,Substitution> newBindings = new HashMap<String,Substitution>(); 
    14151392         
    1416         for(li = this._inequalityConstraints.listIterator(); li.hasNext();) 
     1393        for(Inequality ine : this._inequalityConstraints) 
    14171394        { 
    1418                 ((Inequality) li.next()).ReplaceUnboundVariables(variableID); 
     1395                ine.ReplaceUnboundVariables(variableID); 
    14191396        } 
    14201397         
    1421         for(it = this._bindingConstraints.values().iterator(); it.hasNext();) 
     1398        for(Substitution sub : this._bindingConstraints.values()) 
    14221399        { 
    1423                 oldBinding = (Substitution) it.next(); 
    1424                 oldBinding.getVariable().ReplaceUnboundVariables(variableID); 
    1425                 oldBinding.getValue().ReplaceUnboundVariables(variableID); 
    1426                 newBindings.put(oldBinding.getVariable().toString(),oldBinding); 
     1400                sub.getVariable().ReplaceUnboundVariables(variableID); 
     1401                sub.getValue().ReplaceUnboundVariables(variableID); 
     1402                newBindings.put(sub.getVariable().toString(), sub); 
    14271403        } 
     1404         
    14281405         
    14291406        this._bindingConstraints = newBindings; 
    14301407         
    1431         for(li = this._steps.listIterator(); li.hasNext();) 
     1408        for(IPlanningOperator ip : this._steps) 
    14321409        { 
    1433                 ((IPlanningOperator) li.next()).ReplaceUnboundVariables(variableID); 
     1410                ip.ReplaceUnboundVariables(variableID); 
    14341411        } 
     1412         
    14351413         
    14361414        this._start.ReplaceUnboundVariables(variableID); 
     
    14461424         * @see Substitution 
    14471425         */ 
    1448     private void MakeGround(ArrayList substs) 
    1449     { 
    1450         ListIterator li; 
     1426    private void MakeGround(ArrayList<Substitution> substs) 
     1427    { 
     1428        ListIterator<Inequality> li; 
    14511429        Inequality ineq; 
    14521430 
     
    14681446        } 
    14691447         
    1470         li = this._steps.listIterator(); 
    1471         while(li.hasNext()) 
    1472         { 
    1473                 ((IPlanningOperator) li.next()).MakeGround(substs); 
    1474         } 
     1448        for(IPlanningOperator ip : this._steps) 
     1449        { 
     1450                ip.MakeGround(substs); 
     1451        } 
     1452         
    14751453         
    14761454        this._start.MakeGround(substs); 
     
    14811459    { 
    14821460 
    1483         ListIterator li; 
     1461        ListIterator<OrderRelation> li; 
    14841462        OrderRelation order; 
    14851463        li = _orderingConstraints.listIterator(); 
     
    15021480    private void UpdatePlanProbability(AgentModel am) 
    15031481    { 
    1504         ListIterator li; 
    1505         CausalLink l; 
    1506         CausalConflictFlaw conflict; 
    15071482        Effect e; 
    1508         IPlanningOperator op; 
    15091483        float prob = 1; 
    15101484         
    1511         for(li = _steps.listIterator();li.hasNext();) 
    1512         { 
    1513                 op = (IPlanningOperator) li.next(); 
    1514                 if(!op.getID().equals(_start.getID()) &&  
    1515                                 !op.getID().equals(_finish.getID())) 
     1485        for(IPlanningOperator ip : this._steps) 
     1486        { 
     1487                if(!ip.getID().equals(_start.getID()) &&  
     1488                                !ip.getID().equals(_finish.getID())) 
    15161489                { 
    1517                         prob = prob * op.getProbability(am); 
     1490                        prob = prob * ip.getProbability(am); 
    15181491                } 
    15191492        } 
    1520  
    1521         li = _links.listIterator(); 
    1522  
    1523         while (li.hasNext()) 
    1524         { 
    1525             l = (CausalLink) li.next(); 
    1526             if (!l.getSource().equals(_start.getID())) 
     1493         
     1494        for(CausalLink l : this._links) 
     1495        { 
     1496                if (!l.getSource().equals(_start.getID())) 
    15271497            { 
    15281498                e = getOperator(l.getSource()).getEffect(l.getEffect()); 
    15291499                prob = prob * e.GetProbability(am); 
    1530             }    
    1531         } 
    1532  
    1533         li = _ignoredConflicts.listIterator(); 
    1534  
    1535         while (li.hasNext()) 
    1536         { 
    1537             conflict = (CausalConflictFlaw) li.next(); 
    1538             prob = prob * (1 - conflict.GetEffect().GetProbability(am)); 
    1539         } 
    1540  
     1500            } 
     1501        } 
     1502 
     1503      
     1504        for(CausalConflictFlaw cc: this._ignoredConflicts) 
     1505        { 
     1506                prob = prob * (1 - cc.GetEffect().GetProbability(am)); 
     1507        } 
     1508         
    15411509        _probability = prob; 
    15421510        if (_probability == 0) 
  • AgentMind/branches/FAtiMA2/src/FAtiMA/deliberativeLayer/plan/Step.java

    r190 r191  
    6565import FAtiMA.exceptions.UnknownSpeechActException; 
    6666import FAtiMA.exceptions.UnspecifiedVariableException; 
    67 import FAtiMA.knowledgeBase.KnowledgeBase; 
    68 import FAtiMA.motivationalSystem.MotivationalState; 
     67import FAtiMA.util.Constants; 
    6968import FAtiMA.wellFormedNames.Name; 
    7069import FAtiMA.wellFormedNames.Substitution; 
     
    9190        private Name _name; 
    9291        private Symbol _agent; 
    93         private ArrayList _preconditions; 
    94         private ArrayList _effects; 
    95         private ArrayList _effectsOnDrives; 
     92        private ArrayList<Condition> _preconditions; 
     93        private ArrayList<Effect> _effects; 
     94        private ArrayList<EffectOnDrive> _effectsOnDrives; 
    9695         
    9796        private float _baseprob; 
     
    109108                _agent = agent; 
    110109                _name = action; 
    111                 _effects = new ArrayList(3); 
    112                 _effectsOnDrives = new ArrayList(3); 
    113                 _preconditions = new ArrayList(3); 
     110                _effects = new ArrayList<Effect>(3); 
     111                _effectsOnDrives = new ArrayList<EffectOnDrive>(3); 
     112                _preconditions = new ArrayList<Condition>(3); 
    114113                 
    115114                _selfExecutable = (!_agent.isGrounded()) ||  
    116                                 _agent.toString().equals("SELF"); 
     115                                _agent.toString().equals(Constants.SELF); 
    117116                 
    118117                _baseprob = probability; 
     
    128127         *                                              by another agent  
    129128         */ 
    130         public Step(Symbol agent, Name action, float probability, ArrayList preconditions, ArrayList effects, ArrayList effectsOnDrives) { 
     129        public Step(Symbol agent, Name action, float probability, ArrayList<Condition> preconditions, ArrayList<Effect> effects, ArrayList<EffectOnDrive> effectsOnDrives) { 
    131130                _agent = agent; 
    132131                _name = action; 
     
    137136                 
    138137                _selfExecutable = !_agent.isGrounded() ||  
    139                 _agent.toString().equals("SELF"); 
     138                _agent.toString().equals(Constants.SELF); 
    140139        } 
    141140 
     
    169168        private Name GetBiasName() 
    170169        { 
    171                 Symbol s; 
    172170                String name = "ProbBias(" + _agent; 
    173                 for(ListIterator li = _name.GetLiteralList().listIterator();li.hasNext();) 
     171                for(Symbol s : _name.GetLiteralList()) 
    174172                { 
    175                         s = (Symbol) li.next(); 
    176173                        if(s.isGrounded()) 
    177174                        { 
     
    272269        { 
    273270                Effect e; 
    274                 ListIterator li =  _effects.listIterator(); 
     271                ListIterator<Effect> li =  _effects.listIterator(); 
    275272                 
    276273                while(li.hasNext()) { 
     
    309306            s2 = (Step) this.clone(); 
    310307            s2.ReplaceUnboundVariables(0); 
    311             Condition c1; 
     308            @SuppressWarnings("unused") 
     309                Condition c1; 
    312310            Condition c2; 
    313311            Condition c3; 
    314             ArrayList substs = new ArrayList(); 
    315             ListIterator li1; 
    316             ListIterator li2; 
    317             ListIterator li3; 
     312            ArrayList<Substitution> substs = new ArrayList<Substitution>(); 
     313            ListIterator<Condition> lc1; 
     314            ListIterator<Condition> lc2; 
     315            ListIterator<Condition> lc3; 
     316            ListIterator<Effect> le1; 
     317            ListIterator<Effect> le2; 
     318            ListIterator<Effect> le3; 
    318319             
    319320            //search for unreachable preconditions 
     
    325326                s3 = (Step) this.clone(); 
    326327                s3.MakeGround(substs); 
    327                 li1 = this._preconditions.listIterator(); 
    328                 li2 = s2._preconditions.listIterator(); 
    329                 li3 = s3._preconditions.listIterator(); 
     328                lc1 = this._preconditions.listIterator(); 
     329                lc2 = s2._preconditions.listIterator(); 
     330                lc3 = s3._preconditions.listIterator(); 
    330331                 
    331                 while(li1.hasNext()) { 
    332                     c1 = (Condition) li1.next(); 
    333                     c2 = (Condition) li2.next(); 
    334                     c3 = (Condition) li3.next(); 
     332                while(lc1.hasNext()) { 
     333                    c1 = (Condition) lc1.next(); 
     334                    c2 = (Condition) lc2.next(); 
     335                    c3 = (Condition) lc3.next(); 
    335336                    if(!c2.toString().equals(c3.toString())) { 
    336337                        //System.out.println("WARNING: variable used in condition/effect " + c1 + " was not declared in step: " + _name); 
     
    339340                } 
    340341                 
    341                 li1 = this._effects.listIterator(); 
    342                 li2 = s2._effects.listIterator(); 
    343                 li3 = s3._effects.listIterator(); 
     342                le1 = this._effects.listIterator(); 
     343                le2 = s2._effects.listIterator(); 
     344                le3 = s3._effects.listIterator(); 
    344345                 
    345                 while(li1.hasNext()) { 
    346                     c1 = ((Effect) li1.next()).GetEffect(); 
    347                     c2 = ((Effect) li2.next()).GetEffect(); 
    348                     c3 = ((Effect) li3.next()).GetEffect(); 
     346                while(le1.hasNext()) { 
     347                    c1 = ((Effect) le1.next()).GetEffect(); 
     348                    c2 = ((Effect) le2.next()).GetEffect(); 
     349                    c3 = ((Effect) le3.next()).GetEffect(); 
    349350                    if(!c2.toString().equals(c3.toString())) { 
    350351                        //System.out.println("WARNING: variable used in condition/effect " + c1 + " was not declared in step: " + _name); 
     
    367368         */ 
    368369        public boolean checkPreconditions(AgentModel am) { 
    369                 ListIterator li; 
    370                 li = _preconditions.listIterator(); 
    371                  
    372                 while(li.hasNext()) { 
    373                         if (!((Condition) li.next()).CheckCondition(am)) return false; 
    374                 } 
     370                 
     371                for(Condition c : _preconditions) 
     372                { 
     373                        if(!c.CheckCondition(am)) return false; 
     374                } 
     375                 
    375376                return true; 
    376377        } 
     
    389390         * @return an ArrayList with all the step's effects 
    390391         */ 
    391         public ArrayList getEffects() { 
     392        public ArrayList<Effect> getEffects() { 
    392393                return _effects; 
    393394        } 
     
    398399         * @return an ArrayList with all the step's effects on drives 
    399400         */ 
    400         public ArrayList getEffectsOnDrives() { 
     401        public ArrayList<EffectOnDrive> getEffectsOnDrives() { 
    401402                return _effectsOnDrives; 
    402403        } 
     
    432433         * @return an ArrayList with all the Step's preconditions 
    433434         */ 
    434         public ArrayList getPreconditions() { 
     435        public ArrayList<Condition> getPreconditions() { 
    435436                return _preconditions; 
    436437        } 
     
    478479                op._selfExecutable = this._selfExecutable; 
    479480                 
    480                 ListIterator li; 
    481                 Condition cond; 
    482                 Effect effect; 
    483                 EffectOnDrive effectOnDrive; 
    484                  
    485481                if(_preconditions != null) { 
    486                         op._preconditions = new ArrayList(_preconditions.size()); 
    487                         li = _preconditions.listIterator(); 
    488                         while(li.hasNext()) { 
    489                                 cond = (Condition) li.next(); 
    490                                 op._preconditions.add(cond.clone()); 
     482                        op._preconditions = new ArrayList<Condition>(_preconditions.size()); 
     483                        for(Condition cond : _preconditions) 
     484                        { 
     485                                op._preconditions.add((Condition)cond.clone()); 
    491486                        }        
    492487                } 
    493488                 
    494489                if(_effects != null) { 
    495                         op._effects = new ArrayList(_effects.size()); 
    496                         li = _effects.listIterator(); 
    497                         while(li.hasNext()) { 
    498                                 effect = (Effect) li.next(); 
    499                                 op._effects.add(effect.clone()); 
     490                        op._effects = new ArrayList<Effect>(_effects.size()); 
     491                        for(Effect effect : _effects) 
     492                        { 
     493                                op._effects.add((Effect)effect.clone()); 
    500494                        }        
    501495                } 
     
    503497                // by Meiyii 
    504498                if(_effectsOnDrives != null) { 
    505                         op._effectsOnDrives = new ArrayList(_effectsOnDrives.size()); 
    506                         li = _effectsOnDrives.listIterator(); 
    507                         while(li.hasNext()) { 
    508                                 effectOnDrive = (EffectOnDrive) li.next(); 
    509                                 op._effectsOnDrives.add(effectOnDrive.clone()); 
    510                         }        
     499                        op._effectsOnDrives = new ArrayList<EffectOnDrive>(_effectsOnDrives.size()); 
     500                         
     501                        for(EffectOnDrive effOnDrive : _effectsOnDrives) 
     502                        { 
     503                                op._effectsOnDrives.add((EffectOnDrive)effOnDrive.clone()); 
     504                        } 
    511505                } 
    512506                 
     
    539533    public void ReplaceUnboundVariables(int variableID) 
    540534    { 
    541         ListIterator li; 
    542535         
    543536        this._agent.ReplaceUnboundVariables(variableID);  
     
    546539         if(this._preconditions != null) 
    547540         { 
    548                 li = this._preconditions.listIterator(); 
    549                 while(li.hasNext()) 
    550                 { 
    551                         ((Condition) li.next()).ReplaceUnboundVariables(variableID); 
    552                 } 
     541                for(Condition c : this._preconditions) 
     542                { 
     543                        c.ReplaceUnboundVariables(variableID); 
     544                  
     545                } 
    553546         } 
    554  
     547          
    555548         if(this._effects != null) 
    556549         { 
    557                 li = this._effects.listIterator(); 
    558  
    559                  while(li.hasNext()) 
    560                  { 
    561                         ((Effect) li.next()).ReplaceUnboundVariables(variableID); 
    562                  } 
     550                for(Effect e : this._effects) 
     551                { 
     552                        e.ReplaceUnboundVariables(variableID); 
     553                  
     554                } 
    563555         } 
    564556          
     
    566558         if(this._effectsOnDrives != null) 
    567559         { 
    568                 li = this._effectsOnDrives.listIterator(); 
    569  
    570                  while(li.hasNext()) 
    571                  { 
    572                         ((EffectOnDrive) li.next()).ReplaceUnboundVariables(variableID); 
    573                  } 
     560                for(EffectOnDrive e : this._effectsOnDrives) 
     561                { 
     562                        e.ReplaceUnboundVariables(variableID); 
     563                } 
    574564         } 
    575565    } 
     
    584574         * @see Substitution 
    585575         */ 
    586         public Object Ground(ArrayList bindingConstraints) 
     576        public Object Ground(ArrayList<Substitution> bindingConstraints) 
    587577        { 
    588578                Step aux = (Step) this.clone(); 
     
    599589         * @see Substitution 
    600590         */ 
    601     public void MakeGround(ArrayList bindings)  
     591    public void MakeGround(ArrayList<Substitution> bindings)  
    602592    { 
    603          ListIterator li; 
    604593          
    605594         this._agent.MakeGround(bindings); 
     
    608597         if(this._preconditions != null) 
    609598         { 
    610                 li = this._preconditions.listIterator(); 
    611                 while(li.hasNext()) 
    612                 { 
    613                         ((Condition) li.next()).MakeGround(bindings); 
    614                 } 
     599                for(Condition c : _preconditions) 
     600                { 
     601                        c.MakeGround(bindings); 
     602                } 
    615603         } 
    616   
     604          
    617605         if(this._effects != null) 
    618606         { 
    619                 li = this._effects.listIterator(); 
    620  
    621                  while(li.hasNext()) 
    622                  { 
    623                         ((Effect) li.next()).MakeGround(bindings); 
    624                  } 
     607                for(Effect e : _effects) 
     608                { 
     609                        e.MakeGround(bindings); 
     610                } 
    625611         } 
    626612          
    627          //by Meiyii 
    628613         if(this._effectsOnDrives != null) 
    629614         { 
    630                 li = this._effectsOnDrives.listIterator(); 
    631  
    632                  while(li.hasNext()) 
    633                  { 
    634                         ((EffectOnDrive) li.next()).MakeGround(bindings); 
    635                  } 
     615                for(EffectOnDrive e : _effectsOnDrives) 
     616                { 
     617                        e.MakeGround(bindings); 
     618                } 
    636619         } 
    637           
     620                          
    638621         UpdateSelfExecutable(); 
    639622    } 
     
    666649    public void MakeGround(Substitution subst) 
    667650    { 
    668         ListIterator li; 
    669651         
    670652        this._agent.MakeGround(subst); 
     
    672654          
    673655        if(this._preconditions != null) 
    674         { 
    675                 li = this._preconditions.listIterator(); 
    676                 while(li.hasNext()) 
    677                 { 
    678                         ((Condition) li.next()).MakeGround(subst); 
    679                 } 
    680         } 
    681                  
    682         if(this._effects != null) 
    683         { 
    684                 li = this._effects.listIterator(); 
    685  
    686                 while(li.hasNext()) 
    687                 { 
    688                         ((Effect) li.next()).MakeGround(subst); 
    689                 } 
    690         } 
    691          
    692          //by Meiyii 
    693                  if(this._effectsOnDrives != null) 
    694                  { 
    695                         li = this._effectsOnDrives.listIterator(); 
    696          
    697                         while(li.hasNext()) 
    698                 { 
    699                         ((EffectOnDrive) li.next()).MakeGround(subst); 
    700                 } 
    701                  } 
     656                { 
     657                for(Condition c : _preconditions) 
     658                { 
     659                        c.MakeGround(subst); 
     660                } 
     661                } 
     662          
     663                if(this._effects != null) 
     664                { 
     665                        for(Effect e : _effects) 
     666                        { 
     667                                e.MakeGround(subst);