Anda di halaman 1dari 7

Geometría Computacional.

¿Que es la geometría computacional?

La geometría computacional es una rama de


la ciencia de la computación encargada del
estudio sistemático de algoritmos y
estructuras de datos necesarios para la
solución eficiente de problemas que implican
como entrada y salida objetos geométricos y
emergió en la década de 1970. Su aplicación,
va desde el diseño de los VLSI, hasta el CAD
(Computer-Aided Design), el CAM, computación gráfica y GIS (sistemas de
información geográfica).

El término Geometría Computacional (GC) fue quizás utilizado por primera vez por
Marvin Minsky en su libro Perceptrons (reconocimiento de patrones) y también ha
sido usado frecuentemente para describir algoritmos para manipular curvas y
superficies en modelado de sólidos.
Debido a su historia, el campo de la GC se ha
enfocado principalmente en problemas en un espacio
2-dimensional y en un grado menor en el espacio 3-
dimensional. En GC cuando se consideran problemas
en espacios multi-dimensionales, se asume
generalmente que la dimensión del espacio es una constante pequeña (µ<10).
Debido a que la GC ha sido desarrollada por investigadores cuya formación fue en
algoritmos discretos (opuesto al análisis numérico) el área también se ha enfocado
más en la naturaleza discreta de los problemas geométricos.
La GC se ocupa sobre todo del estudio de objetos rectos o planos (líneas,
segmentos de línea, polígonos, planos, y poliedros) y objetos curvos simples como
círculos. Al contrario del modelado de sólidos que se enfoca en el estudio de curvas y
superficies y sus representaciones.
Fortalezas de la Geometría Computacional.

Desarrollo de herramientas geométricas: Antes de que la GC existiera, se


desarrollaron muchas soluciones ad hoc a problemas geométricos computacionales,
algunas eficientes, otras no tanto e incluso algunas incorrectas. Debido al rigor
matemático de la GC se han hecho grandes progresos en el establecimiento de
soluciones algoritmicas correctas y de probada eficiencia para
muchos de estos problemas.

Énfasis la eficiencia comprobable: Previo al desarrollo de la GC se tenía poco


conocimiento acerca de la complejidad computacional de muchos cálculos
geométricos. La GC puso las bases firmes para el análisis de la complejidad
asintótica, y en algunos casos ha hecho posible probar que los algoritmos
descubiertos en esta área son óptimos.

Énfasis en la correctez y robustez: Antes del desarrollo de la GC muchos de los


sistemas de software que se desarrollaron tenían errores que surgían de la
confluencia de la naturaleza continua de la geometría y de la naturaleza discreta de
la computación. La investigación en GC ha fomentado el cálculo correcto y robusto
de primitivas geométricas basado en fundamentos matemáticos sólidos.

Limitantes de la Geometria Computacional.

Énfasis en geometría discreta: Existen muchas áreas de aplicación en las cuales los
objetos son de naturaleza continua, por ejemplo en la física computacional, la
planificación de movimientos, el cómputo de la dinámica de fluidos, etc. Debido a su
naturaleza discreta, la GC no puede resolver completamente las necesidades de
todas estas áreas de aplicación.

Énfasis en objetos planos: Otra limitante es el hecho de que la GC trabaja


principalmente con objetos rectos o planos. En gran parte, ésta es una consecuencia
del interés de los investigadores en la complejidad geométrica discreta, en oposición
a las matemáticas continuas. Por otra parte, probar la correctez y eficiencia de un
algoritmo es posible solamente cuando todos los cálculos están bien definidos.

Aplicaciones de la Geometria Computacional.

Diagramas de Voronoi y triangulaciones de Delaunay.


Es una red de triángulos que cumple la condición de Delaunay. Esta condición dice
que la circunferencia circunscrita de cada triángulo de la red no debe contener
ningún vertice de otro triángulo. Se usan triangulaciones de Delaunay en geometría
por ordenar, especialmente en gráficos 3D por computadora.

