Skip to main content
Brain Simulator III

Sophisticated Search

By March 15, 2024No Comments

Brain Simulator III’s existing search system allows for many useful searches.  Because of the graph structure inherent in the UKS, the system can quickly search for factual information. However, for vision, speech recognition, decision making, and, no doubt, numerous other Common Sense functions, a more flexible system is needed.

Existing methodology

The UKS graph structure contains “Relationship” information in the form:  Source -> RelationshipType -> Target. So a Relationship relates 2 “Things” (nodes) with a specified Relationship type (which is also a Thing). Example:

  • Fido -> IsA -> Dog (defines the hierarchy)
  • Dog -> IsA -> Animal
  • Fido -> Is -> Brown (adds attribute)
  • Dog -> Is -> Furry (adds attribute)

Additional Relationship Information

Relationships also include information about:

  1. When it was created
  2. When it was last referenced
  3. When it will expire
  4. How many times it was referenced
  5. How many times it was subsequently selected
  6. Weight (perhaps a combination of 4 & 5 above)

This information is only used in a few specific cases—a situation to be remedied by the mechanisms described below.


A “Clause” relates 2  Relationships with a ClauseType (which is also a Thing). A Relationship may have any number of Clauses. Example:

  • Mary -> IsAt -> Store
  • Suzie -> IsAt -> Store

Represents two independent Relationships while:

  • Mary -> IsAt -> Store WITH Suzie -> IsAt -> Store

Adds the information the Mary and Suzie are at the store together.

Existing Search

In essence, the existing search is similar to creating a Relationship but omitting certain information which is filled in by the search.  Example:

  • Fido -> IsA -> ???

Will return any relationship(s) which match the form INCLUDING following transitive (IsA) Relationships:

  • Fido -> IsA -> Dog
  • Dog -> IsA -> Animal

Note that even though the search request was about Fido, it returned a relationship about a dog. This would allow a calling system to be able to say that “Fido is an Animal BECAUSE Fido is a dog.”

Needed Methodologies

It is necessary to match queries such as “What is Brown and Furry?” This implies giving a list of attributes (which may apply at any level of the hierarchy) and selecting the entries which match the largest number of them. This should be applicable in the following visual case:

  • Given that a square has 4 right angles
  • The visual field only shows 3 right angles (because one is occluded) Or perhaps only 2. There should be a likelihood of only a few possible shapes (including the square).

It is necessary to prioritize search results. “What has 4 legs?” might yield hundreds of results. These can be prioritized down to just a few based on the use counts above. Similarly, in the case of “What has 4 legs and a mane?”  the search attributes themselves may be prioritized. For example, in facial recognition, a distinctive tattoo could be prioritized over eye color in the search parameters.

In the Decision System, Situations will always consist of a large number of parameters: the current surroundings and objects, their motions, current verbal input, etc.  Searches need to be rapid to describe the “best” matching situation.  Example: A system can detect the situation that it is in the Living Room based on the presence of numerous known physical objects.  The important feature, however, is that the system is conversing with the grandmother (or small child) which should have a greater impact on the selected analogous situation than the physical surroundings.

Notify of
Inline Feedbacks
View all comments
Would love your thoughts, please comment.x