Archives: June 2009

Wed Jun 03, 2009

'Natural' artificial intelligence

What if artificial intelligence was a natural outgrowth of the work we do all the time? what would happen would be that UI's would be programmed looser and looser over the years, slowly able to handle more and more variable input. It would be the natural way we organize software. Instead of making software tighter and tighter with validation rules and strong typing, the typing and validation would become more relaxed, there would be fewer and fewer types, or maybe as many types but they (types) would become more and more
complex and powerful.

It would start with parsers to handle numbers and dates in different formats, simple commands in many guises. For example, programs would allow 'bye', 'logout', 'quit', 'log out' and other forms of the program closing command. It would continue with richly embedded characterizations of words so that different programmers would add characterizations and use the ones they needed. Ways would be discovered to merge things rather than having them precisely separate.

Major projects would get going to use this foundation of variability tolerance to give programs an idea of what was going on, then after a while there would be projects focusing on various computer cognition design models. Various different models of cognition would be tried and the few that really worked well would be expanded on. People would expect some level of actual intelligence from programs. It wouldn't be human intelligence, it would be very much stronger in some areas and very much weaker in others. Artificial intelligence would be a day to day thing.

So why has this not happened? Well, for one thing, we as programmers want everything nailed down very tight, with specific objects, validation rules, and strong typing. second, we don't have a standardized way of merging concepts. For another most software is proprietary so the base of intelligence artifacts that would have been built up over the years is prevent. Another problem is no standardized way to combine intelligence artifacts.

The endeme data structure would solve some of these problems. It allows both definition of meanings and matchability between meanings. An endeme is a partcular instance of a combinable orderable list of meanings. For example the list of your three favorite colors in order is an endeme and color and shape are endeme sets. Figuring out how to stack endemes and relate endemes of different endeme sets is something I am still working on, but if thousands of programmers had been working with them for the last 30 years we would have figured it out.

My (half baked) proposal:

  1. 1. start using endemes,
  2. 2. companies allow combinable intelligence artifacts to be published,
  3. 3. Start big bases of word characterizations using endemes.
  4. 4. Figure out how to match, stack, translate and combine them
  5. 5. Companies allow and programmers use highly complex validators in UI's to process user input text.
  6. 6. Come up with more combinable artifacts besides just endemes.
  7. 7. Do some sort of artifical creativity wherever possible, even if it's just variable colors on a UI background
  8. 8. combine the sciences of fuzzy logic, probability, and endemes


Endemes are good for AI analysis and they are good for AC Artificial creativity.


Posted by: Jon Grover on Jun 03, 09 | 12:35 pm | Profile

[0] comments (2163 views) |  [0] Trackbacks   [0] Pingbacks