IEEE TRANSACTIONS ON NEURAL NETWORKS, VOL. 10, NO. 1, JANUARY 1999 115 Planning with a Functional Neural-Network Architecture Dimokritos A. Panagiotopoulos, Member, IEEE, Robert W. Newcomb, Life Fellow, IEEE, and Sanjeev K. Singh Abstract— This article introduces the concept of planning in an interactive environment between two systems: the challenger and the responder. The responder’s task is to produce behavior that relates to the challenger’s behavior through some response function. In this setup, we concentrate planning on the respon- der’s actions and use the produced plan in order to control the responder. In general, the responder is assumed to be a nonlinear system whose input–output (I/O) map may be expressed by a Volterra series. The planner uses an estimate of the challenger’s future output sequence, the response function, and a model of the responder’s I/O relation implemented through a functional artificial neural network (FANN) architecture, in order to pro- duce the input sequence that will be applied to the responder in the future, in parallel-time with the challenger’s corresponding output sequence. The responder accepts input from the planner, which may be combined with feedback information, in order to produce an output sequence that relates to the challenger’s output sequence according to the response function. The importance of planning for the generation of smooth behavior is discussed, and the effectiveness of the planner’s implementation using neural network technology is demonstrated with an example. Index Terms—Functional neural networks, interacting systems, nonlinear system control, path tracking, planning, Volterra func- tionals. I. INTRODUCTION I N MANAGEMENT sciences, planning is considered as a process that defines a master schedule which outlines tasks and timing of completion of each task. These tasks may refer to quantities of finished work, or to quantities of finished products. Such planning may be based on goal programming [1]. Another way to look at planning is to assume that an analytical model of a system’s dynamics is known, a set of constraints are given, and they are used in order to plan an optimal (or near to optimal) path on the system’s state space, leading to a target state as a goal. An example of such treatment can be found in [2], where the falling cat problem is studied. Planning of a path constrained by the presence of obstacles has also been an important task in robot movement [3], [4]. A third alternative is to consider planning as a process of preparing input to facilitate control of a system. This concept of planning has been considered in autonomous mobile robots Manuscript received October 2, 1997; revised June 30, 1998. D. A. Panagiotopoulos is with the Automation Department, Technological and Educational Institute of Thessaloniki, Thessaloniki, Greece. R. W. Newcomb and S. K. Singh are with the Electrical Engineering Department, University of Maryland, College Park, MD 20742 USA. Publisher Item Identifier S 1045-9227(99)00846-2. interacting with their environment [5], [6]. Environmental information is evaluated by the navigator in [5] using fuzzy rules and the planner uses computed state variables of the navigator in order to propose a path. The planner in [6] considers speed limitations in order to attach a speed profile (plan) to a path; this plan is combined with feedback, using two reactive controllers, in order to provide robustness during task execution. Following this last concept of planning, we present a general framework where we consider controlling a system, that we will call a responder, in an interactive environment. The interactive environment is defined by two interacting systems: the responder and another one that we will call the challenger, and a third system which is the planner; this environment is shown in Fig. 1. The challenger appears as a system that either may behave autonomously, or it may be triggered by the responder’s output to produce a certain behavior. The responder is a system that has to adjust its behavior in order to keep a certain relation with the challenger’s behavior. In this respect, the challenger may be seen as an environment that hosts the responder, while the responder may be considered as a system whose task is to adjust its behavior in order to adapt to its host environment. Behavior is defined as structure in a time-ordered sequence of a system’s output values ; this sequence may be considered as continuous or discrete in time, depending on the choice of the model, i.e., continuous-time or discrete-time, that is used in order to describe the system’s dynamics. The responder’s output at time is symbolized as , while the challenger’s output at time is symbolized as . In this work it is assumed that the desired responder’s output relates to the challenger’s output through some response function , i.e., . As an example of a subcase of this assumption we mention a tracking system where the responder’s task is to follow the challenger’s output and the desired relation is .A plan is defined as a trajectory in the responder’s input space that results in a “desired” output sequence, , from the responder. In general, the sequences , , are ordered in time and may be expressed as functions , , of time. The structure of may be described by its properties such as monotonicity on its derivatives, min–max values, etc. If a limited subset of such properties is used in order to describe structure, while is highly nonlinear with a lot of irregularities, this subset of properties may not be sufficient for the description of over all time, i.e., for , where is the set of real numbers. In this case, 1045–9227/99$10.00 1999 IEEE