Convex Hull

Problema

Convex Hull o CH; este crea un subconjunto S de un plano denominado convexo si y


solo sí, cualquier par de puntos p, q ∈ S; es decir el segmento pq está contenido
completamente en S.

El Convex Hull CH(S) (se lee CH de S) es el más pequeño conjunto convexo en S.


Veamos el siguiente ejemplo:

entrada : p1, p2, p3, p4, p5, p6


salida : p4, p5, p6, p2

Convex Hull
Un polígono convexo, es un polígono con la propiedad de que cualquier segmento de
recta cuyos extremos estén en el polígono cae por completo dentro del polígono. El
problema del cerco convexo consiste en encontrar el área más pequeña de un
polígono convexo que encierre un conjunto de puntos en el plano.

Sea un conjunto S en el plano; y P un punto en S. Se dice que P es un punto del


cerco, si existe una línea L a través de P, tal que todos los puntos en S excepto P, se
encuentran a un lado de L (excepto P, ninguno pertenece a la línea).

En la Figura, p6 no es un punto del cerco por encontrarse


a un lado de L1.

El cerco convexo de un conjunto finito de puntos S,


consiste de puntos del cerco ordenados que se
encuentran en el borde de S. Para la Figura 16 el cerco
convexo es la secuencia de los puntos p1, p2, p3, p4, p5.

El cerco convexo de un conjunto finito de puntos S en el plano, es la secuencia p1,


p2, ..., pn de puntos de cercos de S en el siguiente orden:

El punto p1 es el punto con la coordenada mínima


y (p1 es un punto de cerco).

Para i ≥ 2, sea αi el ángulo desde la horizontal al


segmento de línea p1, pi. Los puntos p2, p3, ..., pn
están ordenados tal que αi, αi, ..., αn están en una
secuencia ordenada.
Algoritmo de Graham

El algoritmo de Graham es un método de cálculo computacional de la envolvente


convexa de un grupo finito de puntos en el plano. El algoritmo calcula todos los
vértices de la envolvente convexa ordenados a lo largo de la frontera. Puede se
fácilmente modificado para calcular los puntos que, sin ser vértices, pertenecen a
dicha envolvente.

El algoritmo está basado en un enfoque de solución común para construir estructuras


geométricas llamado construcción incremental. En la construcción incremental los
objetos (puntos) se agregan uno a la vez, y la estructura (cubierta convexa) se
actualiza con cada nueva inserción.
Implementación Gráfica

En esta figura mostramos el elemento que


cumplió esas características ( coordenada ‘y’ Elementos escorados según su ángulo polar

mínima y situarse lo mas a la izquierda posible). respecto a P0.

Vemos como se formó un giro a la izquierda. Vemos que se formó un giro a la derecha.
Solución encontrada.
Complejidad

 Encontrar punto Interior: O(N)


 Ordenar los puntos alrededor del interior: O(N^2)
 Encontrar el vértice donde iniciar el scan de Graham: O(N)
 Scan de Graham: O(N)

Conclusiones
El Convex Hull presenta los conceptos principales o comunes que maneja la
geometría computacional, lineas, ángulos, etc.

El algoritmo de Graham nos presenta una opción para poder resolverlo de una
manera, no digamos sensilla, pero si una manera eficaz, ya que existen muchas
mas. Este es el método que se encuentra mas comúnmente en documentos, así que
puede ser de mucho mayor ayuda.

Referencias
 Cormen, Thomas; Leiserson, Charles; Rivest, Ronald, and Stein, Clifford. (2001). Introduction
To Algorithms.
 Laszlo, M. J. Computational Geometry and Computer Graphics in C++.
 Joseph O'Rourke - Computational Geometry in C – Second Edition - Cambridge University
Press
 De Berg M.Computational geometry.Algorithms and applications 1998

Anda mungkin juga menyukai