Solving Problems with Numerical Methods

  • Course level: All Levels


The growth in computing power means that problems that were hard to solve earlier can now be tackled using numerical techniques. These are algorithms that seek to find numerical approximations to mathematical problems rather than use symbolic manipulation i.e. fit a formula. Symbolic manipulation is often very hard and may not always be tractable. Numerical analysis, on the other hand, allows us to give approximate answers to hard problems such as weather prediction, computing the trajectory of a spacecraft, setting prices for goods in real-time and in many other use cases. In this course, Solving Problems with Numerical Methods we will explore a wide variety of numerical techniques for different kinds of problems and learn how we can apply these techniques using the R programming language. First, you will learn how numerical methods are different from analytical methods and why it is important to be able to solve problems using numerical procedures. You will understand and work with direct and iterative numerical techniques to solve a system of linear equations and perform interpolation and extrapolation using a variety of different methods. Next, you will discover how graphs can be represented and the applications of graph algorithms in the real world. You will then move on to local search techniques to solve the N-queens problem. You will study variants of classic local search such as stochastic local search algorithms, simulated annealing and threshold accepting algorithms. These techniques allow locally bad moves to avoid getting stuck in local optima. Finally, you will explore how to formulate a linear programming problem by setting up your objective, constraints and decision variables and them implement a solution using R utilities. You will round off this course by understanding and implementing differentiation and integration using R programming. When you’re finished with this course, you will have the skills and knowledge to apply a variety of numerical procedures to solve mathematical problems using the R programming language.