4 ms·
Using constraint programming to schedule generic experiments in an automated lab. Experiments are complex and fragile so we expose a dsl for describing the cons
by escot 7y ago
Using constraint programming to schedule generic experiments in an automated lab. Experiments are complex and fragile so we expose a dsl for describing the constraints and objectives of each task so that the biology/chemistry doesn't go awry. One of the hardest parts of this isn't the optimization but the upfront work of defining what is/isn't necessary to be able to encode about an experiment. You want the api to provide as much control as possible without allowing the author to over constrain the problem, or introduce irrelevant steps into an experiment just because that's how they're done by hand.
- dcardoza 7y agoThat's really cool! I just started learning about constraint programming using Z3, and scheduling is the first area I'm looking at. Do you have any advice or resources you found useful? Much of the underlying theory goes over my head, but I'm not sure how much of it I need to be productive.
- randomlabrat 7y agoI wish you all the best working on this problem, very challenging and worthwhile in my opinion. I've worked for 6 years in (mostly unautomated) chemistry and biology labs, and know how finicky experiments can be (in expected and unexpected ways...)