- Luís Felipe Souza Magalhães - 2020041604
- Leonardo de Oliveira Maia - 2019042139
- Pedro Henrique Meireles de Almeida - 2021031440
Este projeto tem como objetivo analisar 10 conjuntos de dados diferentes usando algoritmos de Geometria Computacional. As técnicas usadas neste projeto visam descobrir insights interessantes e padrões nos dados, além de realizar comparações entre os conjuntos de dados.
Foram usados os seguintes conjuntos para serem analisados, 5 deles apresentam interseções e os outros 5 não apresentam.
- banana.dat
- haberman.dat
- ionosphere.dat
- iris.dat
- led7digital.dat
- twonorm.dat
- newthyroid.dat
- texture.dat
- wine.dat
- movement_libras.dat
O algoritmo de Graham Scan é utilizado em problemas que envolvem a identificação de convex hulls. Esse algoritmo é eficiente e tem uma complexidade de tempo de O(n * log(n)), onde n é o número de pontos no conjunto.
A próxima etapa consiste em checar uma colisão entre os dois convex hulls usando o algoritmo de varredura.
O algoritmo roda em O(n^2) e verifica para cada ponto dos convex hulls quais estão mais pertos.
Essa função é responsável por calcular os pontos que formam uma reta perpendicular. Ela utiliza um método simples para encontrar a reta perpendicular aos dois pontos fornecidos e retorna os pontos que a compõem O(1).
Esses testes medem a proporção de verdadeiros positivos (acertos) em relação ao total de positivos previstos, o recall mede a proporção de verdadeiros positivos em relação ao total de positivos reais. O F1-score mede o equilíbrio entre precisão e recall, levando em consideração ambos os valores.