Memory Structure

After these preliminary considerations we have to work out a bit more the memory operations. The design shall be guided by the requirements caused by the overall survival task. Thus we assume the following:

  1. Important parts of the AC (artificial consciousness) should be stored in the memory M by properties and with transitions $ \xi$, if they are new. In case of repetitions the state can become reinforced. Thus every memory element $ m$ has a confirmation parameter $ \kappa$ which starts with '1' and can increase by '1'. But there exists some upper bound $ max(\kappa)$.
  2. Every actual content of the consciousness $ \phi \in AC$ activates a memory element $ m \in M$ if there exists a certain similarity between $ \phi$ and $ m$.
  3. If the actual content of the consciousness $ \phi$ represents an active drive $ \delta $ then is the activation of a similar memory element $ m_{\phi}$ associated with an automatic search for possible 'solutions' given as transitions from the active drive to an inactive drive. The finding of a solution causes the whole path from active drive state $ m_{\phi, \delta=1}$ until $ m_{\delta=0}$. The next possible state is generated as output $ MO$ as proposal.
  4. One can include some kind of forgetting in the manner that after some time period all memory elements $ m$ with a confirmation below a certain threshold $ \theta_{rep}$ will be deleted.


$\displaystyle MEM(x)$ $\displaystyle iff$ $\displaystyle x = \langle MI, MO, M, \mu, \rho, \nu\rangle$ (4.118)
$\displaystyle MI$ $\displaystyle :=$ $\displaystyle Input States$ (4.119)
$\displaystyle MO$ $\displaystyle :=$ $\displaystyle output States$ (4.120)
$\displaystyle M$ $\displaystyle :=$ $\displaystyle Memory States$ (4.121)
$\displaystyle \mu$ $\displaystyle :$ $\displaystyle MI \longmapsto M; Storage or Update Functions$ (4.122)
$\displaystyle \rho$ $\displaystyle :$ $\displaystyle MI \times M \longmapsto MO; Remember Function$ (4.123)
$\displaystyle \nu$ $\displaystyle :$ $\displaystyle MI \times M \longmapsto MO; Guide Function$ (4.124)

From this follows the following proposal for the format of a memory element $ m \in M$:


$\displaystyle M$ $\displaystyle \subseteq$ $\displaystyle \Xi^{n} \times \sigma^{m} \times \Delta^{d} \times \Xi^{n} \times K \times T$ (4.125)

where $ K \times T$ denotes a confirmation coefficient $ \kappa \in K$ as well as a time stamp $ t \in T$. Associated with the following translation rule for the storage of the AC:


$\displaystyle \mu$ $\displaystyle :$ $\displaystyle \Xi^{2} \times \sigma^{1} \times \Delta^{1} \times \Xi^{2} \longm...
...o \Xi^{2} \times \sigma^{1} \times \Delta^{1} \times \Xi^{2} \times
K \times T$ (4.126)

In the case of the wood1* scenario one can use the following values:


$\displaystyle M$ $\displaystyle \subseteq$ $\displaystyle \Xi^{2} \times \sigma^{1} \times \Delta^{2} \times \Xi^{2} \times K \times T$ (4.127)
$\displaystyle \Xi^{2}$ $\displaystyle =$ $\displaystyle \Xi^{1}_{DIR} + \Xi^{1}_{MOVE}$ (4.128)
$\displaystyle \Xi^{1}_{DIR}$ $\displaystyle \in$ $\displaystyle \{0,1,2,3,4,5,6,7,8\}$ (4.129)
$\displaystyle \Xi^{1}_{MOVE}$ $\displaystyle \in$ $\displaystyle \{0,1,2,3,4,5,6,7,8\}$ (4.130)
$\displaystyle \sigma^{1}$ $\displaystyle \in$ $\displaystyle \{'F', 'O', '-', 'B'\}$ (4.131)
$\displaystyle \Delta^{2}$ $\displaystyle =$ $\displaystyle \langle\delta_{1}, \delta_{2}\rangle$ (4.132)
$\displaystyle \delta_{1}$ $\displaystyle \in$ $\displaystyle \{0,1\}; 'playing around'$ (4.133)
$\displaystyle \delta_{2}$ $\displaystyle \in$ $\displaystyle \{0,1\}; 'hungry'$ (4.134)
$\displaystyle K$ $\displaystyle =$ $\displaystyle \{0,1,2,3,4,5,6,7,8\}$ (4.135)
$\displaystyle T$ $\displaystyle \in$ $\displaystyle Nat$ (4.136)

In case of the wood1 scenario with an agent of type $ AGENT2$ we assume that the agent can differentiate it's output action in a direction part $ \Xi_{1.DIR}$ and in a moving part $ \Xi_{1.MOVE}$. With this differentiation he can move 'with deliberation'.

