Hi Johannes,
On 12/11/18 4:14 PM, Johannes Castner wrote:
Hi Nil,
Actually, I figured out the "now" part:
(AtTimeLink
(EvaluationLink
(PredicateNode "score-of")
(ListLink (ConceptNode "John")
(NumberNode 8))
(TimeNode (current-time)))
)
So you know, the TimeNode should be indented at the same level than the
EvaluationLink.
I still need to figure out how to query previous scores and in
particular the last score that was assigned to John.
There's a time server, but I haven't had a look at this for a while
(like years), I don't know what it can and cannot do.
Linas? Any update on temporal querying?
Nil
On Tuesday, December 11, 2018 at 1:12:22 PM UTC, Nil wrote:
On 12/11/18 2:13 PM, Johannes Castner wrote:
> What I'm trying to say is a user has an account and an account has
> points in it that can change--just as with any computer game,
really.
> Does that make sense?
There are different ways to do that, and they depend on what you
intend to do with the knowledge. One way would be to use value
https://wiki.opencog.org/w/Value <https://wiki.opencog.org/w/Value>
for instance to attach a score of 3 to John, you'd say
```
(define john (Concept "John"))
(define score (Concept "score"))
(cog-set-value! john score (Number 3))
```
then you may ask John's score with
```
(cog-value john score)
```
which will return 3.
Later on you may update John's score with
```
(cog-set-value! john score (Number 4))
```
And
```
(cog-value john score)
```
which will return 4.
The problem with that (and with mutability in general) is that you
lose information. So for instance you won't be able to use reasoning
or specialized forms thereof like pattern mining to analyze the
evolution of your data. For that you need to keep track of these
updates. One way could be to use AtTimeLink, so for instance you way
write that at 10pm John had a score of 3
AtTimeLink
Evaluation
Predicate "score-of"
List
(Concept "John")
(Number 3)
TimeNode "10pm"
but at 11pm he had a score of 4
AtTimeLink
Evaluation
Predicate "score-of"
List
(Concept "John")
(Number 4)
TimeNode "10pm"
Etc... There are many ways to represent knowledge.
--
You received this message because you are subscribed to the Google
Groups "opencog" group.
To unsubscribe from this group and stop receiving emails from it, send
an email to [email protected]
<mailto:[email protected]>.
To post to this group, send email to [email protected]
<mailto:[email protected]>.
Visit this group at https://groups.google.com/group/opencog.
To view this discussion on the web visit
https://groups.google.com/d/msgid/opencog/b7c124f1-95cf-4a18-a893-069383c9922f%40googlegroups.com
<https://groups.google.com/d/msgid/opencog/b7c124f1-95cf-4a18-a893-069383c9922f%40googlegroups.com?utm_medium=email&utm_source=footer>.
For more options, visit https://groups.google.com/d/optout.
--
You received this message because you are subscribed to the Google Groups
"opencog" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/opencog.
To view this discussion on the web visit
https://groups.google.com/d/msgid/opencog/029d5568-6c42-f6cd-d9bd-1e785e9a83a7%40gmail.com.
For more options, visit https://groups.google.com/d/optout.