We have a frequent problem that we deal with in a research environment that essentially boils down to finding the optimum conditions in a certain experimental space. At the moment we essentially solve this by human learning, with a scientist who will perform sequential tests on the variables, refining his understanding of the system after each test and gradually refining towards an optimum, usually by discarding unimportant factors and focusing on the important ones.
We've tried using a design of experiment approach to refining this, but it's often prohibitively expensive (due to exhaustive testing of unimportant factors that could quite quickly be discarded after a few tests), we'd like to try a more rigorous active learning approach which is capable of more structurally doing what our human is doing.
As an illustrative example, our experimental space might look like this:
- factor 1, categorical factors with 4 levels
- factor 2, categorical factor with 2 levels
- factor 3, continuous factor typically with 3 levels, but easily expandable
- factor 4, continuous factor typically with 3 levels, but easily expandable
Would this be something we could implement an active learning approach around, and if so, what would be a suitable framework for doing so?
Edit: After a bit of research it seems reinforcement learning might be better terminology for what I want to do rather than active learning.
notes: I have some experience in Python and R