Constraint Programming - the Paradigm to Watch

Computer hardware has improved much more than computer software over the last 50years. Moore’s law for its rate of performance improvement is an astounding testimony tothe success of research and development in computer technology. This stunning progress hasbeencomplementedby theinternetrevolution, resultingfrom amarriageofcomputation andcommunication, which fundamentally changes the role of computation - and communication- in our society.Over the last fifty years there has also been a huge investment in software research anddevelopment, and this has yielded some significant benefits. Indeed the internet revolutionwas made possible by advances in both hardware and software.However the early visions of software researchers for provably correct programs; comput-ers that can perceive, think, and communicate like people; and the automatic compilation ofhigh-level specifications into computer programs, have not been realised. Like many otherventures, software research started out with high expectations, and when the goals provedmore challenging than expected some disillusionment set in for a period. Now I believe thisperiod is over, and we have positive and realistic objectives and expectations for softwareresearch.It is striking how much opportunity has now opened up for software advances to makea massive impact. We have:• Unimaginable computing power• Masses of up-to-date data• Huge numbers of users online almost permanentlyThe old software challenges remain - and we will not lose sight of them! - but many newchallenges have arisen:• Supporting information retrieval, maintenance and communication for communitiesof people of different sizes from 1 to a billion• Modelling and optimising the behaviour and plans of organisations, or communities,in relation to other organisations with whom they interact

[1]  Mark Wallace,et al.  Hybrid Algorithms in Constraint Programming , 2006, CSCLP.

[2]  François Laburhe CHOCO: implementing a CP kernel , 2007 .

[3]  A. Konagurthu,et al.  MUSTANG: A multiple structural alignment algorithm , 2006, Proteins.

[4]  Krzysztof R. Apt,et al.  Constraint logic programming using Eclipse , 2007 .

[5]  Edward P. K. Tsang,et al.  Constraint Based Scheduling: Applying Constraint Programming to Scheduling Problems , 2003, J. Sched..

[6]  Sathiamoorthy Subbarayan,et al.  Integrating CSP Decomposition Techniques and BDDs for Compiling Configuration Problems , 2005, CPAIOR.

[7]  Pascal Van Hentenryck,et al.  Solving a Cutting-Stock Problem in Constraint Logic Programming , 1988, ICLP/SLP.

[8]  Giorgio Delzanno,et al.  Model Checking in CLP , 1999, TACAS.

[9]  Pascal Van Hentenryck,et al.  Solving the Car-Sequencing Problem in Constraint Logic Programming , 1988, ECAI.

[10]  Philippe Baptiste,et al.  Constraint-based scheduling , 2001 .

[11]  Peter Jeavons,et al.  The Complexity of Constraint Languages , 2006, Handbook of Constraint Programming.

[12]  Russell Bent,et al.  Online stochastic combinatorial optimization , 2006 .

[13]  Kim Marriott,et al.  The Modelling Language Zinc , 2006, CP.

[14]  David H. Wolpert,et al.  No free lunch theorems for optimization , 1997, IEEE Trans. Evol. Comput..

[15]  Bart Demoen,et al.  Heap Memory Management in Prolog with Tabling: Principles and Practice , 2001, J. Funct. Log. Program..

[16]  Philippe Codognet,et al.  Design and Implementation of the GNU Prolog System , 2001, J. Funct. Log. Program..

[17]  Andrew J. Parkes,et al.  Clustering at the Phase Transition , 1997, AAAI/IAAI.

[18]  Andreas Podelski,et al.  Constraints in Program Analysis and Verification , 2004, CP.