This repository is dedicated to sharing open-source implementations of classic algorithms in mathematics and computer science. The goal is to provide a comprehensive resource for researchers and practitioners interested in exploring and experimenting with these algorithms.
Currently, this repository includes the following classic algorithms:
- Ant Colony Optimization
- Particle Swarm Optimization
- Simulated Annealing
- Genetic Algorithm
- Particle Swarm Optimization
- Cellular Automata
- Monte Carlo Methods
- Gradient Descent
Each algorithm has a separate directory containing the implementation code and a brief description of the algorithm.
The implementations are provided in Python. To use these algorithms, clone this repository and install the required dependencies specified in the requirements.txt
file. Each algorithm has its own script for running the algorithm on a specific problem. The script can be run using the command python <algorithm_name>_example.py
.
Contributions are welcome in the form of new algorithms, bug fixes, or improved implementations. If you wish to contribute, please follow the guidelines provided in the CONTRIBUTING.md
file.
The implementations in this repository are based on the following papers:
- Dorigo, M., & Stützle, T. (2004). Ant colony optimization. MIT Press.
- Kirkpatrick, S., Gelatt Jr, C. D., & Vecchi, M. P. (1983). Optimization by simulated annealing. science, 220(4598), 671-680.
- Goldberg, D. E. (1989). Genetic algorithms in search, optimization, and machine learning (Vol. 412). Addison-Wesley.
- Kennedy, J., & Eberhart, R. (1995, October). Particle swarm optimization. In Proceedings of the IEEE international conference on neural networks (Vol. 4, pp. 1942-1948). IEEE.
- Wolfram, S. (1984). Cellular automata as models of complexity. Nature, 311(5985), 419-424.
- Metropolis, N., Rosenbluth, A. W., Rosenbluth, M. N., Teller, A. H., & Teller, E. (1953). Equation of state calculations by fast computing machines. The Journal of Chemical Physics, 21(6), 1087-1092.
- Rumelhart, D. E., Hinton, G. E., & Williams, R. J. (1986). Learning representations by back-propagating errors. Nature, 323(6088), 533-536.
·