Older News |
||||||||||||||||||||||||||||
|
|
![]()
News
10/31/2002I Am So Mad at MyselfLong time observers of this project know that I have been advocating the Principle of Complementarity (PC) from the beginning. I have always been confident in its power and its correctness. Yet here I am completely ignoring the PC in my quest to find a solution to the memory problem. Worse, in my confusion, I had completely forgotten about another equally powerful principle: simplicity. Complementarity is the main key that will open the door to an understanding of everything in nature, not just intelligence. Simplicity is a close second. I am so mad at myself right now, I feel like hiding in shame. I could kick myself in the ass :-) . That's how mad I am. How could I have been so foolish? Please ignore most of what I have written about memory, doublets, etc... The solution to the memory problem is as simple as it is elegant. It bears repeating over and over: complementarity is the sine qua non of human and animal intelligence. And nowhere is this more true than memory. I am in the process of rewriting the memory page in its entirety. In the meantime, let me just say that there are really two basic types of memory: reactive and anticipatory. I reproduce the latest network diagram below to give you an idea of what I am talking about.
Blue arrows stand for master and slave connections. Red arrows represent master connections and green arrows are slaves.
10/30/2002The Need for DoubletsIt is becoming increasingly apparent to me that the solution to the problem of implementing an effective anticipation mechanism that does not interfere with normal associative learning will require the use of paired pulses, also known as doublets. An anticipated signal is one which arrives before its time. It is generated by sequence memory and is fed into the association layer to evoke a response. It arrives on the same synapses as would the normal signal. The problem is that, since the anticipated signal is not the real one, there is a danger that association neurons will temporally associate the signal with the wrong predecessors signals. This would completely defeat the integrity of the association layer and lead to wrong decisions. There must be a way for association neurons to distinguish between real signals that stream in from the perceptual layers and anticipation signals. I now believe that the solution to the problem lies in the use of doublets. A doublet is a quick succession of two pulses. It is regularly observed in the hippocampus of rats and other animals and is associated with the synchronized firing of large groups of hippocampal neurons. I hypothesize that one of the pulses is used for learning (modifying synaptic strengths) and the other for reacting to the incoming signals. I can think of no other way to get around this problem. I am revising the memory page to reflect my new thinking. I am also hard at work making the necessary changes to Animal's code. If this hypothesis is correct as I suspect, the next Animal update should be a real surprise, even without the motivation layer in place. Stay tuned.
10/28/2002Sequence MemoryOk. I had time to think some more about the sequence memory problem and I am coming to the realization that my current approach is flawed. It pays to retrace one's steps if one is up against a brick wall. First off, the memory pathways are way too complicated. I have an unfailing faith in simplicity. Second, I now believe that an anticipated event should be treated pretty much like a real event. What this means is that it should elicit the same reaction as the real thing. It follows that an anticipated event should feed into the association layer and event memory (using master synapses) and excite its corresponding association neuron as if the signal was coming directly from the coincidence layer. I am in the process of changing Animal's code to reflect this new approach. Stay tuned for an update. 10/27/2002Memory AgainI have updated the memory page one more time. Things are getting clearer everyday. There is a problem with sequence memory that is proving to be a tough nut to crack. Please take a look at the memory page, particularly the description of sequence memory and let me know what you think. I would appreciate any suggestion from readers. 10/20/2002Another Memory UpdateThings are getting exciting lately. I think I now have the memory problem licked. Although it is still under construction, take a look at the memory page for the latest. I am still implementing the sequence memory in Animal and should have it all done by Wednesday next week. I have solved the runaway cell generation in the separation layer and I have added a new layer. The old association layer has been divided into two layers, one for single-time scale associations and the other for multiple time-scale associations. Even without the sequence memory, I am now getting very interesting behavior with the current version of Animal. I will have the newest executable available for downloading as soon as I finish the sequence memory. Afterwards, I will tackle the motivation problem. Keep your fingers crossed.
10/16/2002Memory UpdateOK, it's been a while and I have been busy with many things. I have decided to keep the site up, having received several encouraging emails from well wishers. I have uploaded a new page on memory. I think I now have a good handle on how memory works. I have already implemented event (short-term) memory in Animal and I am happy to say that I am getting exciting results. I am working on implementing sequence memory and I should be ready to upload the newest version of Animal in the next few days. I now have a little bit of time to spend on Animal and AI and I intend to make the best of it. Keep your fingers crossed. 9/24/2002Memory AgainI have made significant progress in my understanding of the memory problem. Here's my current thinking. The brain's memory system is responsible for things like expectation/anticipation, pattern completion, reasoning and attention. Short-term MemoryShort-term memory records events of the recent past. These recordings, or traces as they are sometimes called, are very short-lived. Long-term memory is used to remember sequences of events. Events are recognized by the perceptual system (sensory, separation and coincidence layers) before they make it into the memory system. Short-term memory (STM) records the relative order of events and can be internally rehearsed with the help of special short-term memory effectors. Long-term memory (LTM) receives its inputs from STM. Sufficiently rehearsed sequences are permanently stored in LTM.
9/18/2002Uncertain FutureI have tried unsuccessfully in the last several weeks to secure funding for Animal and COSA. The AI community has given me the cold shoulder. I don't blame them for doing so since I make no bones about my belief that most AI researchers are crackpots at best and charlatans at worst. What really surprises me is that I have not been able to attract a single sponsor from the software development world with regard to COSA. I had even contacted the FAA and NASA in the past but they have given me the cold shoulder as well. Neither project can continue without financial backing. For this reason, I am sorry to announce that I plan to shut down the site by the end this month. I will continue to work on both projects in my spare time. I thank all of you who have supported this effort and have so generously offered your time and programming expertise. Needless to say that this experience is leaving me with a really bad feeling about the scientific research community in general. My original impression that the scientific world is a dog-eat-dog community of assholes (pardon my Klingon) is now stronger than ever. Sorry for ending this message on such a sour note.
8/28/2002Artificial IntelligenceIt has been a while since I made any progress on the artificial intelligence side of things. I has been my experience in the past that whenever I hit a brick wall, the best thing to do is to leave things alone for a while and concentrate on something else. This gives my brain time to grow new connections. When I return to the problem days, weeks or even months later, I usually find a fountain of new ideas waiting to be sorted out. It is kind of magical and spooky at the same time. Lately my mind is being flooded with new ideas on how to solve the remaining problems with Animal. I just updated the motivation page to reflect my thinking on the anticipatory nature of reinforcement learning. This all ties in nicely with the function of the memory subsystem. My ideas on short and long-term memory are fast crystallizing into something more or less coherent. Expect an update on the memory problem soon.
8/25/2002The COSA Development PlanAdded a new page to describe the current COSA development plan. Nothing is written in stone, so expect the plan to change in the near future.
8/22/2002The SiteWell, as you already know, I moved the site to its current temporary address until I can find a more permanent home. I plan to obtain a domain name soon and server space. Both the AI project (Animal) and the COSA project will be hosted on the same server. Send SuggestionsThe domain name will probably be temporal-intelligence.org but I will consider other suggestions from interested parties before making a final decision. I think the site has generated enough interest for me to start thinking about forming a non-profit corporation and raise some serious cash. Please send me name suggestions for the company. I also need a set of logos for COSA, Animal and the corporation. Any artist among you willing to volunteer your talent? 8/15/2002My plan for the COSA project is simple. I think the best way to build a system with which to demonstrate the viability of the COSA model is to write two separate programs: a) A graphical software development system that executes COSA operations on the fly. In addition to a full set of elementary cells, the system will come with special service components that will be used to communicate with the underlying operating system API. b) A COSA compiler that converts a COSA program into C code that can be written into a text file, compiled into an executable and run under MS Windows/Linux/Mac. A compiled COSA program will be as fast as any normal C program of equal complexity. I am working on a design document and plan to publish
it on the site in the near future. I will mark all areas where I will
need help from those of you who have generously offered to contribute. A
cross-platform virtual machine would be nice. Sorry, I don't know
enough about either Linux or Mac to write code for these systems. So I will need help there as well. All
contributors will get full credit for their work. As always, I am
grateful for any help I can get. 8/13/2002Although my first love is AI, I have decided to concentrate on Project COSA for the next few months. I need a way to finance my AI research. I am convinced that COSA can solve the software reliability and productivity crisis. I think I can put together a viable demo prototype for a COSA virtual machine and a COSA visual development environment in a fairly short time. I can then use the prototype to raise funds for a research company. In the meantime I welcome all contributions to these efforts. Contributors should note that I intend to release everything under a GPL-type license. 8/04/2002COSA belongs to a class of software systems called synchronous reactive systems. I added a new paragraph to the COSA page to explain the differences and similarities between COSA and other reactive systems. 7/30/2002Added a new page called COSA Examples. Check it out.
7/22/2002The site received more than 1400 hits within 12 hours after I posted a message on Slashdot.com today.
7/16/2002Memory CellI added a paragraph to the Project COSA page to describe my newest idea: memory cells. I believe this may also be my long sought solution to the memory problem in Animal. I need to find some time in my busy schedule to start experimenting with actual code. Stay tuned.
7/11/2002Taking a BreakI'll be gone for the next week or so. I need to take some time off and take care of personal matters. I may not be able to respond to my emails for the next few days. Ciao!
7/06/2002Software Construction in COSAThings are moving right along. Added new modifications to the software composition page. Be sure to take a look at the 'while loop' example. The beauty of components is that they can serve as templates for new objects and they are easily modified to handle new requirements as they come. This way, common services such as sorting, drawing, geometry, etc..., will not have to be rewritten from scratch. I started working on the COSA kernel and already have several effectors and comparison sensors done and ready for initial testing. Stay tuned.
7/04/2002Project COSAI made some major modifications to the way comparisons are handled in COSA. Previously I had thought that a comparison should be an effect or operation. Then it dawned on me that a comparison is really a sensory phenomenon. Then I came up with what I think is a significant breakthrough regarding comparison sensors and effectors: every comparison sensor must be associated with one or more effectors. Finally, I added a new page to project COSA dealing with software composition. It's is under heavy construction and revision but check it out anyway.
6/28/2002Memory AgainWhile working on Project COSA (I need to jump from one problem to another while waiting for my neurons to grow new synapses), it occurred to me that memory is like an oracle that answers yes and no questions about the temporal order of recent events or events that happened in the distant past. An intelligent system needs to have answers to questions like, did event A happen before event B, yes or no? This is consistent with the principle of complementarity. So it seems that the short and long term memory mechanism will need to have two complementary types of neuron. I need to let this idea percolate in my brain for a little while. Stay tuned.
6/25/2002New PageI added a new page to describe my software reliability project. It is under construction but check it out anyway: Project COSA.
6/18/2002Why Software Is So Bad?This is something that has been bothering me for quite some time. A recent article in Technology Review rekindled my interest in the subject. I have added a new page on the software reliability crisis and what can be done to solve it once and for all, Fred Brooks and other incorrigible naysayers (like the folks at Cigital) notwithstanding. Check out The Silver Bullet. Memory and ExpectationI have redesigned the Animal network diagram to reflect my new thinking on memory. Previously there was a sequence detection layer in addition to the memory layer. I have decided that the memory layer is in reality the sequence detection layer. It is still divided into short and long term memory. Both memories can be accessed separately by the attention mechanism. My thinking is that memory is the primary mechanism responsible for the brain's ability to anticipate events and act accordingly. I am still grappling with implementation issues.
6/06/2002Discussion GroupI started a discussion group at Yahoo!® Groups. The group's name is Temporal Intelligence. It is not moderated and is open to all. Feel free to join and post your comments and/or criticisms.
6/02/2002The Memory ProblemI have to admit that the memory problem is turning out to be the hardest one yet but I have reasons to be optimistic. As always, I have confidence in the Complementarity Principle and in the knowledge that simplicity is always the best policy. I am toying with a new perspective that views everything in an intelligent system as a type of recognition memory. Here is a list of the different types of memory and what they remember:
STM and LTM work closely with sequence memory and seem to have several functions. My current thinking is that they group sequential events into concurrent clusters and present them to sequence memory for recognition. They can play back prerecorded sequential groups of signals on the basis of partial input. This capability is essential to survival and adaptability because it enables an intelligent agent to anticipate or predict the outcome of various occurrences. Another beneficial aspect of STM and LTM is that they can be selectively reactivated by the system via some sort of attentional feedback mechanism. This allows the agent to create new memories from old ones. 5/28/2002Neurobiological PredictionEvery theory must make testable predictions. I added a new paragraph to the Perceptual Network page to do just that. This is in addition to my previous predictions regarding the basal ganglia and the cerebellum. ProgressI am making rather slow progress trying to come up with a simple and elegant mechanism for memory and attention. Any suggestion from readers on this matter is appreciated.
5/23/2002Synchronized Firing and AttentionWhile meditating on the mechanisms of attention and short/long-term memory, I suddenly came upon an exciting explanation for the observed synchronized firing of groups of neurons in the hippocampus and the rhinal cortex. I cannot go into exact implementation details at this time but suffice to say that this is the method used by the brain to recall previously recognized sequential patterns of signals. The mechanism works as a filtration system. A huge number of pre-recorded signals are presented concurrently (under the control of the attentional system) to a layer of coincidence detection neurons. Only patterns that were previously recognized make it through. I hypothesize that the coincidence detection layer essentially acts as a filter during the recall of past events from either short or long term memory. As in everything else having to do with intelligence, it is a simple mechanism that obeys a simple principle. I am currently writing code to implement it in Animal. Stay tuned.
5/20/2002Comp.ai.neural-net FAQSomeone was kind enough to notify me via email that Warren Sarle apparently reinstated the reference to my site in the comp.ai.neural-net FAQ. Apparently the omission was just an innocent mistake. Thanks Warren.
5/17/2002David KinnyDavid Kinny, the moderator of the usenet newsgroup comp.ai who once rejected my website announcement, has done it again. This time around, he rejects an article I posted on 5/16/2002 in reply to Eray Ozkural in the thread "35 tetraflop computer vs human brain." Kinny did not even have the decency to email me an explanation for the rejection. I realize that Kinny has an agent/bot that filters articles posted to the newsgroup. Adding my name to the bot's kill filter should be a cinch. But why not also add a couple of lines to the bot's script for e-mailing rejections to the poster? (How hard can that be, Kinny? Or is it that your bot's brittle "symbolic intelligence" cannot get past my spam blocker?) Let me add that the article may have indeed been posted but my newsgroup server somehow failed to show it. These things do happen although I doubt that this was the case here. If it was, I retract the above paragraph. Warren SarleSomeone brought this to my attention. Warren Sarle is the maintainer of the comp.ai.neural-net FAQ. He recently (3/29/2002) posted a weekly update of the FAQ to the newsgroup in which he mentioned my work. He subsequently deleted the reference from the FAQ at the ftp site. No reasons given. Hey guys, what's up with the silly games? 5/14/2002Animal Page UpdateI made some changes to the network diagram to reflect my current thinking on short and long-term memory, and complementarity. For some time now I have felt uneasy about the overall architecture of the network. It just did not obey the Principle of Complementarity as well as it should. The PC enforces a strong symmetry on everything, a symmetry that was missing in Animal's high-level design. Recently I realized that I was mistaken about a couple of things. First off, the temporal association layer is not the complement of the signal separation layer as I originally thought. The true complement of the signal separation layer is the command layer. Whereas an input stream is split into parallel pathways in the separation layer, parallel pathways are regrouped into single output streams in the command layer. There are now two association layers, one for coincidence detection and the other for sequence detection. The following is a list of the main complementary modules that comprise the network:
I feel that I am finally getting to the truly exciting phase of this project. It's the feeling one gets when everything seems to be falling into place, as if by magic.
5/12/2002Major Network RedesignI am making several major modifications to Animal's network architecture. After much mind wrangling, I came to the conclusion that what I have been calling the short-term memory layer is not short-term memory after all. It is just a signal delay system. A true short-term memory should be accessible via some sort of attentional mechanism. As a result, I have added two new mechanisms to the network, one for working memory and the other for attention. Working MemoryI define working memory as consisting of both short and long-term memory. Short-term memory retains perceived events for a brief period. It is important for the agent to know not only that events happened, but also the temporal order of their occurrence. Sequences that repeat often are stored in long-term or permanent memory. I am currently considering a couple of ways to implement working memory. AttentionThe attentional mechanism allows the network to focus on specific events in working memory. This is a better alternative to being a purely reactive network. The problem with a purely reactive system is that all of its actions depend on transient phenomena that are immediately forgotten. Attention is a control phenomenon involving the use of dedicated effectors. The system can use these effectors to scan both short-term and long-term memory to call up past events. These can in turn trigger specific behaviors. Goals and DeadlinesAs I often do, I make plans and set up deadlines that do not materialize. I invariably find myself preoccupied with a million other things that compete for my time. As the late comedienne Gilda Radner would say, "it's always something." Still, I have to make plans and set goals, otherwise this project would never get anywhere. So here it is: I plan to implement all the new changes within the next two weeks, including the motivational system which is half-way done. Source CodeI have promised to release the source code for Animal and I will. However, I cannot do so until I can get Animal to play a passable game of chess. There is no point in releasing it while the network architecture is undergoing so many radical changes. I need to set up a web-based source control system to prevent the code from forking too much. I am also toying with the idea of releasing the code under the GNU license. Please contact me if you have experience in these matters and would like to help out. 4/28/2002MotivationI think I may have figured out the solution to the motivation problem. It is a rather simple solution, one that is based, of course, on the all-powerful Principle of Complementarity. In the last few days, I have been rather busy with more mundane things and I could not spare much time to work on Animal. I will also be making some modifications to the motor learning layer. It has to do with the way effector feedback signals are handled. Stay tuned for a coming announcement. 4/21/2002Animal Version 1.2Animal version 1.2 is ready for downloading. The network 'load and save' function is now working. I also fixed a problem with the human gripper and the space bar. I am working hard on the motivation (reinforcement) problem. I am making rapid progress. You can expect a new executable version by the end of next week. Note that for now, the game restarts after a load. I plan to add the ability to load and save board position at a later date. Let me know if you find any bugs, especially with network load and save. 4/12/2002Animal Version 1.1Version 1.1 of Animal is ready for downloading. Still no network load and save and no motivation mechanism but I made several significant changes to the network's design especially the placement of the short-tem memory layer. I added final output control effectors that give Animal the ability to think about its movements without actually executing them. I made significant changes to the sensor and separation layers. Now all proprioceptive feedback signals are handled by sensors. All sensors are now typed because target separator neurons now receive only inputs from sensors of the same type. This has a tremendous effect on restricting the number of cells in the separation layer and improving performance. 4/10/2002ChangesOne more time, I made a few changes in Animal. Check the Animal page for the new network architecture. I decided to route signals from the association layer to the short-term memory layer. All proprioceptive signals are now treated like normal sensory signals. Stay tuned for an Animal executable update. 4/09/2002More Design ChangesYesterday I wrote that I was going to reduce the number of sensors in Animal's eye for performance reasons. Well, it turns out that there is no need to generate all possible sensory permutations after all. The solution is rather simple: both successor and predecessor connections on any target separator neuron must originate from sensors of the same type. The idea occurred to me while I was thinking about the way the brain handles sensory perception. The brain uses separate dedicated perceptual areas for different types of sensory inputs, e.g., the visual and auditory cortices. Actual sensory fusion happens later in the association layer. Also, even within each specialized cortex, neurons are organized into distinct cortical columns. My theory is that columns only connect with other columns of the same type. Source Code AvailabilitySeveral people have inquired about getting access to Animal's source code. Please be patient. I have decided to release the source code soon but first I need to conduct a few experiments and add network saving and loading. In addition, I need to clean it up and document it and add enough comments to make it understandable. Animal has over 140 c++ classes only about half of which has anything to do with the spiking network. The rest encapsulates the functionality of the chess board, the chess pieces and the sprite engine. Real soon now. 4/08/2002Design ChangesDue to a serious performance problem, I have decided to reduce the number of sensors in Animal's eye from 702 to 312. I can do it by changing the sensor area from a 3x3 array to just 2X2. The reason for the performance problem is that the number of possible branch permutations of a 702-sensor array is as high as 702x702 or 492,804. This is the number of neurons that could potentially be created in the signal separation layer. This number could be significantly reduced by using a center-surround arrangement whereby only adjacent sensors are used for branching. However, this solution would require extra code but would not add to Animal's overall intelligence. A 2x2 array has only 97,344 potential branches. The performance advantage is dramatic and I need to add no new code. Animal will still able to sense everything on the board including direction of motion. I am currently experimenting with several new exciting ideas related to motivation and the association layer. Needless to say, it all has to do with the all-powerful Principle of Complementarity. Stay tuned. 3/25/2002RejectionThe usenet newsgroup comp.ai recently rejected my site announcement. Not surprising since I make no bones about my belief that GOFAI scientists are clueless. comp.ai is moderated by David Kinny, an expert in "intelligent agents" and a Senior Research Fellow at the University of Melbourne in Australia. Needless to say, Dr. Kinny is a great fan of the old and obsolete knowledge representation methods which I consider to be irrelevant to AI. Several years ago, I had a discussion with him on comp.ai.philosophy on the merit of connectionist vs. non-connectionist approaches to AI. He insisted that there are valid solutions to the problem of creating a human-level AI other than a connectionist approach. The man is as lost in the wilderness as Doug Lenat of Cyc fame.
Send all comments to: louis.savain@sbcglobal.net ©2002 Louis Savain |
|||||||||||||||||||||||||||