Memory module #4
Replies: 1 comment 1 reply
-
Yes this looks like a good start for our memory module. A somewhat related (but may not be exactly the same) work:
What I'm not sure is whether this should be our default or only memory implementation, and if not, what should be? As an example, this paper: https://arxiv.org/abs/2505.09081 has yet another memory design, that could be implemented as part of mesa-llm too. Would it make sense to have some kind of This review article may be useful: https://arxiv.org/abs/2404.13501 |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
Hey everyone, memory in ABM seems like quite a complicated question and there are multiple approaches to it. After some discussions with @sanika-n, I would like to share some insight and open the subject to all for ideas and feedback. (Thanks a lot to Sanika for the first idea and a big part of the work leading to the second one). Two main proposition are :
Simulate human mind where short term memory= all the memories in day, at night convert everything to long term and clean the slate of short term completely. The obvious issue is that agents in mesa have continuous activity, but does cleaning the short term abruptly make sense in a continuous-time ABM model ? One idea is to implement an automatic consolidation of memory every
n
steps. Could be useful to some particular models with precise cycles (like to simulate different days in a negotiation scenario or other)We keep a deque with no “automatic” popping at a certain capacity, but we let the user choose two capacities : c and n. The idea is to let the short-term memory store up to n+c memories, and when it reaches n+c, we consolidate the last c memories into the long term memory so memory is back to n elements. With this, we make use of the deque’s capacity to pop in O(1), but we don’t use an intermediary list that might make searching more complex to hadle. This also ensures that short-term memory doesn't go blanck.
@wang-boyu, @jackiekazil, and everybody else, since there are many possibilities, I would love some input on this to make it the most useful possible :)
Beta Was this translation helpful? Give feedback.
All reactions