Modelling and Problem Formulation who cares?. 1. Why do you consider modelling and problem...

29
Modelling and Problem Formulation who cares?

Transcript of Modelling and Problem Formulation who cares?. 1. Why do you consider modelling and problem...

Page 1: Modelling and Problem Formulation who cares?. 1. Why do you consider modelling and problem formulation to be an interesting and worthwhile subject to.

Modelling and Problem Formulationwho cares?

Page 2: Modelling and Problem Formulation who cares?. 1. Why do you consider modelling and problem formulation to be an interesting and worthwhile subject to.

1. Why do you consider modelling and problem formulation to be an interesting and worthwhile subject to research i.e. why is the area interesting to you?

2. What do you consider to be the "big questions/issues" in this area?

3. What does your research contribute to this area?.

4. Is there anything else that you would like to say?

Page 3: Modelling and Problem Formulation who cares?. 1. Why do you consider modelling and problem formulation to be an interesting and worthwhile subject to.

This is the main and the first problem of users that want to use constraintprogramming.

When I presented Constraint Programming to George Nemhauser I told him:"Usually the first model does not work. I don't know if it is the samethings for Linear Programming". He answered me: " In LP the first modelNEVER works !".

Modelling is the application of theory to practice.This is the main issue to solve problems.

They are several aspects:

- identification of the difficulties of a problem (hard parts, symmetries)- resolution of these difficult parts- combination of these resolutions- semantic of the problem has to be taken into account (inside constraint, as heuristic).

I don't believe in general ways, but all these parts are research areas

Jean-Charles Regin Why is it interesting and worthwhile?

Page 4: Modelling and Problem Formulation who cares?. 1. Why do you consider modelling and problem formulation to be an interesting and worthwhile subject to.

jcr Big questions/issues?

Honestly, the idea of declarative programming (i.e. first declare the problem, then and independently solve it) is wrong.

Can we model a problem without considering the method that we will use to solve it? I think the answer is no.

I am able to propose complex model or non obvious model because I knowwhich kind of filtering algorithms are available, I know how they work andI know what I have to do in order to benefit of their power.

Page 5: Modelling and Problem Formulation who cares?. 1. Why do you consider modelling and problem formulation to be an interesting and worthwhile subject to.

jcr What does your research contribute?

filtering algorithms for global constraints (alldiff, global cardinality constraint, gac-schema, sequence ...)

CP'99 on solving subCsp on the fly. The introe xplains the problem of modelling and some examples are given at the end.

DIMACS: I tried to define what is a good model.

PPDP 99: I present two models for solving sport-scheduling problems.

ICTAI'99: The modelling aspect of over-constrained problems are detailed.

Page 6: Modelling and Problem Formulation who cares?. 1. Why do you consider modelling and problem formulation to be an interesting and worthwhile subject to.

jcr Anything else to say?

General idea about modelization are usually useless.

Everything that we know can be used. For modelling, we have to accept theidea that a mix of a lot of ideas is better than a simple/pure model basedonly on one representation.

Page 7: Modelling and Problem Formulation who cares?. 1. Why do you consider modelling and problem formulation to be an interesting and worthwhile subject to.

The 3 most important things in AI are:

representation, representation, representation.

Come up with a good representation and evena bad algorithm can solve the problem. Use a badrepresentation, and even a good algorithm will notsave you from the combinatorial explosion. Modellingis finding that representation.

Toby Walsh Why is it interesting and worthwhile?

Page 8: Modelling and Problem Formulation who cares?. 1. Why do you consider modelling and problem formulation to be an interesting and worthwhile subject to.

Toby Big questions/issues?

What are the variables?What are the (implied) constraints?How do I cope with the problem's symmetry?How do I select an algorithm for a model? - how do I chose a good (variable/value ordering) heuristic for a model?

Page 9: Modelling and Problem Formulation who cares?. 1. Why do you consider modelling and problem formulation to be an interesting and worthwhile subject to.

Toby What does your research contribute?

Identifying patterns that many constraint models fall into.

For example, our recent work on "matrix models" highlightshow problems of many different types can be modelledeffectively with matrices of decision variables with commontypes of constraints posted over them (e.g. symmetry breakover rows/cols, row or col sum constraints, ...). Constraintsover matrices and matrix operators can therefore be madeprimitives of the constraint programming language.

