This repository contains four tutorials illustrating applications of linear algebra and matrices. Tha aim is to show the power and versatility of basic properties of matrices combined with scientific software. The first three notebooks can be accessed by simply cliking and then navigating to the desired
.ipynb file. See below for more details. Enjoy!
In this tutorial we construct from scratch, and without using calculus, a training algorithm for image recognition applied to the MNIST set. At the end this is comapered with the same model trained with TensorFlow.
Simply click this Binder badge
and navigate to the notebook file.
In this tutorial we use the theory of invertibility of elementary matrices to construct an encryption algorithm. You can input a password to encrypt a message and then decrypt the message using the same password.
Simply click this Binder badge
and navigate to the notebook file.
In this tutorial we construct a two dymensional dynamical system of Markovian type, which describes the way two populations move between two locations. You can change the dynamics/matrix to anything you want.
Simply click this Binder badge
and navigate to the notebook file.
In this tutorial we construct two 3-dimensional games, where we use vector addition and matrix multiplication to control our avatar and reach a target.
To run any of this two tutorials you need to run the file in Matlab.
In your terminal, use git to clone the repository locally.
git clone https://github.com/ltoniazzi/Algebra_applications.gitDownload and install the Anaconda or Miniconda distribution of Python 3.
If this is the first time you're setting up your compute environment,
use the conda package manager
to install all the necessary packages
from the provided environment.yml file.
conda env create -f environment.ymlTo activate the environment, use the conda activate command.
conda activate alg_appIf you get an error activating the environment, use the older source activate command.
source activate alg_appTo update the environment based on the environment.yml specification file, use the conda update command.
conda env update -f environment.ymlIn the terminal, execute jupyter lab.
)
)
)
)