https://github.com/vanities/hill_climbing
Hill Climbing techniques used to find maximums (or minimums) of multi-dimensional functions using Greedy and Simulated Annealing search methods.
https://github.com/vanities/hill_climbing
Last synced: over 1 year ago
JSON representation
Hill Climbing techniques used to find maximums (or minimums) of multi-dimensional functions using Greedy and Simulated Annealing search methods.
- Host: GitHub
- URL: https://github.com/vanities/hill_climbing
- Owner: vanities
- Created: 2018-03-22T23:30:39.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2018-03-24T22:33:43.000Z (over 8 years ago)
- Last Synced: 2025-01-14T11:03:56.599Z (over 1 year ago)
- Language: C++
- Size: 1.17 MB
- Stars: 0
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Hill_Climbing
Hill Climbing techniques used to find maximums (or minimums) of multi-dimensional functions using Greedy and Simulated Annealing search methods.
The traditional Sum of Gaussians is used to make a random function to test on. Our first goal was for a greedy method, "greedy.cpp". The second being a harder, but better solution of using Simulated Annealing, "sa.cpp". There's a bunch of scripts in that folder, mostly testing hundreds if not thousands of multi-dimensional Sum of Gaussian functions. Simulated annealing is interesting and not trivial at all.
See report for more details.
### Instructions:
1. compile the project with:
```make```
2. run the code for greedy hill climbing, where:
```./greedy seed number_of_dimensions number_of_gaussian_function_centers```
or for simulated annealing:
```./sa seed number_of_dimensions number_of_gaussian_function_centers```