They are basically algorithms based on natural biological evolution. A GA functions by generating a large set of possible solutions to a given problem. These solutions then breed new solutions. In essence, solutions are evolved over time. This way you evolve your search space scope to a point where you can find the solution.
Genetic algorithms can be incredibly efficient if programmed correctly.
General Algorithm for Genetic Algorithms Genetic algorithms are not too hard to program or understand, since they are biological based. Thinking in terms of real-life evolution may help you understand. This is unlike the situation for Symbolic AI systems, where the initial state in a problem is already given instead. If the new generation contains a solution that produces an output that is close enough or equal to the desired answer then the problem has been solved. If this is not the case, then the new generation will go through the same process as their parents did.