All Projects → selimfirat → ai-n-queens

selimfirat / ai-n-queens

Licence: other
Solving and GUI demonstration of traditional N-Queens Problem using Hill Climbing, Simulated Annealing, Local Beam Search, and Genetic Algorithm.

Programming Languages

java
68154 projects - #9 most used programming language

Projects that are alternatives of or similar to ai-n-queens

KnapsackFX
Solving Knapsack 0/1 problem with various Local Search algorithms like Hill Climbing, Genetic Algorithms, Simulated Annealing, Tabu Search
Stars: ✭ 25 (-16.67%)
Mutual labels:  genetic-algorithm, simulated-annealing, hill-climbing
sopt
sopt:A simple python optimization library
Stars: ✭ 42 (+40%)
Mutual labels:  genetic-algorithm, simulated-annealing, optimization-algorithms
Ascension
A metaheuristic optimization framework
Stars: ✭ 24 (-20%)
Mutual labels:  genetic-algorithm, simulated-annealing, optimization-algorithms
AI-Programming-using-Python
This repository contains implementation of different AI algorithms, based on the 4th edition of amazing AI Book, Artificial Intelligence A Modern Approach
Stars: ✭ 43 (+43.33%)
Mutual labels:  genetic-algorithm, simulated-annealing, hill-climbing
Solid
🎯 A comprehensive gradient-free optimization framework written in Python
Stars: ✭ 546 (+1720%)
Mutual labels:  genetic-algorithm, optimization-algorithms
Pagmo2
A C++ platform to perform parallel computations of optimisation tasks (global and local) via the asynchronous generalized island model.
Stars: ✭ 540 (+1700%)
Mutual labels:  genetic-algorithm, optimization-algorithms
Gaft
A Genetic Algorithm Framework in Python
Stars: ✭ 651 (+2070%)
Mutual labels:  genetic-algorithm, optimization-algorithms
Scikit Opt
Genetic Algorithm, Particle Swarm Optimization, Simulated Annealing, Ant Colony Optimization Algorithm,Immune Algorithm, Artificial Fish Swarm Algorithm, Differential Evolution and TSP(Traveling salesman)
Stars: ✭ 2,791 (+9203.33%)
Mutual labels:  genetic-algorithm, simulated-annealing
biteopt
Derivative-Free Optimization Method for Global Optimization (C++)
Stars: ✭ 91 (+203.33%)
Mutual labels:  genetic-algorithm, optimization-algorithms
GARI
GARI (Genetic Algorithm for Reproducing Images) reproduces a single image using Genetic Algorithm (GA) by evolving pixel values.
Stars: ✭ 41 (+36.67%)
Mutual labels:  genetic-algorithm, optimization-algorithms
VariationalNeuralAnnealing
A variational implementation of classical and quantum annealing using recurrent neural networks for the purpose of solving optimization problems.
Stars: ✭ 21 (-30%)
Mutual labels:  simulated-annealing, optimization-algorithms
zoofs
zoofs is a python library for performing feature selection using a variety of nature-inspired wrapper algorithms. The algorithms range from swarm-intelligence to physics-based to Evolutionary. It's easy to use , flexible and powerful tool to reduce your feature size.
Stars: ✭ 142 (+373.33%)
Mutual labels:  genetic-algorithm, optimization-algorithms
geneticalgorithm2
Supported highly optimized and flexible genetic algorithm package for python
Stars: ✭ 36 (+20%)
Mutual labels:  genetic-algorithm, optimization-algorithms
geneal
A genetic algorithm implementation in python
Stars: ✭ 47 (+56.67%)
Mutual labels:  genetic-algorithm, optimization-algorithms
Mathematical-Modeling
A sharing of the learning process of mathematical modeling 数学建模常用工具模型算法分享:数学建模竞赛优秀论文,数学建模常用算法模型,LaTeX论文模板,SPSS工具分享。
Stars: ✭ 30 (+0%)
Mutual labels:  genetic-algorithm, simulated-annealing
goga
Go evolutionary algorithm is a computer library for developing evolutionary and genetic algorithms to solve optimisation problems with (or not) many constraints and many objectives. Also, a goal is to handle mixed-type representations (reals and integers).
Stars: ✭ 39 (+30%)
Mutual labels:  genetic-algorithm
FirstOrderSolvers.jl
Large scale convex optimization solvers in julia
Stars: ✭ 20 (-33.33%)
Mutual labels:  optimization-algorithms
transformer
Neutron: A pytorch based implementation of Transformer and its variants.
Stars: ✭ 60 (+100%)
Mutual labels:  beam-search
Image-Caption
Using LSTM or Transformer to solve Image Captioning in Pytorch
Stars: ✭ 36 (+20%)
Mutual labels:  beam-search
a-tour-of-pytorch-optimizers
A tour of different optimization algorithms in PyTorch.
Stars: ✭ 46 (+53.33%)
Mutual labels:  optimization-algorithms

N-Queens Problem

N-Queens is a combinatorial problem based on chess. Regarding queens can attack vertically, horizontally, and diagonally in chess, N-Queens problem asks:

How can N queens placed on an NxN chessboard so that no two of them attacks each other?

This project demonstrates the n-queens problem solution and solves them via Hill Climbing, Simulated Annealing, Local Beam Search, and Genetic Algorithm.

Demonstration

N Queens Problem

Parameters

General

  • Number of queens: Number of queens in chessboard. Namely, N.

Note: Starts with a random state(chessboard configuration).

Hill Climbing

The hill climbing algorithm gets its name from the metaphor of climbing a hill.

  • Max number of iterations: The maximum number of iterations. Each iteration is at one step higher than another.

Note: If gets stuck at local maxima, randomizes the state.

Simulated Annealing

The annealing algorithm attempts to tease out the correct solution by making risky moves at first and slowly making more conservative moves.

  • Max number of iterations: The number of times that annealing move occures.
  • Temperature: The starting temperature that affects the annealing move(randomizing). If temperature is high, the state acts more randomly(anneals). And vice versa.
  • Cooling factor: The cooling parameter that reduces the temperature parameter.

Local beam search

  • Max number of iterations: The maximum number of iterations for search. Namely, the depth of search.
  • Number of states: Number of states in beam

Note: If gets stuck at local maxima, randomizes the state.

Genetic Algorithm

Evolution-like algorithm that suggests the survival of the best ones from many combinated&unified population in each generation.

  • Initial population size: Initial population size.
  • Mutation probability: Probability of occurance of mutation in each generation.
  • Number of generations: The number of iterations to get solution.

References

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].