Question: How do I search for maxima on a polygon constraint?

So in multivariate calculus there is a function called Lagrange Multipliers that searches for maxima, minima and saddle points on a 3d surface with an algebraic as a constraint. I was wondering if there was a way to do something similar on a polygon constraint by feeding the corner points to a procedure and returning all extrema and saddle points? Ideas I've had so far is using the directional derivative on the corners in the direction towards the next corner and looking if it is bigger or equal than 0 if multiplied with the directional derivative towards the previous corner (if yes, extrema or saddle point, if no not) however this adresses only corners and there may be extrema on the lines between the corners too. What should I do for that? 

Please Wait...