4

I'm running an experiment consists in setting voltages on a set of 4 gates in an electronic device, and performing a measurement that will return a probability of success. My goal is to set the gates to a specific value that maximises the probability of success.

I can make a good initial estimate of the gate voltages I need, but I would then like to optimise over a bounded range of gate space, to maximise the probability of success.

The main issue that even though the 4D parameter space is not so large (average step in parameters is 1/10 of the bounded range), the measurement is very slow (~5 seconds), so going through the entire space by brute force will take too long.

So I am looking for an optimisation algorithm to do a more efficient walk through my gate voltage space and find the maximum success probability from my experiment.

SuperNano
  • 155
  • Do I understand you correctly that the input is an array of length 4 and the output is a probability? How many measurements do you have, meaning how many resulting probabilities do you have. What are you trying to optimize? – Michael Paris Sep 03 '18 at 13:30
  • Correct, the input is an array of length 4 and the output is a single probability. I make a single measurement per input and I want to find the input that results in the highest output probability. – SuperNano Sep 03 '18 at 14:05
  • 1
    You might be interested in "response surface methodology". https://en.wikipedia.org/wiki/Response_surface_methodology – awkward Sep 03 '18 at 18:32

1 Answers1

2

Crude possible answer. Your "$1/10$ of the range" for step size for each parameter means a brute force search would require $10^4$ experiments. You could consider a local search algorithm that evaluates at the $3^4 = 81$ points that divide each parameter interval in quarters. Then look near the single point that offers the maximum so far. That might reduce the number of measurements from ten thousand to some hundreds.

Whether a strategy like this is likely to find a value at (or near) the maximum depends on how regular/convex the objective function is. If it actually has a single maximum at the top of a single hill you will be close. If it oscillates a lot as a function of parameter values you are out of luck.

Edit. Actually, brute force would call for $11^4$ evaluations since you want to check at the boundary points too. That makes this a fence post problem. But the essence of my suggestion is unchanged.

Ethan Bolker
  • 95,224
  • 7
  • 108
  • 199
  • Thanks, I'll give it a shot. I believe the objective function is fairly smooth, but it gets exponentially steep as it approaches the maximum, so I am a bit worried that the coarser search might miss it. But this is simple to implement so it's worth a try. – SuperNano Sep 03 '18 at 14:10
  • I think steep near the maximum is good/helpful. Let me know how it works out (here or at my email, which is easy to find).(Note my edit, suggesting only internal points for the first round.) – Ethan Bolker Sep 03 '18 at 14:14
  • Hi Ethan, just to let you know, in the end it has been good enough to look at single gate sweeps and optimise over 1 dimension at a time. Mi starting point is good enough that after a couple of iterations through each gate I can get a satisfactory gate space. The nice thing about doing it this way is that I can do slightly higher resolution sweeps, which makes outlier erratic measurements easier to spot. – SuperNano Sep 21 '18 at 14:37