2
$\begingroup$

I have a problem of the form

$min\quad |e|,\quad x_1 - x_1',\quad x_2 - x_2',\quad x_3 - x_3'$

$subject\ to\quad \sum x_n <= x_{tot}$

$and\quad (1) \sum f_n(x_n)=K-e$

$and\quad x_1 <= x_1',\quad x_2 <= x_2',\quad x_3 <= x_3'$

In the domain I'd like to apply this problem, I can not use a linear programming solver (on embedded hardware) and the solve rate required is >100Hz/sec, so I would like to create an O(1) solution.

I'd like to extract a series of simple equations from this problem ($x_1=..., x_2=...$) so that given any combination of inputs $x_{tot}, K, x_n'$, I can solve optimal $x_1, x_2, x_3$. Variable $e$ included for best achievable solution when the problem can not be solved because of $(1)$.

Is there a general (simply understood) method of doing this and verifying its correctness?

  • 0
    Sorry I have amended the first post, $k_1$ should have been a function. In the more complex problem I have, $k_1$ now $f(x)$ is a yaw rate and $x$ are all actuators aiming to achieve a particular yaw rate given maximum available actuator forces and many parallel actuators. $x_n'$ are the maximum force each actuator can apply, and no one actuator is able to achieve the target rate on its own.2017-01-05
  • 0
    Err, now I don't understand the equation $f(x_n) = g(x_n)(e?)$. What is the $e?$ mean?2017-01-05
  • 0
    I don't know much about linear programming but in a paper I read, $e$ had to be added so that if all $x_n$ must exceed $x_n'$ the system can still solve with some error in the physical system.2017-01-05
  • 0
    How about the functions $f$ and $g$? Are there any more details about what they are?2017-01-05
  • 0
    Sorry I think I made a mistake in the simplification, does this make more sense now?2017-01-05
  • 1
    Ok, sorry for the barrage of questions, but the formulation is still confusing me. Maybe a link to the paper would be helpful?2017-01-05
  • 1
    No worries, I am trying to implement the linear programming problem for solving 4 independent wheel torques on page 53 of Anton Stoop "Masters Thesis: Design and Implementation of Torque Vectoring for the Forze Racing Car" in O(1), link: http://repository.tudelft.nl/islandora/object/uuid:720ca646-2936-4680-9a63-b7665822c83f/datastream/OBJ/download2017-01-05
  • 0
    This is a cool problem. I don't know the best way to solve it; I know mostly about solving very big problems, not solving small problems very fast. My best recommendation is the simplex algorithm, or possibly an interior point method, but I'm not an expert in this. My If you edit the question to include the masters thesis reference, it would help other people to understand the question. It might also create more visibility for the post if you change the title to something exciting like "Fast solution of optimization problem for car torque vectoring"2017-01-05
  • 0
    Thanks for your effort to understand the problem. I will read more on Simplex however I have been trying to avoid solvers as my current algorithm is implemented in Simulink+Matlab and it does not support embedded code generation for solver algorithms. I was able to understand the 2WD scenerio well enough (presented early in the paper) in order to convert it into a simple 2-branch O(1) approximation but cannot generalize the method I used, as it was mostly trial and error. I have a hunch that the 4-wheel scenerio involves $2^4$ eqns, with conditions based on the magnitude order of vars2017-01-05
  • 0
    Ok good luck. The idea of the simplex method for linear programming is that the feasible set of possible solutions forms a convex polytope, and one can walk along the edges of the polytope from vertex to vertex, towards the solution. It is very fast2017-01-05

0 Answers 0