The protocol of the AC for a certain time window could look like this:

  1. $ \langle -,\langle 0,1\rangle,3.3\rangle $ (Empty space, hungry, looking to 3, moving to 3)
  2. $ \langle -,\langle 0,1\rangle,3.0\rangle $ (Empty space, hungry, looking to 3, no move)
  3. $ \langle -,\langle 0,1\rangle,5.0\rangle $ (Empty space, hungry, looking to 5, no move)
  4. $ \langle 'O',\langle 0,1\rangle,3.3\rangle $ (See an object, hungry, looking to 3, moving to 3)
  5. $ \langle -,\langle 0,1\rangle,3.3\rangle $ ...
  6. $ \langle 'B',\langle 0,1\rangle,1.0\rangle $
  7. $ \langle 'B',\langle 0,1\rangle,5.5\rangle $
  8. $ \langle -,\langle 0,1\rangle,5.5\rangle $
  9. $ \langle 'B',\langle 0,1\rangle,7.0\rangle $
  10. $ \langle 'F',\langle 0,1\rangle,7.7\rangle $
  11. $ \langle -,\langle 1,0\rangle, 7.0\rangle $ (Empty space, playing around, looking to 7, no move)

Then one can map the AC-protocol into the memory as follows:

  1. $ \langle -,\langle 0,1\rangle,3.3\rangle \longmapsto \langle 0.0,-,\langle 0,1\rangle,3.3, 1\rangle$
  2. $ \langle -,\langle 0,1\rangle,3.0\rangle \longmapsto \langle 3.3,-,\langle 0,1\rangle,3.0, 1\rangle$
  3. $ \langle -,\langle 0,1\rangle,5.0\rangle \longmapsto \langle 3.0,-,\langle 0,1\rangle,5.0, 1\rangle$
  4. $ \langle 'O',\langle 0,1\rangle,3.3\rangle \longmapsto \langle 5.0,'O',\langle 0,1\rangle,3.3, 1\rangle$
  5. $ \langle -,\langle 0,1\rangle,3.3\rangle \longmapsto \langle 3.3,-,\langle 0,1\rangle,3.3, 1\rangle$
  6. $ \langle 'B',\langle 0,1\rangle,1.0\rangle \longmapsto \langle 3.3,'B',\langle 0,1\rangle,1.0, 1\rangle$
  7. $ \langle 'B',\langle 0,1\rangle,5.5\rangle \longmapsto \langle 1.0,'B',\langle 0,1\rangle,5.5, 1\rangle$
  8. $ \langle -,\langle 0,1\rangle,5.5\rangle \longmapsto \langle 5.5,-,\langle 0,1\rangle,5.5, 1\rangle$
  9. $ \langle 'B',\langle 0,1\rangle,7.0\rangle \longmapsto \langle 5.5,'B',\langle 0,1\rangle,7.0, 1\rangle$
  10. $ \langle 'F',\langle 0,1\rangle,7.7\rangle \longmapsto \langle 7.0,'F',\langle 0,1\rangle,7.7, 1\rangle$
  11. $ \langle -,\langle 1,0\rangle, 7.0\rangle \longmapsto \langle 7.7,-,\langle 1,0\rangle,7.0, 1\rangle$

Thus we would get the following memory content:

  1. $ \langle 0.0,-,\langle 0,1\rangle,3.3, 1\rangle$ (Causing action '0.0', empty space, hungry, direction 3, move 3, count is 1)
  2. $ \langle 3.3,-,\langle 0,1\rangle,3.0, 1\rangle$ (Causing action '3.3', empty space, hungry, direction 3, move 0, count is 1)
  3. $ \langle 3.0,-,\langle 0,1\rangle,5.0, 1\rangle$ ....
  4. $ \langle 5.0,'O',\langle 0,1\rangle,3.3, 1\rangle$
  5. $ \langle 3.3,-,\langle 0,1\rangle,3.3, 1\rangle$
  6. $ \langle 3.3,'B',\langle 0,1\rangle,1.0, 1\rangle$
  7. $ \langle 1.0,'B',\langle 0,1\rangle,5.5, 1\rangle$
  8. $ \langle 5.5,-,\langle 0,1\rangle,5.5, 1\rangle$
  9. $ \langle 5.5,'B',\langle 0,1\rangle,7.0, 1\rangle$
  10. $ \langle 7.0,'F',\langle 0,1\rangle,7.7, 1\rangle$
  11. $ \langle 7.7,-,\langle 0\rangle,7.0, 1\rangle$

Gerd Doeben-Henisch 2012-03-31