Leitura Do Arquivo

10
1) Leitura do Arquivo 2)Salvando a Matriz com a Distância entre as paradas 3) Aplicando o Método de Clarke-Wright Apenas é feito entre paradas diferentes (i≠j). Onde: i = início j = fim 4) Criando a viabilidade dos pares de parada Inicialmente todos os pares de paradas são considerados como viáveis. A matriz que irá armazenar essa viabilidade terá dimensões com número de linhas 6) Imprimindo o caminho resultante 5) Aplicando o Método Grasp 4) Criando a viabilidade dos Pares 3) Aplicando o Método de Clarke-Wright 2) Salvando a Matriz com a Distância entre as paradas 1) Leitura do Arquivo

description

mm

Transcript of Leitura Do Arquivo

1) Leitura do Arquivo2) Salvando a Matriz com a Distncia entre as paradas3) Aplicando o Mtodo de Clarke-Wright

Apenas feito entre paradas diferentes (ij). Onde:i = incioj = fim

4) Criando a viabilidade dos pares de paradaInicialmente todos os pares de paradas so considerados como viveis. A matriz que ir armazenar essa viabilidade ter dimenses com nmero de linhas N-1e nmero de coluna igual a 2. Nas colunas, a primeira representar o incio, e a segunda, o fim.Exemplo: Viabilidade de uma Matriz que possui 4 paradas1122335) Aplicando o Mtodo Grasp5.1 Somatrio da Matriz Clarke-Whrigt5.2 Probabilidade - ser calculado as probabilidades dos pontos atraves da razo de cada elemento, considerado como vivel na Matriz Clarke Wright, pelo somatrio dessa mesma matriz.5.3 Escolha randmica - nmero aleatrio entre 1 e 100.5.4 Verifica se a probabilidade de um par de pontos no nula e tambm que no seja entre pontos iguais.5.5 Verificando a viabilidade dos pontos - se 'i' (inicio) e 'j' (incio) so viveis.5.6 Verificando se encontrou algum ponto - caso verdadeiro, a varivel voltar a ser falsa para que possa encontrar algum outro ponto para fazer parte do caminho final.5.7 Verificando a viabilidade dos pontos5.8 Verificando se a primeira rota, se so os primeiros pontos aps o depsito - Se verdadeiro, as viabilidades do primeiro e segundo pontos, referentes, respectivamente ao fim e incio so anuladas.Aps isso, a varivelpassa a se tornar falsa.5.9 Caso no seja a primeira rota. Apenas a viabilidade do segundo ponto, referente incio anulada.5.10 Anulando a probabilidade do ponto5.11 Anulando as probabilidades dos pontos que consequentemente deixaram de ser viveis devido a nulidade do ponto anterior - Para que ocorra isso necessrio que sejam pontos diferentes e tambm que a viabilidade do primeiro ponto, relacionado ao fim seja nulo e tambm que pelo menos uma das viabilidades do segundo ponto seja nula ( incio ou fim).Caso essa verificao seja verdadeira ento a probabilidade daquele ponto ser anulado e o somatrio ser decrementado de acordo com o valor que aquele ponto possua na Matriz Clarke Wright.

6) Imprimindo o caminho resultante

Observaes: Do 5.2 at o 5.11est em loop at que encontre todas as paradas que fazem parte do caminho Foi necessrio criar uma varivel para saber quantos pares so viveis, dependendo da dimenso da matriz. Isso foi importante pelo fato de que em certas ocasies, apenas existia um nico ponto vivel, que nesse caso sua probabilidade seria 1 (100), onde quase sempre o nmero randmico gerado era menor que a probabilidade resultando numa espcie de loop infinito. Por conta disso foi-se criada uma condio que caso a quantidade de pares viveis fosse 1 ento o pontos de inicio e de fim seriam esses pelo fato de serem os nicos viveis. E caso e ponto no conseguisse fazer parte do caminho ele voltaria para o deposito.

3 Pontos de Paradas (Matriz 4x4) Pontos viveis: 1,2; 1,3; 2,1; 2,3; 3,1; 3,2. Total: 64 Pontos de Paradas (Matriz 5x5) Pontos viveis: 1,2; 1,3;1,4; 2,1; 2,3; 2,4;3,1; 3,2; 3,4; 4,1;4,2;4,3. Total: 125 Pontos de Paradas (Matriz 6x6) Pontos viveis: 1,2; 1,3;1,4;1,5; 2,1; 2,3; 2,4;2,5;3,1; 3,2; 3,4;3,5; 4,1;4,2;4,3; 4,5; 5,1;5,2;5,3;5,4. Total: 20

Nmero total de pares viveis = (n-1).(n-2), onde n representa a dimenso da matriz.

Muitas vezes a mesma matriz resultava em caminhos diferentes, dependendo por onde comeava. Por conta disso foi criado um vetor referente a ordem dos pontos. Se, por exemplo, o primeiro par de pontos for 3,2 (3-inicio e 2-fim) e o segundo ponto fosse 2,1( 2-inicio e 1-fim) significa que inicialmente o "veiculo" sairia do deposito, em direo a parada 3, em seguida sai dessa para e chega na parada 2. Da parada 2, segue at a parada 1 e depois volta ao deposito. Com isso a ordem seria 321, caminho final.

Exemplo 1:Arquivo .txt Distncia entre as paradas4034560789100111213140Matriz Clarke0000003302030220Total de pares viveis = 6Matriz Viabilidade112233Somatrio Clarke = 15Matriz Probabilidade0000000.20.200.1300.200.130.130Nmero Randmico = 72Ponto: 2, 1Anulando os Pares Inviveis: Ponto: 1,2Somatrio: 12Total de pares viveis: 5

Ponto: 2,1Somatrio: 10Total de pares viveis: 4

Ponto: 2,3Somatrio: 7Total de pares viveis: 3

Ponto: 3,1Somatrio: 5Total de pares viveis: 2

Ponto: 3,2Somatrio: 3Total de pares viveis: 1

Matriz Viabilidade012033Matriz Probabilidade000000-110-10-10-1-10Probabilidade = 90Apenas um Par vivelPonto: 1,3Matriz Viabilidade012003

Caminho Final : 2 1 3Exemplo 2:Arquivo .txt Distncia entre as paradas4034560789100111213140

Matriz Clarke0000003302030220Total de pares viveis = 6Matriz Viabilidade112233Somatrio Clarke = 15Matriz Probabilidade0000000.20.200.1300.200.130.130Nmero Randmico = 45Ponto: 1,3Anulando os Pares Inviveis: Ponto: 1,2Somatrio: 12Total de pares viveis: 5

Ponto: 1,3Somatrio: 9Total de pares viveis: 4

Ponto: 2,1Somatrio: 7Total de pares viveis: 3

Ponto: 2,3Somatrio: 4Total de pares viveis: 2

Ponto: 3,1Somatrio: 2Total de pares viveis: 1

Matriz Viabilidade102203Matriz Probabilidade000000-1-10-10-10-110Probabilidade = 14Apenas um Par vivelPonto: 3,2Matriz Viabilidade100203

Caminho Final : 1 3 2