support

Purpose

Compute the support of the set in the specified direction.

Syntax

s = support(S,x)
s = S.support(x)

Description

Compute the support of the set in the direction given by the point x. The underlying optimization problem to be solved is as follows

../../../../../../fig/mpt/modules/geometry/sets/@ConvexSet/support5.png

where ../../../../../../fig/mpt/modules/geometry/sets/@ConvexSet/support1.png is the point with the desired direction and ../../../../../../fig/mpt/modules/geometry/sets/@ConvexSet/support2.png is the point lying inside the convex Set. The support is returned as the optimal value of the objective function ../../../../../../fig/mpt/modules/geometry/sets/@ConvexSet/support3.png. The dimension of x must be the same as the Set. If an error occurs during by solving the above optimization problem, the support is empty.

Input Arguments

S

Any set derived from ConvexSet class, e.g. YSet or Polyhedron.

Class: ConvexSet

x

The point given as real vector in the same dimension as the ConvexSet.

Class: double

Output Arguments

s

The support is returned as the optimal value of the cost function.

Class: double

Example(s)

Example 1

Describe a convex using YALMIP
x = sdpvar(2,1);

F = set(0.3*x'*x -0.7*x(1)<=1) + set(-x(1)+2.3*x(2)<=0.5);

S = YSet(x,F); 
 Compute the support in the direction of the point v=[1,1] 
      
 v = [1;1]; 

 s = S.support(v) 
s =

          4.22461388383033

Check if the support was computed properly by computing the point ../../../../../../fig/mpt/modules/geometry/sets/@ConvexSet/support4.png
 r = S.extreme(v) 
r = 

    exitflag: 1
         how: 'Successfully solved (SeDuMi-1.3)'
           x: [2x1 double]
        supp: 4.22461388383033

Check the objective value
 r.x'*v 
ans =

          4.22461388383033

Plot the set with the points x, y
 S.plot; hold on; text(v(1),v(2),'\bf x'); text(r.x(1),r.x(2),'\bf y');
Plotting...
26 of 40

../../../../../../fig/mpt/modules/geometry/sets/@ConvexSet/support_img_1.png

See Also

separate, distance


© 2010-2013 Colin Neil Jones: EPF Lausanne, colin.jones@epfl.ch

© 2010-2013 Martin Herceg: ETH Zurich, herceg@control.ee.ethz.ch