graph.cpp is updated and instances for benchmark too
git-svn-id: svn://scm.gforge.inria.fr/svnroot/paradiseo@816 331e1502-861f-0410-8da2-ba01fb791d7f
This commit is contained in:
parent
579c5bb6bd
commit
ec1d363b78
8 changed files with 22159 additions and 22591 deletions
|
|
@ -1,536 +0,0 @@
|
|||
535
|
||||
36.49 7.49
|
||||
57.06 9.51
|
||||
30.22 48.14
|
||||
5.15 -3.56
|
||||
34.59 -106.37
|
||||
57.12 -2.12
|
||||
16.45 -99.45
|
||||
5.36 -0.1
|
||||
28.56 -13.36
|
||||
8.59 38.48
|
||||
12.5 45.02
|
||||
-34.48 138.38
|
||||
30.23 -9.33
|
||||
56.18 12.51
|
||||
36.4 -4.3
|
||||
40.38 8.17
|
||||
35.11 -3.5
|
||||
41.55 8.48
|
||||
-37.01 174.47
|
||||
38.17 -0.34
|
||||
36.42 3.13
|
||||
36.11 37.14
|
||||
35.14 -101.42
|
||||
31.58 35.59
|
||||
52.18 4.46
|
||||
61.1 -149.59
|
||||
39.57 32.41
|
||||
51.11 4.28
|
||||
17.08 -61.47
|
||||
43.37 13.22
|
||||
29.38 35.01
|
||||
59.39 17.55
|
||||
15.18 38.55
|
||||
-25.14 -57.31
|
||||
23.58 32.47
|
||||
37.54 23.44
|
||||
33.46 -84.31
|
||||
12.3 -70.01
|
||||
24.26 54.28
|
||||
36.55 30.48
|
||||
26.16 50.38
|
||||
40.29 50.01
|
||||
39.11 -76.4
|
||||
10.48 -74.52
|
||||
-16.11 -52.3
|
||||
10.25 45.01
|
||||
41.18 2.05
|
||||
32.22 -64.42
|
||||
41.56 -72.41
|
||||
40.39 17.57
|
||||
44.49 20.19
|
||||
9.21 34.31
|
||||
32.06 20.16
|
||||
52.29 13.24
|
||||
48.27 -4.25
|
||||
-19.48 3.45
|
||||
33.49 35.29
|
||||
54.39 -6.14
|
||||
35.48 -101.22
|
||||
4.24 18.31
|
||||
13.04 -59.3
|
||||
60.17 5.13
|
||||
44.48 -68.5
|
||||
33.14 44.14
|
||||
45.4 9.24
|
||||
33.34 -86.45
|
||||
52.27 -1.45
|
||||
42.33 9.29
|
||||
45.48 -108.37
|
||||
43.28 -1.32
|
||||
13.21 -16.4
|
||||
-3.19 29.19
|
||||
13.55 100.36
|
||||
12.38 -8.02
|
||||
55.44 9.09
|
||||
44.32 11.18
|
||||
12.57 77.4
|
||||
-15.41 34.58
|
||||
27.13 56.22
|
||||
-27.25 153.05
|
||||
44.5 -0.43
|
||||
4.42 -74.09
|
||||
50.47 -1.51
|
||||
19.05 72.52
|
||||
67.16 14.22
|
||||
42.22 -71
|
||||
53.03 8.48
|
||||
41.08 16.47
|
||||
46.55 7.3
|
||||
51.31 -2.35
|
||||
50.54 4.29
|
||||
-15.52 -47.55
|
||||
47.35 7.32
|
||||
48.1 16.13
|
||||
47.27 19.15
|
||||
-34.49 -58.32
|
||||
42.55 -78.38
|
||||
44.3 26.06
|
||||
49.27 2.07
|
||||
-4.15 15.15
|
||||
39.15 9.04
|
||||
30.08 31.24
|
||||
23.11 113.16
|
||||
33.33 -7.4
|
||||
-11.54 22.45
|
||||
4.49 -52.22
|
||||
52.13 0.11
|
||||
-35.19 149.12
|
||||
10.36 -66.59
|
||||
22.39 88.27
|
||||
52.5 -1.19
|
||||
49.01 2.33
|
||||
43.33 6.57
|
||||
45.4 -0.19
|
||||
39.37 19.55
|
||||
50.52 7.09
|
||||
41.59 -87.54
|
||||
41.48 12.36
|
||||
9.34 -13.37
|
||||
41.25 -81.51
|
||||
3.26 -76.25
|
||||
42.31 8.48
|
||||
-28.02 145.37
|
||||
7.11 79.53
|
||||
40.04 -83.04
|
||||
33.22 -7.35
|
||||
48.07 7.22
|
||||
44.22 28.29
|
||||
45.4 -0.19
|
||||
6.21 2.23
|
||||
55.37 12.39
|
||||
-33.58 18.36
|
||||
37.28 15.04
|
||||
10.27 -75.31
|
||||
-26.25 146.14
|
||||
39 17.05
|
||||
12.12 -68.57
|
||||
39.09 -84.2
|
||||
39.03 -84.2
|
||||
51.24 -3.12
|
||||
29.11 -81.03
|
||||
23.46 90.23
|
||||
14.45 42.59
|
||||
32.5 -96.51
|
||||
33.25 36.31
|
||||
-6.53 39.12
|
||||
42.34 18.16
|
||||
-29.58 30.57
|
||||
38.51 -77.02
|
||||
28.34 77.07
|
||||
39.46 -104.53
|
||||
32.46 -96.24
|
||||
26.16 50.1
|
||||
47.16 5.05
|
||||
33.52 10.47
|
||||
14.45 -17.3
|
||||
4.01 9.43
|
||||
19.08 30.26
|
||||
25.16 51.34
|
||||
49.22 0.1
|
||||
-8.45 115.1
|
||||
51.08 13.46
|
||||
-12.25 130.52
|
||||
42.14 -83.32
|
||||
42.13 -83.21
|
||||
53.26 -6.15
|
||||
51.17 6.45
|
||||
25.15 55.2
|
||||
0.03 32.26
|
||||
45.32 4.18
|
||||
55.57 -3.22
|
||||
51.27 5.23
|
||||
31.48 -106.16
|
||||
52.5 -1.19
|
||||
48.19 6.04
|
||||
40.07 33
|
||||
40.09 82.4
|
||||
40.42 -74.1
|
||||
50.44 -3.25
|
||||
-34.49 -58.32
|
||||
64.49 -147.51
|
||||
37.01 -7.58
|
||||
-11.35 27.31
|
||||
59.54 10.37
|
||||
41.49 12.15
|
||||
14.35 -61
|
||||
33.56 45.8
|
||||
-4.23 15.26
|
||||
43.49 11.12
|
||||
8.37 -13.12
|
||||
41.26 15.32
|
||||
50.02 8.34
|
||||
44.12 12.04
|
||||
-21.13 27.29
|
||||
28.27 -13.52
|
||||
53.29 -1
|
||||
-19.27 29.52
|
||||
54.23 18.28
|
||||
60.12 11.05
|
||||
24.57 10.1
|
||||
-22.5 -43.15
|
||||
55.52 -4.26
|
||||
45.22 5.2
|
||||
7.09 41.43
|
||||
44.25 8.5
|
||||
57.4 18.18
|
||||
41.54 2.46
|
||||
37.11 -3.47
|
||||
47 15.26
|
||||
51.09 -0.11
|
||||
14.34 -90.32
|
||||
46.14 6.07
|
||||
-2.09 -79.53
|
||||
52.28 9.42
|
||||
53.38 10
|
||||
60.19 24.58
|
||||
35.2 25.11
|
||||
30.2 120.51
|
||||
22.19 114.12
|
||||
31.4 6.09
|
||||
35.33 139.46
|
||||
21.2 -157.55
|
||||
29.59 -95.28
|
||||
38.57 -77.27
|
||||
43.06 -78.57
|
||||
38.52 1.22
|
||||
47.34 -97.27
|
||||
50.21 30.55
|
||||
-25.44 -54.28
|
||||
39.44 -86.17
|
||||
40.59 28.49
|
||||
38.17 27.1
|
||||
21.3 39.12
|
||||
49.13 -2.12
|
||||
40.38 -73.46
|
||||
11.33 43.1
|
||||
-6.09 106.51
|
||||
-26.08 28.15
|
||||
-3.22 36.38
|
||||
45.28 -73.44
|
||||
12.03 8.31
|
||||
34.34 69.12
|
||||
63.59 -22.37
|
||||
-1.58 30.08
|
||||
22.34 120.17
|
||||
24.54 67.09
|
||||
-6.18 155.43
|
||||
17.56 -76.48
|
||||
50.05 19.47
|
||||
15.36 32.33
|
||||
27.42 85.22
|
||||
3.08 101.33
|
||||
29.13 47.58
|
||||
-8.51 13.14
|
||||
10.36 -66.59
|
||||
36.04 -115.09
|
||||
33.56 -118.24
|
||||
53.52 -1.39
|
||||
48.58 2.27
|
||||
0.27 9.25
|
||||
34.52 33.38
|
||||
43.11 0
|
||||
59.49 30.17
|
||||
36.51 -2.22
|
||||
51.24 12.25
|
||||
51.25 12.14
|
||||
6.1 1.15
|
||||
40.46 -73.52
|
||||
33.57 -118.24
|
||||
50.38 5.27
|
||||
51.09 -0.11
|
||||
51.28 -0.27
|
||||
50.34 3.05
|
||||
-12.01 -77.07
|
||||
45.27 9.16
|
||||
38.46 -9.08
|
||||
46.13 14.28
|
||||
35.3 12.37
|
||||
48.14 14.11
|
||||
51.28 -0.27
|
||||
6.35 3.2
|
||||
27.56 -15.23
|
||||
-16.3 -68.11
|
||||
53.21 -2.53
|
||||
6.1 1.15
|
||||
51.53 -0.22
|
||||
-25.55 32.34
|
||||
-15.2 28.27
|
||||
4.27 114
|
||||
49.37 6.12
|
||||
-17.49 25.49
|
||||
25.41 32.43
|
||||
45.44 4.56
|
||||
13 80.11
|
||||
40.29 -3.34
|
||||
31.52 -4.13
|
||||
53.21 -2.16
|
||||
-3.04 -60
|
||||
10.34 -71.44
|
||||
-4.02 39.36
|
||||
46.22 15.47
|
||||
39.18 -94.44
|
||||
28.32 -81.2
|
||||
23.36 58.17
|
||||
44.25 8.5
|
||||
-37.44 144.54
|
||||
24.31 39.42
|
||||
-37.41 144.51
|
||||
19.26 -99.04
|
||||
12.07 -86.11
|
||||
2.01 45.19
|
||||
25.48 -80.17
|
||||
20.56 -89.41
|
||||
45.27 9.16
|
||||
35.45 10.45
|
||||
39.07 -94.36
|
||||
35.52 14.29
|
||||
4.11 73.32
|
||||
47.45 7.26
|
||||
55.33 13.22
|
||||
54.31 -1.25
|
||||
14.31 121.01
|
||||
55.58 37.25
|
||||
43.35 3.58
|
||||
-25.55 32.34
|
||||
-8.58 125.13
|
||||
43.26 5.13
|
||||
-20.26 57.41
|
||||
51.21 1.21
|
||||
44.53 -93.13
|
||||
53.52 27.33
|
||||
50.55 5.47
|
||||
29.59 -90.16
|
||||
-26.31 31.19
|
||||
48.08 11.42
|
||||
-34.5 -56.02
|
||||
45.38 8.43
|
||||
49.05 6.08
|
||||
-17.45 177.27
|
||||
40.53 14.18
|
||||
25.02 -77.28
|
||||
-1.19 36.56
|
||||
43.4 7.13
|
||||
55.02 -1.41
|
||||
45.56 6.06
|
||||
12.08 15.02
|
||||
32.56 129.56
|
||||
35.09 36.17
|
||||
13.29 2.1
|
||||
18.06 -15.57
|
||||
-13 28.39
|
||||
58.35 16.15
|
||||
35.45 140.23
|
||||
47.09 -1.36
|
||||
49.3 11.05
|
||||
52.41 1.17
|
||||
40.38 -73.46
|
||||
55.28 10.2
|
||||
46.26 30.41
|
||||
26.21 127.46
|
||||
35.26 -97.46
|
||||
40.54 9.31
|
||||
41.07 -95.55
|
||||
41.14 -8.41
|
||||
41.59 -87.54
|
||||
51.5 -8.29
|
||||
28.26 -81.19
|
||||
35.38 -0.37
|
||||
48.43 2.23
|
||||
34.47 135.27
|
||||
60.12 11.05
|
||||
51.12 2.52
|
||||
44.34 26.06
|
||||
12.21 -1.31
|
||||
43.26 -5.5
|
||||
18.34 -72.17
|
||||
48.43 2.23
|
||||
40.05 116.36
|
||||
-31.56 115.58
|
||||
4.52 7.02
|
||||
37.08 -76.3
|
||||
39.52 -75.15
|
||||
33.26 -112.01
|
||||
55.52 -4.26
|
||||
46.35 0.18
|
||||
40.3 -80.14
|
||||
-5.15 39.49
|
||||
39.33 2.44
|
||||
38.1 13.06
|
||||
11.33 104.51
|
||||
36.49 11.58
|
||||
-9.27 147.13
|
||||
10.36 -61.21
|
||||
9.05 -79.23
|
||||
50.06 14.16
|
||||
43.41 10.24
|
||||
42.26 14.11
|
||||
16.16 -61.32
|
||||
9.03 -79.24
|
||||
43.23 -0.25
|
||||
45.39 12.12
|
||||
31.37 -8.03
|
||||
34.03 -6.45
|
||||
-8.08 -34.55
|
||||
38.04 15.39
|
||||
64.08 -21.57
|
||||
16.54 96.09
|
||||
49.19 4.03
|
||||
36.23 28.07
|
||||
-29.43 -53.42
|
||||
-22.5 -43.15
|
||||
45.13 14.35
|
||||
44.01 12.37
|
||||
48.04 -1.44
|
||||
6.14 -10.22
|
||||
41.49 12.15
|
||||
14.1 145.15
|
||||
-32.55 -60.47
|
||||
51.57 4.26
|
||||
24.42 46.44
|
||||
33.37 73.06
|
||||
6.3 -58.15
|
||||
15.29 44.13
|
||||
13.42 -89.07
|
||||
32.44 -117.11
|
||||
-23 -47.08
|
||||
29.32 -98.28
|
||||
-17.56 31.06
|
||||
48.31 -24.8
|
||||
-33.23 -70.47
|
||||
42.54 -8.25
|
||||
33.14 44.14
|
||||
18.26 -69.4
|
||||
47.27 -122.18
|
||||
27 14.27
|
||||
37.33 126.48
|
||||
51.34 0.42
|
||||
-4.4 55.31
|
||||
37.37 -122.23
|
||||
31.12 121.2
|
||||
25.21 55.24
|
||||
16.45 -22.57
|
||||
1.21 103.54
|
||||
37.22 -121.56
|
||||
43.49 18.2
|
||||
9.58 -84.16
|
||||
9.59 -84.12
|
||||
18.26 -66.01
|
||||
40.31 22.58
|
||||
41.58 21.38
|
||||
40.53 -111.57
|
||||
36.58 -25.1
|
||||
52.42 -8.55
|
||||
42.42 23.24
|
||||
43.32 16.18
|
||||
-12.54 -38.2
|
||||
38.45 -90.22
|
||||
51.33 0.14
|
||||
59.39 17.55
|
||||
48.41 9.13
|
||||
38.54 16.15
|
||||
58.53 5.38
|
||||
55.58 37.25
|
||||
37.26 -5.54
|
||||
48.32 7.38
|
||||
52.22 13.3
|
||||
-33.56 151.1
|
||||
29.33 52.36
|
||||
47.48 13
|
||||
40.31 17.24
|
||||
41.19 69.24
|
||||
28.29 -16.2
|
||||
38.31 -28.43
|
||||
43.11 0
|
||||
28.29 -16.2
|
||||
14.02 -87.14
|
||||
52.29 13.24
|
||||
35.41 51.19
|
||||
41.2 19.47
|
||||
32.4 13.09
|
||||
43.37 1.23
|
||||
32.01 34.53
|
||||
22.49 5.27
|
||||
0.23 6.43
|
||||
35.43 -5.55
|
||||
-18.48 47.29
|
||||
33.56 8.06
|
||||
-24.42 -53.42
|
||||
25.04 121.33
|
||||
37.55 12.29
|
||||
51.23 -2.43
|
||||
45.12 7.39
|
||||
45.5 13.28
|
||||
45.39 12.12
|
||||
47.26 0.43
|
||||
36.18 -95.52
|
||||
36.51 10.14
|
||||
52.34 13.18
|
||||
35.33 139.46
|
||||
35.54 -83.53
|
||||
40.62 13.11
|
||||
-0.08 -78.29
|
||||
12.41 101.01
|
||||
13.45 -60.57
|
||||
44.55 4.58
|
||||
43.14 27.49
|
||||
45.3 12.21
|
||||
-23 -47.08
|
||||
48.07 16.33
|
||||
39.29 -0.29
|
||||
41.42 -4.51
|
||||
45.24 10.53
|
||||
38.57 -77.27
|
||||
52.1 20.58
|
||||
36.45 -6.04
|
||||
53.19 -113.35
|
||||
44.53 -63.31
|
||||
45.41 -74.02
|
||||
45.19 -75.4
|
||||
46.48 -71.24
|
||||
42.16 -82.58
|
||||
48.57 -54.34
|
||||
45.28 -73.44
|
||||
49.11 -123.1
|
||||
49.55 -97.14
|
||||
51.07 -114.01
|
||||
47.37 -52.45
|
||||
43.41 -79.38
|
||||
44.06 15.21
|
||||
45.45 16.04
|
||||
41.4 -1.03
|
||||
-6.13 39.13
|
||||
47.28 8.33
|
||||
51.33 0.14
|
||||
24.58 91.53
|
||||
|
|
@ -1,53 +1,60 @@
|
|||
52
|
||||
565 575
|
||||
25 185
|
||||
345 750
|
||||
945 685
|
||||
845 655
|
||||
880 660
|
||||
25 230
|
||||
525 1000
|
||||
580 1175
|
||||
650 1130
|
||||
1605 620
|
||||
1220 580
|
||||
1465 200
|
||||
1530 5
|
||||
845 680
|
||||
725 370
|
||||
145 665
|
||||
415 635
|
||||
510 875
|
||||
560 365
|
||||
300 465
|
||||
520 585
|
||||
480 415
|
||||
835 625
|
||||
975 580
|
||||
1215 245
|
||||
1320 315
|
||||
1250 400
|
||||
660 180
|
||||
410 250
|
||||
420 555
|
||||
575 665
|
||||
1150 1160
|
||||
700 580
|
||||
685 595
|
||||
685 610
|
||||
770 610
|
||||
795 645
|
||||
720 635
|
||||
760 650
|
||||
475 960
|
||||
95 260
|
||||
875 920
|
||||
700 500
|
||||
555 815
|
||||
830 485
|
||||
1170 65
|
||||
830 610
|
||||
605 625
|
||||
595 360
|
||||
1340 725
|
||||
1740 245
|
||||
NAME: berlin52
|
||||
TYPE: TSP
|
||||
COMMENT: 52 locations in Berlin (Groetschel)
|
||||
DIMENSION: 52
|
||||
EDGE_WEIGHT_TYPE: EUC_2D
|
||||
NODE_COORD_SECTION
|
||||
1 565.0 575.0
|
||||
2 25.0 185.0
|
||||
3 345.0 750.0
|
||||
4 945.0 685.0
|
||||
5 845.0 655.0
|
||||
6 880.0 660.0
|
||||
7 25.0 230.0
|
||||
8 525.0 1000.0
|
||||
9 580.0 1175.0
|
||||
10 650.0 1130.0
|
||||
11 1605.0 620.0
|
||||
12 1220.0 580.0
|
||||
13 1465.0 200.0
|
||||
14 1530.0 5.0
|
||||
15 845.0 680.0
|
||||
16 725.0 370.0
|
||||
17 145.0 665.0
|
||||
18 415.0 635.0
|
||||
19 510.0 875.0
|
||||
20 560.0 365.0
|
||||
21 300.0 465.0
|
||||
22 520.0 585.0
|
||||
23 480.0 415.0
|
||||
24 835.0 625.0
|
||||
25 975.0 580.0
|
||||
26 1215.0 245.0
|
||||
27 1320.0 315.0
|
||||
28 1250.0 400.0
|
||||
29 660.0 180.0
|
||||
30 410.0 250.0
|
||||
31 420.0 555.0
|
||||
32 575.0 665.0
|
||||
33 1150.0 1160.0
|
||||
34 700.0 580.0
|
||||
35 685.0 595.0
|
||||
36 685.0 610.0
|
||||
37 770.0 610.0
|
||||
38 795.0 645.0
|
||||
39 720.0 635.0
|
||||
40 760.0 650.0
|
||||
41 475.0 960.0
|
||||
42 95.0 260.0
|
||||
43 875.0 920.0
|
||||
44 700.0 500.0
|
||||
45 555.0 815.0
|
||||
46 830.0 485.0
|
||||
47 1170.0 65.0
|
||||
48 830.0 610.0
|
||||
49 605.0 625.0
|
||||
50 595.0 360.0
|
||||
51 1340.0 725.0
|
||||
52 1740.0 245.0
|
||||
EOF
|
||||
|
||||
|
|
|
|||
|
|
@ -1,102 +1,108 @@
|
|||
101
|
||||
41 49
|
||||
35 17
|
||||
55 45
|
||||
55 20
|
||||
15 30
|
||||
25 30
|
||||
20 50
|
||||
10 43
|
||||
55 60
|
||||
30 60
|
||||
20 65
|
||||
50 35
|
||||
30 25
|
||||
15 10
|
||||
30 5
|
||||
10 20
|
||||
5 30
|
||||
20 40
|
||||
15 60
|
||||
45 65
|
||||
45 20
|
||||
45 10
|
||||
55 5
|
||||
65 35
|
||||
65 20
|
||||
45 30
|
||||
35 40
|
||||
41 37
|
||||
64 42
|
||||
40 60
|
||||
31 52
|
||||
35 69
|
||||
53 52
|
||||
65 55
|
||||
63 65
|
||||
2 60
|
||||
20 20
|
||||
5 5
|
||||
60 12
|
||||
40 25
|
||||
42 7
|
||||
24 12
|
||||
23 3
|
||||
11 14
|
||||
6 38
|
||||
2 48
|
||||
8 56
|
||||
13 52
|
||||
6 68
|
||||
47 47
|
||||
49 58
|
||||
27 43
|
||||
37 31
|
||||
57 29
|
||||
63 23
|
||||
53 12
|
||||
32 12
|
||||
36 26
|
||||
21 24
|
||||
17 34
|
||||
12 24
|
||||
24 58
|
||||
27 69
|
||||
15 77
|
||||
62 77
|
||||
49 73
|
||||
67 5
|
||||
56 39
|
||||
37 47
|
||||
37 56
|
||||
57 68
|
||||
47 16
|
||||
44 17
|
||||
46 13
|
||||
49 11
|
||||
49 42
|
||||
53 43
|
||||
61 52
|
||||
57 48
|
||||
56 37
|
||||
55 54
|
||||
15 47
|
||||
14 37
|
||||
11 31
|
||||
16 22
|
||||
4 18
|
||||
28 18
|
||||
26 52
|
||||
26 35
|
||||
31 67
|
||||
15 19
|
||||
22 22
|
||||
18 24
|
||||
26 27
|
||||
25 24
|
||||
22 27
|
||||
25 21
|
||||
19 21
|
||||
20 26
|
||||
18 18
|
||||
35 35
|
||||
NAME: eil101
|
||||
TYPE: TSP
|
||||
COMMENT: 101-city problem (Christofides/Eilon)
|
||||
DIMENSION: 101
|
||||
EDGE_WEIGHT_TYPE: EUC_2D
|
||||
NODE_COORD_SECTION
|
||||
1 41 49
|
||||
2 35 17
|
||||
3 55 45
|
||||
4 55 20
|
||||
5 15 30
|
||||
6 25 30
|
||||
7 20 50
|
||||
8 10 43
|
||||
9 55 60
|
||||
10 30 60
|
||||
11 20 65
|
||||
12 50 35
|
||||
13 30 25
|
||||
14 15 10
|
||||
15 30 5
|
||||
16 10 20
|
||||
17 5 30
|
||||
18 20 40
|
||||
19 15 60
|
||||
20 45 65
|
||||
21 45 20
|
||||
22 45 10
|
||||
23 55 5
|
||||
24 65 35
|
||||
25 65 20
|
||||
26 45 30
|
||||
27 35 40
|
||||
28 41 37
|
||||
29 64 42
|
||||
30 40 60
|
||||
31 31 52
|
||||
32 35 69
|
||||
33 53 52
|
||||
34 65 55
|
||||
35 63 65
|
||||
36 2 60
|
||||
37 20 20
|
||||
38 5 5
|
||||
39 60 12
|
||||
40 40 25
|
||||
41 42 7
|
||||
42 24 12
|
||||
43 23 3
|
||||
44 11 14
|
||||
45 6 38
|
||||
46 2 48
|
||||
47 8 56
|
||||
48 13 52
|
||||
49 6 68
|
||||
50 47 47
|
||||
51 49 58
|
||||
52 27 43
|
||||
53 37 31
|
||||
54 57 29
|
||||
55 63 23
|
||||
56 53 12
|
||||
57 32 12
|
||||
58 36 26
|
||||
59 21 24
|
||||
60 17 34
|
||||
61 12 24
|
||||
62 24 58
|
||||
63 27 69
|
||||
64 15 77
|
||||
65 62 77
|
||||
66 49 73
|
||||
67 67 5
|
||||
68 56 39
|
||||
69 37 47
|
||||
70 37 56
|
||||
71 57 68
|
||||
72 47 16
|
||||
73 44 17
|
||||
74 46 13
|
||||
75 49 11
|
||||
76 49 42
|
||||
77 53 43
|
||||
78 61 52
|
||||
79 57 48
|
||||
80 56 37
|
||||
81 55 54
|
||||
82 15 47
|
||||
83 14 37
|
||||
84 11 31
|
||||
85 16 22
|
||||
86 4 18
|
||||
87 28 18
|
||||
88 26 52
|
||||
89 26 35
|
||||
90 31 67
|
||||
91 15 19
|
||||
92 22 22
|
||||
93 18 24
|
||||
94 26 27
|
||||
95 25 24
|
||||
96 22 27
|
||||
97 25 21
|
||||
98 19 21
|
||||
99 20 26
|
||||
100 18 18
|
||||
101 35 35
|
||||
EOF
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load diff
|
|
@ -1,35 +0,0 @@
|
|||
NAME : eil101
|
||||
COMMENT : 101-city problem (Christofides/Eilon)
|
||||
TYPE : TSP
|
||||
DIMENSION : 101
|
||||
EDGE_WEIGHT_TYPE : EUC_2D
|
||||
|
||||
NAME: ali535
|
||||
TYPE: TSP
|
||||
COMMENT: 535 Airports around the globe (Padberg/Rinaldi)
|
||||
DIMENSION: 535
|
||||
EDGE_WEIGHT_TYPE: GEO
|
||||
DISPLAY_DATA_TYPE: COORD_DISPLAY
|
||||
|
||||
NAME : pr2392
|
||||
COMMENT : 2392-city problem (Padberg/Rinaldi)
|
||||
TYPE : TSP
|
||||
DIMENSION : 2392
|
||||
EDGE_WEIGHT_TYPE : EUC_2D
|
||||
|
||||
NAME : rl5915
|
||||
COMMENT : 5915-city TSP (Reinelt)
|
||||
TYPE : TSP
|
||||
DIMENSION : 5915
|
||||
EDGE_WEIGHT_TYPE : EUC_2D
|
||||
|
||||
NAME : usa13509
|
||||
COMMENT : Cities with population at least 500 in the continental US.
|
||||
COMMENT : Contributed by David Applegate and Andre Rohe, based on the
|
||||
COMMENT : data set "US.lat-long" from the ftp site ftp.cs.toronto.edu.
|
||||
COMMENT : The file US.lat-long.Z can be found in the directory /doc/geography.
|
||||
TYPE : TSP
|
||||
DIMENSION : 13509
|
||||
EDGE_WEIGHT_TYPE : EUC_2D
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
|
|
@ -1,9 +1,9 @@
|
|||
/*
|
||||
/*
|
||||
* <graph.cpp>
|
||||
* Copyright (C) DOLPHIN Project-Team, INRIA Futurs, 2006-2007
|
||||
* (C) OPAC Team, LIFL, 2002-2007
|
||||
*
|
||||
* Sébastien Cahon, Thomas Legrand
|
||||
* Sébastien Cahon, Jean-Charles Boisson
|
||||
*
|
||||
* This software is governed by the CeCILL license under French law and
|
||||
* abiding by the rules of distribution of free software. You can use,
|
||||
|
|
@ -40,65 +40,170 @@
|
|||
|
||||
#include "graph.h"
|
||||
|
||||
namespace Graph {
|
||||
namespace Graph
|
||||
{
|
||||
|
||||
static std :: vector <std :: pair <double, double> > vectCoord ; // Coordinates
|
||||
|
||||
static std :: vector <std :: vector <unsigned> > dist ; // Distances Mat.
|
||||
|
||||
unsigned size () {
|
||||
|
||||
static std :: vector <std :: vector <unsigned int> > dist ; // Distances Mat.
|
||||
|
||||
unsigned size ()
|
||||
{
|
||||
return dist.size () ;
|
||||
}
|
||||
|
||||
void computeDistances () {
|
||||
|
||||
void computeDistances ()
|
||||
{
|
||||
|
||||
// Dim.
|
||||
unsigned numCities = vectCoord.size () ;
|
||||
unsigned int numCities = vectCoord.size () ;
|
||||
dist.resize (numCities) ;
|
||||
for (unsigned i = 0 ; i < dist.size () ; i ++)
|
||||
dist [i].resize (numCities) ;
|
||||
|
||||
for (unsigned int i = 0 ; i < dist.size () ; i ++)
|
||||
{
|
||||
dist [i].resize (numCities) ;
|
||||
}
|
||||
|
||||
// Computations.
|
||||
for (unsigned i = 0 ; i < dist.size () ; i ++)
|
||||
for (unsigned j = i + 1 ; j < dist.size () ; j ++) {
|
||||
double distX = vectCoord [i].first - vectCoord [j].first ;
|
||||
double distY = vectCoord [i].second - vectCoord [j].second ;
|
||||
dist [i] [j] = dist [j] [i] = (unsigned) (sqrt ((float) (distX * distX + distY * distY)) + 0.5) ;
|
||||
for (unsigned int i = 0 ; i < dist.size () ; i ++)
|
||||
{
|
||||
for (unsigned int j = i + 1 ; j < dist.size () ; j ++)
|
||||
{
|
||||
double distX = (double)(vectCoord [i].first - vectCoord [j].first) ;
|
||||
double distY = (double)(vectCoord [i].second - vectCoord [j].second) ;
|
||||
dist [i] [j] = dist [j] [i] = (unsigned) (sqrt ((float) (distX * distX + distY * distY)) + 0.5) ;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void load (const char * __fileName) {
|
||||
|
||||
std :: ifstream f (__fileName) ;
|
||||
|
||||
std :: cout << ">> Loading [" << __fileName << "]" << std :: endl ;
|
||||
|
||||
if (f) {
|
||||
|
||||
unsigned num_vert ;
|
||||
|
||||
f >> num_vert ;
|
||||
vectCoord.resize (num_vert) ;
|
||||
void load (const char * __fileName)
|
||||
{
|
||||
unsigned int i, dimension;
|
||||
|
||||
for (unsigned i = 0 ; i < num_vert ; i ++)
|
||||
f >> vectCoord [i].first >> vectCoord [i].second ;
|
||||
|
||||
f.close () ;
|
||||
|
||||
computeDistances () ;
|
||||
}
|
||||
else {
|
||||
|
||||
std :: cout << __fileName << " doesn't exist !!!" << std :: endl ;
|
||||
// Bye !!!
|
||||
exit (1) ;
|
||||
}
|
||||
std::string string_read, buffer;
|
||||
|
||||
std :: ifstream file (__fileName) ;
|
||||
|
||||
std :: cout << ">> Loading [" << __fileName << "]" << std :: endl ;
|
||||
|
||||
if (file)
|
||||
{
|
||||
// Read NAME:
|
||||
file >> string_read;
|
||||
if (string_read.compare("NAME:")!=0)
|
||||
{
|
||||
std::cout << "ERROR: \'NAME:\' espected, \'" << string_read << "\' found" << std::endl;
|
||||
exit(1);
|
||||
}
|
||||
// Read instance name
|
||||
file >> string_read;
|
||||
std::cout << "\t Instance Name = " << string_read << std::endl;
|
||||
// Read TYPE:
|
||||
file >> string_read;
|
||||
if (string_read.compare("TYPE:")!=0)
|
||||
{
|
||||
std::cout << "ERROR: \'TYPE:\' espected, \'" << string_read << "\' found" << std::endl;
|
||||
exit(1);
|
||||
}
|
||||
// Read instance type;
|
||||
file >> string_read;
|
||||
std::cout << "\t Instance type = " << string_read << std::endl;
|
||||
if (string_read.compare("TSP")!=0)
|
||||
{
|
||||
std::cout << "ERROR: only TSP type instance can be loaded" << std::endl;
|
||||
exit(1);
|
||||
}
|
||||
// Read COMMENT:
|
||||
file >> string_read;
|
||||
if (string_read.compare("COMMENT:")!=0)
|
||||
{
|
||||
std::cout << "ERROR: \'COMMENT:\' espected, \'" << string_read << "\' found" << std::endl;
|
||||
exit(1);
|
||||
}
|
||||
// Read comments
|
||||
std::cout << "\t Instance comments = ";
|
||||
file >> string_read;
|
||||
buffer = string_read+"_first";
|
||||
while((string_read.compare("DIMENSION:")!=0) && (string_read.compare(buffer)!=0))
|
||||
{
|
||||
if(string_read.compare("COMMENT:")!=0)
|
||||
{
|
||||
std::cout << string_read << " ";
|
||||
}
|
||||
else
|
||||
{
|
||||
std::cout << std::endl << "\t ";
|
||||
}
|
||||
buffer = string_read;
|
||||
file >> string_read;
|
||||
}
|
||||
|
||||
std::cout << std::endl;
|
||||
|
||||
// Read dimension;
|
||||
file >> dimension ;
|
||||
std::cout << "\t Instance dimension = " << dimension << std::endl;
|
||||
vectCoord.resize (dimension) ;
|
||||
|
||||
// Read EDGE_WEIGHT_TYPE
|
||||
file >> string_read;
|
||||
if (string_read.compare("EDGE_WEIGHT_TYPE:")!=0)
|
||||
{
|
||||
std::cout << "ERROR: \'EDGE_WEIGHT_TYPE:\' espected, \'" << string_read << "\' found" << std::endl;
|
||||
exit(1);
|
||||
}
|
||||
|
||||
// Read edge weight type
|
||||
file >> string_read;
|
||||
std::cout << "\t Instance edge weight type = " << string_read << std::endl;
|
||||
if (string_read.compare("EUC_2D")!=0)
|
||||
{
|
||||
std::cout << "ERROR: only EUC_2D edge weight type instance can be loaded" << std::endl;
|
||||
exit(1);
|
||||
}
|
||||
|
||||
// Read NODE_COORD_SECTION
|
||||
file >> string_read;
|
||||
if (string_read.compare("NODE_COORD_SECTION")!=0)
|
||||
{
|
||||
std::cout << "ERROR: \'NODE_COORD_SECTION\' espected, \'" << string_read << "\' found" << std::endl;
|
||||
exit(1);
|
||||
}
|
||||
|
||||
// Read coordonates.
|
||||
for(i=0;i<dimension;i++)
|
||||
{
|
||||
// Read index
|
||||
file >> string_read;
|
||||
//Read Coordinate
|
||||
file >> vectCoord [i].first >> vectCoord [i].second ;
|
||||
}
|
||||
|
||||
// Read EOF
|
||||
file >> string_read;
|
||||
if(string_read.compare("EOF")!=0)
|
||||
{
|
||||
std::cout << "ERROR: \'EOF\' espected, \'" << string_read << "\' found" << std::endl;
|
||||
exit(1);
|
||||
}
|
||||
|
||||
std::cout << std::endl;
|
||||
|
||||
file.close () ;
|
||||
|
||||
computeDistances () ;
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
std :: cout << __fileName << " does not exist !!!" << std :: endl ;
|
||||
// Bye !!!
|
||||
exit (1) ;
|
||||
}
|
||||
}
|
||||
|
||||
float distance (unsigned __from, unsigned __to) {
|
||||
|
||||
return dist [__from] [__to] ;
|
||||
float distance (unsigned int __from, unsigned int __to)
|
||||
{
|
||||
return (float)(dist [__from] [__to]) ;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue