Docsity
Docsity

Prepara tus exámenes
Prepara tus exámenes

Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity


Consigue puntos base para descargar
Consigue puntos base para descargar

Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium


Orientación Universidad
Orientación Universidad


Embolcalls convexos, Apuntes de Matemáticas

Asignatura: Varietats diferencials, Profesor: Juan Monterde, Carrera: Matemàtiques, Universidad: UV

Tipo: Apuntes

Antes del 2010

Subido el 18/06/2008

xequebo2
xequebo2 🇪🇸

4

(212)

406 documentos

1 / 6

Toggle sidebar

Esta página no es visible en la vista previa

¡No te pierdas las partes importantes!

bg1
pf3
pf4
pf5

Vista previa parcial del texto

¡Descarga Embolcalls convexos y más Apuntes en PDF de Matemáticas solo en Docsity!

Amb aquest tema encetem la disciplina anomenada Geometria Computa- cional. Aquesta disciplina tracta de problemas geométrics que es resolen mitjangant algorismes que es poden implementar fácilment en un ordinador. 3.1 Definició d'embolcall convex El primer problema que tractarem és el del cálcul de l'embolcall convex d'un conjunt discret de punts en el pla. Ja hem vist abans la definició de conjunt convex ide l'embolcal] convex quan parlávem de corbes i superfícies de Bézier. poró no és sobrer recordar-les. Definició 3,1 Un subconjunt C de R? es dia que és convex si per a qualsevol parell de punts P,Q E C el segment que els uneíx PQ está inclós en C. Definició 3.2 Si S és un subconjunt de punis de RÍ, el seu embolcall convex, H(P), (envoltura convexa en castella, convex hull en angles) és el menor con- Junt convex que conté el conjunt S. Anem a estudiar el problema de calcular Pembolcall convex d'un conjunt finit, P, de punts en cl pla, Un algorisme que resolga aquest problema tindrá una entrada de dades en forma de conjunt de purts P = [p.p2.Px.. Pob Deixida de Palgorisme, és a diz, la solució del problema, será una representació de l'embolcall convex, H(2”). Com que aquest conjunt és un polígon, aleshores hi ha prou amb una representació del tipus de conjunt ordenat de vértexs del polígon. Per exemple [p2, ps, Pa, P3,P7). 45 P 8 Nolcu que la darrera aresta del polígon de exemple és la definida pels VÓTLEXS Pr, Pa. Noteu també, ¡ara entra en lloc la geometria, que cadascuna de les arestes do Tembolcall convex és un segment tal que els seus extrems, posemenc p id, són punts del conjunt inicial P. A més a més, la recta que defincix cl segment tela propietat de deixar sempre a un costat tots els punts de P. En particular, si pensem en la recta i en la direcció determinada pel vector pg. aleshores tots els punt de P estan a la drota de la recta. Aquest fel important ens permet donar un primer algorisme de calcul de Pembolcall convex. ja que també el recíproc és cert: Si tots els punts de P, tret de y ¡i de q estan a la dreta de la recta determinada pel vector pd, aleshores el segment pg és una de les arestes de Tembolcall convex de P. 3.2 Algorisme lent de cálcul de l'embolcall convex La idea d”aquest algorisme consisteix en agafar tots els possibles parells de punts del conjunt del qual estem calculant l'embolcall convex. Per a cada parell de punts, considerem el vector que defineixen, la recta corresponent i controlem si tots els altres punts estan al costat dret de la recta o no. Si aquest és el cas, aleshores aixd vol dir que el vector definit per cixe parell de punts és una de les arestes de l'embolcall convex. Finalment, una vegada ja tenim totes les arestes, convenien Algorisme EmbolcallConvexLent(P) Inpur Un conjuat finit de punts en en pla, P. Ouput Una Iista, E, que conté els vértexs de Pembolcull convex de P, H(P), seguint V'ordre de les agulles del rellotge l- E-4 2.- — for tots els parells ordenats (p, q) € Px Pambp q 3.- do valid — true 46 Monterde Notcu ara que aixó no és altra cosa que el determinant de la matriu tip Ta Pa hop GP Dones bé, si el determinant dot(pá, p*) és positiu, aleshores el punt 7 esti a Tesquerra de la recta dirigida, mentre gue si cl delerminant ós negaliu, Ñ q det (pe,pr) > 0 det (pq,pr) < 0 3.2.2 Obtenció de la llista de vértex a partir de la lista d'arestes ordenades Les arestes que aparcixen en E són arestes dirigides, és a dir, podem parlar d'un principi i d'un final. Agarrem una primera aresta, pd, i la llevem del conjunt E. Posem el seu origen, p, com a primer vérlex de la lista Ti el scu final, q, com a segon vértex. Busquem ara una segona aresta en E que tinga com a origen el punt q 1 la llevem del conjunt E. Será per tant una aresta de la forma q. Posem el seu final room Y Fent aixó consecutivament, acabarem per tenir només una única aresta en E ¡en eixe moment ja haurem acabat ja que aquesta última aresta necessáriament haurá de tenir el punt y com a final. Noteu que tot aquest procés es pot fer en un temps de l'ordre O(m?), encara que es pot millorar i aconseguir un temps de ordre O(n log n). 3.2.3 Estimació del temps de Valgorisme Si el conjumt inicial P 16 n punts, aleshores podem Cormar n(n—1) parelles de punts distints. Per a cadascuna d'aquesles parclles fem després una compro- vació per cadascun dels punts restants, que són n — 2, És a dir, la complexitat de lalgorisme és de ordre de (77) en total. Un algorisme amb un temps de cálcul d'aquest ordre, cúbic, és massa lent si volem que siga práctic. Només per a conjunts de punis de cardinal menut será viable el cálcul de l'embolcall. Cal millorar Y algorisme. 48 Embolcalls convexos 3.3 Algorisme incremental de cálcul de l'embolcall convex Un algorisme incremental vol dir que alcgirem els punts del conjunt 7? un per un, i actualitzarem la solució cada vegada. Per tal de facilitar encara més els cálculs, ordenarem previament els punts segons el segiient ordre: Direm que un punt p = (p1. pz) és anterior a un altre punt q = (41,92) si pi < qu, és a dir, si la primera coordenada del punt y és menor que la primera coordenada del punt q. o si, en el cas que p, = q1. si po < qa, és a dir, quan les primeres coordenades són la matcixa, considerem les segones. Aquest ordre rep cl nom d'ordre lexicográfic. D'una altra banda, caleularem el polígon que representa P'embolcall con- vex en dues parts: el polígon superior, Ea i Vinferior, Ling. Vúltim pas de Palgorisme consistirá en unir aquestes dues parts. Per tal de calcular F:sap, el que Farem és actualitzar aquest polígon per a cada punt que afegim. En unes altres paraules, si ja hem calculat LA per al subconjunt. de punis p1. Pas... pi—1, el que farom será calcular ££,,,, por al subconjunt p;, po, ---,Pi—1,P4 2 partir de LL ide py. Aix es fa de la segúent mancra; per a qualsevol] polígon, en cada vártex del polígon fem un gir, és a dir, entre la prolongació de l'aresta que té com a final un vériex i Paresta que el té com a origen, hi ha un cert angle. Aquest angle pot ser cap a la dreta o cap a Pesquerra. Doncs bé, per a polígons convexos, Pangle sempre és cap a la drola. Per tan Talgorisme fa el segiient: afegim el punt p, a la ista ao: Noteu que pj és un punt posterior, en Pordre imdical, a Lots els altres punts pi. pa, ,Pi-1> 1 alxó implica que ha d'estar en la Mista Ep AITS que pot passar és que ens vejam obligats a eliminar alguns dels punts de la lista Da Comprovem si els tres últims punts de la llista fan un angle cap a la di Sí aquest és el cas, doncs bé, no hi ha res més a Teri ja tenim la llista Zi, Perú si no és així, si l'angle que defineixen els tres últims punts no és cap a la dreta, aleshores hem d'eliminar el penúltim dels punts de la llista i tornar a fer la mateixa comprovació. Així fins que finalment l'angle siga el correcte o fins que no queden més que dos punts. Algorisme EmbolcallConvex(£?) Input Un conjunt finit de punts en en pla, P. Ouipat Una llista, £, que conté els vériexs de Vembolcall convex de P, II(P), seguint ordre de les agulles del rellotge 1.- Ordena els punts de P segons l'ordre indicat. El resultat será una llista p1,Po,....Pn- 2- Posa els dos primers punts, p, ip» en la llista Lp, amb py en el primer lloc. 2.- fori—3ton A- do afegeix p, a la llista Lo,