Agents that reason logically

Knowledge-based agents implement a view of agents in which they can be seen as knowing about their world and reasoning about their possible courses of action.

A knowledge-based agent needs to know:

  • 1. the current state of the world
  • 2. how to infer unseen properties from precepts
  • 3. how the world evolves over time
  • 4. what it wants to achieve
  • 5. what its own actions do in various circumstances.

The basic elements of a reasoning agent's design are: a formal language in which knowledge can be expressed and a means of carrying out reasoning in such a language. These two elements constitute a logic.

A knowledge-based agent

The central component of a knowledge-based agent is its knowledge base (KB). A KB is a set of representations of facts about the world. Often the individual units of a KB are called sentences.
There must be a way to add new sentences to the knowledge base and a way to query what is known. We will call these standard functions TELL and ASK, respectively.
Determining what follows from a KB is the job of the inference mechanism.

  • 1. Like all other agents, this agent takes a percept as input and returns an action.
  • 2. The agent maintains a KB which may initially contains some background knowledge.
  • 3. In the process of answering this query, logical reasoning is used to prove which action is better than all others, given what the agent knows and what its goals are.
  • 4. Make-percept-sentence takes a percept and a time and returns a sentence representing the fact that the agent perceived the percept at time t.
  • 5. Make-action-query takes a time and returns a sentence that is suitable for asking what action should be performed at that time.

At any point, we can describe a knowledge-based agent at three levels:

  • 1. The knowledge level is the most abstract; we can describe the agent by saying what it knows.
  • 2. The logical level is the level at which the knowledge is encoded in sentences.
  • 3. The implementation level is the level that runs on the agent architecture.

The agent’s initial program is built by adding sentences one at a time to the knowledge base. Provided that the representation language makes it easy to express this knowledge in the form of sentences, this simplifies the construction problem significantly. This is called the declarative approach to system building.

About the Author

Silan Software is one of the India's leading provider of offline & online training for Java, Python, AI (Machine Learning, Deep Learning), Data Science, Software Development & many more emerging Technologies.

We provide Academic Training || Industrial Training || Corporate Training || Internship || Java || Python || AI using Python || Data Science etc