Numerical methods are a formidable arsenal to solve many real-world problems. Their use in computer science is ubquitous, and they play an important role in such domains as machine learning, image processing, computer graphics, robotics, visualization, among many others.
The course provides a practical introduction to fundamental numerical methods, and focuses primarily on methods for linear system solution, derivative approximation, numerical integration. In addition to specific numerical algorithms for these, fundamental concepts, such as robustness, conditioning, and stability are considered.
A core goal is to familiarize participants with practical knowledge of numerical methods; hence, homework is aimed toward solving practical problems using Python and its ecosystem of numerics tools. Participants will also get to know and use Jupyter notebooks as the medium of homework assignments.