Page 10: Modelling and Problem Formulation who cares?. 1. Why do you consider modelling and problem formulation to be an interesting and worthwhile subject to.

- it is the driving engine behind the development of new constructs, improved solvers, new languages. For instance, if someone develops an improved CLP(x) for domain x but with no foreseeable applications, what is the use? However, if I am working on a problem, and I can formulate it in a very elegant way, providing I use domain x -- that is a much more desireable situation.

Tony Kusalik Why is it interesting and worthwhile?

part of the way to make CP and CLPs more successful is by finding successful applications, and in particular REAL applications. TO solve real problems usually means having to go far beyond the known solution in a textbook. And elegant solutions often require modelling the problem in innovative ways.

Page 11: Modelling and Problem Formulation who cares?. 1. Why do you consider modelling and problem formulation to be an interesting and worthwhile subject to.

Simplifications in SAT instances can significantly affect the searcheffort

Ines Lynce Why is it interesting and worthwhile?

Page 12: Modelling and Problem Formulation who cares?. 1. Why do you consider modelling and problem formulation to be an interesting and worthwhile subject to.

Ines What does your research contribute?

Brings different simplification techniques that can be applied to SATinstances during preprocessing.

Page 13: Modelling and Problem Formulation who cares?. 1. Why do you consider modelling and problem formulation to be an interesting and worthwhile subject to.

Andrew Davenport

Firstly, I haven't used mainstream CP for a few years now. I do spend a lotof time solving real world problems, but they are either far too messy tosolve using CP techniques, or are (relatively) straightforward optimizationproblems where we have used integer programming techniques.….I will instead focus on my experience with messy problems.

