Answers.Body: <p>There are <a href="https://cseducators.stackexchange.com/questions/7051/applications-of-euclidean-geometry#comment21589_7051">TONS of uses</a> of Euclidean geometry in CS, <em>especially</em> in Machine Learning (ML). Indeed, even <a href="https://en.wikipedia.org/wiki/Euclidean_geometry" rel="nofollow noreferrer">the wikipedia article</a> for Euclidean geometry lists many including graphics, computer vision, and game design (all mentioned in the comments) plus computer-aided design, computer-aided manufacturing, circuit design, and in various fields of engineering where a computer scientist's work might be used (stress analysis, thermal engineering, mechanical systems, wing design, satellites). So this answers question (2).</p>
  <p>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 <span class="math-container">$n$</span>-dimensional vector space (where <span class="math-container">$n$</span> is the number of individuals in your data set) representing the response variable <span class="math-container">$y$</span>, to the subspace spanned by the explanatory variables <span class="math-container">$x_i$</span>. 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):</p>
  <blockquote>
  <p>(1)    Are there any applications of Algebra or Calculus or even Physics in CS or similar fields like data science and machine learning?</p>
  </blockquote>
  <p>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 <span class="math-container">$n\to \infty$</span> of a quotient like <span class="math-container">$P(n)/Q(n)$</span>, and that uses your precalculus and calculus knowledge. In addition, the famous algorithm <strong>gradient descent</strong> (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.</p>
  
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2024-03-31T15:33:45.873Z
Answers.LastActivityDate: 2024-03-31T15:33:45.873Z
Answers.UserDisplayName: David White
Body: <p>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.</p>
  <p>I realize that CS is mainly about number theory and combinatorics and probability. I mostly aspire to be a Machine learning Engineer.</p>
  <ol>
  <li>Are there any applications of Algebra or Calculus or even Physics in CS or similar fields like data science and machine learning?</li>
  <li>Are there any applications of Euclidean Geometry in Computer Science and engineering?</li>
  </ol>
  
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2021-08-26T14:31:05.223Z
Comments.Text: Have you considered graphics?
Comments.UserDisplayName: Erik Eidt
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2021-08-27T12:02:58.557Z
Comments.Text: But Graphics requires only vectors. It doesn't really require any Euclidean Geometry
Comments.UserDisplayName: muchin
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2021-08-27T23:15:00.000Z
Comments.Text: Ironically, Machine Learning and classification in particular, is all about looking at data from a geometric perspective.
Comments.UserDisplayName: Stef
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2021-08-27T23:17:06.663Z
Comments.Text: 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.
Comments.UserDisplayName: Stef
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2021-08-28T14:57:01.043Z
Comments.Text: I understand that computer vision requires geometry and I search for some examples on google and I found that most of them are actually Coordinate geometry rather than Euclidean geometry. That means Computer vision is more about Coordinate geometry and vectors and stuffs like Combinatorial geomery
Comments.UserDisplayName: muchin
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2021-08-29T13:19:32.190Z
Comments.Text: Could this help? https://www.quora.com/What-are-some-uses-of-Plane-Euclidean-geometry-in-Computer-Science
Comments.UserDisplayName: ShAr
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2021-08-30T11:53:37.463Z
Comments.Text: @ShAr I just read it and found that Mostly 3D geometry is used in Computer Science. But  there is little to no use of euclidean geometry
Comments.UserDisplayName: muchin
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2021-08-30T12:14:35.413Z
Comments.Text: What is used in VR & 3D applications to determine the change of eye view, dimensions of objects while moving,...etc doesn't involve Euclidean Geometry?. I think there are mapping to some NP-Hard problems to geometric problems, maybe the max indep set problem; but I can't find the paper now, & honestly I don't know if the origins of the Geometric Brownian Motion in Stochastic random walks comes from Euclidean Geometry. Sorry if this is not helpful, it is not my area.
Comments.UserDisplayName: ShAr
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2021-08-30T12:29:35.803Z
Comments.Text: https://www.sciencedirect.com/science/article/pii/S0925772112000740 Here's the one I mean for  geometric set covering& packing  , and also this one for Geometric Bin Packing https://arxiv.org/abs/2105.02827
Comments.UserDisplayName: ShAr
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2021-08-31T21:24:44.497Z
Comments.Text: Proving Euclidean Geometry uses many of the same skills: Problem/puzzle solving.
Comments.UserDisplayName: ctrl-alt-delor
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2021-08-31T21:28:34.700Z
Comments.Text: My experience, as a computer programmer, is that the only maths is boolean-algebra, set-theory, pattern-matching (I may have missed one), and whatever is needed for the particular problem.
Comments.UserDisplayName: ctrl-alt-delor
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2021-09-13T13:36:07.823Z
Comments.Text: 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.
Comments.UserDisplayName: Flater
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2023-11-04T01:38:17.083Z
Comments.Text: @muchin You wrote that Computer Science is "mainly about number theory and combinatorics and probability."  I would not describe computer science that way. One branch of computer science is Algorithms and Data-Structures. One of the older textbooks in that field is ***Introduction to Algorithms*** by Cormen, Thomas H, Leiserson, Charles E, Rivest, Ronald L, Stein, Clifford. I saw that textbook used during the 2010s at two different American Universities. Computer Science is not pure mathematics. Number theory, combinatorics, and probability theory are all more mathematical than Computer Sci.
Comments.UserDisplayName: Samuel Muldoon
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2023-12-03T15:55:16.497Z
Comments.Text: Actually we can flip your question around. "Can I do machine learning without linear algebra or without calculus?" The answer to that question is no. If you go into machine learning with a background education in math, you'll have a **tremendous** advantage over people who don't have that background. And that's just for machine learning. Other programming problems use additional kinds of maths.
Comments.UserDisplayName: Stef
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2024-01-09T05:42:01.863Z
Comments.Text: Check this https://math.stackexchange.com/questions/74146/is-there-any-good-reason-for-a-programmer-to-study-geometry
Comments.UserDisplayName: Qiulang 邱朗
Tags: <careers>
Title: Applications of Euclidean Geometry
ThreadText: # Applications of Euclidean Geometry
  
  (Asked by: username_0 on 2021-08-26)
  
  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?
  
  **Tags:** careers
  
  > **Comments:**
  > **username_1**: Have you considered graphics?  
  > **username_0**: But Graphics requires only vectors. It doesn't really require any Euclidean Geometry  
  > **username_2**: Ironically, Machine Learning and classification in particular, is all about looking at data from a geometric perspective.  
  > **username_2**: 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.  
  > **username_0**: I understand that computer vision requires geometry and I search for some examples on google and I found that most of them are actually Coordinate geometry rather than Euclidean geometry. That means Computer vision is more about Coordinate geometry and vectors and stuffs like Combinatorial geomery  
  > **username_3**: Could this help? https://www.quora.com/What-are-some-uses-of-Plane-Euclidean-geometry-in-Computer-Science  
  > **username_0**: @username_3 I just read it and found that Mostly 3D geometry is used in Computer Science. But  there is little to no use of euclidean geometry  
  > **username_3**: What is used in VR & 3D applications to determine the change of eye view, dimensions of objects while moving,...etc doesn't involve Euclidean Geometry?. I think there are mapping to some NP-Hard problems to geometric problems, maybe the max indep set problem; but I can't find the paper now, & honestly I don't know if the origins of the Geometric Brownian Motion in Stochastic random walks comes from Euclidean Geometry. Sorry if this is not helpful, it is not my area.  
  > **username_3**: https://www.sciencedirect.com/science/article/pii/S0925772112000740 Here's the one I mean for  geometric set covering& packing  , and also this one for Geometric Bin Packing https://arxiv.org/abs/2105.02827  
  > **username_4**: Proving Euclidean Geometry uses many of the same skills: Problem/puzzle solving.  
  > **username_4**: My experience, as a computer programmer, is that the only maths is boolean-algebra, set-theory, pattern-matching (I may have missed one), and whatever is needed for the particular problem.  
  > **username_5**: 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.  
  > **username_6**: @username_0 You wrote that Computer Science is "mainly about number theory and combinatorics and probability."  I would not describe computer science that way. One branch of computer science is Algorithms and Data-Structures. One of the older textbooks in that field is ***Introduction to Algorithms*** by Cormen, Thomas H, Leiserson, Charles E, Rivest, Ronald L, Stein, Clifford. I saw that textbook used during the 2010s at two different American Universities. Computer Science is not pure mathematics. Number theory, combinatorics, and probability theory are all more mathematical than Computer Sci.  
  > **username_2**: Actually we can flip your question around. "Can I do machine learning without linear algebra or without calculus?" The answer to that question is no. If you go into machine learning with a background education in math, you'll have a **tremendous** advantage over people who don't have that background. And that's just for machine learning. Other programming problems use additional kinds of maths.  
  > **username_7**: Check this https://math.stackexchange.com/questions/74146/is-there-any-good-reason-for-a-programmer-to-study-geometry  
  
  ---
  
  ## 1 answers
  
  ### Answer by username_8 on 2024-03-31. Score: 2
  
  There are [TONS of uses](https://cseducators.stackexchange.com/questions/7051/applications-of-euclidean-geometry#comment21589_7051) of Euclidean geometry in CS, *especially* in Machine Learning (ML). Indeed, even [the wikipedia article](https://en.wikipedia.org/wiki/Euclidean_geometry) for Euclidean geometry lists many including graphics, computer vision, and game design (all mentioned in the comments) plus computer-aided design, computer-aided manufacturing, circuit design, and in various fields of engineering where a computer scientist's work might be used (stress analysis, thermal engineering, mechanical systems, wing design, satellites). So this answers question (2).
  
  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):
  
  > (1) Are there any applications of Algebra or Calculus or even Physics in CS or similar fields like data science and machine learning?
  
  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.
  
  
  ---
  
  