aboutsummaryrefslogtreecommitdiff
path: root/slides/math/slides.md
blob: 8f82b6d5d6e76e2ca6fccc502d17a8ffc56a0974 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
layout: true
---

# Why understanding of basic math is imporant for computer programing

September 21, 2018

[@mitjafelicijan](https://twitter.com/mitjafelicijan)

---

### "We Cannot Solve Our Problems With The Same Thinking We Used When We Created Them."

#### — Albert Einstein

---

## How we usually find solutions and why this is problematic?

- We search for code example instead of algorithms.
- We copy and paste and do testing on trial&error principle.
- We don't take enough time to properly understand problem we a re trying to solve.
- Brute force solutions we make are usually not optimized

---

## Math is horrible and I don't need it!

- Well, YES :) Math can be horrible but also beautiful to implement.
- Disregarding math is disregarding thousands of years of knowledge.
- Math is not only for scientists.
- Good algorithm is as optimized as your code is when you are done with it.
- Math is the search for patterns and anti-patterns in natural universe and making these findings into tools accessible to ordinary people.

---

## Coordinate Geometry

A coordinate geometry is a branch of geometry where the position of the points on the plane is defined with the help of an ordered pair of numbers also known as coordinates.

![image](https://www.onlinemathlearning.com/image-files/xcoordinate-geometry-formula.png.pagespeed.ic.cqp4Ryqey8.png)

---

## Distance formula

![](https://s3.amazonaws.com/ck12bg.ck12.org/curriculum/108383/thumb_540_50.jpg)

---

## Linear Algebra

Linear algebra is the branch of mathematics concerning linear equations such as. linear functions such as. and their representations through matrices and vector spaces.

![image](https://thumbs.gfycat.com/VeneratedSpitefulFrilledlizard-size_restricted.gif)

- [Graphical Linear Algebra](https://graphicallinearalgebra.net/)
- [Linear Relations](https://graphicallinearalgebra.net/2015/12/26/27-linear-relations/)
- [Diagrams in charts](https://graphicallinearalgebra.files.wordpress.com/2015/11/ih.gif)

---

## Vectors and spaces

- Space vector also called linear vector
- Vector = magnitude + direction
- Example: velocity vector (5kmh/west)

![](https://i.ytimg.com/vi/0oSe9vx-W54/maxresdefault.jpg?img350)

---

## Shortest path problem

In graph theory, the shortest path problem is the problem of finding a path between two vertices (or nodes) in a graph such that the sum of the weights of its constituent edges is minimized.

Shortest path (A, C, E, D, F) between vertices A and F in the weighted directed graph

![](https://upload.wikimedia.org/wikipedia/commons/thumb/3/3b/Shortest_path_with_direct_weights.svg/250px-Shortest_path_with_direct_weights.svg.png)
![](http://new.gctm-resources.org/migrating/658-00.png)

[Wiki: Shortest path problem](https://en.wikipedia.org/wiki/Shortest_path_problem)

---

## Dijkstra's shortest path algorithm

![](https://upload.wikimedia.org/wikipedia/commons/5/57/Dijkstra_Animation.gif)
![](https://upload.wikimedia.org/wikipedia/commons/2/23/Dijkstras_progress_animation.gif)

![](https://cdn-images-1.medium.com/max/735/0*OiVoLu09VJp-oHwJ.png?img300)
![](https://www.mathworks.com/matlabcentral/mlc-downloads/downloads/submissions/20025/versions/3/screenshot.jpg?img300)

---

## HTML5 Canvas

- [HTML5 Canvas : Matrix Transforms](https://www.w3resource.com/html5-canvas/html5-canvas-matrix-transforms.php)
- [Visualizing linear algebra using the html5
canvas: matrices and quaternions](http://archives.math.utk.edu/ICTCM/VOL28/A007/paper.pdf)
- [Matrix rain animation using HTML5 canvas and javascript](https://codepen.io/riazxrazor/pen/Gjomdp)
- [Convoluton matrix](https://www.phpied.com/canvas-pixels-2-convolution-matrix/)

---

## Going further

- [Basic Linear Algebra for Deep Learning](https://towardsdatascience.com/linear-algebra-for-deep-learning-f21d7e7d7f23)
- [Deep learning book](https://www.deeplearningbook.org/contents/linear_algebra.html)