Skip to content

Questions about Frame problem

Short answers, pulled from the story.

What is the frame problem in artificial intelligence?

The frame problem is the challenge of using first-order logic to represent a robot's environment without having to explicitly state that everything not affected by an action remains unchanged. It was defined by John McCarthy and Patrick J. Hayes in their 1969 paper Some Philosophical Problems from the Standpoint of Artificial Intelligence. Every pair of an action and a condition that action does not affect requires its own frame axiom, making large domains unmanageable.

Who first defined the frame problem?

John McCarthy and Patrick J. Hayes defined the frame problem in their 1969 article Some Philosophical Problems from the Standpoint of Artificial Intelligence. The paper used the problem as a starting point for broader discussion of knowledge representation challenges in AI.

What is the Yale shooting problem and how does it relate to the frame problem?

The Yale shooting problem was devised by Steve Hanks and Drew McDermott to demonstrate that minimizing change, the approach John McCarthy formalized as circumscription, does not always produce commonsense conclusions. It showed that naive circumscription could infer a gun became unloaded on its own rather than that a shooting caused a death. Hudson Turner later showed that default logic solutions work correctly when appropriate additional postulates are supplied.

What is a fluent in the context of the frame problem?

A fluent is a predicate that depends on time, used to represent conditions in a domain that can change. For example, whether a door is open or a light is on can be expressed as fluents rather than static propositions when actions may alter their values over time.

What is the successor state axiom solution to the frame problem?

The successor state axiom solution, developed by Ray Reiter, specifies for every condition the circumstances under which it becomes true or false after an action. A condition is true after an action if the action makes it true, or if it was already true and the action does not make it false. Reiter incorporated this into a variant of the situation calculus.

How does separation logic address the frame problem?

Separation logic uses a frame rule that allows descriptions of memory outside a program's footprint to be attached to a specification without mentioning that memory in the original proof. Automation of this rule led to deployment of reasoning tools on codebases with tens of millions of lines.