Awesome Open Source
Awesome Open Source

Physical Gradient Descent

This is code for adapting the gradient descent algorithm to run on earth's actual geometry. You can read more about this in the attached blog post.

Running gradient descent

You'll need Python 3, and can install the dependencies with:

> virtualenv -p python3 env
> source env/bin/activate
> pip install -r requirements.txt

And run gradient descent like so:

(env)> python gradientdescent.py 47.801686 -123.709083 ~/Downloads/srtm_12_03/srtm_12_03.tif

A number of parameter tweaking options are supported:

usage: gradientdescent.py [-h] [--output OUTPUT] [--alpha ALPHA]
                          [--gamma GAMMA] [--iters ITERS]
                          lat lon tif

You can get TIF files from this tile grabber!

Running the visualizer

The visualizer makes AJAX requests, so you will need to serve it from a web server instead of just opening the HTML file on the filesystem. You can do that easily with Python if you prefer, which will serve the local directory:

> python -m http.server

Then access http://localhost:8000 and the visualizer will start. You may have to update the key used inside the HTML by editing the file to your own Google Maps API key.


Get A Weekly Email With Trending Projects For These Topics
No Spam. Unsubscribe easily at any time.
python (52,053
machine-learning (3,538
visualization (796
gradient-descent (25

Find Open Source By Browsing 7,000 Topics Across 59 Categories