Spreadsheet Interface for Tabular Constraint Programming
In this project we are developing a generalization of
the spreadsheet paradigm, called Knowledgesheet,
for solving a class of constraint satisfaction problems. The traditional
spreadsheet paradigm is based on attaching expression to individual cells
and then evaluating them; the Knowledgesheet interface instead allows finite
domain constraints to be attached to individual cells that are then solved
to obtain a solution. This extension
provides an easytouse interface for solving a large class of constraint
satisfaction problemsthose whose specification and solution conforms to
a 2dimensional structure, e.g., scheduling problems, timetabling problems, etc.
A prototype for the Knowledgesheet has been developed and applied to solve many
different types of problems. This prototype includes
the spreadsheetlike interface as well as the protocol between the interface
and the backend constraintsolving engine. The constraint solving engine
is based on a finite domain constraint logic programming system (CLP(FD)).
The protocol maps the constraints attached to the various cells of the Knowledgesheet
to a CLP(FD) program. The autogenerated program is executed by the backend
CLP(FD) engine and the computed results communicated to the Knowledgesheet
interface for display. A major advantage of Knowledgesheet is that novice users can
solve certain types of practical constraint satisfaction problems without being an
expert in constraint logic programming or constraint solving.
Participants: S. Akhter (now at Intel), Larry King.
Papers

G. Gupta, S. Akhter. Knowledgesheet: A Graphical Spreadsheet Interface for
Interactively Developing A Class of Constraint Programs.
In Proc. Practical Aspects of Declarative Languages,
Lecture Notes in Computer Science 1753,
Springer Verlag, 2000, (to appear).