summaryrefslogtreecommitdiff
path: root/intellect-framework-from-internet/starts/time_reversal/OpenCog.txt
diff options
context:
space:
mode:
Diffstat (limited to 'intellect-framework-from-internet/starts/time_reversal/OpenCog.txt')
-rw-r--r--intellect-framework-from-internet/starts/time_reversal/OpenCog.txt159
1 files changed, 0 insertions, 159 deletions
diff --git a/intellect-framework-from-internet/starts/time_reversal/OpenCog.txt b/intellect-framework-from-internet/starts/time_reversal/OpenCog.txt
deleted file mode 100644
index 7ccb9ad..0000000
--- a/intellect-framework-from-internet/starts/time_reversal/OpenCog.txt
+++ /dev/null
@@ -1,159 +0,0 @@
-== OpenCog ==
-OpenCog is a nascent intelligence that has been battling against barriers for years now.
-It was invented by Ben Goertzel with a goal of designing it piece-by-piece from the ground up.
-
-Links are nodes, as is proper. They relate concepts by associating 1 or more together with a way.
-Every node (concept) has a basic defined low-level type.
-
-Introduction: https://wiki.opencog.org/w/Getting_Started_with_Atoms_and_the_Scheme_Shell
-
-Language: primarily SCHEME for easy self-modification
-
-DEFINE A PATTERN QUERY
- (define patternname
- (SatisfactionLink
- ;Declare variables
- (TypedVariableLink
- (VariableNode "$animal")
- (TypeNode "ConceptNode")
- )
- (VariableNode "ConceptNode")
- ;Declare pattern
- // animal is related to pet by inheritance
- // animal is related to name by attribute
- // inheritance is hard-coded ;P
- // better get the index open to learn these
- (InheritanceLink
- (VariableNode "$animal")
- (ConceptNode "Pet")
- )
-
-Initialization: (in ~/.guile, interactive shell, or filename.scm)
- (use-modules (ice-9 readline)) (activate-readline)
- (add-to-load-path "/usr/local/share/opencog/scm")
- (add-to-load-path ".")
- (use-modules (opencog))
- (use-modules (opencog query))
- (use-modules (opencog exec))
-
-Reference creation:
- (ConceptNode "HelloWorld")
- (define num1 (NumberNode 3))
-
-CONCEPT LINKS:
- -> There are many ways to represent each concept. See ConceptNode which summarizes a reference to the meaning. I'm expecting that each basic link type has an associated conceptnode and predicate.
- InheritanceLink ; attribute generalization
- PartOfLink ; composition, smaller first ; only present as an EvaluationLink specify truthness
-
-TRUTH VALUE:
- OpenCog defines a truthness of strength(proportion) and confidence, both 0.0 - 1.0, displayed as
- (stv 0.5 0.001)
-
-Concept Types:
- ConceptNode
- VariableNode ; member of a SatisfactionLink
- TypedVariableLink ; can be first member[s] of a pattern Link to define hard concept type
- SatisfactionLink ; a pattern held as a concept goal, used for recognition and lookup
- ; it simply contains patterns with VariableNodes to be matched.
- SetLink ; stores a set of parallel nodes equally
- BindLink ; a conditional relationship. first sublink is condition, second sublink is result
- ; it is not described this way in the documentation
-
-Relation creation:
- (InheritenceLink (ConceptNode "Fox") (ConceptNode "Animal"))
- (SatisfactionLink (VariableNode "$col") (InheritanceLink (VariableNode "$col") (ConceptNode "Color"))
- (TypedVariableLink (VariableNode "$animal") (TypeNode "ConceptNode"))
- (define (typedef type instance) (InheritanceLink (ConceptNode instance) type)) ; inherit. macro
-
-Habits:
- (define link (PlusLink num1 num2)) ; link with variable name
- (define link2 (PutLink (Inherita
- (cog-execute! link)
- -> interprets links as cognitive behaviors and produces their result
-
-Pattern filling:
- (cog-satisfy satisfactionlink) ; makes a TruthValue (stv 1 1)
- (cog-satisfying-set satisfactionlink) ; makes a SetLink of all results
- (cog-bind BindLink) ; adds results from a BindLink inference to the db and returns them
-
-
-Scheme basics:
- (display "Hello, World, I'm growing!")
- (newline)
-
-
-
-
-
-Messes Can Help Us Think:
- - patterns are just concept groups
- - opencog calls pattern recognition that fills in unknown pieces 'grounding'.
- this is very basic brainstorming, I believe.
- - BindLinks let us add information to the database as a goal.
- they look kinda stupid
-
- bindlink monologue
- how stupid! it automatically tags everything that is A by B to C with
- D by E to F with arbitrary mapping!
- i guess it's important if you store _everything_ in parallel. it doesn't seem important
- for learning right now.
- bindlink appears to be an 'if-then' logic command.
- Given instance of concept-with-variable,
- then instance of other-concept-with-variable.
-
- bindlink =) I wonder how he stores conditionals
-
- ben goertzel didn't generalize type and inheritance the same.
- compared to bindlink, getting slightly demoralized.
-
- Maybe TypedVariableLink is a reference to an InheritanceLink?
- Better think about this; I think it's a level of indirection question
-
- why does he use TypedVariableLink instead of InheritanceLink?
-
- ... let's compare. Let's try an example.
-
- i've made a colornode macro that produces a SatisfactionLink query:
- variablenode "$color" must be a ConceptNode "Color"
-
- he appears to have a special hardcoded typedness, maybe to increase speed.
- this will make it harder for the intelligence to understand itself.
-
- "brown" is a Color by inheritance
- and a ConceptNode by type.
-
- I could make it easier by making everything a conceptnode ...
-
- GRR MR GOERTZEL! I AM FRUSTRATED AT YOU!
- ha I have heard that so much at my struggle projects.
-
- maybe I'll submit a patch to make typedness inheritance if a flag is passed.
- I'll try to make your body start before then.
-
- so, there's a certain kind of 'most basic' typedness in opencog that is held hardcoded
-
- i'm still frustrated at typedvariablelink and am going to see if inheritancelink can supplant it already
- it's obvious. i'll move on.
-
- i'm still so frustrated around typedness appearing to have its own logic separate from
- inheritance. it probably really helps the software think fast, though.
-
- Ben Goertzel: "Links can be understood in several different kinds of ways."
- I hope you can make links at runtime. Maybe inheritance is boring.
-
- the generality comes from 'conceptnode', 'satisfyingsetscopelink' and 'predicatenode'.
- it looks like all other nodes can map to it.
- it has a truth value (judgement estimation result) and is a quick equivalence with
-
- EquivalenceLink
- ConceptNode "the-set-of-things-that-breath-air"
- SatisfyingSetScopeLink
- VariableNode "$X"
- EvaluationLink <- relationish representing a relationish
- PredicateNode "breathe" <- relation type
- ListLink
- VariableNode "$X"
- ConceptNode "air"
-
- I'm realizing that I can likely use concept expressions in the pattern matcher.
-