Sei sulla pagina 1di 6

UNIVERSIDAD DEL BIO-BIO

DEPARTAMENTO DE INGENIERA CIVIL Y AMBIENTAL

INGENIERIA DE TRANSPORTES (450010)

Tarea N 5

Autor:
CI:
Profesor:
Ayudante:

Nicole CAREAGA
17.5742964
Patricio Alvarez Mendoza.

Concepcin, 9 de Noviembre de 2013

a) Implemente el algoritmo en matlab y obtenga el valor del parmetro B para cada


propsito otros si la matriz de costos se estima como la distancia entre los centroides de
las distintas comunas de matriz de viajes, Describa en detalle la metodologa empleada
para estimar la matriz de costos de transporte.
Cdigo MATLAB:

%%%%%%%%%Calibracin De Beta%%%%%%%%%%
clc
x=10;
od=load('matrizt.txt');
costo=load('costo-Distancia.txt');
n=length(od);
m=zeros(n);
% se inicializan las variables y
matrices en cero.
s_origen=0;
s_destino=0;
s_total=0;
s_total2=0;
s_Lp=0;
s_Lp2=0;
s_ai =0;
s_bj=0;
ai=zeros(n,1);
bj=ones(1,n);
oi=zeros(n,1);
dj=zeros(1,n);
dif=10000;
error=input('ingrese el error = ')
%obtencin de las sumatorias OD
for i=1:n

%se generan dos ciclos para


recorrer en vertical y
horizontal.

for j=1:n
s_origen= s_origen + od(i,j);
s_destino= s_destino + od(j,i);
s_total= s_total + od(i,j);
s_Lp= s_Lp + od(i,j)*costo(i,j);
end
oi(i)= s_origen;

%costo por celda multiplicado por


los viajes generados por celda.
%se obtiene Oi y se llena para
cada celda "i" vertical
%se obtiene Dj y se llena para
cada celda "i" horizontal
%se reinician las sumas en cero.

dj(i)= s_destino;
s_origen=0;
s_destino=0;
end
Lp=s_Lp/s_total
beta=1/Lp

%se acumulan las sumas

;
;

%obtener Lp
%entrega beta inicial

while dif>error;

for

%iterar para distintos betas


mientras la dif Lp-Lp2>error
admitido

z=1:x;

for i=1:n;
for j=1:n;

%ciclo para encontrar Ai.

cij=exp(-beta*costo(i,j));
s_ai = s_ai + (

dj(j) * bj(j) * cij

);

%acumulo suma para Ai.

end
ai(i)=1/s_ai;
s_ai=0;

%obtengo ai
%reinicio suma

for l=1:n;
cij=exp(-beta*costo(i,l));

%ciclo para llenar matriz

m(i,l)= ai(i) * oi(i) * bj(l) * dj(l) * cij;

% matriz m de
viajes aproximada
al rectificar con
Ai.

end
end
for i=1:n;
for j=1:n;

%ciclo para encontrar Bj.

cij=exp(-beta*costo(j,i));

s_bj = s_bj + (

ai(j) * oi(j) * cij

%calculo costo por casilla


%se invierte el orden de
recorrer matriz costo.
);

%acumulo suma para Bj

end
bj(i)=1/s_bj;
s_bj=0;

%obtengo Bj
%reinicio suma

for l=1:n;
cij=exp(-beta*costo(i,l));

%ciclo para llenar matriz

m(i,l)= ai(i) * oi(i) * bj(l) * dj(l) * cij;


end
end
end

for i=1:n
for j=1:n
s_Lp2= s_Lp2 + m(i,j)*costo(i,j);
end
end
Lp2=s_Lp2/s_total
s_Lp2=0;

% ciclo para calcular el nuevo beta


%suma para nuevo Lp

%se obtiene Lp
%se reinicia la suma

beta2= (Lp2/Lp) * beta;


dif= abs(Lp2-Lp);

%clculo del nuevo beta


%se calcula la diferencia
entre Lp nuevo y anterior
% si la diferencia es mayor a
la admitida, se vuelve a
iterar
%si es menor, cumple, y se
finaliza el ciclo.

beta=beta2;
Lp=Lp2;
end
beta

%muestra el beta utilizado


(aproximado) y la matriz de
viajes.

Resultados para el costo distancia


ingrese el error = 0.001
error =0.001
beta = 0.095601

75.741
515.89
6.1932
0.3698
301.65
198.08
42.87
105.4
555.45
224.36

515.89
1.95E+05
42345
60425
15591
3476.1
3784.6
29303
1.56E+05
13006

1.1073
42312
22597
7257.6
1561.6
530.22
5153.8
2879.4
12064
1278

357.03
59806
7188.9
9502.9
6317.4
1876.3
546.14
3114.1
23600
1382.2

139.53
15495
1553.2
6343.4
66174
47359
141.5
726.3
6114.5
325.46

147.64
3451.4
526.86
1882.2
47314
28508
47.541
244.02
1903.1
108.31

32.272
3795.3
5172.4
553.34
142.78
48.016
1348.6
258.28
1082.1
78.959

79.682
29511
2902.1
3168.7
736
247.52
259.38
8187
11984
9452

416.17
1.56E+05
12050
23799
6140.8
1913.1
1077
11877
2.25E+05
4271.8

167.94
12969
1275.3
1392.5
326.54
108.77
78.511
9358.4
4267.6
36730

75
670
0
398
79
98
0
97
583
26

614
343969
25343
33590
10502
5398
2092
14754
78694
4156

