Kreizhn
- 714
- 1
I'm trying to minimize a function over a rather complicated surface. I'm using an algorithm that takes an initial guess, finds the tangent plane at that point, minimizes using a linear programming algorithm, then (tries to) project back onto the complicated surface.
More specifically, if \xi is a vector and H(\xi) is the surface, I want to solve the linear programming problem
\min c^T \xi, \quad \text{subject to } \nabla H(\xi) (\xi - \bar \xi) = 0
Now my problem is that I'm having trouble setting up the constraints. This wouldn't normally be difficult, except that my surface is parameterized as
H(\xi) = X_f(\xi) - X_d
where X_f, X_d are matrices.
Normally in these cases H(\xi) is at worst vector-valued and so \frac{\partial H}{\partial \xi_j} is a vector so that \nabla H(\xi) is a matrix. However in this case \frac{\partial H}{\partial \xi_j} is itself a matrix.
How do I handle this? Do I ``vectorize'' \frac{\partial H}{\partial \xi_j}? Do I break it into real and imaginary parts then vectorize? I'm not sure how to handle this.
More specifically, if \xi is a vector and H(\xi) is the surface, I want to solve the linear programming problem
\min c^T \xi, \quad \text{subject to } \nabla H(\xi) (\xi - \bar \xi) = 0
Now my problem is that I'm having trouble setting up the constraints. This wouldn't normally be difficult, except that my surface is parameterized as
H(\xi) = X_f(\xi) - X_d
where X_f, X_d are matrices.
Normally in these cases H(\xi) is at worst vector-valued and so \frac{\partial H}{\partial \xi_j} is a vector so that \nabla H(\xi) is a matrix. However in this case \frac{\partial H}{\partial \xi_j} is itself a matrix.
How do I handle this? Do I ``vectorize'' \frac{\partial H}{\partial \xi_j}? Do I break it into real and imaginary parts then vectorize? I'm not sure how to handle this.