Jump to content
  • Advertisement
Sign in to follow this  
arithma

Unity Logic System

This topic is 4490 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Am trying to create a conversagent agent capable of memory and thought. Check my other thread for more details. I am after a logically capable agent who can detect contradictions or can validate conclusions according to the common laws of logic. I have been checking the Wikipedia for axioms of logic, Boolean algebra. How could I integrate these axioms into a framework to solve any problem that I might encounter. Your help is highly appreciated.

Share this post


Link to post
Share on other sites
Advertisement
Fortunately for you, this is an extremely well-studied area of artificial intelligence. The procedure for doing this goes something like the following diagram. Imagine that we ask the system to answer the question: "Given that all men are mortals (and that there's at least one man), are there some mortals who are men?"

{ English statements } ------+                        "All men are mortals."
|
[natural language parser]
|
|
{ logical predicates } <-----+ "∀ m | m ∈ Men &rArr m ∈ Mortals"
|
|
[inference engine]
|
+----------------> { knowledge base } "P1 = ∀ m | m ∈ Men ⇒ m ∈ Mortals"
|
|
[deductive engine]
|
|
{ draw conclusions for answer } <----+ "P1"
"P1 ⇒? (∃ m ∈ Mortals ⇒ m ∈ Men)"
∴ (∃ m | m ∈ Mortals ⇒ m ∈ Men)"
return true;


Unfortunately for you, English is an extremely ambiguous language. To avoid a very complicated system, you will probably need to bypass the natural language parser step and require your users to deal directly with logical predicates. Be warned that constructing a system to process the logical inputs and draw inferences is approximately as much work as building a compiler for a small but nontrivial language. If you want to know more, an excellent book on the subject is "Artificial Intelligence: A Modern Approach" by Russell and Norvig.

hope that helps,

Share this post


Link to post
Share on other sites
What is this little square that keeps being iterated all over, I saw it in Wikipedia, you typed it here... It is driving me insane.

As for the book you mentioned, I am away from university right now, but I will check it as soon as possible.

I was thinking about using a transformation engine with something like the A* algorithm to find whether there is, or isn't any contradictions with the acquired knowledge. I am stomped at the first step, which is which rules to use.

Till now, I am considering studying each operator {not, and, or} and creating transformation laws for any combination of those. But am still a little fuzzy about the whole thing and I still need further clarification please.

Thanks for the illustrative diagrams kSquared.

Share this post


Link to post
Share on other sites
Quote:
Original post by arithma
What is this little square that keeps being iterated all over, I saw it in Wikipedia, you typed it here... It is driving me insane.

Can you be more specific? I don't see any squares in what I typed.

[edit: It might be that your browser can't render certain symbols. Can you take a screenshot of my post?]

Share this post


Link to post
Share on other sites
It seems I am missing some font packages since it cannot render the &-forall glyph.. How should I correct this?

Share this post


Link to post
Share on other sites
Quote:
Original post by arithma
It seems I am missing some font packages since it cannot render the &-forall glyph.. How should I correct this?

Your browser is responsible for rendering the glyphs, not per se the fonts (your browser should be substituting things as need be, or drawing them itself).

Share this post


Link to post
Share on other sites
Quote:
kSquared
Be warned that constructing a system to process the logical inputs and draw inferences is approximately as much work as building a compiler for a small but nontrivial language.


What do you exactly mean. The inference algorithm is hard or the parsing of english is hard?

Share this post


Link to post
Share on other sites
Quote:
Original post by arithma
Quote:
kSquared
Be warned that constructing a system to process the logical inputs and draw inferences is approximately as much work as building a compiler for a small but nontrivial language.


What do you exactly mean. The inference algorithm is hard or the parsing of english is hard?


Well, neither of them are easy. But parsing natural language remains a largely unsolved problem.

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!