\documentstyle[12pt]{article} \begin{document} \title{Extending Sandewall's Discrete Fluent\\Logic to Continuous Values} \date{\today\\Rough Draft} \author{Steven Ketchpel} \maketitle \begin{abstract} This would be the abstract. \end{abstract} \section{Introduction to Reasoning about Dynamical Systems} One of the primary challenges facing AI systems in the real world is how to represent and reason about the way systems change over time. This is a critical ability for autonomous robots as they attempt to determine the affects that their intended actions will have as they construct a plan to achieve their goals. In addition to this prediction problem, there is a postdiction problem, where an agent makes certain observations about the state of the world, and tries to infer the most likely set of occurrences that led to that world state. The reasoning process is complicated by the fact that it deals not only with actions of the agent, but also events, that is, changes in the environment that are not caused by the agent. \section{Description of Sandewall's Discrete Fluent Logic} In his book {\it Features and Fluents}, Sandewall proposes a logic based on non-monotonic entailment which is an extremely expressive system for representing and reasoning about the facts that an agent might learn about its environment. Specifically, each of the relevant aspects of the environment is observed as a separate feature. Each feature takes on a value from the domain of legal possibilities for that feature. The features are also able to change values over time, and hence are called fluents. By appealing to the notion of inertia, Sandewall is able to come up with a preferred model (or models) which minimize the number of changes in the environment. Formally, there are three sorts of information: \begin{enumerate} \item{Observations -- at a certain time, the agent observes that a particular feature has some value from a subset of the legal values.} \item{Changes -- at a certain time, the agent observes that a particular feature takes on one of a subset of the legal values. The feature did not have that value before.} \item{Qualification Defaults -- Also time dependent, the qualification defaults allow the agent to make certain assumptions about information not directly observed on the basis of prior expectations.} \end{enumerate} There are two distinct preference orders, one over the occurrence of changes which tries to minimize the number of changes, and in scenarios with equal number of changes tries to defer them as late as possible. One exception to this rule is that certain features may be unobservable to an agent at certain times. These features are explictly marked as ``occluded'' and then there is no preference as to when in the occluded interval a change takes place. (This handles Kautz's stolen car example, so that the car is not always assumed to be stolen from the garage at the last possible minute.) The second preference ordering is over qualification defaults. Two scenarios are compared to see if one satisfies a strict superset of the qualifications that the other satisfies. If so, the one satisfying more qualification defaults is preferred. The preferred models are those which are minimal in the ordering with respect to changes, satisfy the observations, and then fulfill the maximal set of qualification defaults. $$ min(CHG) \cap OBS \models \alpha $$ \section{Motivation for Continuous Values} Sandewall himself offers compelling reasons for moving to continuous time, and these same reasons apply to domains other than those used for temporal elements. They are \begin{itemize} \item{In order to ``interface'' to differential equations and otehr standard methods for describing continuous change.} \item{In order to avoid unnecessary complications in foramlizations due to granularity.} \item{In order to capture as well as possible the real character of the actual physical world.} \end{itemize} In fact, many physical phenomenon relate to quantities like position, volume, brightness, temperature, etc. which may be measured in real values that change continuously. Therefore in order to capture the information at an arbitrarily fine level of detail, real values must be used. \section{Why Sandewall's approach doesn't apply directly} In measuring the appropriateness of one model against another, \section{An approach that might work} Basic idea: for each of the continuous fluents, we add a rate-of-change feature. Since the value of a continuous fluent can be changing at points other than the breakpoint set (because the change doesn't introduce a discontinutity), the preference ordering which looks at number of breakpoints doesn't notice continuous changes in continuous fluents. But this is a good thing. Essentially, a continuous change is likely to be introduced by a single cause (eg, a billiard ball moving across a table, the temperature in an oven increasing) and so the preferred models don't need to penalize a feature which has an infinite number of continuous changes. But we do need a mechanism for recording the fact that the value is changing over that time interval (in order to determine the feature value at a given time). So, we introduce a predicate similar to occlusion Xf1, call it [t1,t2]CCf1, which says that from t1 to t2 (inclusive, with the square brackets) feature f1 is changing continuously. But in order to determine the value, we also need to know the rate at which its changing. So, for any interval where CCf1 holds, another real valued feature f1' exists, which corresponds to the rate of change in value f1. But the beauty of it is that f1' is now a first-order continuous feature, so it, too, could be varying. So, CCf1' adds another feature which is f1'', the second derivative of the f1. It seems like these would be enough that even a complex example like the path of a projectile could be handled. (Though the feature value determination part looks like it would be a full scale integration problem.) I still need to work out the correct order for preferences among these things (for instance, Sandewall minimizes the extent of X--should CC also be minimized in extent? in number?) [Actually, Hector's suggestion seems a good one--assume that all features have a rate of change parameter, with a preference for 0.] \section{Examples} \begin{enumerate} \item{\em{The position of an automobile moving at constant speed} Given only the facts that: \begin{enumerate} \item{pos(1) = 1} \item{pos(5) = 9} \item{[1,5] CCpos} \end{enumerate} In this case, the minimal model is the one that involves a CC-ing feature, the position. Therefore, a feature which corresponds to the derivative of the position feature is created. The value of this new feature (the velocity of the car) is calculated from the data. Here, by assuming that the velocity is constant, the need for the addition of a second feature (the acceleration) is obviated, so this model is smaller than any that posits a non-uniform velocity. If we did not have Obs3 that [1,5] CCpos, then the same assumptions would be made as if the position value were discrete, and the minimal model would describe a single change from 1 to 9, occurring somewhere in the occluded interval [1,5]. As a second extension to this example, imagine that we make the additional observation that at time 3, the position is 5. This fits our expectations, so it should not change the model. In fact, it does not. The original model is still the minimal model consistent with the observed data. In a different extension, the car is accelerating over the interval. We observe the pos(3) = 4, so the car is covering more distance over the second half of the interval than the first half. But since we know that the position is changing continuously over the whole interval, we are able to deduce the function that describes the velocity, which is also a continuous function. So, in our minimal model to describe these observations, we need to infer the acceleration with the minimal number of continuously changing features, and the minimum number of breakpoints. In this case, we know that there are no breakpoints, because the observations explicitly say that the position is changing continuously. Essentially, we fit a polynomial to the datapoints that we have, and then differentiate for each degree of the polynomial, calling each one a continuously changing feature, until we reach a derivative the same degree of the polynomial which stays constant.} \item{\em{The moving car, as above, but without the explicit observation that the position changes continuously over the interval [1,5].} When we aren't given the fact that the value is changing continuously, we have to trade off the complexity of introducing multiple breakpoints (for each time the feature is known to change) with the complexity of saying that the feature is changing continuously and determining the rates of change of the polynomial that describe its value. As an added complication, it may be the case that a simpler model may be found by piecewise combining several polynomials, but allowing breakpoints (non-continuous changes) between the intervals described by the various polynomials. The real design problem, then, is coming up with preference ordering that takes these various complications into account in a meaningful way. Even in the case where [1,5]CCpos is given, you aren't that there's only one polynomial. There might be two that have a point in common.} \end{enumerate} Given only the facts that: \begin{enumerate} \item{pos(1) = 100} \item{pos(5) = 21.6} \item{[1,5] CCpos} \end{enumerate} \section{Interactions between the addition and the old system} \end{document}