0
25322
60436
1589
551
1225
1245
923
3963
380

398
33318
1661
65973
3124
695
0
1031
7059
432

79
10288
426
3350
119545
6080
0
410
4006
187

98
5422
1225
695
5920
69301
0
0
1427
45

0
2157
1245
0
0
0
8297
45
768
0

97
14827
831
1079
788
26
20
44220
3751
889

524
78054
4035
7219
3909
1397
826
3613
340966
1966

48
4199
415
432
187
45
0
960
1612
58776

b) Usando el valor del parmetro B obtenido, compare los viajes modelados y los viajes
observados en la matriz de viajes con propsito otros.

-Como podemos observar la relacin entre los viajes observados y los estimados distan de
ser parecidos, dado que en el clculo de costos se aadi una zona externa aleatoriamente
lo que produjo una distorsin de los datos estimados, adems de que se usaron matrices
de costos del ao 2012 creando un desfase temporal entre la matriz de viajes de 1999, an
as existen zonas que mantienen su observacin de viajes.
c) Considerando ahora una matriz de costos de transporte dados por los tiempos de viaje en
transporte pblico en la punta maana y repita b) y c).comente.
-El algoritmo ejecutado en matlab no cambia su estructura, solo hace el llamado de la
matriz de costos de tiempo de la siguiente forma:
costos=load(costos-tiempo.txt);
Los resultados obtenidos de este proceso son los siguientes:
ingrese el error = 0.001
error = 0.001
beta = 0.079611
87.636
427.39
167.73
124.63
255.46
174.21
38.374
100.19
466.65
183.72

441.3
2.56E+05
45231
58679
10194
2469.5
4310.6
27019
1.07E+05
7938.8

96.803
56048
21996
4222.6
794.34
244.35
4291.7
1795.5
5616.5
527.56

117.61
53627
6904.1
19857
6022.6
1710.9
771.54
2999.4
20800
881.3

244.26
9439.6
1316
6102.5
84531
38717
159.25
571.72
3122.4
167.99

166.31
2283.2
404.18
1730.8
38655
39251
57.353
205.9
1318.6
60.498

30.052
3269.4
5823.5
640.3
130.43
47.049
1562.3
214.42
726.31
68.223

105.19
27473
3266.3
306.28
627.78
226.45
287.47
14278
10656
9300.8

460
1.02E+05
9592.9
21728
3219
1361.5
914.22
10005
2.91E+05
1974.3

183.83
7693.1
914.64
934.47
175.79
63.409
87.167
8863.8
2004
45754

75
670
0
398
79
98
0
97
583
26

614
343969
25343
33590
10502
5398
2092
14754
78694
4156

0
25322
60436
1589
551
1225
1245
923
3963
380

398
33318
1661
65973
3124
695
0
1031
7059
432

79
10288
426
3350
119545
6080
0
410
4006
187

98
5422
1225
695
5920
69301
0
0
1427
45

0
2157
1245
0
0
0
8297
45
768
0

97
14827
831
1079
788
26
20
44220
3751
889

524
78054
4035
7219
3909
1397
826
3613
340966
1966

48
4199
415
432
187
45
0
960
1612
58776

Podemos observar la diferencia en los observados y estimados debido a la misma razn del caso
anterior, las zonas externas fueron estimadas aleatoriamente y existe un desfase temporal entre la
matriz de costos y la de viajes, conllevando la diferencia observada.

Anexos:

Matriz de costos-distancias
45
50
85
110
50
50
50
50
50
50

47
10
14.7
6.5
30.8
42.1
25.2
13.2
13.1
29.6

100
14.7
10
17.4
43.6
50.5
10.7
26.2
28.6
42.6

35
6.5
17.4
10
24.4
32.7
29.6
20.8
17
37.2

55
30.8
43.6
24.4
10
9.1
53.9
46.2
41.3
62.5

50
42.1
50.5
32.7
9.1
10
60.9
53.2
49.1
69.6

50
25.2
10.7
29.6
53.9
60.9
10
36.7
39.1
57

50
13.2
26.2
20.8
46.2
53.2
36.7
10
23.4
16.4

50
13.1
28.6
17
41.3
49.1
39.1
23.4
10
42

50
29.6
42.6
37.2
62.5
69.6
57
16.4
42
10

90
10
10
27
57
67
12
35
40
58

90
13
27
10
34
45
36
31
26
54

90
44
57
34
10
15
65
61
59
84

90
57
67
45
15
10
73
69
65
92

90
31
12
36
65
73
10
47
51
69

90
20
35
61
61
69
47
10
33
23

90
22
40
26
59
65
51
33
10
61

90
43
58
54
84
92
69
23
61
10

0
25322
60436
1589
551
1225
1245
923
3963
380

398
33318
1661
65973
3124
695
0
1031
7059
432

79
10288
426
3350
119545
6080
0
410
4006
187

98
5422
1225
695
5920
69301
0
0
1427
45

0
2157
1245
0
0
0
8297
45
768
0

97
14827
831
1079
788
26
20
44220
3751
889

524
78054
4035
7219
3909
1397
826
3613
340966
1966

48
4199
415
432
187
45
0
960
1612
58776

Matriz de costos-tiempo
110
90
90
90
90
90
90
90
90
90

90
10
20
13
44
57
31
20
22
43

Matriz origen destino


75
670
0
398
79
98
0
97
583
26

614
343969
25343
33590
10502
5398
2092
14754
78694
4156

Potrebbero piacerti anche