RAPS: A Rule-Based Language for Specifying Resource Allocation and Time-Tabling Problems

Gadi Solotorevsky, Ehud Gudes, Amnon Meisels

Research output: Contribution to journalArticlepeer-review

17 Scopus citations


A general language for specifying resource allocation and time-tabling problems is presented. The language is based on an expert system paradigm that was developed previously by the authors and that enables the solution of resource allocation problems by using experts’ knowledge and heuristics. The language enables the specification of a problem in terms of resources, activities, allocation rules, and constraints, and thus provides a convenient knowledge acquisition tool. The language syntax is powerful and allows the specification of rules and constraints that are very difficult to formulate with traditional approaches, and it also supports the specification of various control and backtracking strategies. We constructed a generalized inference engine that runs compiled resource allocation problem specification language (RAPS) programs and provides all necessary control structures. This engine acts as an expert system shell and is called expert system for resource allocation (ESRA). The performance of RAPS combined with ESRA is demonstrated by analyzing its solution of a typical resource allocation problem.

Original languageEnglish
Pages (from-to)681-697
Number of pages17
JournalIEEE Transactions on Knowledge and Data Engineering
Issue number5
StatePublished - Oct 1994
Externally publishedYes

Bibliographical note

Funding Information:
Manuscript received June 25, 1991; revised July 27, 1992, and January 25, 1993. This work was supported in part by the Paul Ivanir Center for Robotics and Production Management at the Ben-Gunon University of the Negev, Israel.


  • Expert systems
  • Prolog
  • knowledge acquisition
  • resource allocation
  • scheduling


Dive into the research topics of 'RAPS: A Rule-Based Language for Specifying Resource Allocation and Time-Tabling Problems'. Together they form a unique fingerprint.

Cite this