Changeset 1028


Ignore:
Timestamp:
03/18/2011 05:44:22 PM (9 years ago)
Author:
muk7
Message:

minor updates for Activation-Based Selection

Location:
AgentMind/branches/FAtiMA-Modular/FAtiMA/src/FAtiMA/Core/memory/episodicMemory
Files:
6 edited

Legend:

Unmodified
Added
Removed
  • AgentMind/branches/FAtiMA-Modular/FAtiMA/src/FAtiMA/Core/memory/episodicMemory/ActionDetail.java

    r1025 r1028  
    431431                        // log not required if we only select by maximum values afterwards 
    432432                        value = Math.log(sum); 
     433                        //value = sum; 
    433434                } 
    434435 
     
    438439                 
    439440                // DEBUG 
    440                 System.out.println("Activation value for detail id " + this._id + " is " + value); 
     441                System.out.println("Activation value for detail id " + this._id +  
     442                                " is " + _activationValue.getValue() +  
     443                                " (" + _activationValue.getNumRetrievals() + " retrievals)"); 
    441444 
    442445        } 
  • AgentMind/branches/FAtiMA-Modular/FAtiMA/src/FAtiMA/Core/memory/episodicMemory/ActivationValue.java

    r1024 r1028  
    7777        } 
    7878 
    79         public String toXML() { 
    80                 String xml = "<ActivationValue"; 
    81                 xml += " detailID=\"" + this.getDetailID() + "\""; 
    82                 xml += " value=\"" + this.getValue() + "\""; 
    83                 xml += " numRetrievals=\"" + this.getNumRetrievals() + "\""; 
    84                 xml += "/>"; 
    85                 return xml; 
    86         } 
    87  
    8879        public String toString() { 
    8980                String str = "Activation value for id " + detailID + ":" 
  • AgentMind/branches/FAtiMA-Modular/FAtiMA/src/FAtiMA/Core/memory/episodicMemory/EpisodicMemory.java

    r1024 r1028  
    301301                        this._newData = true; 
    302302                } 
     303                 
     304                // DEBUG Matthias 
     305                //if(_am.countMemoryDetails() % 20 == 10) { 
     306                //      this.calculateActivationValues(); 
     307                //      this.activationBasedSelectionByCount(5); 
     308                //} 
     309                 
    303310        } 
    304311         
     
    431438                merged.addAll(_stm.getDetails()); 
    432439 
    433                 // sort by value (descending) 
     440                // sort by value (ascending) 
    434441                // bubble sort 
    435442                // TODO: faster sort algorithm 
     
    442449                                ActionDetail detailB = merged.get(i + 1);                                
    443450                                double valueB = detailB.getActivationValue().getValue(); 
    444                                 if(valueA < valueB) { 
     451                                if(valueA > valueB) { 
    445452                                        merged.set(i, detailB); 
    446453                                        merged.set(i + 1, detailA); 
     
    450457                } while (swapped); 
    451458                 
    452                 // select head of list (highest values) 
     459                // select tail of list (highest values) 
    453460                ArrayList<ActionDetail> selected = new ArrayList<ActionDetail>(); 
    454461                int iMax = Math.min(countMax, merged.size()); 
    455                 for(int i = 0; i < iMax; i++) { 
     462                for(int i = merged.size()-1; i > merged.size()-1-iMax; i--) { 
    456463                        selected.add(merged.get(i)); 
    457464                        // DEBUG 
    458                         System.out.println("selected detail " + merged.get(i).getID() + " with value " + merged.get(i).getActivationValue().getValue()); 
     465                        System.out.println("selected detail " + merged.get(i).getID() +  
     466                                        " with value " + merged.get(i).getActivationValue().getValue()); 
    459467                } 
    460468 
  • AgentMind/branches/FAtiMA-Modular/FAtiMA/src/FAtiMA/Core/memory/episodicMemory/MemoryEpisode.java

    r1024 r1028  
    625625                                // 08/03/11 - Matthias 
    626626                                action.getRetrievalQueue().addRetrievalTime(new Time()); 
     627                                // DEBUG 
     628                                //System.out.println("MemoryEpisode.java: retrieval of detail " + action.getID()); 
    627629                                 
    628630                                return true; 
     
    661663                                        // 08/03/11 - Matthias 
    662664                                        action.getRetrievalQueue().addRetrievalTime(new Time()); 
     665                                        // DEBUG 
     666                                        //System.out.println("MemoryEpisode.java: retrieval of detail " + action.getID()); 
    663667                                         
    664668                                        return true; 
     
    679683                                // 08/03/11 - Matthias 
    680684                                action.getRetrievalQueue().addRetrievalTime(new Time()); 
     685                                // DEBUG 
     686                                //System.out.println("MemoryEpisode.java: retrieval of detail " + action.getID()); 
    681687                                 
    682688                                details.add(action); 
     
    697703                                // 08/03/11 - Matthias 
    698704                                action.getRetrievalQueue().addRetrievalTime(new Time()); 
     705                                // DEBUG 
     706                                //System.out.println("MemoryEpisode.java: retrieval of detail " + action.getID()); 
    699707                                 
    700708                                details.add(action); 
  • AgentMind/branches/FAtiMA-Modular/FAtiMA/src/FAtiMA/Core/memory/episodicMemory/RetrievalQueue.java

    r1025 r1028  
    3636        private static final long serialVersionUID = 1; 
    3737 
    38         private final static int MAX_RETRIEVAL_TIMES_DEFAULT = 5; 
     38        private final static int MAX_RETRIEVAL_TIMES_DEFAULT = 10; 
    3939 
    4040        private long detailID; 
  • AgentMind/branches/FAtiMA-Modular/FAtiMA/src/FAtiMA/Core/memory/episodicMemory/ShortTermEpisodicMemory.java

    r1024 r1028  
    157157                                // 09/03/11 - Matthias 
    158158                                action.getRetrievalQueue().addRetrievalTime(new Time()); 
     159                                // DEBUG 
     160                                //System.out.println("ShortTermEpisodicMemory.java: retrieval of detail " + action.getID()); 
    159161                                 
    160162                                return true; 
     
    178180                                // 09/03/11 - Matthias 
    179181                                action.getRetrievalQueue().addRetrievalTime(new Time()); 
     182                                // DEBUG 
     183                                //System.out.println("ShortTermEpisodicMemory.java: retrieval of detail " + action.getID()); 
    180184                                 
    181185                                return true; 
     
    199203                                // 09/03/11 - Matthias 
    200204                                action.getRetrievalQueue().addRetrievalTime(new Time()); 
     205                                // DEBUG 
     206                                //System.out.println("ShortTermEpisodicMemory.java: retrieval of detail " + action.getID()); 
    201207                                 
    202208                                details.add(action); 
     
    221227                                // 09/03/11 - Matthias 
    222228                                action.getRetrievalQueue().addRetrievalTime(new Time()); 
     229                                // DEBUG 
     230                                //System.out.println("ShortTermEpisodicMemory.java: retrieval of detail " + action.getID()); 
    223231                                 
    224232                                details.add(action); 
Note: See TracChangeset for help on using the changeset viewer.