# Applications of Euclidean Geometry

I have been learning euclidean geometry since a long time and learned about many theorems but I am majoring in Applied Computer Science and I don't find any use of geometry in the CS field.

I realize that CS is mainly about number theory and combinatorics and probability. I mostly aspire to be a Machine learning Engineer.

1. Are there any applications of Algebra or Calculus or even Physics in CS or similar fields like data science and machine learning?
2. Are there any applications of Euclidean Geometry in Computer Science and engineering?
• Have you considered graphics? Commented Aug 26, 2021 at 14:31
• Ironically, Machine Learning and classification in particular, is all about looking at data from a geometric perspective.
– Stef
Commented Aug 27, 2021 at 23:15
• Have you considered the field of computer vision? Image analysis, image classification, 3d image reconstruction, pointclouds manipulation, etc. This is all Euclidean geometry. And will involve machine learning. It has applications such as medical imaging, autonomous cars, and video games.
– Stef
Commented Aug 27, 2021 at 23:17
• Could this help? quora.com/…
– ShAr
Commented Aug 29, 2021 at 13:19
• More than just graphics, game development tends to boil down to complex geometry. For example, calculating the trajectory of a bullet, or figuring out if player A can see object B or if it is obscured. There is a lot of 2D and 3D geometry going on, depending on the specific gameplay. "But Graphics requires only vectors." Simple graphics, maybe. But try calculating ambient occlusion or accurate reflections. You can't not take geometric bodies into consideration when trying to calculate those. Commented Sep 13, 2021 at 13:36

Additionally, the principles of geometry are extremely helpful in machine learning. For example, one way to think about (multivariate) linear regression is as a projection from a vector in an $$n$$-dimensional vector space (where $$n$$ is the number of individuals in your data set) representing the response variable $$y$$, to the subspace spanned by the explanatory variables $$x_i$$. Matrix multiplication is a linear transformation, doing a geometric operation like a rotation. This is super relevant when you do principal component analysis (and Fourier analysis), SVD, separating hyperplanes, and lots of other standard machine learning techniques. Let me turn to question (1):
Yes, of course. First of all, in CS we care about the asymptotic time complexity of algorithms, e.g., a polynomial time algorithm is better than an exponential time one. So this is an application of algebra. There are plenty of times you have to take a limit as $$n\to \infty$$ of a quotient like $$P(n)/Q(n)$$, and that uses your precalculus and calculus knowledge. In addition, the famous algorithm gradient descent (very common in data science and ML) involves following the direction of the gradient, a vector that you compute using calculus. As well, most statistical models (an essential part of data science) are fit by minimizing a quantity like the residual sum of squares. That can be done by taking (partial) derivatives and setting them equal to zero, and then solving (using algebra) for the parameter values that achieve this minimum. There are far too many applications to list, but hopefully this short advertisement will convince readers of the importance of high school math, calculus, and linear algebra, for anyone interested in doing cool and powerful work in data science and machine learning. The more linear algebra you know, the better you will be at solving ML problems efficiently.