0
$\begingroup$

I'm attempting to make an optimization algorithm for machine alignment that uses piezoelectric motors to work. Essentially, I gather the net movement of my motors on two axes and the resulting efficiency of the alignment. These motors move in "steps", and I can actively track how well optimized my alignment is as well as the number of steps taken in a given direction, but the distance moved by a single step is imprecise. A step forwards and a step back do not bring me back to the same location due to the inner workings of the motor, so I can have two different efficiencies corresponding to the same coordinates, and the impact of the motors imprecision becomes more severe with time. In effect, this means that I can only really use the last three or four readings at maximum to try to find my next movement -- anything beyond that is too unreliable.

Thus far I've been using a "dumb" algorithm that simply moves in one direction, measures if the efficiency has gone up, and either takes another step forward or two steps back depending on if it did or not. It repeats this until I'm happy. It works decently, but is not anywhere near as dynamic or resistant to local maxima as I'd like it to be.

Any suggestions for algorithms that use minimal, somewhat unreliable data to optimize? I've also attempted some forms of gradient ascent, but they all inevitably require too many steps for the end-calculation to be reliable.

$\endgroup$
2
  • 1
    $\begingroup$ I'm finding it hard to understand the problem statement. It seems to require domain knowledge about stepper motors, which is beyond the scope of this site, and I don't know what efficiency means. Is there a specific question about computer science? The question needs to be formulated in a way suitable for solving by computer scientists, which means you need to formulate the problem statement so we don't need any knowledge about stepper motors etc. "somewhat unreliable data to optimize" is pretty vague/broad, and I don't understand why gradient ascent is unsuitable. $\endgroup$
    – D.W.
    Commented Aug 7 at 21:54
  • $\begingroup$ (Sample the plausible range. When there are multiple regions with similar top efficiency, prefer the "centre" one - ?) $\endgroup$
    – greybeard
    Commented Aug 8 at 4:35

0

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Browse other questions tagged or ask your own question.