TProcura
Biblioteca em C++ para testes paramétricos de algoritmos, e coleção de algoritmos de procura e otimização
Loading...
Searching...
No Matches
CTesteTVector Class Reference

Classe de teste para TVector, integrada na framework TProcura. More...

#include <CTesteTVector.h>

Inheritance diagram for CTesteTVector:
Collaboration diagram for CTesteTVector:

Public Member Functions

 CTesteTVector ()
 
 ~CTesteTVector ()
 
void ResetParametros ()
 Inicializa parâmetros de teste.
 
void Inicializar (void)
 Inicializa dados e estado para teste.
 
void Debug (void)
 Mostra informação de debug sobre o estado dos vetores.
 
int ExecutaAlgoritmo ()
 Executa o algoritmo de teste (a definir pelo utilizador).
 
int Indicador (int id)
 Calcula indicadores de teste.
 
- Public Member Functions inherited from TProcura
 TProcura (void)
 
virtual ~TProcura (void)
 
virtual bool Parar (void)
 Verifica se a procura deve ser interrompida.
 
virtual void TesteManual (const char *nome)
 Inicializa a interação com o utilizador.
 
virtual void TesteEmpirico (TVector< int > instancias, bool mostrarSolucoes=true, char *ficheiro=NULL)
 Executa testes empíricos, em todas as configurações guardadas, nas instâncias selecionadas.
 
virtual void main (int argc, char *argv[], const char *nome)
 Inicializa a interação com o utilizador.
 
virtual void LimparEstatisticas (clock_t &inicio)
 Chapar antes da execução do algoritmo. Limpa valores estatísticos, e fixa o instante limite de tempo para a execução.
 
virtual void ExecucaoTerminada (clock_t inicio)
 Chamar após a execução do algoritmo. Grava o tempo consumido.
 
virtual void Explorar ()
 definir para explorar manualmente os dados (não definido em TProcura, apenas em TProcuraConstrutiva)
 
virtual void MostrarSolucao ()
 definir para visualizar a solução
 
virtual TVector< intCodificarSolucao ()
 retorna um vetor de inteiros com a codifciação da solução (esta codificação será adicionada aos indicadores, no ficheiro CSV de resultados)
 
bool TempoExcedido ()
 
bool IteracoesExcedido ()
 
int Parametro (int id)
 

Public Attributes

TVector< intdadosA
 
TVector< intdadosB
 Vetores de teste para operações TVector.
 
std::vector< intstdA
 
std::vector< intstdB
 Vetores equivalentes em STL para comparação.
 

Additional Inherited Members

- Static Public Member Functions inherited from TProcura
static int NovoValor (const char *prompt)
 
static charNovoTexto (const char *prompt)
 
- Static Public Attributes inherited from TProcura
static TParametro instancia = { NULL,1,1,1, NULL, NULL }
 ID da instância atual, a ser utilizado em SolucaoVazia().
 
static char ficheiroInstancia [256] = "instancia_"
 nome do ficheiro de uma instância - editado pelo utilizador (utilizar como prefixo, concatenando com ID da instância) pode ser utilizado para gravar a instãncia num novo formato, colocando um indicador ativo que é chamado após a execução (pode gravar a solução para ficheiro também, mas essa é mais facilmente gravada em CVS codificada em inteiros, onde fica associada à configuração utilizada para a gerar)
 
static TVector< TParametroparametro
 Parâmetros a serem utilizados na configuração atual.
 
static TVector< TIndicadorindicador
 Indicadores que podem ser calculados após a execução, quer com informação da instãncia, quer com resultado da última corrida.
 
static TVector< intindAtivo
 
static TVector< TVector< int > > configuracoes
 Conjuntos de configurações para teste empírico.
 
static int resultado = 0
 Resultado retornado pelo algoritmo na última execução.
 
static int tempo = 0
 tempo consumido na última execução.
 
static int iteracoes = 0
 Número total de iterações realizadas na última execução.
 
static clock_t instanteFinal = 0
 Instante final (deadline) da corrida atual.
 
static bool memoriaEsgotada = false
 Flag indicando problemas de memória esgotada.
 
- Protected Member Functions inherited from TProcura
void InserirRegisto (TVector< TResultado > &resultados, int inst, int conf)
 Insere um novo registo de resultados.
 
int Registo (TResultado &resultado, int id)
 Procura um registo com determinado id.
 
void Registo (TResultado &resultado, int id, int valor)
 Atualiza o valor de um registo.
 
void MostraParametros (int detalhe=1, TVector< int > *idParametros=NULL)
 Mostra os parâmetros atuais.
 
void MostraIndicadores ()
 Mostra os indicadores definidos.
 
void MostrarConfiguracoes (int detalhe, int atual=-1)
 Mostra as configurações disponíveis.
 
