<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>OpenCog Brainwave &#187; AttentionAllocation</title>
	<atom:link href="http://blog.opencog.org/tag/attentionallocation/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.opencog.org</link>
	<description>The latest developments in building an open-source mind</description>
	<lastBuildDate>Tue, 17 Aug 2010 23:31:20 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Spaced repetition and memory</title>
		<link>http://blog.opencog.org/2008/07/09/spaced-repetition-and-memory/</link>
		<comments>http://blog.opencog.org/2008/07/09/spaced-repetition-and-memory/#comments</comments>
		<pubDate>Wed, 09 Jul 2008 00:17:43 +0000</pubDate>
		<dc:creator>Joel Pitt</dc:creator>
				<category><![CDATA[Design]]></category>
		<category><![CDATA[Theory]]></category>
		<category><![CDATA[AttentionAllocation]]></category>
		<category><![CDATA[HumanMind]]></category>
		<category><![CDATA[Learning]]></category>
		<category><![CDATA[OpenCog]]></category>

		<guid isPermaLink="false">http://opencog.wordpress.com/?p=25</guid>
		<description><![CDATA[An article in Wired from a while back on &#8230; <a href="http://blog.opencog.org/2008/07/09/spaced-repetition-and-memory/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>An <a href="http://www.wired.com/medtech/health/magazine/16-05/ff_wozniak?currentPage=3">article in Wired</a> from a while back on <a>Piotr Wozniak</a> (no relation to Steve), a researcher of optimal memory and learning strategies, got me thinking about learning theory and memorization in the context of OpenCog. From the article (emphasis mine):</p>
<blockquote><p>Long-term memory, the Bjorks said, can be characterized by two components, which they named <strong>retrieval strength</strong> and <strong>storage strength</strong>. Retrieval strength measures how likely you are to recall something right now, how close it is to the surface of your mind. Storage strength measures how deeply the memory is rooted. Some memories may have high storage strength but low retrieval strength. Take an old address or phone number. Try to think of it; you may feel that it&#8217;s gone. But a single reminder could be enough to restore it for months or years. Conversely, some memories have high retrieval strength but low storage strength. Perhaps you&#8217;ve recently been told the names of the children of a new acquaintance. At this moment they may be easily accessible, but they are likely to be utterly forgotten in a few days, and a single repetition a month from now won&#8217;t do much to strengthen them at all.
</p></blockquote>
<p>So, in memory studies, they talk of <em>storage strength</em> and <em>retrieval strength</em>. In my observation, retrieval strength is analogous to the distance of an atom&#8217;s short term importance to the attentional focus. Atoms just below the attentional focus threshold will be much easier to retrieve, both because there is more chance that they are stored locally and in memory and because they are more likely to be used by mind agents than atom&#8217;s with lower short term importance. Storage strength, on the other hand, is related to the long term importance of an atom. Atom&#8217;s with very low long term importance are unlikely to persist in the atom space, or more accurately they&#8217;ll be preferentially forgotten over atoms with higher long term importance.</p>
<blockquote><p>One of the problems [with learning] is that the amount of storage strength you gain from practice is inversely correlated with the current retrieval strength. In other words, the harder you have to work to get the right answer, the more the answer is sealed in memory.</p></blockquote>
<p>Perhaps they&#8217;ll be a need to incorporate this. Something that is persistently of use, but only becomes useful at significantly spaced periods of time. Requiring an OpenCog instance to reason about or research the fact again each time would be inefficient if there is some way of recognizing this long term trend. In a way, this is where something like a System Activity Mining agent might come in to play, to data mine such trends, however&#8230; I&#8217;m personally unsure about whether such an agent will scale to working on an entire atom space, particularly if it&#8217;s trying to detect these long term and infrequent trends.</p>
<p>One way to implement the storage of these infrequently but consistently used atoms is to assess the velocity at which short term importance changes when bringing an atom into the attention focus. This velocity would be greater for atoms which are harder to recall since they have further to travel to reach the attentional focus. A higher velocity could then confer more long term importance when an atom entires the attentional focus rather than getting long term importance purely from the stimulus reward system.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.opencog.org/2008/07/09/spaced-repetition-and-memory/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>New importance spread system</title>
		<link>http://blog.opencog.org/2008/07/06/new-importance-spread-system/</link>
		<comments>http://blog.opencog.org/2008/07/06/new-importance-spread-system/#comments</comments>
		<pubDate>Sun, 06 Jul 2008 23:16:34 +0000</pubDate>
		<dc:creator>Joel Pitt</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[AttentionAllocation]]></category>
		<category><![CDATA[OpenCog]]></category>

		<guid isPermaLink="false">http://opencog.wordpress.com/?p=24</guid>
		<description><![CDATA[Well, I'd noticed it's been a while sinc &#8230; <a href="http://blog.opencog.org/2008/07/06/new-importance-spread-system/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Well, I&#8217;d noticed it&#8217;s been a while since we&#8217;ve had a post here and thought I&#8217;d rectify it with a brief note of what I&#8217;ve been up to. Posts of more substance are on their way I promise!</p>
<p>Recently we&#8217;ve been trying to play with some new mechanisms for the spread of Short Term Importance in OpenCog. The initial implementation worked alright, but not sufficiently well to make the Hopfield network emulation perform admirably. Ideally we&#8217;d like to have a emulator comparable to traditional Hopfield networks that has the added benefit of effective continuous learning. Now, perhaps this focus on a toy problem is unnecessary, but if we can come up with a continuous learning Hopfield network then they&#8217;ll be a scientific paper in there somewhere, which will lend to OpenCog&#8217;s credibility in the future.</p>
<p>Initially I implemented an importance spreading mechanism that ensured importance couldn&#8217;t spread uphill to atoms with higher importance. This performed somewhat better than the existing system (based on very cursory evaluation), but was still somewhat hacky.</p>
<p>Ben suggested an example analogous to diffusion, which uses a Markov matrix to represent the transition probabilities of STI moving along a Hebbian link from one atom to another. Thus I went and implemented that, which works super effectively when imprinting a single pattern &#8211; but doesn&#8217;t work so well with more than one. I&#8217;m now going to modify how the the transition matrix is constructed based on what atoms are in the attentional focus, which should prevent importance diffusion being the free for all it is at the moment.</p>
<p>And in between doing this Attention Allocation stuff, I&#8217;m trying to port an implementation of <a href="http://www.opencog.org/wiki/Probalistic_Logic_Networks">Probabilistic Logic Networks</a> from Novamente (OpenCog&#8217;s benevolent ancestor) to OpenCog. Theoretically that shouldn&#8217;t be too hard&#8230; but it&#8217;s quite complex code in places. Smart pointers to vectors of trees of predicates, oh my!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.opencog.org/2008/07/06/new-importance-spread-system/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Hopfield network example</title>
		<link>http://blog.opencog.org/2008/06/08/hopfield-network-example/</link>
		<comments>http://blog.opencog.org/2008/06/08/hopfield-network-example/#comments</comments>
		<pubDate>Sun, 08 Jun 2008 11:52:37 +0000</pubDate>
		<dc:creator>Joel Pitt</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Theory]]></category>
		<category><![CDATA[AttentionAllocation]]></category>
		<category><![CDATA[Example]]></category>
		<category><![CDATA[HopfieldNetwork]]></category>
		<category><![CDATA[OpenCog]]></category>

		<guid isPermaLink="false">http://opencog.wordpress.com/?p=16</guid>
		<description><![CDATA[As a toy problem for playing/testing/und &#8230; <a href="http://blog.opencog.org/2008/06/08/hopfield-network-example/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>As a toy problem for playing/testing/understanding attention allocation in OpenCog, I&#8217;ve been emulating the behaviour of a Hopfield network within the OpenCog AtomSpace.</p>
<p>For those not already aware, a <a href="http://en.wikipedia.org/wiki/Hopfield_network">Hopfield network</a> is a kind of recurrent neural network that acts as an associative memory. It consist of a number of units linked together. These units store and display the patterns in memory. The patterns are stored in a Hopfield network by adjusting the weights of links between units, based on the association between active units in a given pattern.</p>
<p>A result of this, is that if you give the Hopfield network a partial pattern, that is slightly incorrect, it should still retrieve the complete pattern if it&#8217;s in memory. The memorised patterns are in fact minimal energy states for the network (see the wikipedia entry for details).</p>
<p>Using this traditional method, approximately 0.14N patterns can be stored (where N = number of units/nodes) in a fully connected network. However trying to teach a network already loaded with patterns a new one results in aberrant patterns. There are ways of allowing continuous learning, the most well known probably being the Palimpsest scheme, where the weights between units are capped. This reduces the number of storable patterns down to 0.05N however. We theorise, that using the mechanism of attention allocation, we&#8217;ll be able to achieve comparable if not improved results.</p>
<p>The process of emulating a Hopfield network is <a href="">described on the OpenCog wiki</a>.</p>
<p>In my next post, I&#8217;ll explain an example of Hopfield network emulation using attention allocation.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.opencog.org/2008/06/08/hopfield-network-example/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>A week in Maryland</title>
		<link>http://blog.opencog.org/2008/05/22/a-week-in-maryland/</link>
		<comments>http://blog.opencog.org/2008/05/22/a-week-in-maryland/#comments</comments>
		<pubDate>Thu, 22 May 2008 22:17:10 +0000</pubDate>
		<dc:creator>Joel Pitt</dc:creator>
				<category><![CDATA[Administravia]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[AttentionAllocation]]></category>
		<category><![CDATA[Brainstorm]]></category>
		<category><![CDATA[Meeting]]></category>
		<category><![CDATA[OpenCog]]></category>

		<guid isPermaLink="false">http://opencog.wordpress.com/?p=17</guid>
		<description><![CDATA[I've been spending the last week at Ben  &#8230; <a href="http://blog.opencog.org/2008/05/22/a-week-in-maryland/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been spending the last week at Ben Goertzel&#8217;s place to discuss the work I&#8217;ve done on attention allocation and to get up to speed on Probabilistic Logic Networks (PLN). There was also an introduction to Relex and RelexToFrame and how PLN will be of use in normalising the Frame representation of a sentence.</p>
<p>The ideas we generated for attention allocation, to improve the performance of the Hopfield network emulator, are as follows:</p>
<ul>
<li> increase the amount of atom sti and lti significantly to avoid rounding error.</li>
<li> use the same stimulus divided across the entire pattern.</li>
<li> directly imprint the pattern, but balance the +ve and -ve perception nodes. i.e. (the importance of all the nodes not in the pattern + the importance of all the nodes in the pattern == 0)</li>
<li> gradually update the rent, i.e. make it a decaying Util::recent_val</li>
</ul>
<p>Most of these all address the issue of rent updates (after AtomSpace funds leave homeostatic bounds) significantly disrupting the retrieval process leading to erratic performance.</p>
<p>Unrelated to the Hopfield network, but still to do with attention allocation:</p>
<ul>
<li> record stimulus applied per mindagent, and then convert to sti/lti after each mindagent runs. this will perhaps require a StimulusToImportanceAgent separate from the ImportanceUpdatingAgent &#8211; since the latter collects rent and carries out other per cycle activities. Or the stimulus is converted to sti/lti directly by the AtomSpace.</li>
<li> Inferring Hebbian links from inheritance and other PLN links. The truth value for the inferred Hebbian link will have a wider interval/lower confidence, possibly using the same formula as the inh2mem TruthValue formula. When spreading importance, the truth value, if it isn&#8217;t a simple truth value, will be randomly sampled to work out the amount of importance to spread.</li>
<p>The remaining days were devoted to learning aspects of PLN (indefinite probability intervals, quantifiers, count conversion, and inference control), and discussing the involvement of MOSES. I got some guidance being shown through existing PLN code, discussed creating SWIG bindings for the OpenCog code base, and subsequently create a shell that can operate both locally and remotely.</p>
<p>I also met some familiar online identities (from SL4, singularity and openog mailing lists) in the flesh at the DC future salon dinner.</p>
<p>Those who were around and involved with discussions during the week are shown in the below group photo:</p>
<p><a href="http://blog.opencog.org/files/2008/05/img_4366-modified-in-gimp-image-editor.jpg"><img src="http://blog.opencog.org/files/2008/05/img_4366-modified-in-gimp-image-editor.jpg" alt="AI people at Ben\&#039;s" height="313" class="aligncenter size-full wp-image-19" /></a></p>
<p>From left to right: Eddie Munroe (Novamente VP of Engineering, HoL), Matt Ikle (PLN co-author, GUG), Moshe Looks (MOSES author), Ben Goertzel (SIAI Director of Research, Novamente CEO), Bruce Klein (Novemente president, HLD), Joel Pitt (me, OpenCog researcher, AoE). In front: Crunchkin (Novamente Virtual Pet Advisor). Thanks to Izabella for taking the photo!</p>
<p>(Some of the 3 letter acronyms at the end of the names are made up, I&#8217;ll leave you to work which ones and what they stand for <img src='http://blog.opencog.org/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://blog.opencog.org/2008/05/22/a-week-in-maryland/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Hebbian Links and Importance Spreading</title>
		<link>http://blog.opencog.org/2008/05/19/hebbian-links/</link>
		<comments>http://blog.opencog.org/2008/05/19/hebbian-links/#comments</comments>
		<pubDate>Mon, 19 May 2008 22:28:45 +0000</pubDate>
		<dc:creator>Joel Pitt</dc:creator>
				<category><![CDATA[Design]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[AttentionAllocation]]></category>
		<category><![CDATA[HebbianLinks]]></category>
		<category><![CDATA[ImportanceSpreading]]></category>
		<category><![CDATA[OpenCog]]></category>

		<guid isPermaLink="false">http://opencog.wordpress.com/?p=15</guid>
		<description><![CDATA[This post will cover the HebbianLink, an &#8230; <a href="http://blog.opencog.org/2008/05/19/hebbian-links/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>This post will cover the <a href="http://www.opencog.org/wiki/HebbianLink">HebbianLink</a>, and two MindAgents, the <a href="http://www.opencog.org/wiki/ImportanceSpreadingAgent">ImportanceSpreadingAgent</a> and the <a href="http://www.opencog.org/wiki/HebbianLearningAgent">HebbianLearningAgent</a>. The former agent spreads Short term importance (STI) along HebbianLinks, while the later updates the HebbianLink truth values.</p>
<p><span id="more-15"></span><br />
Let&#8217;s look at the HebbianLink shall we?</p>
<p>There are three types: symmetric, asymmetric and inverse. I&#8217;ll concentrate on the symmetric HebbianLink here, but there is a paragraph about each of the others <a href="http://www.opencog.org/wiki/HebbianLink">on the wiki</a>. HebbianLinks basically indicate which concepts are important at the same time, or to put it another more OpenCog specific way, they indicate which atoms tend to appear in the <a href="http://www.opencog.org/wiki/Attentional_focus">Attentional focus</a> of the system at the same time. The <a href="http://www.opencog.org/wiki/Truth_values">Truth value</a> of the link indicates the strength of this tendency.</p>
<p>How these HebbianLinks are created is an interesting challenge, because we can&#8217;t just add HebbianLinks between all pairs of atoms. To intelligently do this, there are plans for a <a href="http://www.opencog.org/wiki/HebbianMiningAgents">HebbianMiningAgent</a> that will look at <a href="http://www.opencog.org/wiki/AtomTable">AtomTable</a> activity to determine what new links should be created. However, this has yet to implemented. Currently Hebbian links have to be manually added by the programmer/user (I&#8217;ll show how I&#8217;ve done this in a later post on Hopfield network emulation using the <a href="http://www.opencog.org/wiki/Attention_allocation">Attention allocation</a> mechanisms).</p>
<p>Once the HebbianLinks are there however, the HebbianLearningAgent keeps them updated. Each cycle the agent runs, it updates the truth values of all the HebbianLinks by adjusting them slightly to reflect the conjunction of the linked atoms when one of them is in the attentional focus.</p>
<p>The ImportanceSpreadingAgent takes the amount of excess importance that an atom has and spreads it along the HebbianLinks, with more importance being spread along HebbianLinks with higher TruthValues. This excess importance is defined as the amount of STI above the importance spreading threshold and this is usually greater than the attentional focus boundary to ensure that importance spreading doesn&#8217;t remove atoms from the attentional focus. This transfer of importance can then result in these destination atoms being elevated into the attentional focus, increasing their chances of being used in inference and other cognitive processes.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.opencog.org/2008/05/19/hebbian-links/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Introducing the Importance Updating Agent</title>
		<link>http://blog.opencog.org/2008/05/09/importance-updating-agent/</link>
		<comments>http://blog.opencog.org/2008/05/09/importance-updating-agent/#comments</comments>
		<pubDate>Fri, 09 May 2008 04:15:50 +0000</pubDate>
		<dc:creator>Joel Pitt</dc:creator>
				<category><![CDATA[Theory]]></category>
		<category><![CDATA[AttentionAllocation]]></category>
		<category><![CDATA[MindAgent]]></category>
		<category><![CDATA[OpenCog]]></category>

		<guid isPermaLink="false">http://opencog.wordpress.com/?p=12</guid>
		<description><![CDATA[The ImportanceUpdatingAgent handles the  &#8230; <a href="http://blog.opencog.org/2008/05/09/importance-updating-agent/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>The <a href="http://opencog.org/wiki/ImportanceUpdatingAgent">ImportanceUpdatingAgent</a> handles the exchange of currency between atoms. Every thought cycle It pays out wages in the form of <a href="http://opencog.org/wiki/Short_Term_Importance">Short Term Importance</a> (STI) and <a href="http://opencog.org/wiki/Long_Term_Importance">Long Term Importance</a> (LTI) to atoms that are currently in use, and also collects rent from an atom&#8217;s STI and LTI.<br />
<span id="more-12"></span></p>
<p>As atoms are used in mind processes they are endowed with <a href="http://opencog.org/wiki/Stimulus"><strong>stimulus</strong></a>. MindAgents should explicit grant atoms stimulus when they make use of them, although it&#8217;s left up to the <a href="http://opencog.org/wiki/MindAgent">MindAgent</a> to decide how best to do this.</p>
<p>The ImportanceUpdatingAgent takes this stimulus and pays wages to atoms. So in a sense, the stimulus is a record of how much work the atom has been involved in. The currency of the wages that the ImportanceUpdatingAgent pays to an atom is in the form of both STI and LTI. The amount of STI and LTI conferred is based both on the total stimulus of the atom, and two internal multipliers that indicate the rate that stimulus is converted into STI and LTI. Atoms also have to pay LTI rent to exist in the the <a href="http://opencog.org/wiki/AtomSpace">AtomSpace</a> and STI rent to exist in the <a href="http://www.opencog.org/wiki/Attentional_focus">attentional focus</a>.</p>
<p>For example, say atom A1 has 0 STI and 0 LTI, during some cognitive process it is given 10 stimulus. Now it comes time for the ImportanceUpdatingAgent to run. It&#8217;s internal conversion rate for stimulus into STI is 10 and for LTI the conversion rate is 3. At this stage a lower conversion rate for LTI is thought to be of more use because we want LTI to respond slower than the short term importance (rent for LTI is also lower, see below), for example, things flit in and out of your attention as you go through the day, but the things you remember long term are the things that you&#8217;ve spent more time thinking about. When the ImportanceUpdatingAgent pays wages, it gives the atom A1 100 STI and 30 LTI.</p>
<p>STI rent is charged from atoms that are above the <a href="http://www.opencog.org/wiki/Attentional_focus">attentional focus boundary</a> and LTI rent for all atoms in the system (conceptually at least, once atoms start being swapped to disk, LTI rent for these atoms might only be charged periodically due to the expense involved in updating them). So, if the attentional focus boundary was set at zero, i.e. all atoms with positive STI are in the attention span of the OpenCog instance, then for our atom A1, it would be charged both STI and LTI rent. If STI was &lt; 0 then atom A1 would not be charged STI rent, but would still be charged LTI rent regardless of the STI or LTI of A1.</p>
<p>Now, since both STI and LTI currency is conserved, the funds that the ImportanceUpdatingAgent uses to pay wages has to come from somewhere. In an ideal situation, this would be balanced by the rent charged to atoms. However, the number of atoms in the AtomSpace and in the attentional focus will be constantly changing. In fact, an OpenCog instance may even have some method of controlling the attentional focus boundary depending on how focussed or quick thought and reaction needs to be. more atoms in the attentional focus mean more atoms to consider during reasoning, although reasoning methods can and do use atoms outside of the attentional focus if the those in attention are insufficient to come up with suitable results. To manage the variable number of atoms in attention and in the Atom Space, the ImportanceUpdatingAgent draws STI and LTI from a pool of funds managed by the Atom Space. These pools have a homeostatic range that the ImportanceUpdatingAgent tries to keep the Atom Space funds within. If, at the end of an update cycle, the pools are outside of this range, then the agent taxes all atoms to bring the pools back to the middle of the range (Note that although it&#8217;s called a tax, it can actually result in a refund if the agent has been charging too much tax&#8230; just like real life <img src='http://blog.opencog.org/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' />  ). The agent then recalculates the optimal rent based on decaying measures of the AtomSpace size and number of atoms in the attentional focus.</p>
<p>Further information will be <a href="http://www.opencog.org/wiki/ImportaneUpdatingAgent">available on the wiki</a> about the agent, such as the default parameters, and the formulas for updating rent, etc.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.opencog.org/2008/05/09/importance-updating-agent/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Economic Attention Allocation</title>
		<link>http://blog.opencog.org/2008/05/06/economic-attention-allocation/</link>
		<comments>http://blog.opencog.org/2008/05/06/economic-attention-allocation/#comments</comments>
		<pubDate>Tue, 06 May 2008 00:21:20 +0000</pubDate>
		<dc:creator>Joel Pitt</dc:creator>
				<category><![CDATA[Theory]]></category>
		<category><![CDATA[AttentionAllocation]]></category>
		<category><![CDATA[OpenCog]]></category>

		<guid isPermaLink="false">http://opencog.wordpress.com/?p=10</guid>
		<description><![CDATA[My task for the past couple of months ha &#8230; <a href="http://blog.opencog.org/2008/05/06/economic-attention-allocation/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>My task for the past couple of months has been to implement code to manage attention allocation within OpenCog.  This process of deciding which atoms in the system are important is useful for a number of reasons, such as memory management and the forgetting process, and guiding the PLN (Probabilistic Logic Network) inference process.</p>
<p>Attention allocation in OpenCog has an economic framework initially conceptualized and prototyped by Ben Goertzel. Atoms have three types of importance currency associated with them:</p>
<ul>
<li><strong>Short term importance</strong> (STI) guides what concepts are in the <em>attentional focus</em> of an OpenCog instance.</li>
<li><strong>Long term importance</strong> (LTI) is currently used for indicating what atoms might    be worth forgetting or swapped out of memory.
<li><strong>Very long term importance</strong> (VLTI) is a flag which essentially indicates whether the atom <strong>can</strong> be forgotten or not.
</ul>
<p>Both STI and LTI are conserved throughout the system, and the <a href="http://opencog.org/wiki/AtomSpace">AtomSpace</a> maintains a pool of funds for paying wages to atoms that assist in achieving system goals. Atoms that are within the attentional focus have rent charged from their STI, and <strong>all</strong> atoms have rent charged from their LTI.</p>
<p>There are currently 4 <a href="http://opencog.org/wiki/MindAgents">MindAgents</a> related to economic attention allocation. I plan to do a post on each, beginning with the <a href="http://opencog.org/wiki/ImportanceUpdatingAgent">ImportanceUpdatingAgent</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.opencog.org/2008/05/06/economic-attention-allocation/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
