Project 1: Numerical ODE Solutions for ML Concepts

This project begins the process of simulating and computing neural network structures. This project enables you to develop your own ODE computing platform.

Your final code that you used for this project should be in a separate file from your writeup.

ODE Solutions

Every class coding example will formulate and numerically solve computation and learning algorithms from an ODE formulation. Types of ODE solvers, order of convergence

ODE routines and computation

MATLAB Code:
[x,y]=ode45( ); Runga-Kutta 4th order/5th order predictive model
[x,y]=ode23( ); Runga-Kutta 2th order/3th order predictive model
[x,y]=ode15s( ); [x,y]=ode23s( ); Solve stiff differential equations — low order method

Python Code:
odeint( );
solve_ivp( method = 'RK45' )

References:

  • Texas A&M ODE MATLAB reference: pdf
  • MATLAB ODE overview: pdf
  • MATLAB solution of ODEs examples: pdf
  • Solving ODEs in Python: pdf
  • Halvorsen on Python ODE solutions: pdf

    Order of ODE algorithms

    Numerics for Stiff Differential Equations


    Figure 1: Numerical ODE solution convergence and numerical error as a function of ODE numerical approximation and as a function of numerical derivative estimation.

    Numerical Solution of ODE references:

    Numerical Simulation of Differential Equations

    Numerical solution of ODEs is a critical aspect of exploring Neural Network algorithms.

    Simulate the following ODE system:

    It is assumed you will be using an ODE solver package that you will be using throughout the semester. Just explaining which package you are using is sufficient. You need to show me the code that you wrote for this simulation (e.g. not the ODE libraries that you used.