Figura: Desenho de um grafo simples.
Junto dos arquivos de emparelhamento eu inclui os geradores que usei na implementação que fiz durante a minha dissertação de mestrado. O primeiro gerador é chamado de "Cube". Este gerador produz grafos em grade tridimensional com algumas arestas colocadas aleatoriamente. Para gerar este tipo de grafo basta chamar: cube seed cols lins deep extra prob. Onde:
seed - Semente para a randomizacao.
cols - Número de colunas.
lins - Número de linhas.
deep - Profundidade em camadas.
extra - Número de arestas colocadas aleatoriamente.
prob - Probabilidade da existência de uma aresta [0-100].
Figura: Arestas pertencentes ao emparelhamento máximo são pintadas de verde. |
O gerador "Groups" gera grafos constrói grafos em anel de sub-grupos. Os grafos são gerados com grupos cujas arestas são ligadas aleatoriamente e estes grupos são ligados entre si formando um anel. Para gerar grafos deste tipo basta chamar: groups seed grps grps_verts arest_lig numb_esp_arest prob. Onde:
seed - Semente para o gerador de números aleatórios.
grps - Número de grupos desejados.
grps_verts - Número de vértices de cada grupo.
arest_lig - Número de arestas que ligaram dois grupos entre si.
numb_esp_arest - Número de arestas esperado em cada vértice.
prob - Probabilidade da existência de aresta [1-100].
Figura: Exemplo de um grafo complexo. |
O gerador "Net" gera grafos em grade bidimensional com arestas colocadas aleatoriamente. Para gerar grafos deste tipo basta chamar: net seed lin col ext prob.
seed - Semente para o gerador de números aleatórios.
lin - Número de linhas.
col - Número de colunas.
ext - Número de arestas que serão colocadas aleatoriamente.
prob - Probabilidade da existência de cada aresta [0-100].
O gerador "Shuffle" lê um arquivo de grafo e embaralha suas arestas. Ele espera encontrar um arquivo chamado "GRF" no mesmo diretório. Ele lê este arquivo, embaralha as arestas e grava o arquivo em cima do anterior. Para embaralhar um grafo, basta renomear o arquivo para "GRF" e chamar: shuffle seed. Onde:
seed - Semente do gerador de números randômicos.
|