In my experience, messy problems (such as steel problems I am working onnow, not the ones we gave Toby) cannot really be modelled or solved using existing CP / IP solvers. CP does not handle optimization very well: problems we deal with usually have many different conflicting optimization objectives and hard and soft constraints, and are usually extremely large (10,000's of variables). … The solution techniques to these problems usuallyincorporate a lot of expert domain knowledge. Small chunks of the problemcan sometimes be handled as a traditional optimization problem, but theseusually correspond to well known OR problems such as set packing / covering / TSP / multiple knapsack problems, with lots of side constraints added.

Why is it interesting and worthwhile?

Page 14: Modelling and Problem Formulation who cares?. 1. Why do you consider modelling and problem formulation to be an interesting and worthwhile subject to.

Andrew Davenport

An important feature of these, and in fact all real world problems, is that the problem specification is continually changing as theuser realizes they missed constraints

I guess the point of all this is that I believe research into modelling andproblem formulation should take into account the software development lifecycle for optimization consultancy projects

Anything else?

In answer to the rest of your questions, my research contributes nothing inthis area, and I have nothing else to say.

I would be very interested to hear how other people respond to yourquestions.

Page 15: Modelling and Problem Formulation who cares?. 1. Why do you consider modelling and problem formulation to be an interesting and worthwhile subject to.

Steve Prestwich

I think that modeling is important for the obvious reason thatchoosing the right model can be as important as choosing the rightsearch algorithm.

Another reason I'm interested in modeling and formulation is that somemodels give good computational results, but grow too quickly withproblem size for practical use. So there's a challenge in finding better

formulations or more expressive languages.

Issues:

Matching models and search algorithms. Are there any guidelines?

* Use of an expressive language or formalism. I guess that theproblem should be fairly naturally modeled, without the need for toomany auxiliary variables, and (for backtrackers) giving goodconstraint handling.

* Symmetry breaking and implied constraints.

Page 16: Modelling and Problem Formulation who cares?. 1. Why do you consider modelling and problem formulation to be an interesting and worthwhile subject to.

Ian Gent

I seem to be pro-formulation today … (30th October 2001)

Why interesting?

• Curiosity: it's often very cute.• Importance: in many cases finding the right formulation is fundamental to solving it.

Issues:

Understanding the interaction between formulation and algorithm. There is no good or bad formulation: it's the action of your search algorithm on yourformulation which is good or bad.

Contribution:I've proposed the "Fundamental Conjecture of Reformulation". Thissuggests that it may always be possible to do as well theoretically byreformulating as by using a specialised algorithm: so why do anythingelse?

Page 17: Modelling and Problem Formulation who cares?. 1. Why do you consider modelling and problem formulation to be an interesting and worthwhile subject to.

Christian Bessiere

Why interesting?My main concern is rapidity of problem solving. As soon as you know that a stupid solving technique on a smart formulation of a problem can outperform a smart algorithm on a stupid encoding, you understand why i'm interested in that.

Issues:Will it, one day, be possible to automaticallly build good encoding of any problem, or will we always need the know-how of some human modeller?

Dual question: Will we have, one day, smart enough heuristics, that they won't care the quality of the modelling of the problem? (automaitic handling of symmetries, automaitc detection of useful propagations hidden in implicit constraints, etc.)?

Contribution:Not too much, unfortunately. In the past, some modelling expertise of industrial problems.

And some thoughts on the exciting Ian's conjecture!

Page 18: Modelling and Problem Formulation who cares?. 1. Why do you consider modelling and problem formulation to be an interesting and worthwhile subject to.

Chris Beck

Why interesting? I'm mostly motivated in this area by "way out" AIish ideas. There's thatclassic puzzle (due to Simon?) about the mangled chess board. If you remove diagonally opposite corners of a standard chess board, can you completely tile the remaining surface with dominos where each domino is the size of two chess board squares. This is difficult until you realize that the opposite corners must be of the same color and each domino must cover two squares with different colors: so it is impossible. The insight here is that the color of the chess board squares is "interesting" where a priori the color is meaningless and arbitrary.Issues:

An interesting theoretical/complexity issue is what are the limits toreformulation in terms algorithm efficiency.

Another big issue is obviously creating algorithms that can automaticallyreformulate a problem or subproblem.

Contribution:Nothing (yet ;)

Page 19: Modelling and Problem Formulation who cares?. 1. Why do you consider modelling and problem formulation to be an interesting and worthwhile subject to.

Carmen Gervet

Why interesting? because we believe that the quality of solutions to CS(O)P depends as much on the algorithm as the problem formulation. Most research has focused on the former so time has come to concentrate some effort on the latter ! Plus with CSP solutions being more widespread in industrial software the idea of natural/understandable/easily maintanable formulation is essential.

Issues:The modelling gap between the formulation and the natural problemspecification. Does a formulation that is as close as possible to the natural mathematical specification of a problem allow us to see/extract new information that we would not see otherwise.

Contribution:We believe the answer to the above issue is yes so we currently focus onmodelling configuration problems essentially based on sets using sets andidentify what additional information we can use in the program that would becumbersome to model using other objects and constraints. and one would not evensee that such information can enrich the problem formulation if alternativemodels are used.

Page 20: Modelling and Problem Formulation who cares?. 1. Why do you consider modelling and problem formulation to be an interesting and worthwhile subject to.

Peter van Beek

Why interesting? I am intrigued by the potential for exponential improvements. Thereappear to be three broad ways to improve a constraint programmingsolution: the algorithm, the model, and the heuristic. Backtrackingalgorithms have been thoroughly studies and, although I may still besurprised, it appears that chances are slim of finding a new techniquethat will lead to an exponential reduction in problem solving timeon some CSPs. However, modeling has been little studied so far andthe chances seem greater of devising automatic modeling techniquesthat will lead to exponential reductions in problem solving timeon at least some CSPs.

Page 21: Modelling and Problem Formulation who cares?. 1. Why do you consider modelling and problem formulation to be an interesting and worthwhile subject to.

Peter van Beek

Issues:Adding hand-crafted redundant constraints to a CSP model can workamazingly well. Can the discovery of such constraints be automated?Can techniques be discovered that work nearly as well? If so, thiscould have a dramatic impact on the field since currently devisinga good model requires a lot of expertise.

Page 22: Modelling and Problem Formulation who cares?. 1. Why do you consider modelling and problem formulation to be an interesting and worthwhile subject to.

Peter van Beek

Contribution:With others (T. Walsh, F. Bacchus, X. Chen), I have looked at partialorders of alternative models. The models we looked at are non-binarymodels which are automatically translated into binary models calledthe dual and the hidden model, respectively. The idea is to discoveror prove results about whether two models are incomparable (there existcases where one is exponentially better than another and vice versa)or are comparable (for example, one model is always better than anotheror one model can only be bounded worse than another).

I have also done case studies where we looked at the effect of differentmodels on efficiency (using crossword puzzles as a test bed) and theeffect of adding redundant constraints on efficiency (using instructionscheduling as a test bed).

Page 23: Modelling and Problem Formulation who cares?. 1. Why do you consider modelling and problem formulation to be an interesting and worthwhile subject to.

Ian Miguel

Why Interesting?:A good model can make all the difference. Because general CSP solverscannot afford to perform strong propagation, the model must help byidentifying structure in the problem that we know how to deal witheffectively. A simple example is the choice between a clique of not-equalsconstraints and an all-different constraint.

Issues:The automatic transformation of a basic model into one which is likelyto be much more easy for a general solver to deal with. Often this willinvolve the addition of extra implied constraints.

Contribution:The CGRASS (Constraint GeneRation And Symmetry-breaking) system weare working on is an attempt to realise my answer to q2. It is based ona proof-planning like system, using `methods' that encapsulatewhat we know about generating useful implied constraints to transforman input model.

Page 24: Modelling and Problem Formulation who cares?. 1. Why do you consider modelling and problem formulation to be an interesting and worthwhile subject to.

Evgeny Selensky

Why Interesting?:1. it allows one to view a problem from different perspectives;depending on circumstances one formulation can be better than another;2. it helps us distinguish more important parts of a problem fromless important ones and see what features contribute to the problem'sbeing hard or easy;3. (related to 2) a very detailed model does not always mean a very accurateone; so this again helps us find out the key features of a problem.4. reformulation in the small (at the implementation level) shows ushow significant different ways of encoding the same problem feature can be;6. finally, reformulation (especially reformulation across problem classes)can be helpful in developing hybrid techniquesfor problems that have features from different domains.

Page 25: Modelling and Problem Formulation who cares?. 1. Why do you consider modelling and problem formulation to be an interesting and worthwhile subject to.

Evgeny Selensky

Issues:1. reformulation across domains vs reformulation within a problem class;2. theory of reformulation would allow to convincingly prefer oneformulation over another;

Contribution:

I am looking at the reformulation between problem domainsas well as more finely grained reformulations such asdifferent ways of encoding the same features of a problem;For the case of jssp-vrp reformulation I am hopingto find out what features make the vrp techniques betterfor vrp problems than for job shop and the other way around.This, in turn, would lead to practival recommendationsas to which technique to prefer in practice when we deal with mixedproblems.

Page 26: Modelling and Problem Formulation who cares?. 1. Why do you consider modelling and problem formulation to be an interesting and worthwhile subject to.

Barbara Smith

Why Interesting?:Because I am continually amazed at the huge effect on performance a minor change in formulation can have. And it's (apparently) so easy! You don't have to develop a new algorithm, and put in all the effort of coding, testing etc. Just be smart! (Of course the opposite can happen too - a minor change downgrades performance hugely.) So I guess that we're trying to beat the worst-case complexity odds - if you only need a feasible solution, then once you've found one you're done. And in theory, if you could only find the right model/formulation/search strategy you would be able to find a solution quickly. (Doesn't help if you're optimizing or there's no solution, of course.)

Page 27: Modelling and Problem Formulation who cares?. 1. Why do you consider modelling and problem formulation to be an interesting and worthwhile subject to.

Barbara Smith

Issues:How to beat the odds without having to be (super-)smart. Knowing what the best model is for a problem. Knowing how to recognise the best model anyway.

Contributions:Looking at particular cases and trying to draw general lessons. e.g. Considering classes of problem (e.g. permutation problems) and how to deal with them. Dealing with symmetry in models.

Page 28: Modelling and Problem Formulation who cares?. 1. Why do you consider modelling and problem formulation to be an interesting and worthwhile subject to.

Patrick Prosser

Why Interesting:Imagine some other domain (motor cycle racing) where you can get such a performance improvement at such a small cost. That's got to be interesting

Contributions:Stable marriage, shows how we can represent an algorithm!Problem Reformulation and Search project investigates mappingsbetween toolkits. 0/1 encoding study shows that the story might have no end.

Issues:For a given problem is there a "natural" representation? How do the features of the problem affect how we should represent andsolve the problem. Think of toolkits, such as Dispatcher and Scheduler.Why do we need 2 tools when the problems really are the same?

Page 29: Modelling and Problem Formulation who cares?. 1. Why do you consider modelling and problem formulation to be an interesting and worthwhile subject to.

Conclusions

?