-
Notifications
You must be signed in to change notification settings - Fork 0
Filling in Gaps of Understanding from Concept Memory
How to solve "3 + ? = 8" without having previously been trained to cope with such expressions, and without knowing anything about what '?' might be? And how can it solve that without any help?
...to be scanned...
We're automating a sequence that could otherwise have been instructor led, but still emulate a lot of interesting things:
- Solve "3 + ? = 8"
- Calculator: What's '?'?
- It's a number.
- Try a number.
- Calculator: "3 + = 8 => false"
- Keep trying.
- Calculator: keeps trying for a short period, gives up.
- Keep trying.
- Calculator: adjusts perseverance.
- Calculator: keeps trying until it succeeds.
- Calculator: "3 + 5 = 8".
The processing of "3 + ? = 8" currently occurs via the following steps, broken into stages:
Step | Processor | Description |
---|---|---|
1.0 | (interceptor) | TextRequestEvent present |
1.1 | ExpressionAndEquationParseProcessor | Emits PerceptEvent with partially parsed expression |
1.2 | EquationEvaluationProcessor | Fails to process |
2.0 | (interceptor) | StuckThoughtEvent present |
2.1 | FindMatchingConceptProcessor | Assumes need to find concepts due to StuckThought, emits MemorySearchRequest |
2.2 | LongTermMemorySearchProcessor | Searches LTM, emits MemoryEvent |
2.3 | FindMatchingConceptProcessor | Assumes need to find concepts due to StuckThought, finds one or more in WM, so stops |
2.4 | (...) | What selects one of the concepts to try against? First cut: for now just pick single greedy option, in both ConceptInferenceProcessor and GapFillingProcessor. |
2.5 | ConceptInferenceProcessor | Attempts to infer an identification of concept for '?' based on matching against concepts in WM. Emits a Percept if it discovers something better than what's already present. Emit new Percept theorising that '?' is a number. |
2.6 | GapFillingProcessor | Attempts to fill gap in partially parsed expression using concept/concepts available in WM, including any inferred concepts if present. Emit new Equation Percept, with '?' tagged as a number. |
2.7 | EquationEvaluationProcessor | Needs to kick in a try again against new equation percept. Will fail once again. |
3.0 | (interceptor) | StuckThoughtEvent present |
3... | (...) | Now start employing strategies to guess at number value of '?' |
| x.x | FindMatchingConceptProcessor | Last found concept(s) not good enough, tries again |
For attempt tracking, when first emiting StuckThoughtEvent, I think a processor needs to do some work before it is emitted:
- Currently adds top-most event to Event.references(), but there's probably no point specifically in tracking that one.
- Need to track the end of the chain at the time of stuck thought - so needs to navigate to end of chain, and reference that event.
- If it tracks anything else too, it would be about making an attempt to identify the event that best describes the current underlying request/problem that is stuck.
(Added 2019-10-27. Labels: work-in-progress)
Copyright © 2023 Malcolm Lett - Licensed under GPL 3.0
Contact: my.name at gmail
- Theory Home
- Consciousness is a Semiotic Meta-management Feedback Loop
- A Theory of Consciousness
- What is Consciousness
- Background to A Theory of Mind
- Philosophical Description of Consciousness
- Awareness of Thought is not the mystery
- The analogy of the Thalamic symbiote
- The Hard Problem of Experience
- Visceral Loop
- The Error Prone Brain
- Proto AGI v1
- Focusing on the Why
- Human Phenomena
- Guiding Principles
- Theory Archive