ElliotTheRobot / LILACS-mycroft-core

Mycroft Core, the Mycroft Artificial Intelligence platform - LILACS Fork
https://mycroft.ai
GNU General Public License v3.0
4 stars 1 forks source link

Concept Node filter #8

Closed ElliotTheRobot closed 7 years ago

ElliotTheRobot commented 7 years ago

The following checks / filter on node creation, update or association have to be in place:

JarbasAI commented 7 years ago

check 2 importance: Joanna has a parent of female, but female cannot have a parent of Joanna else it would form a closed loop

JarbasAI commented 7 years ago

test_ normal functioning output:


2017-04-05 14:00:21,855 - CLIClient - INFO - Speak: joana can be: 
2017-04-05 14:00:21,855 - CLIClient - INFO - Speak: wife from generation 1
2017-04-05 14:00:21,855 - CLIClient - INFO - Speak: joana is:
2017-04-05 14:00:21,855 - CLIClient - INFO - Speak: alive from generation 3
2017-04-05 14:00:21,861 - CLIClient - INFO - Speak: human from generation 1
2017-04-05 14:00:21,861 - CLIClient - INFO - Speak: female from generation 2
2017-04-05 14:00:21,861 - CLIClient - INFO - Speak: animal from generation 2

output when making joana a parent of human and human a parent of joana:

2017-04-05 14:01:27,437 - CLIClient - INFO - Speak: joana can be: 
2017-04-05 14:01:27,437 - CLIClient - INFO - Speak: human from generation 0
2017-04-05 14:01:27,438 - CLIClient - INFO - Speak: wife from generation 1
2017-04-05 14:01:27,438 - CLIClient - INFO - Speak: joana is:
2017-04-05 14:01:27,440 - CLIClient - INFO - Speak: alive from generation 3
2017-04-05 14:01:27,443 - CLIClient - INFO - Speak: female from generation 3
2017-04-05 14:01:27,449 - CLIClient - INFO - Speak: human from generation 3
2017-04-05 14:01:28,843 - CLIClient - INFO - Speak: animal from generation 2

There is no closed loop but generations childs and parents get messy, check must be enforced

JarbasAI commented 7 years ago

crawl strategies will ensure these tests when crawling depending on the crawling strategy and objective, closing issue for now

crawls ensure no loops even if they exist, if they exist this data may have meaning and should still be left there