Enhanced Spreadsheet Computing with Finite-Domain Constraint Satisfaction
This work addresses the problem of enabling non-programmers to solve constraint satisfaction problems using spreadsheets, which is incremental as it builds on existing spreadsheet tools.
The paper tackled the limitation of spreadsheets in handling constraint satisfaction problems by extending the spreadsheet paradigm to support finite-domain constraint solving with a visual interface and a declarative language, resulting in a system that simplifies development for constraint-based applications.
The spreadsheet application is among the most widely used computing tools in modern society. It provides excellent usability and usefulness, and it easily enables a non-programmer to perform programming-like tasks in a visual tabular "pen and paper" approach. However, spreadsheets are mostly limited to bookkeeping-like applications due to their mono-directional data flow. This paper shows how the spreadsheet computing paradigm is extended to break this limitation for solving constraint satisfaction problems. We present an enhanced spreadsheet system where finite-domain constraint solving is well supported in a visual environment. Furthermore, a spreadsheet-specific constraint language is constructed for general users to specify constraints among data cells in a declarative and scalable way. The new spreadsheet system significantly simplifies the development of many constraint-based applications using a visual tabular interface. Examples are given to illustrate the usability and usefulness of the extended spreadsheet paradigm. KEYWORDS: Spreadsheet computing, Finite-domain constraint satisfaction, Constraint logic programming