This note contains some ideas about linear programming and most-orthogonal faces. They’re mostly on an intuitive level and not very formal.
Postscriptum: The ideas here don’t work.
Maximize
-
$\x$ is a vector of$n$ variables$x_i$ . -
$A$ is a$m× n$ matrix: there are$m$ constraints$A_j \x \leq b_j$ .
We make the following assumptions:
- The system
$A\x\leq \b$ has a solution. - None of the
$m$ constraints is redundant: for each constraint there is a solution such that equality holds in$A_j\x \leq b_j$ . - All of the constraints satisfy
$\t A_j > 0$ , meaning that the point at$-∞ ⋅ \t$ is a solution.- This actually feels quite limiting, but I’ll keep it to keep things simple.
- Without this constraint, the most-orthogonal face could be on the wrong/opposite side of the polygon.
Suppose
For general
To filter out near-orthogonal faces that are behind
- Only consider the part of the angle orthogonal to the angle between
$t$ and $Aj_1$.- This removes a bit too much information, since in the same plane there could be faces with a small angle in the opposite direction.
- Remove from the angle any component in the same direction as the angle
between
$t$ and $Aj_1$. - Do some change of basis so that face
$j_1$ is not nearly orthogonal anymore (maybe by making$\t$ and $Aj_1$ basis vectors?) and find the most-orthogonal face after the transformation.
Then ideally we can repeatedly find the most-orthogonal face and once we
find