bool EditarIndicadores ()
 Permite ao utilizador editar os indicadores a utilizar.
 
void EditarParametros ()
 Permite ao utilizador editar os parâmetros.
 
void EditarConfiguracoes ()
 Permite ao utilizador editar as configurações.
 
void MostraRelatorio (TVector< TResultado > &resultados, bool ultimo=false)
 Mostra um relatório dos resultados.
 
void ConfiguracaoAtual (TVector< int > &parametros, int operacao)
 Grava ou lê a configuração atual.
 
int NovaConfiguracao (TVector< int > &parametros)
 Adiciona uma nova configuração se ainda não existir.
 
int MelhorResultado (TResultado base, TResultado alternativa)
 Compara dois resultados para determinar o melhor.
 
void CalculaTorneio (TVector< TResultado > &resultados)
 Calcula o torneio entre várias configurações.
 
void MostrarTorneio (TVector< TVector< int > > &torneio, bool jogo=false)
 Mostra os resultados do torneio.
 
void BarraTorneio (bool nomes)
 Mostra a barra de progresso ou nomes do torneio.
 
TVector< TResultadoExtrairConfiguracao (TVector< TResultado > &resultados, int configuracao)
 Extrai resultados de uma determinada configuração.
 
void SolicitaInstancia ()
 Solicita ao utilizador o ID da instância a utilizar, permitindo alterar também o prefixo do ficheiro.
 
TVector< intSolicitaInstancias ()
 Solicita ao utilizador uma lista de instâncias.
 
void RelatorioCSV (TVector< TResultado > &resultados, FILE *f)
 Gera um relatório CSV com os resultados.
 
TVector< intExtraiLista (char *str)
 Extrai uma lista de inteiros a partir de uma string.
 
void InserirConfiguracoes (char *str, TVector< int > &base)
 Insere configurações a partir de uma string.
 
void InserirConfiguracoes (TVector< int > &base, TVector< int > &produto, TVector< TVector< int > > &valores)
 Insere configurações gerando o produto cartesiano de valores.
 
void AjudaUtilizacao (const char *programa)
 Mostra ajuda de utilização do programa.
 
- Static Protected Member Functions inherited from TProcura
static int Dominio (int &variavel, int min=INT_MIN, int max=INT_MAX)
 Limita o domínio de um parâmetro inteiro.
 

Detailed Description

Classe de teste para TVector, integrada na framework TProcura.

Permite testar as funcionalidades do vetor dinâmico (TVector), nomeadamente operações sobre vetores de inteiros, e comparar resultados com a STL.

See also
TProcura, TVector

Definition at line 14 of file CTesteTVector.h.

Constructor & Destructor Documentation

◆ CTesteTVector()

CTesteTVector::CTesteTVector ( )
inline

Definition at line 17 of file CTesteTVector.h.

◆ ~CTesteTVector()

CTesteTVector::~CTesteTVector ( )
inline

Definition at line 18 of file CTesteTVector.h.

Member Function Documentation

◆ Debug()

void CTesteTVector::Debug ( void  )
virtual

Mostra informação de debug sobre o estado dos vetores.

Reimplemented from TProcura.

Definition at line 75 of file CTesteTVector.cpp.

Here is the call graph for this function:

◆ ExecutaAlgoritmo()

int CTesteTVector::ExecutaAlgoritmo ( )
virtual

Executa o algoritmo de teste (a definir pelo utilizador).

Reimplemented from TProcura.

Definition at line 99 of file CTesteTVector.cpp.

Here is the call graph for this function:

◆ Indicador()

int CTesteTVector::Indicador ( int  id)
virtual

Calcula indicadores de teste.

Reimplemented from TProcura.

Definition at line 334 of file CTesteTVector.cpp.

Here is the call graph for this function:

◆ Inicializar()

void CTesteTVector::Inicializar ( void  )
virtual

Inicializa dados e estado para teste.

Reimplemented from TProcura.

Definition at line 53 of file CTesteTVector.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ResetParametros()

void CTesteTVector::ResetParametros ( )
virtual

Inicializa parâmetros de teste.

Reimplemented from TProcura.

Definition at line 17 of file CTesteTVector.cpp.

Here is the call graph for this function:

Member Data Documentation

◆ dadosA

TVector<int> CTesteTVector::dadosA

Definition at line 20 of file CTesteTVector.h.

◆ dadosB

TVector<int> CTesteTVector::dadosB

Vetores de teste para operações TVector.

Definition at line 20 of file CTesteTVector.h.

◆ stdA

std::vector<int> CTesteTVector::stdA

Definition at line 21 of file CTesteTVector.h.

◆ stdB

std::vector<int> CTesteTVector::stdB

Vetores equivalentes em STL para comparação.

Definition at line 21 of file CTesteTVector.h.


The documentation for this class was generated from the following files: