Genetic algorithms are optimization techniques inspired by natural evolution. They use operations like selection, crossover and mutation to evolve a population of potential solutions. Each individual in the population represents a possible solution and is assigned a fitness value based on the problem being solved. The fitter individuals are more likely to reproduce and pass their traits on to the next generation. Over many generations, the population evolves to include better and better solutions.