opennars / OpenNARS-for-Applications

General reasoning component for applications based on NARS theory.
https://cis.temple.edu/~pwang/NARS-Intro.html
MIT License
91 stars 40 forks source link

Merge concepts with negated concepts and avoidance tables #206

Closed patham9 closed 2 years ago

patham9 commented 2 years ago

Merge A and --A into the same concept as suggested by https://github.com/automenta , plus adding <A =/> (-- B)> implication table that is maintained via observing non-negated events by using the equality between (-- <A =/> B>) and <A =/> (-- B)>. This will allow the system to learn avoidance of stimuli by default (rather than just how to achieve them), not just when they occur as a negation. Also, a possibility to control this is to let <A =/> B> implications with f < 0.5 glide into the avoidance table.

This also points to a way to handle negative goals better, the story of how to act competently with multiple active, potentially contradicting, goals, needs to be improved.

Discussion reference: https://github.com/opennars/OpenNARS-for-Applications/pull/204

patham9 commented 2 years ago

Avoidance of neg. outcomes is now already considered also using the goal deduction truth func which allows neg. evidence to be propagated. Negation handling will be using https://github.com/opennars/OpenNARS-for-Applications/tree/NegationExploration whereby we still use different concepts (no big overhead as implication tables are the main storage eater) but can potentially make sure revision will happen in both.