Assume I have a program which we'll model as bool Worked = f(param1,param2,...)
Assume these parameters are positive integers, and a starting set exists s/t Worked returns true. Is there a smarter way than parametric sweep to map/estimate the stable surface of the parameters, that is, the surface under which the function will return true? You can assume any intermediate values would work - that is, if 32 and 64 worked for a parameter ceteris paribus, any value between them would also work.
- 151
2 Answers
This is similar to a constraint satisfaction problem, except you want to map the entire feasible region vs. find a single point.
Given your connected constraint, then parameter sweep is not efficient. At the least, for coordinate-axis searching you could do binary search.
(On the left, which is bounded by 1 below. On the right you could say preface this by first finding an infeasible point by searching out exponentially, e.g. 2,4,8,...)
- 12,950
There is a similar problem in the are of on-line motion planning, which is about finding an unknown point in an unknown (and unobservable) 2D terrain. This paper presents an optimal solution that can find this single point. Maybe there are similar algorithms which can also work with higher dimensional spaces.
In that case, you may be able to modify these algorithms to identify the furthest points and then build your surface from there.
- 2,661
Worked == True. You're right, though, my suggestion may not be the solution that OP is after, or even a helpful proxy for it. – Sycorax Jun 21 '17 at 19:05