informarte / yuck

Yuck is a local-search constraint solver with FlatZinc interface
Other
56 stars 11 forks source link

Feature Request: Warm Start #7

Closed Colelyman closed 4 years ago

Colelyman commented 4 years ago

Hi @informarte,

Thank you for the excellent solver! I have been experimenting with it and it seems to perform well. I deal with models that have especially large numbers of parameters (> 75k), and I was thinking that a warm start procedure could be a useful feature for yuck.

I'm not sure if this feature is on the roadmap, but I may be able to help implement it. I assume that currently the variables are randomly assigned. Any pointers of where this is done in the code would be very helpful! As well as any thoughts on the feasibility of implementing this.

Thanks, Cole

informarte commented 4 years ago

Hi @Colelyman,

warm starting is on my roadmap and it might be a low-hanging fruit. Assigning values according to warm-start annotations is easy but additional work and experimentation will be necessary to keep simulated annealing from immediately scrambling the initial assignment.

Currently, however, I am working on improving Yuck's performance on vehicle routing problems and it will keep me busy for some time. So if you are interested in warm starting and have some time to contribute to Yuck, I will be happy to support your work on this feature.

Some pointers and suggestions:

I hope this helps you to get started. If you need more information, don't hesitate to contact me.

Michael

Colelyman commented 4 years ago

Excellent!! This is very helpful, thank you very much. I hope to be able to work on it soon (realistically within the next few months).