TProcura
Biblioteca em C++ para testes paramétricos de algoritmos, e coleção de algoritmos de procura e otimização
|
Functions | |
int | TProcuraConstrutiva::LarguraPrimeiro (int limite=0) |
Executa a procura em largura primeiro, algoritmo cego. | |
int | TProcuraConstrutiva::CustoUniforme (int limite=0) |
Executa a procura por custo uniforme, algoritmo cego. | |
int | TProcuraConstrutiva::ProfundidadePrimeiro (int nivel=0) |
Executa a procura em profundidade primeiro, algoritmo cego. | |
Métodos que executam algoritmos de procura sem utilização de heurística.
Executa a procura por custo uniforme, algoritmo cego.
limite | Com valor 0, executa sem limite. Se maior que 0, limita os estados gerados não expandidos a esse valor. |
Semelhante à procura em largura, mas os estados são ordenados pelo custo. Dessa forma, os estados de menor custo são expandidos antes dos de custo maior, o que preserva a optimalidade mesmo quando os custos são variáveis.
Definition at line 249 of file TProcuraConstrutiva.cpp.
Executa a procura em largura primeiro, algoritmo cego.
limite | Com valor 0, executa sem limite. Se maior que 0, os estados não expandidos são limitados a este valor. |
O algoritmo expande primeiro os estados mais antigos. Assim, somente após todos os estados de nível K serem expandidos, os estados de nível K+1 começam a ser expandidos.
Caso o custo de cada ação seja unitário, o algoritmo retorna a solução ótima. Se o custo for variável, pode não retornar a solução ótima.
Definition at line 157 of file TProcuraConstrutiva.cpp.
Executa a procura em profundidade primeiro, algoritmo cego.
nivel | Se -1, efetua a procura em profundidade sem limite. Se 0, efetua a procura iterativa, incrementando o nível a cada iteração. Se um valor positivo, efetua a procura limitada a esse nível de profundidade. |
O algoritmo expande os estados mais recentes primeiro, explorando em profundidade antes de avaliar os estados vizinhos. Não garante a solução ótima e está implementada na versão recursiva.
Definition at line 276 of file TProcuraConstrutiva.cpp.