Jens Lippmann, Marek Rouchal, Martin Wilck and others -->

Links

(a regular column in intelligence magazine)

Syed S. Ali
University of Wisconsin - Milwaukee

 

Preface

This month I am happy to feature an article written by a guest editor, Amruth N. Kumar of Ramapo College of New Jersey. Professor Kumar's research focuses on reasoning about function; he has organized workshops and published extensively in this area. The next issue will feature an article on Natural Language Generation.

What is Function?

Several areas of Artificial Intelligence have studied ``devices'', such as Model-based reasoning, Rule-based reasoning, Case-based reasoning, and Qualitative Physics to name a few. A device is a collection of modular components, whose behavior arises from the interaction of the behaviors of those components, e.g., a car, doorbell, or an organization.

Traditionally, two types of device knowledge are used for reasoning: structure and behavior. The structure of a device consists of the components in the device and their interconnections. E.g., a table lamp consists of a power cord, connected through a switch to a bulb. The behavior of a device is the relationship between its inputs and outputs. E.g., a switch can open or close an electrical circuit. Function is a third level of device knowledge used for reasoning, and is the relation between the goal of a human user (purpose) and the behavior of the component. E.g., the function of the switch in the table lamp is to turn the lamp on/off. Therefore, function relates objective knowledge about a device (i.e., structure and behavior) to subjective notions of its utility.

Consider the distinction between behavior and function: The behavior of a component is defined independently of the device in which it is embedded, and can be specified without considering any interaction among larger collections of components in the device. On the other hand, the function of a component in a device is identified with respect to the device, and can vary from one device to another. Therefore, behavior is local in nature, whereas function is dependent on the context, i.e., the environment in which a component is used.

A word of caution: there is disagreement among researchers about the use of terminology. Some researchers use the term function for behavior, and vice versa. Others use the term function for purpose. However, they all use structure, behavior and function as three distinct types of knowledge with which to reason about a device. Once the reader resolves the terminology among various research groups, this confusion will be merely annoying, and not dis-orienting.

How is Function Represented?

The representations of function used by researchers may be categorized into two types: state-based representations and flow-based representations. In state-based representations, function is expressed in terms of behavior states and state transitions in a device. The semantics of each unit of function is individually defined. In general, state-based approaches do not provide predefined function primitives, but a language for building user-defined functional units on demand.

In flow-based representations, function is expressed in terms of the flow of matter, energy and information among devices. Function primitives are defined in terms of their effect on the flows. A set of these primitives is made available, and functions of all encountered components are expressed in terms of these primitives.

State-based representations have the advantage that they provide the modeler the flexibility to control the resolution of a representation by choosing the appropriate behavioral states. Flow-based representations on the other hand have the advantage that the representation is not subjective: given a set of function primitives for a domain, the flow-based function model of a device does not vary from one modeler to another. The two formalisms capture different intuitions about a device, and could be used in a complementary fashion.

Why is Function used?

Weak methods such as search, constraint propagation, and deduction are attractive because of their generality, but typically in AI systems, domain-specific knowledge is thrown in to improve their efficiency. Function is one such source of knowledge about devices.

When Model-based and Qualitative Reasoning systems use only structure and behavior knowledge, for most non-trivial applications, their result is not sufficiently constrained. E.g., a model-based diagnosis system may flag a large number of components in a device as being suspect. In such cases, function is used to improve the resolution of reasoning, i.e., eliminate many of the components from further consideration in our example above.

Where is Function used?

Function is being used in a wide variety of AI fields, including design, redesign, diagnosis, vision, robotics, natural language processing, software debugging and explanation generation. A few representative applications follow: Function has been used to model large industrial systems, and to diagnose and redesign such systems. It has been used to automate failure modes and effects analysis of automobiles. It has been used to design software and hardware (such as a photocopier) to enable reuse of components. It has been used by agents to learn the function of objects, and analyze their suitability for a particular task. Most of these applications and others have been discussed in the journal, conference and workshop resources listed below. Individual references are being withheld in this section for fear of omission.

Where to Look?

Following are some regular conference tracks and workshops held on ``Reasoning about Function'':

·         Special Tracks on Reasoning About Function (STRAF) held since 1995 at the International FLAIRS conference, an annual international conference. For the next STRAF event, visit http://orion.ramapo.edu/~csconf/straf/cfp.html
For past STRAF events, visit the STRAF site: http://www.dimi.uniud.it/
~chittaro/straf.html

·         The workshops on Functional Modeling held annually by the International Functional Modeling and Application Association (IFMAA). Details may be found at:
http://www.enre.umd.edu/ifmaa/

At this site, you can also find abstracts of the papers presented at the workshops, information for ordering the proceedings of the workshops, and a roster of over 100 members of IFMAA.

·         The series of workshops held during The National Conference on Artificial Intelligence (AAAI) and International Joint Conference on Artificial Intelligence (IJCAI): AAAI 93, Washington D.C., 7/11/93, AAAI 94, Seattle, WA, 8/3/94, IJCAI 95, Montreal, CA, 8/19/95, AAAI 96, Portland, OR, 8/4/96, IJCAI 97, Nagoya, Japan, 8/23/97 and AAAI 98, Madison, WI, 7/26/98. (These workshop reports are not available except from participants.)

Following are some special issues on ``Reasoning about Function'' that have appeared in international journals in the past five years:

·         Special issue of Artificial Intelligence in Engineering Journal on 'Reasoning about Function', A.N. Kumar and L. Chittaro, ed., Vol 12(4), 10/98.

·         Special issue of Reliability Engineering and System Safety Journal, on 'Functional Modeling Application to Complex Engineering Systems', M. Modarres, ed., Vol. 64(2), 5/99.

·         Special Issues of Applied Artificial Intelligence, An International Journal, on 'Function-based Reasoning', D. Allemang, D.Franke, J. Hodges, A. Kumar, J. McDowell, J. Sticklen and S. Upadhyaya, ed., Vol 8(2), 8/94 and Vol 9(1), 1/95.

Following are some tools that are available for use by third parties:

·         MFM toolkit: MFM is a flow-based representation of function, which has been used extensively in Europe and the U.S. This toolkit is currently being updated. For details, visit http://www.dit.lth.se/~janeric/

·         DML-US-2000 is a commercial tool to build hierarchical models for simulation, diagnosis, monitoring and control. It also uses a flow-based representation of function. For details, visit http://www.DMLInternational.com

Finally, if you would like to be included in a mailing list of researchers interested in ``Reasoning about Function'', please send me email at amruth@ramapo.edu.

Acknowledgements

The author wishes to thank Luca Chittaro and James McDowell for their feedback on drafts of this article.