TProcuraAdversa
Algoritmos de procura adversa
|
Go to the source code of this file.
Classes | |
struct | SParametro |
Estrutura para registo de um parâmetro. More... | |
struct | SResultado |
class | TProcuraConstrutiva |
Representa um estado no espaço de estados. More... | |
struct | SIndice |
class | CListaNo |
Macros | |
#define | _CRT_SECURE_NO_WARNINGS |
#define | TAMANHO_HASHTABLE 1000000 |
#define | OBJETO_HASHTABLE 5 |
#define | NAO_LIDO -1000000 |
Typedefs | |
typedef TProcuraConstrutiva * | TNo |
Representa um nó na árvore de busca, apontando para um estado. | |
typedef struct SParametro | TParametro |
Estrutura para registo de um parâmetro. | |
typedef struct SResultado | TResultado |
typedef struct SIndice | TIndice |
Enumerations | |
enum | EParametrosConstrutiva { algoritmo = 0 , nivelDebug , verAcoes , seed , limiteTempo , limiteGeracoes , limiteExpansoes , limiteAvaliacoes , limite , estadosRepetidos , pesoAStar , ruidoHeur , baralharSuc , parametrosConstrutivas } |
Identifica um parâmetro específico no código. More... | |
enum | EAlgoritmo { larguraPrimeiro = 1 , custoUniforme , profundidadePrimeiro , melhorPrimeiro , aStar , idAStar , branchAndBound } |
Algoritmos disponíveis para procura construtiva. More... | |
enum | ENivelDebug { nada = 0 , atividade , passos , detalhe , completo } |
Níveis de detalhamento para debug. More... | |
enum | EEstadosRepetidos { ignorados = 1 , ascendentes , gerados } |
Enumerado com os valores possíveis do parametro estadosRepetidos. More... | |
enum | EOperacao { gravar = 0 , ler } |
Define o sentido da operação de entrada/saída de dados. More... | |
#define _CRT_SECURE_NO_WARNINGS |
Definition at line 3 of file TProcuraConstrutiva.h.
#define NAO_LIDO -1000000 |
Definition at line 15 of file TProcuraConstrutiva.h.
#define OBJETO_HASHTABLE 5 |
Definition at line 13 of file TProcuraConstrutiva.h.
#define TAMANHO_HASHTABLE 1000000 |
Definition at line 11 of file TProcuraConstrutiva.h.
typedef TProcuraConstrutiva* TNo |
Representa um nó na árvore de busca, apontando para um estado.
TProcuraConstrutiva*
, facilitando a leitura e uso. Definition at line 24 of file TProcuraConstrutiva.h.
typedef struct SParametro TParametro |
Estrutura para registo de um parâmetro.
Permite registrar um parâmetro, armazenando seu valor, limites máximo e mínimo, além de nome e descrição. Cada valor pode ter também um nome, em vez de ser um número. Podem e devem ser adicionados parâmetros específicos de cada problema, de modo a poderem ser testados no teste empírico.
Exemplo:
typedef struct SResultado TResultado |
enum EAlgoritmo |
Algoritmos disponíveis para procura construtiva.
Estes algoritmos utilizam diferentes estratégias de expansão de estados e podem ser ajustados conforme os parâmetros de execução.
Enumerator | |
---|---|
larguraPrimeiro | Executa a procura em largura primeiro, algoritmo cego. |
custoUniforme | Executa a procura por custo uniforme, algoritmo cego. |
profundidadePrimeiro | Executa a procura em profundidade primeiro, algoritmo cego. |
melhorPrimeiro | Executa a procura melhor primeiro, algoritmo informado. |
aStar | Executa a procura A*, algoritmo informado.
|
idAStar | Executa a procura IDA*, algoritmo informado.
|
branchAndBound | Executa o algoritmo Branch-and-Bound, um algoritmo informado. |
Definition at line 70 of file TProcuraConstrutiva.h.
enum EEstadosRepetidos |
Enumerado com os valores possíveis do parametro estadosRepetidos.
Os estados gerados que sejam repetidos, podem não ser removidos, ou podem ser removidos se existir um ascendente igual, ou ainda serem guardados numa hashtable de modo a serem removidos todos os estados gerados que sejam repetidos.
Definition at line 109 of file TProcuraConstrutiva.h.
enum ENivelDebug |
Níveis de detalhamento para debug.
Controla a quantidade de informações exibidas durante a execução do algoritmo.
Definition at line 92 of file TProcuraConstrutiva.h.
enum EOperacao |
Define o sentido da operação de entrada/saída de dados.
Enumerator | |
---|---|
gravar | |
ler |
Definition at line 120 of file TProcuraConstrutiva.h.
Identifica um parâmetro específico no código.
Permite aceder a cada parâmetro sem precisar saber seu código numérico. Índice do vetor de parametros, na classe TProcuraConstrutiva.
parametrosConstrutivas
) não representa um parâmetro real. Existe para permitir a criação de uma enumeração adicional em subclasses, caso seja necessário adicionar parâmetros específicos.Definition at line 44 of file TProcuraConstrutiva.h.