Skip to content

jbinagia/cme216-final-project

Repository files navigation

Teaching Microswimmers How to Navigate Complex Flows via Reinforcement Learning (CME 216 Final Project)

This repository contains the code (written in the form of Jupyter notebooks) for my final project for CME 216 at Stanford University (Spring 2020 quarter). In short, this project involved using reinforcement learning (specifically, Q-learning) to train microswimmers to succesfully navigate a complex flow (a periodic array of Taylor-Green vortices) so as to maximize their elevation (so-called gravitaxis). A full description of the problem and the work that I completed may be found in the project report.

Usage

The primary notebooks of interest include main.ipynb (where function and class definitions are given) and the three notebooks phi_0d3_psi_0d3.ipynb, phi_0d3_psi_1.ipynb, and phi_0d3_psi_3.ipynb. Other notebooks, such as those found in the "Additional experiments" folder, explore different parameter regimes but are less polished.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors