Sunteți pe pagina 1din 2

F050317.

xmcd 1/12/2010 1 (2)

Determinarea unui poligonul de m (m=7) laturi


(cu relaŃii de mărime între laturile sale)
de arie maximă într-un poligon convex oarecare cu n (n=5) laturi.
• Originea indicilor ORIGIN := 1
 −0.3   −0.5 
 1   0 
   
• Definirea vârfurilor poligonului dat u :=  2  v :=  3  n := last( u ) n=5
 1.5   5.5 
   
 −2.5   4 
 x y 1
 U 
• (
Definirea laturilor poligonului dat U := stack u , u
1 ) V := stack(v, v1) d ( x , y , k) :=  k
V
k
1

U V 1
 k+1 k+1 
 u 1   u 2 
• Definirea distanŃei între două puncte (
dist u 1 , v1 , u 2 , v2 := ) −
 v1   v2 
   

 x1 y1 1 
last( x)
1 x 1
• FuncŃia arie, funcŃie obiectiv A( x , y) :=
2

∑ y
 k−1 k−1 
k =3  xk yk 1 
 

∑u ( k − 1 ) ⋅ π
• Valorile iniŃiale ale vârfurilor r := 0.5 m := 7 k := 1 .. m gu := x := gu + r⋅ cos2 
last( u ) k  m 

∑v ( k − 1 ) ⋅ π
gv := y := gv + r⋅ sin2 ⋅ 
last( v) k  m 
6

y
2

−2 0 2
U, x
F050317.xmcd 1/12/2010 2 (2)

• RestricŃiile problemei de programare matematică

Given
• CondiŃii ca puntele (xk,yk), k=1,...,m, să fie în interiorul poligonului gazd ă.

 d ( x1 , y1 , 1 )   d ( x1 , y1 , 2 )   d ( x1 , y1 , 3 )   d ( x1 , y1 , 4 )   d ( x1 , y1 , 5 ) 
         
 d(x , y , 1)   d(x , y , 2)   d(x , y , 3)   d(x , y , 4)   d(x , y , 5) 
 2 2   2 2   2 2   2 2   2 2 
 d ( x3 , y3 , 1 )   d ( x3 , y3 , 2 )   d ( x3 , y3 , 3 )   d ( x3 , y3 , 4 )   d ( x3 , y3 , 5 ) 
         
 d ( x4 , y4 , 1 )  ≥ 0  d ( x4 , y4 , 2 )  ≥ 0  d ( x4 , y4 , 3 )  ≥ 0  d ( x4 , y4 , 4 )  ≥ 0  d ( x4 , y4 , 5 )  ≥ 0
         
 ( 5 5 )  ( 5 5 )  ( 5 5 )  ( 5 5 )  ( 5 5 )
d x ,y ,1 d x ,y ,2 d x ,y ,3 d x ,y ,4 d x ,y ,5
d x ,y ,1  d x ,y ,2  d x ,y ,3  d x ,y ,4  d x ,y ,5 
 ( 6 6 )  ( 6 6 )  ( 6 6 )  ( 6 6 )  ( 6 6 )
 d(x , y , 1)   d(x , y , 2)   d(x , y , 3)   d(x , y , 4)   d(x , y , 5) 
 7 7   7 7   7 7   7 7   7 7 
• RelaŃii de mărime între laturile poligonului căutat

( 1 1 2 2) = 1.1 dist(x2 , y2 , x3 , y3)


dist x , y , x , y ( 2 2 3 3) = 1.2⋅ dist(x3 , y3 , x4 , y4)
dist x , y , x , y

dist( x , y , x , y ) = 1.3⋅ dist( x , y , x , y ) dist( x , y , x , y ) = 1.4⋅ dist( x , y , x , y )


3 3 4 4 4 4 5 5 4 4 5 5 5 5 6 6

dist( x , y , x , y ) = 1.5⋅ dist( x , y , x , y ) dist( x , y , x , y ) = 1


5 5 6 6 6 6 7 7 6 6 7 7

 S  := Maximize ( A , x, y)
 
T
• Aria poligonului gazdă: A( u , v) = 16.1
• Aria maximă a poligonului căutat: A( S , T) = 13.798
• Pregătiri pentru realizarea graficului (
S := stack S , S
1) (
T := stack T , T
1)
• Poligonul gazdă cu linie întreruptă
• Poligonul căutat cu linie subŃire
continuă 6

T
2

−2 0 2
U, S

S-ar putea să vă placă și