├── Data ├── Alfa │ ├── costSatelite.csv │ ├── costVehicle.csv │ ├── demand.csv │ └── distance.csv ├── AlfaIndo │ ├── costSatelite.csv │ ├── costVehicle.csv │ ├── demand.csv │ └── distance.csv ├── Indo │ ├── costSatelite.csv │ ├── costVehicle.csv │ ├── demand.csv │ └── distance.csv ├── data1 │ ├── costSatelite.csv │ ├── costVehicle.csv │ ├── demand.csv │ └── distance.csv ├── data2.xlsx ├── dataKecil.xlsx ├── dataKecil │ ├── costSatelite.csv │ ├── costVehicle.csv │ ├── demand.csv │ ├── distance.csv │ └── ~$kasus skala kecil buat adit.xlsx └── test.xlsx ├── GA.py ├── README.md ├── loading.py ├── main.py └── src /Data/Alfa/costSatelite.csv: -------------------------------------------------------------------------------- 1 | ,KS1,KS2 2 | cost,0,0 3 | Kapasitas,3277,3277 4 | -------------------------------------------------------------------------------- /Data/Alfa/costVehicle.csv: -------------------------------------------------------------------------------- 1 | ,Truck,Tossa 2 | BiayaVar,1257.759556,474.1418062 3 | Kapasitas,3277,250 4 | Biaya Per kendaraan,1000,500 5 | -------------------------------------------------------------------------------- /Data/Alfa/demand.csv: -------------------------------------------------------------------------------- 1 | ,Demand 2 | A1,68.8 3 | A2,64 4 | A3,73.8 5 | A4,59.6 6 | A5,108 7 | A6,69.6 8 | A7,69.6 9 | A8,34.8 10 | A9,83.2 11 | A10,59.8 12 | A11,93.8 13 | A12,49.4 14 | A13,19.8 15 | A14,59 16 | A15,74.6 17 | A16,69.2 18 | A17,39.4 19 | A18,44.6 20 | A19,49.6 21 | A20,64 22 | A21,74.4 23 | A22,59.2 24 | A23,123 25 | A24,77 26 | A25,86 27 | A27,93.8 28 | A54,136 29 | -------------------------------------------------------------------------------- /Data/Alfa/distance.csv: -------------------------------------------------------------------------------- 1 | ,DCA,KS1,KS2,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12,A13,A14,A15,A16,A17,A18,A19,A20,A21,A22,A23,A24,A25,A27,A54 2 | DCA,0,31,28.8,30.8,26.3,25.5,27.5,28,26.1,29.4,24.3,25.6,33.4,31,34.9,36.7,31.6,30.1,26.1,25,24.2,24.2,24.6,26.9,28.8,25.5,31.7,31.3,31.9,39.2 3 | KS1,31,0,6.7,0.9,4.5,4.7,2.8,6.2,5.8,7.4,5.8,6.1,1.6,0,1.5,2.7,3.9,2.6,8.6,9.5,9.3,8.4,6.7,7.7,6.7,6.8,8.5,5.1,3.8,7.8 4 | KS2,28.8,6.7,0,7.7,7.1,5.7,5.1,4.5,2.7,4.1,2.4,1,8.3,6.7,8.2,9,7.7,7,1.6,4.3,4.6,3.1,2.3,1,0,0.85,4.4,8.8,9.4,3.2 5 | A1,30.8,0.9,7.7,0,3.9,4.5,2.5,6.6,5.1,8.9,5.3,5.8,1.9,0.9,1.8,3,3.2,3.4,8.4,9.7,9,8.5,7.5,7.5,7.7,6.8,8.8,5.4,4.6,8.6 6 | A2,26.3,4.5,7.1,3.9,0,0.7,2.3,8.1,6.4,8.2,4,6.3,6,4.5,6.2,7.2,3.4,6.5,6.6,6.1,9.2,5.4,4.1,7.4,7.1,6.5,10.9,7.9,8,4.1 7 | A3,25.5,4.7,5.7,4.5,0.7,0,2.9,7.5,5.7,10.8,3.2,5.6,6.7,4.7,6.2,7.4,3.9,5.9,5.6,4.9,4.6,4.9,3.4,6.7,5.7,4.5,11.6,7.8,8.2,3.4 8 | A4,27.5,2.8,5.1,2.5,2.3,2.9,0,6.7,4.6,8.8,3,4.6,4.1,2.8,4.3,5.5,2.9,4.4,6.7,6.8,6.7,5.7,4.5,6.1,5.1,5.2,9.5,8.9,6.2,5.3 9 | A5,28,6.2,4.5,6.6,8.1,7.5,6.7,0,3.4,2.1,5.7,3.7,7.9,6.2,7.7,6.8,9.4,4.8,5.1,8.1,7.1,6.6,5.7,4.5,4.5,5,2.6,6,6.6,7.2 10 | A6,26.1,5.8,2.7,5.1,6.4,5.7,4.6,3.4,0,3.7,3.3,0.8,7.4,5.8,7.3,7.4,8,4.9,3.4,5.6,5.6,4.7,2.8,2.8,2.7,1.9,4.8,6.6,7.2,4 11 | A7,29.4,7.4,4.1,8.9,8.2,10.8,8.8,2.1,3.7,0,6.9,4.2,7,7.4,9.4,8.4,10.6,6.4,4.7,6.2,7.2,6.1,6.3,4,4.1,4.5,1.1,8,8.2,8 12 | A8,24.3,5.8,2.4,5.3,4,3.2,3,5.7,3.3,6.9,0,2.3,7.1,5.8,7.2,8.5,5.4,5.9,4.2,5.2,5.2,4.2,1.1,3.6,2.4,2.6,7.5,8.1,8.6,2.3 13 | A9,25.6,6.1,1,5.8,6.3,5.6,4.6,3.7,0.8,4.2,2.3,0,7.7,6.1,7.6,7.9,7.3,5.8,2.6,4.8,4.8,3.9,2.1,2,1,1.1,5.2,7.6,7.8,3.5 14 | A10,33.4,1.6,8.3,1.9,6,6.7,4.1,7.9,7.4,7,7.1,7.7,0,1.6,1.5,4.1,3.6,4.3,10.6,11.1,11.2,10.3,8.7,9.6,8.3,8.4,10.7,6.3,5.4,11.3 15 | A11,31,0,6.7,0.9,4.5,4.7,2.8,6.2,5.8,7.4,5.8,6.1,1.6,0,1.5,2.7,3.9,2.6,8.6,9.5,9.3,8.4,6.7,7.7,6.7,6.8,8.5,5.1,3.8,7.8 16 | A12,34.9,1.5,8.2,1.8,6.2,6.2,4.3,7.7,7.3,9.4,7.2,7.6,1.5,1.5,0,2.3,4,2.8,10.1,11,11,10.2,8.2,9.2,8.2,8.3,8.7,4.8,3.9,11 17 | A13,36.7,2.7,9,3,7.2,7.4,5.5,6.8,7.4,8.4,8.5,7.9,4.1,2.7,2.3,0,6.6,2.4,10.6,11.7,11.7,10.8,9.2,10,9,9.2,7.8,2.9,2.1,11 18 | A14,31.6,3.9,7.7,3.2,3.4,3.9,2.9,9.4,8,10.6,5.4,7.3,3.6,3.9,4,6.6,0,6.2,10.6,9.1,9.6,8.3,9.3,8.7,7.7,7.8,11.4,8,7.4,14.3 19 | A15,30.1,2.6,7,3.4,6.5,5.9,4.4,4.8,4.9,6.4,5.9,5.8,4.3,2.6,2.8,2.4,6.2,0,8.6,9.6,9.7,8.8,7.1,8,7,7.2,5.8,1.9,2.3,8.3 20 | A16,26.1,8.6,1.6,8.4,6.6,5.6,6.7,5.1,3.4,4.7,4.2,2.6,10.6,8.6,10.1,10.6,10.6,8.6,0,1.5,1.9,1,2,0.65,1.6,1.5,5.4,9.6,10.2,2.8 21 | A17,25,9.5,4.3,9.7,6.1,4.9,6.8,8.1,5.6,6.2,5.2,4.8,11.1,9.5,11,11.7,9.1,9.6,1.5,0,0.95,0.95,2.4,1.9,4.3,3.4,7.4,10.8,11.4,1.8 22 | A18,24.2,9.3,4.6,9,9.2,4.6,6.7,7.1,5.6,7.2,5.2,4.8,11.2,9.3,11,11.7,9.6,9.7,1.9,0.95,0,1.3,2.3,2.3,4.6,3.2,7.8,10.5,11,1.2 23 | A19,24.2,8.4,3.1,8.5,5.4,4.9,5.7,6.6,4.7,6.1,4.2,3.9,10.3,8.4,10.2,10.8,8.3,8.8,1,0.95,1.3,0,1.5,1.4,3.1,2.2,6.9,9.7,10.3,1.8 24 | A20,24.6,6.7,2.3,7.5,4.1,3.4,4.5,5.7,2.8,6.3,1.1,2.1,8.7,6.7,8.2,9.2,9.3,7.1,2,2.4,2.3,1.5,0,2.3,2.3,1.6,6.9,9,9.6,1.3 25 | A21,26.9,7.7,1,7.5,7.4,6.7,6.1,4.5,2.8,4,3.6,2,9.6,7.7,9.2,10,8.7,8,0.65,1.9,2.3,1.4,2.3,0,1,0.95,4.7,9,9.5,3.2 26 | A22,28.8,6.7,0,7.7,7.1,5.7,5.1,4.5,2.7,4.1,2.4,1,8.3,6.7,8.2,9,7.7,7,1.6,4.3,4.6,3.1,2.3,1,0,0.85,4.4,8.8,9.4,3.2 27 | A23,25.5,6.8,0.85,6.8,6.5,4.5,5.2,5,1.9,4.5,2.6,1.1,8.4,6.8,8.3,9.2,7.8,7.2,1.5,3.4,3.2,2.2,1.6,0.95,0.85,0,5.3,8,8.6,2.9 28 | A24,31.7,8.5,4.4,8.8,10.9,11.6,9.5,2.6,4.8,1.1,7.5,5.2,10.7,8.5,8.7,7.8,11.4,5.8,5.4,7.4,7.8,6.9,6.9,4.7,4.4,5.3,0,6.8,7.4,8.2 29 | A25,31.3,5.1,8.8,5.4,7.9,7.8,8.9,6,6.6,8,8.1,7.6,6.3,5.1,4.8,2.9,8,1.9,9.6,10.8,10.5,9.7,9,9,8.8,8,6.8,0,0.8,9.3 30 | A27,31.9,3.8,9.4,4.6,8,8.2,6.2,6.6,7.2,8.2,8.6,7.8,5.4,3.8,3.9,2.1,7.4,2.3,10.2,11.4,11,10.3,9.6,9.5,9.4,8.6,7.4,0.8,0,9.8 31 | A54,39.2,7.8,3.2,8.6,4.1,3.4,5.3,7.2,4,8,2.3,3.5,11.3,7.8,11,11,14.3,8.3,2.8,1.8,1.2,1.8,1.3,3.2,3.2,2.9,8.2,9.3,9.8,0 32 | -------------------------------------------------------------------------------- /Data/AlfaIndo/costSatelite.csv: -------------------------------------------------------------------------------- 1 | ,KS1,KS2,KS3,KS4,KS5 2 | cost,0,0,0,0,0 3 | Kapasitas,3277,3277,3277,3277,3277 4 | -------------------------------------------------------------------------------- /Data/AlfaIndo/costVehicle.csv: -------------------------------------------------------------------------------- 1 | ,Truck,Tossa 2 | BiayaVar,1257.759556,474.1418062 3 | Kapasitas,3277,250 4 | Biaya Per kendaraan,1000,500 5 | -------------------------------------------------------------------------------- /Data/AlfaIndo/demand.csv: -------------------------------------------------------------------------------- 1 | ,Demand 2 | A1,68.8 3 | A2,64 4 | A3,73.8 5 | A4,59.6 6 | A5,108 7 | A6,69.6 8 | A7,69.6 9 | A8,34.8 10 | A9,83.2 11 | A10,59.8 12 | A11,93.8 13 | A12,49.4 14 | A13,19.8 15 | A14,59 16 | A15,74.6 17 | A16,69.2 18 | A17,39.4 19 | A18,44.6 20 | A19,49.6 21 | A20,64 22 | A21,74.4 23 | A22,59.2 24 | A23,123 25 | A24,77 26 | A25,86 27 | A27,93.8 28 | A58,136 29 | I1,49.4 30 | I2,34.8 31 | I3,49.2 32 | I4,44.6 33 | I5,34.8 34 | I6,59.2 35 | I7,78.4 36 | I8,74.2 37 | I9,39.6 38 | I10,39.6 39 | I11,49.6 40 | I12,49.6 41 | I13,64.4 42 | I15,104 43 | I16,79.4 44 | I17,129 45 | I18,129 46 | I19,103.8 47 | I20,59.4 48 | I21,59.2 49 | I22,54.8 50 | I23,69 51 | I24,59.4 52 | I25,49.4 53 | I26,94.2 54 | I27,49.8 55 | I30,76 56 | I31,84.4 57 | I32,89.4 58 | I33,39.8 59 | I34,59.6 60 | I35,56.2 61 | I36,88 62 | I37,44.8 63 | I38,108.6 64 | I39,69.2 65 | I40,64.2 66 | I41,89.2 67 | I42,49.2 68 | I43,98 69 | I44,49.6 70 | I45,59.6 71 | I46,59.8 72 | I47,49.4 73 | I48,44.6 74 | I49,54.2 75 | I50,44.6 76 | I51,44.6 77 | I52,69.6 78 | I53,44.6 79 | I54,44.6 80 | I55,44.6 81 | I56,44.6 82 | I57,44.6 83 | I58,49.2 84 | I59,59.6 85 | I60,59.2 86 | I61,103.4 87 | I62,49.2 88 | I82,73.8 89 | -------------------------------------------------------------------------------- /Data/AlfaIndo/distance.csv: -------------------------------------------------------------------------------- 1 | ,DCA,DCI,KS1,KS2,KS3,KS4,KS5,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12,A13,A14,A15,A16,A17,A18,A19,A20,A21,A22,A23,A24,A25,A27,A58,I1,I2,I3,I4,I5,I6,I7,I8,I9,I10,I11,I12,I13,I15,I16,I17,I18,I19,I20,I21,I22,I23,I24,I25,I26,I27,I30,I31,I32,I33,I34,I35,I36,I37,I38,I39,I40,I41,I42,I43,I44,I45,I46,I47,I48,I49,I50,I51,I52,I53,I54,I55,I56,I57,I58,I59,I60,I61,I62,I82 2 | DCA,0,50.1,45.5,47.6,41.9,47.6,42.1,30.8,26.3,25.5,27.5,28,26.1,29.4,24.3,25.6,33.4,31,34.9,36.7,31.6,30.1,26.1,25,24.2,24.2,24.6,26.9,28.8,25.5,31.7,31.3,31.9,39.2,50.1,44.7,44.5,40.6,41.2,41.5,43.8,43.9,41.8,38.8,52.7,51.6,52.1,45.6,43.5,45.5,46.1,46.6,46,46.2,46.6,47.5,47.6,47.2,46.4,55.9,49,48.9,43.7,42.3,42.9,42.1,41.4,39.8,38.9,40.9,45.6,45.5,47.6,50.1,47.2,46.2,44.8,44.4,42.2,44.3,47.6,41.9,43.1,44.9,44.6,46.3,46.6,47,44.4,44.1,43.1,42.5,47.6,41.4 3 | DCI,50.1,0,13,4.9,9.4,8.5,11,11.9,4.1,13,11.6,6.1,10.2,5.5,10.8,10.9,13.7,10.6,11.5,9.6,14.7,7.9,9.3,10.8,11.6,10.5,10.6,8.5,8.4,9.1,4.2,9.5,9.2,11.8,7.2,7.1,9.7,10.6,10.7,11,9.8,9.4,11.7,9,12.9,9.2,11.5,4.2,6.6,3.8,4,8.3,8.1,6.6,7.1,7.5,8.5,8.3,11.1,5.8,9.8,7.7,8.4,11.2,9,11,9.4,11,12,9.4,11.9,13,12.7,12.8,13.4,14.2,14.5,14.5,12.7,12.9,4.9,9.4,7.6,6.2,6.4,4.4,4.9,4.5,7.2,8.1,8.2,9.2,3.7,10.3 4 | KS1,43.2,8.6,0,7.4,5.2,5.4,8,1.7,2.3,2.8,0.9,7.5,6.1,8.7,3.9,5.4,3.6,2,3.5,4.7,2.1,4.3,7.7,8.2,7.6,6.7,5.6,6.7,6.4,6.2,9.4,6.7,5.5,6.4,5.9,4.6,2.7,3.6,4,2.2,2.8,2.9,3.5,5.4,3.7,4.1,3.4,7,6.5,7.2,8.1,4.1,4.4,5.6,5.7,5.5,5.4,4.3,2.7,7.7,5.6,5.3,8,7.4,7.4,8,8.3,7.7,6.9,6.1,1.5,0,1.5,2,1.1,1.3,1.6,1.6,3.1,1.2,7.4,5.2,4.7,7.3,8,8.7,8.4,7.9,5.8,7.2,7.7,5.8,9.3,8.8 5 | KS2,45.3,12.9,7.4,0,4.5,6,7.6,7.7,8.9,10.1,7.2,0.85,3.1,1.3,5.6,3.6,8.3,6.6,8,7.2,9.2,5.2,43,7.1,6.7,5.8,5.7,3.6,3.3,4.2,1.8,6.8,6.9,6.7,2.4,2.8,4.8,5.4,5.4,6.2,4.9,4.5,6.6,5,6.8,6.6,7.9,3.6,2.4,2.5,1.1,5.3,4.8,4.3,4.7,5.5,6,5.3,5.6,8,7,6.9,4.4,6.3,5.4,7.6,6.5,7,7.6,5.3,6.3,7.4,7.5,8.3,8.3,8.6,8.7,8.9,9.8,7.1,0,4.5,3.3,2.1,2.5,1.4,1,0.6,3.1,3.9,4,3.9,1.8,6.9 6 | KS3,40.4,11,5.2,4.5,0,7.6,3,6.4,5.8,5.1,4.6,4.5,1.6,4.9,1.8,0.85,8.2,6.3,8,8.8,7.1,6.7,2.6,3.1,3,2.1,1.3,1.7,1.1,0.45,5.7,8.2,8.5,2.8,4.9,5.3,4.5,2.2,1.7,3.4,3.3,3.2,3.5,0.5,8.5,8.2,8,5.3,4.2,4.3,5.3,5.9,5.2,5.9,6.2,7.1,7.6,6.6,5.8,9.6,8.6,8.5,2.9,2.9,2.2,3,3.7,3.3,3.2,1.1,5,5.2,6.2,7,6.5,6.4,6.5,6.4,5,4.3,4.5,0,2,3.5,4.3,4.9,4.6,4.1,1.3,1.5,2.4,0.6,5.5,4.3 7 | KS4,45.1,4.2,5.4,6,7.6,0,10.4,4.6,8.2,6.4,5.3,5.2,5.8,6.9,7.3,6.3,6.8,3.8,4,2.3,7.3,1.1,8.8,17.4,9.7,8.9,7.9,8.3,8,7.3,6.1,2.2,1.7,8.5,3.2,3.3,3.3,7.1,7.1,4.1,3.9,4.2,6.3,7.2,2.9,1,3.9,2.7,3.2,3.9,4.8,1.2,2.6,1.4,0.9,0.7,0,1.2,2.9,3,1.6,1.3,1.8,10.5,9.8,10.4,17.5,9.8,9,8.3,4,5.4,3.7,4.6,5.2,5.5,6.3,7,7.8,5.9,6,7.6,5.9,7.6,8.6,7.4,7.1,6.8,8.1,9.2,10,8.2,6.5,11.1 8 | KS5,39.8,13.7,8,7.6,3,10.4,,13.5,5.9,5.2,7.2,8.5,5.4,6.4,4.9,4.6,13.1,10.6,14.5,16.1,10.1,9.5,1.5,0.16,0.8,0.85,2.4,1.9,3.6,3.4,7.5,16.8,17.6,1.8,7.7,8,7.2,5,4.8,6.6,6.1,6,5.1,3.2,15.4,16.7,14.6,8.6,7.9,9.4,8.5,8.7,7.9,8.6,9,9.9,10.4,9.3,8.5,12.3,10.9,11.2,1.9,0.9,1.1,0,0.75,1.1,1.8,1.9,7.4,8,9.2,9.7,8.4,8.7,7.2,6.8,4.8,6.1,7.6,3,5,4.4,4.4,6.3,6.6,6,2.6,2.4,2.8,2.6,7.4,0.7 9 | A1,30.8,11.9,1.7,7.7,6.4,4.6,13.5,0,3.9,4.5,2.5,6.6,5.1,8.9,5.3,5.8,1.9,0.9,1.8,3,3.2,3.4,8.4,9.7,9,8.5,7.5,7.5,7.7,6.8,8.8,5.4,4.6,8.6,6,4.1,3,5.3,8.2,3.1,3.4,3.2,5.2,5.9,2,3.2,1.7,6.6,7.1,6.8,7.8,3.5,3.7,5.3,4.9,4.7,4.6,3.5,1.8,6.8,4.9,4.6,17.2,14.4,9.5,13.5,14.2,9.4,8.5,8.2,1.4,1.7,0.21,0.65,1.5,2.7,3.2,3.3,4.8,2.8,7.7,6.4,5,7.6,8.3,9,8.7,8.2,7,8.4,8.8,7,9,9.8 10 | A2,26.3,4.1,2.3,8.9,5.8,8.2,5.9,3.9,0,0.7,2.3,8.1,6.4,8.2,4,6.3,6,4.5,6.2,7.2,3.4,6.5,6.6,6.1,9.2,5.4,4.1,7.4,7.1,6.5,10.9,7.9,8,4.1,7.5,14.5,4.5,3.6,4.1,3,3.9,4.4,2.9,4.7,6.5,6.8,18.6,8.6,8,8.5,17,6.3,6.6,7.6,7.8,8.2,8.2,7.3,5.4,16.4,8.3,8,7.5,6.8,6.9,5.9,6.6,5.5,4.6,5.8,4.3,2.3,2.3,4.8,1.5,2.8,1.4,1.2,1,2.6,8.9,5.8,6.2,8.8,10.5,12.2,11.3,10.8,7.2,8.7,9,6.2,12.2,6.6 11 | A3,25.5,13,2.8,10.1,5.1,6.4,5.2,4.5,0.7,0,2.9,7.5,5.7,10.8,3.2,5.6,6.7,4.7,6.2,7.4,3.9,5.9,5.6,4.9,4.6,4.9,3.4,6.7,5.7,4.5,11.6,7.8,8.2,3.4,6.5,5.6,3.8,2.9,3.3,2.3,3.2,3.7,1.6,4.8,6.5,6.8,6.1,7.9,7.1,7.8,8.7,5.2,5.3,6.4,6.6,6.4,6.4,7.2,5.7,16.7,8.9,8.7,6.8,6.2,6.2,5.2,6,4.8,3.9,5.2,4.2,2.8,4.9,4.8,4.5,3.2,2,1.7,0.29,2.7,10.1,5.1,5.5,8.1,9.9,11.5,10.6,10.2,6,7.3,8.3,5.5,11.6,6 12 | A4,27.5,11.6,0.9,7.2,4.6,5.3,7.2,2.5,2.3,2.9,0,6.7,4.6,8.8,3,4.6,4.1,2.8,4.3,5.5,2.9,4.4,6.7,6.8,6.7,5.7,4.5,6.1,5.1,5.2,9.5,8.9,6.2,5.3,5.7,4.3,2.5,2.7,3.2,1.2,2.2,2.7,2.5,4.5,4.5,4.9,4.2,6.8,6.2,6.7,7.8,3.9,4.3,5.3,5.4,5.2,5.3,4.4,2.9,7.7,6.4,6.1,6.9,8.1,6.3,7.2,7.9,6.8,5.9,5,1.7,0.9,2.3,2.8,1.9,2.2,2.1,2.2,2.6,0.28,7.2,4.6,4.5,7.3,8,8.8,8.4,8,5.2,6.6,7,5.2,9.1,7.6 13 | A5,28,6.1,7.5,0.85,4.5,5.2,8.5,6.6,8.1,7.5,6.7,0,3.4,2.1,5.7,3.7,7.9,6.2,7.7,6.8,9.4,4.8,5.1,8.1,7.1,6.6,5.7,4.5,4.5,5,2.6,6,6.6,7.2,1.6,2,4.8,4.6,5.9,5.4,4.9,3.8,6.8,4.2,8.6,5.8,7.6,2.8,1.9,1.2,1.4,4.5,4.9,3.9,4.3,5.2,5.2,4.9,5.2,12.1,6.6,6.6,5.3,8.7,6.2,8.5,7.7,7.8,7.7,6.2,6.3,7.5,6.8,7.6,8.2,8.6,8.8,8.9,7.9,7.1,0.85,4.5,2.2,2.9,3.4,2.2,1.8,1.4,4,4.7,5.5,4.8,2.6,7.4 14 | A6,26.1,10.2,6.1,3.1,1.6,5.8,5.4,5.1,6.4,5.7,4.6,3.4,0,3.7,3.3,0.8,7.4,5.8,7.3,7.4,8,4.9,3.4,5.6,5.6,4.7,2.8,2.8,2.7,1.9,4.8,6.6,7.2,4,2.7,3.4,3.8,2.7,3.3,3.6,2.4,1.9,4.4,2.3,7,6.6,6.9,3.6,2.8,3,4.1,4.3,4.5,4.5,4.9,5.8,5.8,5.5,4.5,8.2,7.2,7.1,3.5,5.3,4.5,5.4,5.7,5.6,4.8,2.7,5.3,6.1,4.9,7,7,7.3,7.6,7.6,6.6,5.7,3.1,1.6,0.087,2.5,3.2,3.9,3.4,3.1,2,3.1,3.3,2.2,4.3,5.7 15 | A7,29.4,5.5,8.7,1.3,4.9,6.9,6.4,8.9,8.2,10.8,8.8,2.1,3.7,0,6.9,4.2,7,7.4,9.4,8.4,10.6,6.4,4.7,6.2,7.2,6.1,6.3,4,4.1,4.5,1.1,8,8.2,8,3.7,6.2,6,6.3,6.8,7.4,6.3,5.7,7.7,5.3,8.1,7.9,9.2,4.9,3.6,3.1,2.1,6.6,6.6,5.6,6,12,6.9,6.6,6.4,10.3,12.2,12.2,4.7,6.6,5.7,6.4,5.7,7.5,8.3,6.7,7.5,8.7,8,8.9,9.6,10,10.2,10.3,9.2,8.5,1.3,4.9,3.7,2.5,1.6,0.1,0.23,0.65,3.5,4.3,3.5,4.3,1.2,5.7 16 | A8,24.3,10.8,3.9,5.6,1.8,7.3,4.9,5.3,4,3.2,3,5.7,3.3,6.9,0,2.3,7.1,5.8,7.2,8.5,5.4,5.9,4.2,5.2,5.2,4.2,1.1,3.6,2.4,2.6,7.5,8.1,8.6,2.3,4.9,3.6,3.8,0.24,0.14,2.4,2.7,2.6,1.7,1.5,7.5,7.4,7.2,5.8,5.2,5.7,7.2,5.3,4.7,6,6.4,7.2,7.3,5.9,4.9,9.7,8.7,8.6,4.4,5,4.3,4.9,5.6,5.1,4.3,3,4.1,3.9,5.3,5.9,4.9,4.7,4.5,4.3,2.9,2.7,5.6,1.8,2.7,5.1,5.4,6.4,6.1,5.6,2.7,4.2,3.9,2.7,7.1,5.6 17 | A9,25.6,10.9,5.4,3.6,0.85,6.3,4.6,5.8,6.3,5.6,4.6,3.7,0.8,4.2,2.3,0,7.7,6.1,7.6,7.9,7.3,5.8,2.6,4.8,4.8,3.9,2.1,2,1,1.1,5.2,7.6,7.8,3.5,3.1,4.7,3.9,2.3,2.5,3.4,3,3.5,3.6,1.3,7.5,7.4,7.4,4.2,3.3,3.4,4.4,5.3,5,5,5.4,6.3,6.3,6,5,8.7,7.7,7.6,2.8,4.5,3.8,4.6,4.9,4.8,4,1.9,4.6,5.4,5.8,6.7,6.3,6.6,6.9,6.8,5.1,4.5,3.6,0.85,0.85,2.9,3.3,4.3,3.9,3.4,1.2,2.5,2.5,1.2,5,4.9 18 | A10,33.4,13.7,3.6,8.3,8.2,6.8,13.1,1.9,6,6.7,4.1,7.9,7.4,7,7.1,7.7,0,1.6,1.5,4.1,3.6,4.3,10.6,11.1,11.2,10.3,8.7,9.6,8.3,8.4,10.7,6.3,5.4,11.3,6.9,5,3.8,6.9,7.6,5,5,5,9.5,7.8,2.8,4.1,1.6,8.3,8.8,8.3,8.8,4.4,4.6,7.4,7,6.8,6.8,4.4,2.7,8.5,6.2,6,14.7,14,14.1,13.1,13.8,12.6,11.8,13,3.3,3.6,2.1,1.3,2.2,3.3,4.7,5.2,6.7,4.7,8.3,8.2,6.8,8.7,10.2,11,10.7,10.3,8.8,10.3,10.7,8.8,10.1,13.8 19 | A11,31,10.6,2,6.6,6.3,3.8,10.6,0.9,4.5,4.7,2.8,6.2,5.8,7.4,5.8,6.1,1.6,0,1.5,2.7,3.9,2.6,8.6,9.5,9.3,8.4,6.7,7.7,6.7,6.8,8.5,5.1,3.8,7.8,3.5,3.2,2.2,5.5,5.9,3.3,3.6,3.4,5.4,7,1.7,2.9,1.5,5.8,5.2,6,6.8,2.7,3,4.5,4.1,3.9,3.8,2.8,1,6,3.9,3.6,8.7,9.4,8.7,10.6,11.4,10.2,9.3,7.4,1.7,2,0.9,1.5,2.4,3.2,3.5,3.5,5,3.1,6.6,6.3,5.2,7.1,7.8,8,7.7,7.2,6.9,8.5,9,6.9,8.2,10 20 | A12,34.9,11.5,3.5,8,8,4,14.5,1.8,6.2,6.2,4.3,7.7,7.3,9.4,7.2,7.6,1.5,1.5,0,2.3,4,2.8,10.1,11,11,10.2,8.2,9.2,8.2,8.3,8.7,4.8,3.9,11,5.6,4.7,3.7,7.1,7.5,4.8,4.9,4.8,6.9,7.7,1.2,2.5,0.98,6,7.9,6.3,7.2,3,3.5,4.7,4.3,4.1,4,2.8,2.5,7.4,4.1,4.1,10.2,15.4,10.2,14.5,15.2,14,13.2,8.9,3.2,3.5,2,1.6,2.4,3.6,5,5.1,6.6,4.6,8,8,6.7,8.6,10.6,9.4,9.1,8.7,8.6,9.9,10.5,8.6,8.5,11.5 21 | A13,36.7,9.6,4.7,7.2,8.8,2.3,16.1,3,7.2,7.4,5.5,6.8,7.4,8.4,8.5,7.9,4.1,2.7,2.3,0,6.6,2.4,10.6,11.7,11.7,10.8,9.2,10,9,9.2,7.8,2.9,2.1,11,5.4,4.6,4.4,7.9,8.7,6.1,6,6.2,8.2,8.8,1,0.6,2.2,4.3,8.5,5.5,6.4,2.8,3.8,2.9,2.5,2.3,2.3,2.4,3.7,4.4,2.2,2,10.8,17,17,16.1,16.8,15.6,14.8,9.6,4.4,4.7,3.2,3.6,4.5,5.6,6.2,6.2,7.8,5.8,7.2,8.8,7.1,8.7,9.7,8.6,8.2,7.9,9.2,10.3,12.1,9.3,7.6,16.8 22 | A14,31.6,14.7,2.1,9.2,7.1,7.3,10.1,3.2,3.4,3.9,2.9,9.4,8,10.6,5.4,7.3,3.6,3.9,4,6.6,0,6.2,10.6,9.1,9.6,8.3,9.3,8.7,7.7,7.8,11.4,8,7.4,14.3,7.9,6.5,4.7,11,10.6,4.1,4.7,4.4,4.6,6.6,5.1,6.1,4.2,8.9,8.1,8.7,10.3,8.7,6.4,7.4,10.1,9.9,7.3,6.4,4.6,11.6,9.3,9.2,11.7,11,11.1,10.1,10.8,9.6,8.8,10,3.4,2.1,3.4,2.4,1.6,0.7,2.2,2.4,4.1,3,9.2,7.1,6.6,9.1,10.8,10.6,10.3,9.8,7.7,9.1,9.5,7.7,11.1,10.8 23 | A15,30.1,7.9,4.3,5.2,6.7,1.1,9.5,3.4,6.5,5.9,4.4,4.8,4.9,6.4,5.9,5.8,4.3,2.6,2.8,2.4,6.2,0,8.6,9.6,9.7,8.8,7.1,8,7,7.2,5.8,1.9,2.3,8.3,2.7,2.6,2.2,5.8,6,3.6,3.7,3.5,5.7,6.2,1.6,1.8,2.7,3,2.8,4.4,4.3,0.6,1.4,1.6,1.3,1.1,1.1,0.12,2.1,3.5,2.4,2.1,8.7,9.6,8.9,9.5,12.1,9.7,8.9,7.6,3.2,4.3,3.2,4.1,4.7,5.5,5.8,5.8,5.6,4.7,5.2,6.7,5,6.7,7.4,6.6,6.2,5.9,7.2,8.3,9.1,7.3,5.6,10.2 24 | A16,26.1,9.3,7.7,43,2.6,8.8,1.5,8.4,6.6,5.6,6.7,5.1,3.4,4.7,4.2,2.6,10.6,8.6,10.1,10.6,10.6,8.6,0,1.5,1.9,1,2,0.65,1.6,1.5,5.4,9.6,10.2,2.8,5.7,7.3,6.4,3.3,3.6,5.4,5.6,5.2,4.1,2.9,10,9.8,10,7.1,5.9,6.1,5.2,7.9,7.2,7.5,7.9,8.8,8.8,8.5,7.6,15.1,16.8,17,0.6,0.95,0.45,1.5,1.9,2.2,3,1.5,7.2,7.7,8.4,9.1,1.6,10,8,8,6,6.4,43,2.6,3.5,3.3,3.3,4.8,4.4,4,1.4,1.1,1.6,1.4,5.4,2 25 | A17,25,10.8,8.2,7.1,3.1,17.4,0.16,9.7,6.1,4.9,6.8,8.1,5.6,6.2,5.2,4.8,11.1,9.5,11,11.7,9.1,9.6,1.5,0,0.95,0.95,2.4,1.9,4.3,3.4,7.4,10.8,11.4,1.8,6.6,8.2,7.3,5.2,3.4,6.3,5.9,6.1,3.9,3.4,12.5,11.1,17.4,7.7,8,9.3,7.4,8.7,8.1,8.4,8.8,17.4,17.4,9.4,9.1,15.7,17.5,17.6,2,0.8,1.1,0.16,0.55,1.2,2.1,2.4,8.3,8.2,8.9,9.8,8.5,8.7,7.3,6.9,4.9,6.2,7.1,3.1,5.2,4.7,4.5,6.1,6.4,6.8,3.6,3.3,2.9,2.7,7.4,2.1 26 | A18,24.2,11.6,7.6,6.7,3,9.7,0.8,9,9.2,4.6,6.7,7.1,5.6,7.2,5.2,4.8,11.2,9.3,11,11.7,9.6,9.7,1.9,0.95,0,1.3,2.3,2.3,4.6,3.2,7.8,10.5,11,1.2,6.6,8,7.3,5,3.2,6.1,5.9,10.3,3.9,3.3,11.9,12.5,10.7,7.7,4.9,7.6,7.7,8.7,8.2,8.4,8.8,9.6,9.7,9.4,8.6,16.7,11.1,11,2.3,1.7,1.7,0.8,1.5,0.28,1.1,2.6,7.7,7.6,9.7,9.3,9.3,8.1,6.8,6.4,4.3,6.2,6.7,3,4.9,5.7,4.8,7.1,6.9,6.4,3,2.8,3.3,3,7.9,1.5 27 | A19,24.2,10.5,6.7,5.8,2.1,8.9,0.85,8.5,5.4,4.9,5.7,6.6,4.7,6.1,4.2,3.9,10.3,8.4,10.2,10.8,8.3,8.8,1,0.95,1.3,0,1.5,1.4,3.1,2.2,6.9,9.7,10.3,1.8,5.8,7.4,6.5,2.9,2.5,5.5,5.1,5.3,3.1,2.5,12.6,10.3,16.5,6.9,7.5,6.5,6.7,8,7.3,7.6,8,8.9,8.9,8.6,7.7,15.7,10.3,10.2,1.4,0.75,0.75,0.85,1.6,1.5,2.4,1.1,6.8,6.7,8.1,10.9,7.7,7,7.5,6.7,4.6,5.4,5.8,2.1,4,4.7,3.9,5.8,5.9,5.5,2.1,2.6,2.4,2.1,6.9,1.6 28 | A20,24.6,10.6,5.6,5.7,1.3,7.9,2.4,7.5,4.1,3.4,4.5,5.7,2.8,6.3,1.1,2.1,8.7,6.7,8.2,9.2,9.3,7.1,2,2.4,2.3,1.5,0,2.3,2.3,1.6,6.9,9,9.6,1.3,48,5.7,4.5,1.3,1,3.8,3.5,3.4,1.8,0.9,9.3,2.3,16,5.9,5.5,5.8,6.9,14,6.3,6.6,6.9,7.8,7.9,1.7,6.6,10.3,9.3,9.2,2.3,2.5,1.7,2.4,3.1,2.6,1.8,0.45,5.8,5.6,7,7.9,6.6,6,6,5.6,3.6,4.4,5.7,1.3,3.4,4.8,5.3,6.8,5.8,5.4,2.5,3.6,3.3,1.8,6.8,3.1 29 | A21,26.9,8.5,6.7,3.6,1.7,8.3,1.9,7.5,7.4,6.7,6.1,4.5,2.8,4,3.6,2,9.6,7.7,9.2,10,8.7,8,0.65,1.9,2.3,1.4,2.3,0,1,0.95,4.7,9,9.5,3.2,6.1,5.4,5.9,4.1,3.5,4.9,4.7,4.5,4.3,1.9,9.6,9.2,9.3,6.2,5.3,5.5,4.6,7.3,6.6,7,7.4,8.3,8.3,8,7,14.5,16.2,16.4,0.1,1.7,0.85,1.9,2.6,2.6,3.4,1.9,6.6,6.7,7.8,8.5,7.6,8.4,8.9,8,6,5.8,3.6,1.7,2.9,2.8,3.2,4.1,3.8,3.4,0.75,0.5,1,0.8,4.8,2.4 30 | A22,28.8,8.4,6.4,3.3,1.1,8,3.6,7.7,7.1,5.7,5.1,4.5,2.7,4.1,2.4,1,8.3,6.7,8.2,9,7.7,7,1.6,4.3,4.6,3.1,2.3,1,0,0.85,4.4,8.8,9.4,3.2,4.9,5.6,4.5,2.5,2.3,3.7,4.5,3.6,4.1,1.6,8.6,8.9,8.3,6,4.3,5.1,4.7,7.3,6.7,6.7,7.1,8,8,7.7,6.7,14.6,16.3,9.3,1.1,3.5,2.8,3.6,3.9,4.3,5.2,2.7,6.3,6.4,7.5,8.2,7.3,7.6,10.1,7.9,7.6,5.5,3.3,1.1,2.6,2.4,3.2,3.8,3.5,3,0.22,0.5,1.5,0.8,4.5,3.9 31 | A23,25.5,9.1,6.2,4.2,0.45,7.3,3.4,6.8,6.5,4.5,5.2,5,1.9,4.5,2.6,1.1,8.4,6.8,8.3,9.2,7.8,7.2,1.5,3.4,3.2,2.2,1.6,0.95,0.85,0,5.3,8,8.6,2.9,5.4,4.4,5,2.5,2.1,3.8,3.9,3.7,2.9,1,8.4,8.6,8.1,5.3,4.6,4.8,5.1,6.4,5.7,5.9,6.3,7.2,7.3,6.9,6,25.4,8.7,8.6,0.95,3.3,2.6,3.4,3.9,4.3,4.3,1.2,5.7,6.2,6.9,7.6,6.7,7,6.9,6.6,4.5,4.9,4.2,0.45,2,3.3,4.2,4.6,4.3,3.7,0.9,1.1,1.9,0.12,5.3,4 32 | A24,31.7,4.2,9.4,1.8,5.7,6.1,7.5,8.8,10.9,11.6,9.5,2.6,4.8,1.1,7.5,5.2,10.7,8.5,8.7,7.8,11.4,5.8,5.4,7.4,7.8,6.9,6.9,4.7,4.4,5.3,0,6.8,7.4,8.2,4.4,5,6.9,7,7.5,7.8,6.9,6.3,8.5,6.1,7.4,7.1,8.6,4,2.9,2.2,1.2,9.4,5.7,4.8,5.1,6,6.1,5.7,7,10,11.7,7.4,5.9,7.7,6.8,7.5,6.8,8.6,9.4,6.5,8.1,9.4,8.6,9.5,10.1,10.4,10.7,10.7,9.7,9.1,1.8,5.7,4.7,3.3,2.9,1.2,1.2,1.4,4.2,4.2,4.7,5,0.31,6.7 33 | A25,31.3,9.5,6.7,6.8,8.2,2.2,16.8,5.4,7.9,7.8,8.9,6,6.6,8,8.1,7.6,6.3,5.1,4.8,2.9,8,1.9,9.6,10.8,10.5,9.7,9,9,8.8,8,6.8,0,0.8,9.3,4.8,3.8,5.7,7.1,7.8,4.9,5.4,4.8,7.9,8,4.2,2.2,5.2,3.1,5.1,4.7,5.4,2,3.4,2.1,2.1,0.85,2.2,2.7,4.8,1.6,0.85,1,15.1,17,16.1,16.8,16.1,17.9,10.2,8.9,6.4,6.7,5.7,6.5,7.1,8,8.2,8.3,7.5,6.9,6.8,8.2,6.5,8.3,12.2,8.2,7.8,7.5,8.8,15,14.1,8.8,7.2,11.6 34 | A27,31.9,9.2,5.5,6.9,8.5,1.7,17.6,4.6,8,8.2,6.2,6.6,7.2,8.2,8.6,7.8,5.4,3.8,3.9,2.1,7.4,2.3,10.2,11.4,11,10.3,9.6,9.5,9.4,8.6,7.4,0.8,0,9.8,5.2,4.4,4.2,7.7,8.3,5.5,5.5,5.4,7.7,8,2.8,1.6,3.9,3.5,5.5,5.2,6.1,2.6,3.4,2.7,2.3,1.4,1.7,2.2,3.6,2.4,0.091,0.2,16,17.8,10.7,17.6,16.9,11.5,10.6,9.4,5.2,5.5,4.4,5.3,5.9,6.7,7,7,8.5,6.5,6.9,8.5,6.8,8.5,9.5,8.3,8,7.7,9,10.1,14.9,9.1,7.4,12 35 | A58,39.2,11.8,6.4,6.7,2.8,8.5,1.8,8.6,4.1,3.4,5.3,7.2,4,8,2.3,3.5,11.3,7.8,11,11,14.3,8.3,2.8,1.8,1.2,1.8,1.3,3.2,3.2,2.9,8.2,9.3,9.8,0,5.4,6.9,6.1,2.5,2.1,2.8,4.7,4.6,2.6,2.1,9.9,10.3,9.5,6.5,6.7,6.4,8.1,7.5,6.9,7.2,7.5,8.4,8.5,8.1,7.3,10.9,9.9,9.8,3.2,2.6,2.6,1.8,2.5,1.4,0.55,1.8,6.5,6.4,7.7,8.9,7.6,6.9,5.5,5.1,3.1,5,6.7,2.8,4,6.2,6.2,7.6,7.3,6.8,4,4.5,4.8,3.3,8.2,2.5 36 | I1,50.1,7.2,5.9,2.4,4.9,3.2,7.7,6,7.5,6.5,5.7,1.6,2.7,3.7,4.9,3.1,6.9,3.5,5.6,5.4,7.9,2.7,5.7,6.6,6.6,5.8,48,6.1,4.9,5.4,4.4,4.8,5.2,5.4,0,0.35,3.1,4.8,4.6,4.5,3.3,2.8,5.2,4.4,4.2,4.2,4.4,2.2,1.3,2.1,3,3.5,1.4,1.9,2.3,3.2,3.2,2.7,4.3,5.6,4.6,4.3,5.9,7.8,6.6,7.7,7.9,7.9,5.9,5.8,4.9,5.9,5.8,6,6.9,7.1,7.3,7.5,6.6,5.6,2.4,4.9,2.8,4.8,4.6,4.6,3.5,3,4.3,6.4,5.6,5.5,4.3,8.4 37 | I2,44.7,7.1,4.6,2.8,5.3,3.3,8,4.1,14.5,5.6,4.3,2,3.4,6.2,3.6,4.7,5,3.2,4.7,4.6,6.5,2.6,7.3,8.2,8,7.4,5.7,5.4,5.6,4.4,5,3.8,4.4,6.9,0.35,0,0.7,2.3,8.1,7.6,12.3,4,6.1,6.1,4.2,6,6.9,7.1,6.3,6,5.7,5.6,1.1,1.7,2.4,3.3,3.3,2.5,2.3,5.7,4.8,4.7,7.4,8.1,7.4,8,8.7,8.2,7.4,6.1,3.4,4.6,3.7,4.8,5.5,5.8,6.1,6.1,5.2,4.2,2.8,5.3,3.9,5.9,6.6,6.3,5.9,3.3,5.9,7.2,7.7,5.8,5.3,8.7 38 | I3,44.5,9.7,2.7,4.8,4.5,3.3,7.2,3,4.5,3.8,2.5,4.8,3.8,6,3.8,3.9,3.8,2.2,3.7,4.4,4.7,2.2,6.4,7.3,7.3,6.5,4.5,5.9,4.5,5,6.9,5.7,4.2,6.1,3.1,0.7,0,3.6,3.9,1.5,1.2,1.2,3.4,4,3.7,3.8,3.6,4.2,3.8,4.5,5.4,1.6,1.6,2.8,2.9,2.8,3.3,2.3,1.1,5.2,4.3,4.1,6.6,7.3,6.6,7.2,8,7.5,6.6,5.3,1.5,2.7,2.5,3.6,3.5,3.9,4.2,4.2,3.5,2.6,4.8,4.5,3.1,5.3,6,6.2,5.8,5.4,5.1,6.5,6.9,5.1,6.7,8 39 | I4,40.6,10.6,3.6,5.4,2.2,7.1,5,5.3,3.6,2.9,2.7,4.6,2.7,6.3,0.24,2.3,6.9,5.5,7.1,7.9,11,5.8,3.3,5.2,5,2.9,1.3,4.1,2.5,2.5,7,7.1,7.7,2.5,4.8,2.3,3.6,0,0.4,2.2,2.3,2.5,1.4,1.6,7.2,7.3,7,5.7,5,5.5,6,5.2,4.6,5.8,6.2,7.1,7.1,5.8,4.7,9.5,8.5,8.4,4.4,5.1,4.4,5,5.7,5.2,4.4,3.1,3.9,3.6,5.1,5.6,4.7,4.4,4.3,4,2.7,2.5,5.4,2.2,2.6,5.1,5.8,6.4,6.1,5.7,2.7,3,4,2.8,7.1,5.7 40 | I5,41.2,10.7,4,5.4,1.7,7.1,4.8,8.2,4.1,3.3,3.2,5.9,3.3,6.8,0.14,2.5,7.6,5.9,7.5,8.7,10.6,6,3.6,3.4,3.2,2.5,1,3.5,2.3,2.1,7.5,7.8,8.3,2.1,4.6,8.1,3.9,0.4,0,2.5,2.6,2.7,1.8,1.4,7.8,7.7,7.5,5.7,5.1,5.7,6,5.4,4.8,5.8,6.2,7.1,7.1,6.1,5.1,9.6,8.6,8.5,4.2,4.9,4.2,4.8,5.5,5,4.2,2.9,4.2,4,5.4,6,8.2,4.9,4.7,4.5,4.4,2.9,5.4,1.7,2.6,4.9,5.3,7.5,5.9,5.5,2.7,4.1,3.8,2.6,6.9,5.5 41 | I6,41.5,11,2.2,6.2,3.4,4.1,6.6,3.1,3,2.3,1.2,5.4,3.6,7.4,2.4,3.4,5,3.3,4.8,6.1,4.1,3.6,5.4,6.3,6.1,5.5,3.8,4.9,3.7,3.8,7.8,4.9,5.5,2.8,4.5,7.6,1.5,2.2,2.5,0,1.2,1.6,1.9,2.9,5.1,5.5,4.8,5.9,4.9,5.8,6.6,2.9,3.3,4.4,4.3,4.1,4.1,3.7,2.6,6.5,6.1,5.8,5.5,6.2,5.5,6.6,7.3,6.1,5.3,4.2,1.7,2.2,2.9,3.8,3.1,3.4,3.3,3.4,2,0.9,6.2,3.4,3.5,6.1,6.8,7.5,7.2,6.8,4,5.4,5.8,4,8.1,7.3 42 | I7,43.8,9.8,2.8,4.9,3.3,3.9,6.1,3.4,3.9,3.2,2.2,4.9,2.4,6.3,2.7,3,5,3.6,4.9,6,4.7,3.7,5.6,5.9,5.9,5.1,3.5,4.7,4.5,3.9,6.9,5.4,5.5,4.7,3.3,12.3,1.2,2.3,2.6,1.2,0,0.45,2.4,2.8,5.4,5.1,4.7,4.6,3.9,4.6,5.5,2.7,2.1,3.1,4.3,3.9,3.9,3.4,2.4,6.3,5.4,5.3,5.5,6.2,5.5,6.1,6.8,7.1,6.2,4.2,2,2.8,3.2,4.1,3.7,4.3,4.3,4.3,2.9,2.2,4.9,3.3,2.3,4.8,5.6,6.2,6.5,5.5,3.9,5.3,5.8,3.8,6.9,6.8 43 | I8,43.9,9.4,2.9,4.5,3.2,4.2,6,3.2,4.4,3.7,2.7,3.8,1.9,5.7,2.6,3.5,5,3.4,4.8,6.2,4.4,3.5,5.2,6.1,10.3,5.3,3.4,4.5,3.6,3.7,6.3,4.8,5.4,4.6,2.8,4,1.2,2.5,2.7,1.6,0.45,0,2.6,2.7,5.2,5,4.8,4.2,3.4,4.2,4.8,2.8,2.3,3.4,4,4.1,4.2,3.6,2.4,6.6,5.6,5.5,5.4,6.1,5.4,6,6.7,6.2,5.3,4.1,2.1,2.9,3.2,4.1,3.8,4.1,4.2,4.4,3.4,2.6,4.5,3.2,1.8,4.4,4.4,5.7,6.1,5.1,3.6,5.2,5.6,3.8,6.4,6.7 44 | I9,41.8,11.7,3.5,6.6,3.5,6.3,5.1,5.2,2.9,1.6,2.5,6.8,4.4,7.7,1.7,3.6,9.5,5.4,6.9,8.2,4.6,5.7,4.1,3.9,3.9,3.1,1.8,4.3,4.1,2.9,8.5,7.9,7.7,2.6,5.2,6.1,3.4,1.4,1.8,1.9,2.4,2.6,0,3.2,7.2,7.6,6.8,6.1,5.5,6.2,4.8,5,4.5,5.6,6.3,6.3,6.3,5.8,4.7,8.7,8.2,7.9,4.3,4.4,3.7,5.1,5.8,4.7,3.8,2.4,3.9,3.5,5,5.5,4.6,3.9,3.8,3.3,1.3,2.3,6.6,3.5,4,6.5,6.5,7.9,7.5,7.1,4.3,5.6,5.8,3.9,8.5,5.8 45 | I10,38.8,9,5.4,5,0.5,7.2,3.2,5.9,4.7,4.8,4.5,4.2,2.3,5.3,1.5,1.3,7.8,7,7.7,8.8,6.6,6.2,2.9,3.4,3.3,2.5,0.9,1.9,1.6,1,6.1,8,8,2.1,4.4,6.1,4,1.6,1.4,2.9,2.8,2.7,3.2,0,7.5,7.4,7.5,5.3,4.6,4.8,5.8,6.2,5.6,5.9,6.3,7.2,7.2,6.9,6,9.6,8.6,8.5,3.3,3.3,2.7,3.2,4,3.5,2.6,1.3,5.6,5.4,6.8,7.3,6.4,5.9,6,7.2,4.5,4.2,5,0.5,2.2,4.1,5,5.4,5.1,4.7,1.8,2,2.9,1.1,6.1,4 46 | I11,52.7,12.9,3.7,6.8,8.5,2.9,15.4,2,6.5,6.5,4.5,8.6,7,8.1,7.5,7.5,2.8,1.7,1.2,1,5.1,1.6,10,12.5,11.9,12.6,9.3,9.6,8.6,8.4,7.4,4.2,2.8,9.9,4.2,4.2,3.7,7.2,7.8,5.1,5.4,5.2,7.2,7.5,0,1.2,1.2,4.5,6.2,5,6,2.2,3,3.6,3.2,3,2.9,1.6,2.7,7.2,3,2.7,10.5,16.4,10.5,15.4,16.2,15,14.1,9.2,3.4,3.7,2.2,2.6,3.5,4.6,5.2,5.3,6.8,4.8,6.8,8.5,6.6,9.1,8.8,8.2,7.8,7.5,9,10.4,17.5,9,7.2,16.1 47 | I12,51.6,9.2,4.1,6.6,8.2,1,16.7,3.2,6.8,6.8,4.9,5.8,6.6,7.9,7.4,7.4,4.1,2.9,2.5,0.6,6.1,1.8,9.8,11.1,12.5,10.3,2.3,9.2,8.9,8.6,7.1,2.2,1.6,10.3,4.2,6,3.8,7.3,7.7,5.5,5.1,5,7.6,7.4,1.2,0,2.4,3.7,5.5,4.8,5.8,2.4,3.2,2.4,1.9,1.7,1,1.8,3.1,3.8,1.7,1.5,10.2,11,10.3,16.7,18.3,16.2,15.4,9,3.8,4.1,3,3.8,4.5,5.3,5.4,5.6,7.1,5.2,6.6,8.2,6.5,8.1,9.2,8,7.6,7.3,8.6,9.7,10.6,8.7,7,18.3 48 | I13,52.1,11.5,3.4,7.9,8,3.9,14.6,1.7,18.6,6.1,4.2,7.6,6.9,9.2,7.2,7.4,1.6,1.5,0.98,2.2,4.2,2.7,10,17.4,10.7,16.5,16,9.3,8.3,8.1,8.6,5.2,3.9,9.5,4.4,6.9,3.6,7,7.5,4.8,4.7,4.8,6.8,7.5,1.2,2.4,0,5.8,7.3,6.2,7.1,2.8,3.4,4.6,4.2,4,3.9,2.7,2.4,7.5,4,3.7,10.1,15.5,10.1,14.6,15.3,14.1,13.3,8.8,3.1,3.4,1.9,1.6,2.6,3.7,4.9,4.9,6.5,4.5,7.9,8,6.6,8.5,10.5,9.3,9,8.6,8.5,9.9,10.4,8.5,8.4,15.3 49 | I15,45.6,4.2,7,3.6,5.3,2.7,8.6,6.6,8.6,7.9,6.8,2.8,3.6,4.9,5.8,4.2,8.3,5.8,6,4.3,8.9,3,7.1,7.7,7.7,6.9,5.9,6.2,6,5.3,4,3.1,3.5,6.5,2.2,7.1,4.2,5.7,5.7,5.9,4.6,4.2,6.1,5.3,4.5,3.7,5.8,0,1.2,1.8,2.7,3.1,3.2,1.4,1.8,3.1,2.7,3.1,4.9,5.2,3.6,3.5,7.2,8.7,8,8.6,10.6,8.8,8,6.7,6,7,6.3,7.1,7.9,8.3,8.3,8.3,7.5,6.8,3.6,5.3,3.5,5.2,6.2,5,4.6,4.2,5.6,6.8,8.6,5.8,4,10.6 50 | I16,43.5,6.6,6.5,2.4,4.2,3.2,7.9,7.1,8,7.1,6.2,1.9,2.8,3.6,5.2,3.3,8.8,5.2,7.9,8.5,8.1,2.8,5.9,8,4.9,7.5,5.5,5.3,4.3,4.6,2.9,5.1,5.5,6.7,1.3,6.3,3.8,5,5.1,4.9,3.9,3.4,5.5,4.6,6.2,5.5,7.3,1.2,0,0.65,1.6,2.9,2.9,1.9,2.3,3.2,3.2,2.9,4.2,5.6,4.6,4.5,6.1,8,7.3,7.9,8.2,8.1,7.3,6,5.3,6.5,5.7,6.6,7.2,7.4,7.5,7.7,6.8,6.1,2.4,4.2,2.8,4,4.9,3.7,3.4,3,4.5,5.6,6.4,4.7,2.9,8.4 51 | I17,45.5,3.8,7.2,2.5,4.3,3.9,9.4,6.8,8.5,7.8,6.7,1.2,3,3.1,5.7,3.4,8.3,6,6.3,5.5,8.7,4.4,6.1,9.3,7.6,6.5,5.8,5.5,5.1,4.8,2.2,4.7,5.2,6.4,2.1,6,4.5,5.5,5.7,5.8,4.6,4.2,6.2,4.8,5,4.8,6.2,1.8,0.65,0,0.95,3.5,3.5,2.6,2.9,3.8,3.9,3.5,4.8,8.9,5.3,5.2,6.3,9.6,7.3,9.4,8.7,8.3,7.5,5.4,5.9,7.2,6.4,7.3,7.9,8.3,8.3,8.4,7.5,6.7,2.5,4.3,3.1,4.1,4.3,3,2.7,2.3,4.7,5.8,6.7,4.9,2.2,8.7 52 | I18,46.1,4,8.1,1.1,5.3,4.8,8.5,7.8,17,8.7,7.8,1.4,4.1,2.1,7.2,4.4,8.8,6.8,7.2,6.4,10.3,4.3,5.2,7.4,7.7,6.7,6.9,4.6,4.7,5.1,1.2,5.4,6.1,8.1,3,5.7,5.4,6,6,6.6,5.5,4.8,4.8,5.8,6,5.8,7.1,2.7,1.6,0.95,0,4.5,4.5,3.5,3.9,4.8,4.8,4.5,5.8,8.9,6.2,6.1,5.4,8.7,6.4,8.5,7.8,9.6,8.6,6.3,6.9,8.1,7.3,8.2,8.8,9.1,9.3,9.4,8.4,7.9,1.1,5.3,4,3,3.4,2.2,1.9,1.5,4.1,4.8,5.8,4.9,1.3,7.8 53 | I19,46.6,8.3,4.1,5.3,5.9,1.2,8.7,3.5,6.3,5.2,3.9,4.5,4.3,6.6,5.3,5.3,4.4,2.7,3,2.8,8.7,0.6,7.9,8.7,8.7,8,14,7.3,7.3,6.4,9.4,2,2.6,7.5,3.5,5.6,1.6,5.2,5.4,2.9,2.7,2.8,5,6.2,2.2,2.4,2.8,3.1,2.9,3.5,4.5,0,0.8,1.7,1.4,1.2,1.2,0.7,1.7,3.6,2.7,2.6,8.1,8.8,8.1,8.7,9.4,8.9,8.1,6.8,2.8,4.1,3.3,4.2,4.6,5.4,5.6,5.8,4.9,3.7,5.3,5.9,4.6,6.9,7.9,6.7,6.4,6,6.5,7.9,8.4,6.5,5.8,9.4 54 | I20,46,8.1,4.4,4.8,5.2,2.6,7.9,3.7,6.6,5.3,4.3,4.9,4.5,6.6,4.7,5,4.6,3,3.5,3.8,6.4,1.4,7.2,8.1,8.2,7.3,6.3,6.6,6.7,5.7,5.7,3.4,3.4,6.9,1.4,1.1,1.6,4.6,4.8,3.3,2.1,2.3,4.5,5.6,3,3.2,3.4,3.2,2.9,3.5,4.5,0.8,0,1.2,2.4,2.6,2.6,2.1,2,5,4,3.9,7.3,8,7.3,7.9,8.6,8.3,7.4,6.7,3,4.4,3.6,4.5,5.1,5.6,5.8,5.9,4.9,4,4.8,5.2,3.7,5.7,7.4,6.2,5.9,5.6,5.7,7.1,7.6,5.7,5.3,8.6 55 | I21,46.2,6.6,5.6,4.3,5.9,1.4,8.6,5.3,7.6,6.4,5.3,3.9,4.5,5.6,6,5,7.4,4.5,4.7,2.9,7.4,1.6,7.5,8.4,8.4,7.6,6.6,7,6.7,5.9,4.8,2.1,2.7,7.2,1.9,1.7,2.8,5.8,5.8,4.4,3.1,3.4,5.6,5.9,3.6,2.4,4.6,1.4,1.9,2.6,3.5,1.7,1.2,0,0.45,1.3,1.4,1.8,3.5,3.8,2.8,2.7,7.9,8.7,8,8.6,11.3,8.5,7.7,7,4.6,5.6,4.9,5.8,6.5,6.7,7.1,7,6.1,5.2,4.3,5.9,4.2,5.9,6.9,5.7,5.3,4.9,6.3,7.5,9.3,6.5,4.8,9.3 56 | I22,46.6,7.1,5.7,4.7,6.2,0.9,9,4.9,7.8,6.6,5.4,4.3,4.9,6,6.4,5.4,7,4.1,4.3,2.5,10.1,1.3,7.9,8.8,8.8,8,6.9,7.4,7.1,6.3,5.1,2.1,2.3,7.5,2.3,2.4,2.9,6.2,6.2,4.3,4.3,4,6.3,6.3,3.2,1.9,4.2,1.8,2.3,2.9,3.9,1.4,2.4,0.45,0,1,0.9,1.4,3.5,3.3,2.3,2.2,8.2,9.1,8.4,9,11.6,8.9,8.1,7.4,4.2,5.7,4.5,5.5,6.1,6.8,7,7.2,7.2,5.1,4.7,6.2,4.6,6.2,7.2,6,5.7,5.2,6.7,7.8,8.5,6.8,5.1,9.7 57 | I23,47.5,7.5,5.5,5.5,7.1,0.7,9.9,4.7,8.2,6.4,5.2,5.2,5.8,12,7.2,6.3,6.8,3.9,4.1,2.3,9.9,1.1,8.8,17.4,9.6,8.9,7.8,8.3,8,7.2,6,0.85,1.4,8.4,3.2,3.3,2.8,7.1,7.1,4.1,3.9,4.1,6.3,7.2,3,1.7,4,3.1,3.2,3.8,4.8,1.2,2.6,1.3,1,0,0.7,1.2,2.9,2.4,1.5,1.2,9.1,9.9,9.3,9.9,16.9,9.8,9.2,8.2,4,5.5,4.4,5.3,5.9,6.5,6.7,6.3,6.1,5.4,5.5,7.1,5.4,7.1,8.1,6.9,6.6,6.1,7.6,8.7,9.5,7.7,6,10.6 58 | I24,47.6,8.5,5.4,6,7.6,0,10.4,4.6,8.2,6.4,5.3,5.2,5.8,6.9,7.3,6.3,6.8,3.8,4,2.3,7.3,1.1,8.8,17.4,9.7,8.9,7.9,8.3,8,7.3,6.1,2.2,1.7,8.5,3.2,3.3,3.3,7.1,7.1,4.1,3.9,4.2,6.3,7.2,2.9,1,3.9,2.7,3.2,3.9,4.8,1.2,2.6,1.4,0.9,0.7,0,1.2,2.9,3,1.6,1.3,1.8,10.5,9.8,10.4,17.5,9.8,9,8.3,4,5.4,3.7,4.6,5.2,5.5,6.3,7,7.8,5.9,6,7.6,5.9,7.6,8.6,7.4,7.1,6.8,8.1,9.2,10,8.2,6.5,11.1 59 | I25,47.2,8.3,4.3,5.3,6.6,1.2,9.3,3.5,7.3,7.2,4.4,4.9,5.5,6.6,5.9,6,4.4,2.8,2.8,2.4,6.4,0.12,8.5,9.4,9.4,8.6,1.7,8,7.7,6.9,5.7,2.7,2.2,8.1,2.7,2.5,2.3,5.8,6.1,3.7,3.4,3.6,5.8,6.9,1.6,1.8,2.7,3.1,2.9,3.5,4.5,0.7,2.1,1.8,1.4,1.2,1.2,0,4.3,3.7,2.3,2,8.7,9.4,8.7,9.3,10,9.5,8.7,7.4,3.1,4.3,3.2,4.1,4.6,5.5,5.6,5.9,5.5,4.6,5.3,6.6,5.2,7.6,7.6,6.7,6.3,6,7.2,8.4,10.2,7.2,5.7,10 60 | I26,46.4,11.1,2.7,5.6,5.8,2.9,8.5,1.8,5.4,5.7,2.9,5.2,4.5,6.4,4.9,5,2.7,1,2.5,3.7,4.6,2.1,7.6,9.1,8.6,7.7,6.6,7,6.7,6,7,4.8,3.6,7.3,4.3,2.3,1.1,4.7,5.1,2.6,2.4,2.4,4.7,6,2.7,3.1,2.4,4.9,4.2,4.8,5.8,1.7,2,3.5,3.5,2.9,2.9,4.3,0,5.3,3.7,3.4,7.9,8.6,7.9,8.5,9.3,8.8,7.9,6.6,1.5,2.7,1.6,2.4,3,3.9,4.2,4.2,5.1,3.2,5.6,5.8,3.9,6.1,6.8,7,6.6,6.2,6.1,7.5,7.9,6.1,7.2,9.2 61 | I27,55.9,5.8,7.7,8,9.6,3,12.3,6.8,16.4,16.7,7.7,12.1,8.2,10.3,9.7,8.7,8.5,6,7.4,4.4,11.6,3.5,15.1,15.7,16.7,15.7,10.3,14.5,14.6,25.4,10,1.6,2.4,10.9,5.6,5.7,5.2,9.5,9.6,6.5,6.3,6.6,8.7,9.6,7.2,3.8,7.5,5.2,5.6,8.9,8.9,3.6,5,3.8,3.3,2.4,3,3.7,5.3,0,2.2,2.5,11.6,12.4,11.7,12.3,15.2,17,11.7,10.4,6.4,7.7,6.6,9.8,10.7,8.9,9,9.2,8.5,7.9,8,9.6,7.9,10.3,10.6,6.2,10.4,11,10,11.2,13.2,10.1,8.4,13 62 | I30,49,9.8,5.6,7,8.6,1.6,10.9,4.9,8.3,8.9,6.4,6.6,7.2,12.2,8.7,7.7,6.2,3.9,4.1,2.2,9.3,2.4,16.8,17.5,11.1,10.3,9.3,16.2,16.3,8.7,11.7,0.85,0.091,9.9,4.6,4.8,4.3,8.5,8.6,6.1,5.4,5.6,8.2,8.6,3,1.7,4,3.6,4.6,5.3,6.2,2.7,4,2.8,2.3,1.5,1.6,2.3,3.7,2.2,0,0.29,10.6,11.4,10.7,10.9,12,11.5,10.7,9.4,5.1,5.6,4.5,5.4,6,6.8,6.8,7.1,8.6,6.6,7,8.6,6.9,8.8,9.6,8.4,8.1,7.7,9,10.2,11,9.2,7.5,12 63 | I31,48.9,7.7,5.3,6.9,8.5,1.3,11.2,4.6,8,8.7,6.1,6.6,7.1,12.2,8.6,7.6,6,3.6,4.1,2,9.2,2.1,17,17.6,11,10.2,9.2,16.4,9.3,8.6,7.4,1,0.2,9.8,4.3,4.7,4.1,8.4,8.5,5.8,5.3,5.5,7.9,8.5,2.7,1.5,3.7,3.5,4.5,5.2,6.1,2.6,3.9,2.7,2.2,1.2,1.3,2,3.4,2.5,0.29,0,10.5,11.3,10.6,11.2,11.9,11.4,10.6,9.3,4.8,5.3,4.2,5,5.7,6.5,10,6.8,8.3,6.3,6.9,8.5,6.8,9.2,9.5,8.3,8,7.6,8.9,10.1,10.9,9,7.3,17.1 64 | I32,43.7,8.4,8,4.4,2.9,1.8,1.9,17.2,7.5,6.8,6.9,5.3,3.5,4.7,4.4,2.8,14.7,8.7,10.2,10.8,11.7,8.7,0.6,2,2.3,1.4,2.3,0.1,1.1,0.95,5.9,15.1,16,3.2,5.9,7.4,6.6,4.4,4.2,5.5,5.5,5.4,4.3,3.3,10.5,10.2,10.1,7.2,6.1,6.3,5.4,8.1,7.3,7.9,8.2,9.1,1.8,8.7,7.9,11.6,10.6,10.5,0,1.4,0.85,1.9,2.4,2.5,3.4,1.9,7,8,8.2,9.4,8.4,10.4,9,7.6,6,6.8,4.4,2.9,3.7,3.4,3.2,4.1,4.6,3.5,0.85,0.6,1,0.8,6.1,2.6 65 | I33,42.3,11.2,7.4,6.3,2.9,10.5,0.9,14.4,6.8,6.2,8.1,8.7,5.3,6.6,5,4.5,14,9.4,15.4,17,11,9.6,0.95,0.8,1.7,0.75,2.5,1.7,3.5,3.3,7.7,17,17.8,2.6,7.8,8.1,7.3,5.1,4.9,6.2,6.2,6.1,4.4,3.3,16.4,11,15.5,8.7,8,9.6,8.7,8.8,8,8.7,9.1,9.9,10.5,9.4,8.6,12.4,11.4,11.3,1.4,0,0.55,0.9,7.4,2,2.7,1.9,7.5,7.4,8.8,9.4,8.5,9.8,8.7,7.4,5.3,6.2,6.3,2.9,5.1,3.9,3.7,5.3,5.7,6,3.3,3,2.1,2.5,6.6,0.8 66 | I34,42.9,9,7.4,5.4,2.2,9.8,1.1,9.5,6.9,6.2,6.3,6.2,4.5,5.7,4.3,3.8,14.1,8.7,10.2,17,11.1,8.9,0.45,1.1,1.7,0.75,1.7,0.85,2.8,2.6,6.8,16.1,10.7,2.6,6.6,7.4,6.6,4.4,4.2,5.5,5.5,5.4,3.7,2.7,10.5,10.3,10.1,8,7.3,7.3,6.4,8.1,7.3,8,8.4,9.3,9.8,8.7,7.9,11.7,10.7,10.6,0.85,0.55,0,1.1,1.3,2,2.8,1.3,7.6,7.4,8.9,9.4,8.5,7.6,7.8,7.9,5.8,6.2,5.4,2.2,4.6,3.8,3.6,5.2,4.6,5.1,1.6,1.3,1.8,1.7,6.5,1.4 67 | I35,42.1,11,8,7.6,3,10.4,0,13.5,5.9,5.2,7.2,8.5,5.4,6.4,4.9,4.6,13.1,10.6,14.5,16.1,10.1,9.5,1.5,0.16,0.8,0.85,2.4,1.9,3.6,3.4,7.5,16.8,17.6,1.8,7.7,8,7.2,5,4.8,6.6,6.1,6,5.1,3.2,15.4,16.7,14.6,8.6,7.9,9.4,8.5,8.7,7.9,8.6,9,9.9,10.4,9.3,8.5,12.3,10.9,11.2,1.9,0.9,1.1,0,0.75,1.1,1.8,1.9,7.4,8,9.2,9.7,8.4,8.7,7.2,6.8,4.8,6.1,7.6,3,5,4.4,4.4,6.3,6.6,6,2.6,2.4,2.8,2.6,7.4,0.7 68 | I36,41.4,9.4,8.3,6.5,3.7,17.5,0.75,14.2,6.6,6,7.9,7.7,5.7,5.7,5.6,4.9,13.8,11.4,15.2,16.8,10.8,12.1,1.9,0.55,1.5,1.6,3.1,2.6,3.9,3.9,6.8,16.1,16.9,2.5,7.9,8.7,8,5.7,5.5,7.3,6.8,6.7,5.8,4,16.2,18.3,15.3,10.6,8.2,8.7,7.8,9.4,8.6,11.3,11.6,16.9,17.5,10,9.3,15.2,12,11.9,2.4,7.4,1.3,0.75,0,1.8,2.6,2.7,8.4,8.3,9.9,10.4,9.3,8.8,8.5,7.7,5.5,7,6.5,3.7,5.7,4.1,3.9,5.5,5.9,6.3,3.6,3.3,2.4,3.1,6.8,0.022 69 | I37,39.8,11,7.7,7,3.3,9.8,1.1,9.4,5.5,4.8,6.8,7.8,5.6,7.5,5.1,4.8,12.6,10.2,14,15.6,9.6,9.7,2.2,1.2,0.28,1.5,2.6,2.6,4.3,4.3,8.6,17.9,11.5,1.4,7.9,8.2,7.5,5.2,5,6.1,7.1,6.2,4.7,3.5,15,16.2,14.1,8.8,8.1,8.3,9.6,8.9,8.3,8.5,8.9,9.8,9.8,9.5,8.8,17,11.5,11.4,2.5,2,2,1.1,1.8,0,0.85,2.3,7.9,7.7,8.9,9.4,9.5,8.3,6.9,6.5,4.5,6.4,7,3.3,5.3,6,5.7,7.4,7.7,6.7,4.1,3.1,3.5,3.3,8.1,1.8 70 | I38,38.9,12,6.9,7.6,3.2,9,1.8,8.5,4.6,3.9,5.9,7.7,4.8,8.3,4.3,4,11.8,9.3,13.2,14.8,8.8,8.9,3,2.1,1.1,2.4,1.8,3.4,5.2,4.3,9.4,10.2,10.6,0.55,5.9,7.4,6.6,4.4,4.2,5.3,6.2,5.3,3.8,2.6,14.1,15.4,13.3,8,7.3,7.5,8.6,8.1,7.4,7.7,8.1,9.2,9,8.7,7.9,11.7,10.7,10.6,3.4,2.7,2.8,1.8,2.6,0.85,0,2.2,7,6.9,8,8.5,8.6,7.4,6.5,5.7,3.6,5.5,7.6,3.2,4.5,6.8,6.5,8.2,8,7.4,4.5,4.6,5,3.4,8.9,2.6 71 | I39,40.9,9.4,6.1,5.3,1.1,8.3,1.9,8.2,5.8,5.2,5,6.2,2.7,6.7,3,1.9,13,7.4,8.9,9.6,10,7.6,1.5,2.4,2.6,1.1,0.45,1.9,2.7,1.2,6.5,8.9,9.4,1.8,5.8,6.1,5.3,3.1,2.9,4.2,4.2,4.1,2.4,1.3,9.2,9,8.8,6.7,6,5.4,6.3,6.8,6.7,7,7.4,8.2,8.3,7.4,6.6,10.4,9.4,9.3,1.9,1.9,1.3,1.9,2.7,2.3,2.2,0,6.2,6.1,7.4,8,7.1,6.4,6.4,6,4,4.8,5.3,1.1,3,4.4,4.9,6.5,6.9,5,2.2,3.2,2.9,1.3,6.4,2.9 72 | I40,45.6,11.9,1.5,6.3,5,4,7.4,1.4,4.3,4.2,1.7,6.3,5.3,7.5,4.1,4.6,3.3,1.7,3.2,4.4,3.4,3.2,7.2,8.3,7.7,6.8,5.8,6.6,6.3,5.7,8.1,6.4,5.2,6.5,4.9,3.4,1.5,3.9,4.2,1.7,2,2.1,3.9,5.6,3.4,3.8,3.1,6,5.3,5.9,6.9,2.8,3,4.6,4.2,4,4,3.1,1.5,6.4,5.1,4.8,7,7.5,7.6,7.4,8.4,7.9,7,6.2,0,1.5,1.2,2.1,2,2.7,2.8,3,4.5,2,6.3,5,3.6,6.2,6.9,7.6,7.3,6.8,5.6,7,7.4,5.6,8.2,8.4 73 | I41,45.5,13,0,7.4,5.2,5.4,8,1.7,2.3,2.8,0.9,7.5,6.1,8.7,3.9,5.4,3.6,2,3.5,4.7,2.1,4.3,7.7,8.2,7.6,6.7,5.6,6.7,6.4,6.2,9.4,6.7,5.5,6.4,5.9,4.6,2.7,3.6,4,2.2,2.8,2.9,3.5,5.4,3.7,4.1,3.4,7,6.5,7.2,8.1,4.1,4.4,5.6,5.7,5.5,5.4,4.3,2.7,7.7,5.6,5.3,8,7.4,7.4,8,8.3,7.7,6.9,6.1,1.5,0,1.5,2,1.1,1.3,1.6,1.6,3.1,1.2,7.4,5.2,4.7,7.3,8,8.7,8.4,7.9,5.8,7.2,7.7,5.8,9.3,8.8 74 | I42,47.6,12.7,1.5,7.5,6.2,3.7,9.2,0.21,2.3,4.9,2.3,6.8,4.9,8,5.3,5.8,2.1,0.9,2,3.2,3.4,3.2,8.4,8.9,9.7,8.1,7,7.8,7.5,6.9,8.6,5.7,4.4,7.7,5.8,3.7,2.5,5.1,5.4,2.9,3.2,3.2,5,6.8,2.2,3,1.9,6.3,5.7,6.4,7.3,3.3,3.6,4.9,4.5,4.4,3.7,3.2,1.6,6.6,4.5,4.2,8.2,8.8,8.9,9.2,9.9,8.9,8,7.4,1.2,1.5,0,0.85,1.9,2.7,2.8,3,4.5,2.6,7.5,6.2,4.8,7.4,8.1,9.4,9,8,6.8,8.2,8.6,6.8,8.8,10.9 75 | I43,50.1,12.8,2,8.3,7,4.6,9.7,0.65,4.8,4.8,2.8,7.6,7,8.9,5.9,6.7,1.3,1.5,1.6,3.6,2.4,4.1,9.1,9.8,9.3,10.9,7.9,8.5,8.2,7.6,9.5,6.5,5.3,8.9,6,4.8,3.6,5.6,6,3.8,4.1,4.1,5.5,7.3,2.6,3.8,1.6,7.1,6.6,7.3,8.2,4.2,4.5,5.8,5.5,5.3,4.6,4.1,2.4,9.8,5.4,5,9.4,9.4,9.4,9.7,10.4,9.4,8.5,8,2.1,2,0.85,0,0.9,2,3.5,3.6,5.4,3.5,8.3,7,5.7,8.2,9,10.2,9.9,8.6,7.6,9,9.5,9.7,9.7,13.5 76 | I44,47.2,13.4,1.1,8.3,6.5,5.2,8.4,1.5,1.5,4.5,1.9,8.2,7,9.6,4.9,6.3,2.2,2.4,2.4,4.5,1.6,4.7,1.6,8.5,9.3,7.7,6.6,7.6,7.3,6.7,10.1,7.1,5.9,7.6,6.9,5.5,3.5,4.7,8.2,3.1,3.7,3.8,4.6,6.4,3.5,4.5,2.6,7.9,7.2,7.9,8.8,4.6,5.1,6.5,6.1,5.9,5.2,4.6,3,10.7,6,5.7,8.4,8.5,8.5,8.4,9.3,9.5,8.6,7.1,2,1.1,1.9,0.9,0,1.1,2.4,2.6,4.9,2.6,8.3,6.5,5.6,8.2,8.9,10.2,9.8,9.4,7.1,8.5,8.9,7.1,10.2,10.6 77 | I45,46.2,14.2,1.3,8.6,6.4,5.5,8.7,2.7,2.8,3.2,2.2,8.6,7.3,10,4.7,6.6,3.3,3.2,3.6,5.6,0.7,5.5,10,8.7,8.1,7,6,8.4,7.6,7,10.4,8,6.7,6.9,7.1,5.8,3.9,4.4,4.9,3.4,4.3,4.1,3.9,5.9,4.6,5.3,3.7,8.3,7.4,8.3,9.1,5.4,5.6,6.7,6.8,6.5,5.5,5.5,3.9,8.9,6.8,6.5,10.4,9.8,7.6,8.7,8.8,8.3,7.4,6.4,2.7,1.3,2.7,2,1.1,0,1.4,1.7,3.8,2.5,8.6,6.4,5.9,8.5,9.2,10.5,9.6,9.1,7,8.4,8.9,7,10.5,9.4 78 | I46,44.8,14.5,1.6,8.7,6.5,6.3,7.2,3.2,1.4,2,2.1,8.8,7.6,10.2,4.5,6.9,4.7,3.5,5,6.2,2.2,5.8,8,7.3,6.8,7.5,6,8.9,10.1,6.9,10.7,8.2,7,5.5,7.3,6.1,4.2,4.3,4.7,3.3,4.3,4.2,3.8,6,5.2,5.4,4.9,8.3,7.5,8.3,9.3,5.6,5.8,7.1,7,6.7,6.3,5.6,4.2,9,6.8,10,9,8.7,7.8,7.2,8.5,6.9,6.5,6.4,2.8,1.6,2.8,3.5,2.4,1.4,0,0.24,2.8,2.4,8.7,6.5,6,8.6,10.2,10.6,10.2,9.2,7.1,8.5,8.9,7.1,10.6,8.5 79 | I47,44.4,14.5,1.6,8.9,6.4,7,6.8,3.3,1.2,1.7,2.2,8.9,7.6,10.3,4.3,6.8,5.2,3.5,5.1,6.2,2.4,5.8,8,6.9,6.4,6.7,5.6,8,7.9,6.6,10.7,8.3,7,5.1,7.5,6.1,4.2,4,4.5,3.4,4.3,4.4,3.3,7.2,5.3,5.6,4.9,8.3,7.7,8.4,9.4,5.8,5.9,7,7.2,6.3,7,5.9,4.2,9.2,7.1,6.8,7.6,7.4,7.9,6.8,7.7,6.5,5.7,6,3,1.6,3,3.6,2.6,1.7,0.24,0,2,2.5,8.9,6.4,6.2,8.8,11.6,13.2,10.5,10,9.1,9.8,10,7,10.8,7.7 80 | I48,42.2,12.7,3.1,9.8,5,7.8,4.8,4.8,1,0.29,2.6,7.9,6.6,9.2,2.9,5.1,6.7,5,6.6,7.8,4.1,5.6,6,4.9,4.3,4.6,3.6,6,7.6,4.5,9.7,7.5,8.5,3.1,6.6,5.2,3.5,2.7,4.4,2,2.9,3.4,1.3,4.5,6.8,7.1,6.5,7.5,6.8,7.5,8.4,4.9,4.9,6.1,7.2,6.1,7.8,5.5,5.1,8.5,8.6,8.3,6,5.3,5.8,4.8,5.5,4.5,3.6,4,4.5,3.1,4.5,5.4,4.9,3.8,2.8,2,0,2.4,9.8,5,5.2,9.3,9.6,11.2,10.3,9.9,5.6,7.8,8,5.2,9.8,5.7 81 | I49,44.3,12.9,1.2,7.1,4.3,5.9,6.1,2.8,2.6,2.7,0.28,7.1,5.7,8.5,2.7,4.5,4.7,3.1,4.6,5.8,3,4.7,6.4,6.2,6.2,5.4,4.4,5.8,5.5,4.9,9.1,6.9,6.5,5,5.6,4.2,2.6,2.5,2.9,0.9,2.2,2.6,2.3,4.2,4.8,5.2,4.5,6.8,6.1,6.7,7.9,3.7,4,5.2,5.1,5.4,5.9,4.6,3.2,7.9,6.6,6.3,6.8,6.2,6.2,6.1,7,6.4,5.5,4.8,2,1.2,2.6,3.5,2.6,2.5,2.4,2.5,2.4,0,7.1,4.3,4.5,7,7.8,8.5,8.1,7.7,4.9,6.3,6.7,4.9,9,7.6 82 | I50,47.6,4.9,7.4,0,4.5,6,7.6,7.7,8.9,10.1,7.2,0.85,3.1,1.3,5.6,3.6,8.3,6.6,8,7.2,9.2,5.2,43,7.1,6.7,5.8,5.7,3.6,3.3,4.2,1.8,6.8,6.9,6.7,2.4,2.8,4.8,5.4,5.4,6.2,4.9,4.5,6.6,5,6.8,6.6,7.9,3.6,2.4,2.5,1.1,5.3,4.8,4.3,4.7,5.5,6,5.3,5.6,8,7,6.9,4.4,6.3,5.4,7.6,6.5,7,7.6,5.3,6.3,7.4,7.5,8.3,8.3,8.6,8.7,8.9,9.8,7.1,0,4.5,3.3,2.1,2.5,1.4,1,0.6,3.1,3.9,4,3.9,1.8,6.9 83 | I51,41.9,9.4,5.2,4.5,0,7.6,3,6.4,5.8,5.1,4.6,4.5,1.6,4.9,1.8,0.85,8.2,6.3,8,8.8,7.1,6.7,2.6,3.1,3,2.1,1.3,1.7,1.1,0.45,5.7,8.2,8.5,2.8,4.9,5.3,4.5,2.2,1.7,3.4,3.3,3.2,3.5,0.5,8.5,8.2,8,5.3,4.2,4.3,5.3,5.9,5.2,5.9,6.2,7.1,7.6,6.6,5.8,9.6,8.6,8.5,2.9,2.9,2.2,3,3.7,3.3,3.2,1.1,5,5.2,6.2,7,6.5,6.4,6.5,6.4,5,4.3,4.5,0,2,3.5,4.3,4.9,4.6,4.1,1.3,1.5,2.4,0.6,5.5,4.3 84 | I52,43.1,7.6,4.7,3.3,2,5.9,5,5,6.2,5.5,4.5,2.2,0.087,3.7,2.7,0.85,6.8,5.2,6.7,7.1,6.6,5,3.5,5.2,4.9,4,3.4,2.9,2.6,2,4.7,6.5,6.8,4,2.8,3.9,3.1,2.6,2.6,3.5,2.3,1.8,4,2.2,6.6,6.5,6.6,3.5,2.8,3.1,4,4.6,3.7,4.2,4.6,5.4,5.9,5.2,3.9,7.9,6.9,6.8,3.7,5.1,4.6,5,5.7,5.3,4.5,3,3.6,4.7,4.8,5.7,5.6,5.9,6,6.2,5.2,4.5,3.3,2,0,2.5,3.3,4,3.7,3.2,2.1,3.2,3.4,2.3,4.2,5.8 85 | I53,44.9,6.2,7.3,2.1,3.5,7.6,4.4,7.6,8.8,8.1,7.3,2.9,2.5,2.5,5.1,2.9,8.7,7.1,8.6,8.7,9.1,6.7,3.3,4.7,5.7,4.7,4.8,2.8,2.4,3.3,3.3,8.3,8.5,6.2,4.8,5.9,5.3,5.1,4.9,6.1,4.8,4.4,6.5,4.1,9.1,8.1,8.5,5.2,4,4.1,3,6.9,5.7,5.9,6.2,7.1,7.6,7.6,6.1,10.3,8.8,9.2,3.4,3.9,3.8,4.4,4.1,6,6.8,4.4,6.2,7.3,7.4,8.2,8.2,8.5,8.6,8.8,9.3,7,2.1,3.5,2.5,0,0.75,2.4,2.4,1.8,2.2,2.1,2.1,3,3.4,4.4 86 | I54,44.6,6.4,8,2.5,4.3,8.6,4.4,8.3,10.5,9.9,8,3.4,3.2,1.6,5.4,3.3,10.2,7.8,10.6,9.7,10.8,7.4,3.3,4.5,4.8,3.9,5.3,3.2,3.2,4.2,2.9,12.2,9.5,6.2,4.6,6.6,6,5.8,5.3,6.8,5.6,4.4,6.5,5,8.8,9.2,10.5,6.2,4.9,4.3,3.4,7.9,7.4,6.9,7.2,8.1,8.6,7.6,6.8,10.6,9.6,9.5,3.2,3.7,3.6,4.4,3.9,5.7,6.5,4.9,6.9,8,8.1,9,8.9,9.2,10.2,11.6,9.6,7.8,2.5,4.3,3.3,0.75,0,1.7,1.5,1.9,2.5,2.9,1.9,3.7,2.9,3.9 87 | I55,46.3,4.4,8.7,1.4,4.9,7.4,6.3,9,12.2,11.5,8.8,2.2,3.9,0.1,6.4,4.3,11,8,9.4,8.6,10.6,6.6,4.8,6.1,7.1,5.8,6.8,4.1,3.8,4.6,1.2,8.2,8.3,7.6,4.6,6.3,6.2,6.4,7.5,7.5,6.2,5.7,7.9,5.4,8.2,8,9.3,5,3.7,3,2.2,6.7,6.2,5.7,6,6.9,7.4,6.7,7,6.2,8.4,8.3,4.1,5.3,5.2,6.3,5.5,7.4,8.2,6.5,7.6,8.7,9.4,10.2,10.2,10.5,10.6,13.2,11.2,8.5,1.4,4.9,4,2.4,1.7,0,0.35,0.45,3.6,4.3,3.5,4.4,1.2,5.6 88 | I56,46.6,4.9,8.4,1,4.6,7.1,6.6,8.7,11.3,10.6,8.4,1.8,3.4,0.23,6.1,3.9,10.7,7.7,9.1,8.2,10.3,6.2,4.4,6.4,6.9,5.9,5.8,3.8,3.5,4.3,1.2,7.8,8,7.3,3.5,5.9,5.8,6.1,5.9,7.2,6.5,6.1,7.5,5.1,7.8,7.6,9,4.6,3.4,2.7,1.9,6.4,5.9,5.3,5.7,6.6,7.1,6.3,6.6,10.4,8.1,8,4.6,5.7,4.6,6.6,5.9,7.7,8,6.9,7.3,8.4,9,9.9,9.8,9.6,10.2,10.5,10.3,8.1,1,4.6,3.7,2.4,1.5,0.35,0,0.75,3.3,4,3.4,4.1,1.2,5.9 89 | I57,47,4.5,7.9,0.6,4.1,6.8,6,8.2,10.8,10.2,8,1.4,3.1,0.65,5.6,3.4,10.3,7.2,8.7,7.9,9.8,5.9,4,6.8,6.4,5.5,5.4,3.4,3,3.7,1.4,7.5,7.7,6.8,3,3.3,5.4,5.7,5.5,6.8,5.5,5.1,7.1,4.7,7.5,7.3,8.6,4.2,3,2.3,1.5,6,5.6,4.9,5.2,6.1,6.8,6,6.2,11,7.7,7.6,3.5,6,5.1,6,6.3,6.7,7.4,5,6.8,7.9,8,8.6,9.4,9.1,9.2,10,9.9,7.7,0.6,4.1,3.2,1.8,1.9,0.45,0.75,0,2.8,3.6,3.8,3.6,1.4,6.3 90 | I58,44.4,7.2,5.8,3.1,1.3,8.1,2.6,7,7.2,6,5.2,4,2,3.5,2.7,1.2,8.8,6.9,8.6,9.2,7.7,7.2,1.4,3.6,3,2.1,2.5,0.75,0.22,0.9,4.2,8.8,9,4,4.3,5.9,5.1,2.7,2.7,4,3.9,3.6,4.3,1.8,9,8.6,8.5,5.6,4.5,4.7,4.1,6.5,5.7,6.3,6.7,7.6,8.1,7.2,6.1,10,9,8.9,0.85,3.3,1.6,2.6,3.6,4.1,4.5,2.2,5.6,5.8,6.8,7.6,7.1,7,7.1,9.1,5.6,4.9,3.1,1.3,2.1,2.2,2.5,3.6,3.3,2.8,0,0.29,1.3,0.8,4.2,8.2 91 | I59,44.1,8.1,7.2,3.9,1.5,9.2,2.4,8.4,8.7,7.3,6.6,4.7,3.1,4.3,4.2,2.5,10.3,8.5,9.9,10.3,9.1,8.3,1.1,3.3,2.8,2.6,3.6,0.5,0.5,1.1,4.2,15,10.1,4.5,6.4,7.2,6.5,3,4.1,5.4,5.3,5.2,5.6,2,10.4,9.7,9.9,6.8,5.6,5.8,4.8,7.9,7.1,7.5,7.8,8.7,9.2,8.4,7.5,11.2,10.2,10.1,0.6,3,1.3,2.4,3.3,3.1,4.6,3.2,7,7.2,8.2,9,8.5,8.4,8.5,9.8,7.8,6.3,3.9,1.5,3.2,2.1,2.9,4.3,4,3.6,0.29,0,1,1,4.3,3.7 92 | I60,43.1,8.2,7.7,4,2.4,10,2.8,8.8,9,8.3,7,5.5,3.3,3.5,3.9,2.5,10.7,9,10.5,12.1,9.5,9.1,1.6,2.9,3.3,2.4,3.3,1,1.5,1.9,4.7,14.1,14.9,4.8,5.6,7.7,6.9,4,3.8,5.8,5.8,5.6,5.8,2.9,17.5,10.6,10.4,8.6,6.4,6.7,5.8,8.4,7.6,9.3,8.5,9.5,10,10.2,7.9,13.2,11,10.9,1,2.1,1.8,2.8,2.4,3.5,5,2.9,7.4,7.7,8.6,9.5,8.9,8.9,8.9,10,8,6.7,4,2.4,3.4,2.1,1.9,3.5,3.4,3.8,1.3,1,0,1.8,5.3,3.1 93 | I61,42.5,9.2,5.8,3.9,0.6,8.2,2.6,7,6.2,5.5,5.2,4.8,2.2,4.3,2.7,1.2,8.8,6.9,8.6,9.3,7.7,7.3,1.4,2.7,3,2.1,1.8,0.8,0.8,0.12,5,8.8,9.1,3.3,5.5,5.8,5.1,2.8,2.6,4,3.8,3.8,3.9,1.1,9,8.7,8.5,5.8,4.7,4.9,4.9,6.5,5.7,6.5,6.8,7.7,8.2,7.2,6.1,10.1,9.2,9,0.8,2.5,1.7,2.6,3.1,3.3,3.4,1.3,5.6,5.8,6.8,9.7,7.1,7,7.1,7,5.2,4.9,3.9,0.6,2.3,3,3.7,4.4,4.1,3.6,0.8,1,1.8,0,5.4,3.3 94 | I62,47.6,3.7,9.3,1.8,5.5,6.5,7.4,9,12.2,11.6,9.1,2.6,4.3,1.2,7.1,5,10.1,8.2,8.5,7.6,11.1,5.6,5.4,7.4,7.9,6.9,6.8,4.8,4.5,5.3,0.31,7.2,7.4,8.2,4.3,5.3,6.7,7.1,6.9,8.1,6.9,6.4,8.5,6.1,7.2,7,8.4,4,2.9,2.2,1.3,5.8,5.3,4.8,5.1,6,6.5,5.7,7.2,8.4,7.5,7.3,6.1,6.6,6.5,7.4,6.8,8.1,8.9,6.4,8.2,9.3,8.8,9.7,10.2,10.5,10.6,10.8,9.8,9,1.8,5.5,4.2,3.4,2.9,1.2,1.2,1.4,4.2,4.3,5.3,5.4,0,6.9 95 | I82,41.4,10.3,8.8,6.9,4.3,11.1,0.7,9.8,6.6,6,7.6,7.4,5.7,5.7,5.6,4.9,13.8,10,11.5,16.8,10.8,10.2,2,2.1,1.5,1.6,3.1,2.4,3.9,4,6.7,11.6,12,2.5,8.4,8.7,8,5.7,5.5,7.3,6.8,6.7,5.8,4,16.1,18.3,15.3,10.6,8.4,8.7,7.8,9.4,8.6,9.3,9.7,10.6,11.1,10,9.2,13,12,17.1,2.6,0.8,1.4,0.7,0.022,1.8,2.6,2.9,8.4,8.8,10.9,13.5,10.6,9.4,8.5,7.7,5.7,7.6,6.9,4.3,5.8,4.4,3.9,5.6,5.9,6.3,8.2,3.7,3.1,3.3,6.9,0 96 | -------------------------------------------------------------------------------- /Data/Indo/costSatelite.csv: -------------------------------------------------------------------------------- 1 | ,KS1,KS2,KS3,KS4 2 | Cost,0,0,0,0 3 | Kapasitas,3277,3277,3277,3277 4 | -------------------------------------------------------------------------------- /Data/Indo/costVehicle.csv: -------------------------------------------------------------------------------- 1 | ,Truck,Tossa 2 | BiayaVar,1257.759556,474.1418062 3 | Kapasitas,3277,250 4 | Biaya Per kendaraan,1000,500 5 | -------------------------------------------------------------------------------- /Data/Indo/demand.csv: -------------------------------------------------------------------------------- 1 | ,Demand 2 | I1,49.4 3 | I2,34.8 4 | I3,49.2 5 | I4,44.6 6 | I5,34.8 7 | I6,59.2 8 | I7,78.4 9 | I8,74.2 10 | I9,39.6 11 | I10,39.6 12 | I11,49.6 13 | I12,49.6 14 | I13,64.4 15 | I15,104 16 | I16,79.4 17 | I17,129 18 | I18,129 19 | I19,103.8 20 | I20,59.4 21 | I21,59.2 22 | I22,54.8 23 | I23,69 24 | I24,59.4 25 | I25,49.4 26 | I26,94.2 27 | I27,49.8 28 | I30,76 29 | I31,84.4 30 | I32,89.4 31 | I33,39.8 32 | I34,59.6 33 | I35,56.2 34 | I36,88 35 | I37,44.8 36 | I38,108.6 37 | I39,69.2 38 | I40,64.2 39 | I41,89.2 40 | I42,49.2 41 | I43,98 42 | I44,49.6 43 | I45,59.6 44 | I46,59.8 45 | I47,49.4 46 | I48,44.6 47 | I49,54.2 48 | I50,44.6 49 | I51,44.6 50 | I52,69.6 51 | I53,44.6 52 | I54,44.6 53 | I55,44.6 54 | I56,44.6 55 | I57,44.6 56 | I58,49.2 57 | I59,59.6 58 | I60,59.2 59 | I61,103.4 60 | I62,49.2 61 | I82,73.8 62 | -------------------------------------------------------------------------------- /Data/Indo/distance.csv: -------------------------------------------------------------------------------- 1 | ,DCI,KS1,KS2,KS3,KS4,I1,I2,I3,I4,I5,I6,I7,I8,I9,I10,I11,I12,I13,I15,I16,I17,I18,I19,I20,I21,I22,I23,I24,I25,I26,I27,I30,I31,I32,I33,I34,I35,I36,I37,I38,I39,I40,I41,I42,I43,I44,I45,I46,I47,I48,I49,I50,I51,I52,I53,I54,I55,I56,I57,I58,I59,I60,I61,I62,I82 2 | DCI,0,7.5,13,9,4.9,7.2,7.1,9.7,10.6,10.7,11,9.8,9.4,11.7,9,12.9,9.2,11.5,4.2,6.6,3.8,4,8.3,8.1,6.6,7.1,7.5,8.5,8.3,11.1,5.8,9.8,7.7,8.4,11.2,9,11,9.4,11,12,9.4,11.9,13,12.7,12.8,13.4,14.2,14.5,14.5,12.7,12.9,4.9,9.4,7.6,6.2,6.4,4.4,4.9,4.5,7.2,8.1,8.2,9.2,3.7,10.3 3 | KS1,7.5,0,5.5,9.3,5.5,3.2,3.3,2.8,7.1,7.1,4.1,3.9,4.1,6.3,7.2,3,1.7,4,3.1,3.2,3.8,4.8,1.2,2.6,1.3,1,0,0.7,1.2,2.9,2.4,1.5,1.2,9.1,9.9,9.3,9.9,16.9,9.8,9.2,8.2,4,5.5,4.4,5.3,5.9,6.5,6.7,6.3,6.1,5.4,5.5,7.1,5.4,7.1,8.1,6.9,6.6,6.1,7.6,8.7,9.5,7.7,6,10.6 4 | KS2,13,5.5,0,7.4,7.4,5.9,4.6,2.7,3.6,4,2.2,2.8,2.9,3.5,5.4,3.7,4.1,3.4,7,6.5,7.2,8.1,4.1,4.4,5.6,5.7,5.5,5.4,4.3,2.7,7.7,5.6,5.3,8,7.4,7.4,8,8.3,7.7,6.9,6.1,1.5,0,1.5,2,1.1,1.3,1.6,1.6,3.1,1.2,7.4,5.2,4.7,7.3,8,8.7,8.4,7.9,5.8,7.2,7.7,5.8,9.3,8.8 5 | KS3,9,9.3,7.4,0,5.4,6.6,7.4,6.6,4.4,4.2,5.5,5.5,5.4,3.7,2.7,10.5,10.3,10.1,8,7.3,7.3,6.4,8.1,7.3,8,8.4,9.3,9.8,8.7,7.9,11.7,10.7,10.6,0.85,0.55,0,1.1,1.3,2,2.8,1.3,7.6,7.4,8.9,9.4,8.5,7.6,7.8,7.9,5.8,6.2,5.4,2.2,4.6,3.8,3.6,5.2,4.6,5.1,1.6,1.3,1.8,1.7,6.5,1.4 6 | KS4,4.9,5.5,7.4,5.4,0,2.4,2.8,4.8,5.4,5.4,6.2,4.9,4.5,6.6,5,6.8,6.6,7.9,3.6,2.4,2.5,1.1,5.3,4.8,4.3,4.7,5.5,6,5.3,5.6,8,7,6.9,4.4,6.3,5.4,7.6,6.5,7,7.6,5.3,6.3,7.4,7.5,8.3,8.3,8.6,8.7,8.9,9.8,7.1,0,4.5,3.3,2.1,2.5,1.4,1,0.6,3.1,3.9,4,3.9,1.8,6.9 7 | I1,7.2,3.2,5.9,6.6,2.4,0,0.35,3.1,4.8,4.6,4.5,3.3,2.8,5.2,4.4,4.2,4.2,4.4,2.2,1.3,2.1,3,3.5,1.4,1.9,2.3,3.2,3.2,2.7,4.3,5.6,4.6,4.3,5.9,7.8,6.6,7.7,7.9,7.9,5.9,5.8,4.9,5.9,5.8,6,6.9,7.1,7.3,7.5,6.6,5.6,2.4,4.9,2.8,4.8,4.6,4.6,3.5,3,4.3,6.4,5.6,5.5,4.3,8.4 8 | I2,7.1,3.3,4.6,7.4,2.8,0.35,0,0.7,2.3,8.1,7.6,12.3,4,6.1,6.1,4.2,6,6.9,7.1,6.3,6,5.7,5.6,1.1,1.7,2.4,3.3,3.3,2.5,2.3,5.7,4.8,4.7,7.4,8.1,7.4,8,8.7,8.2,7.4,6.1,3.4,4.6,3.7,4.8,5.5,5.8,6.1,6.1,5.2,4.2,2.8,5.3,3.9,5.9,6.6,6.3,5.9,3.3,5.9,7.2,7.7,5.8,5.3,8.7 9 | I3,9.7,2.8,2.7,6.6,4.8,3.1,0.7,0,3.6,3.9,1.5,1.2,1.2,3.4,4,3.7,3.8,3.6,4.2,3.8,4.5,5.4,1.6,1.6,2.8,2.9,2.8,3.3,2.3,1.1,5.2,4.3,4.1,6.6,7.3,6.6,7.2,8,7.5,6.6,5.3,1.5,2.7,2.5,3.6,3.5,3.9,4.2,4.2,3.5,2.6,4.8,4.5,3.1,5.3,6,6.2,5.8,5.4,5.1,6.5,6.9,5.1,6.7,8 10 | I4,10.6,7.1,3.6,4.4,5.4,4.8,2.3,3.6,0,0.4,2.2,2.3,2.5,1.4,1.6,7.2,7.3,7,5.7,5,5.5,6,5.2,4.6,5.8,6.2,7.1,7.1,5.8,4.7,9.5,8.5,8.4,4.4,5.1,4.4,5,5.7,5.2,4.4,3.1,3.9,3.6,5.1,5.6,4.7,4.4,4.3,4,2.7,2.5,5.4,2.2,2.6,5.1,5.8,6.4,6.1,5.7,2.7,3,4,2.8,7.1,5.7 11 | I5,10.7,7.1,4,4.2,5.4,4.6,8.1,3.9,0.4,0,2.5,2.6,2.7,1.8,1.4,7.8,7.7,7.5,5.7,5.1,5.7,6,5.4,4.8,5.8,6.2,7.1,7.1,6.1,5.1,9.6,8.6,8.5,4.2,4.9,4.2,4.8,5.5,5,4.2,2.9,4.2,4,5.4,6,8.2,4.9,4.7,4.5,4.4,2.9,5.4,1.7,2.6,4.9,5.3,7.5,5.9,5.5,2.7,4.1,3.8,2.6,6.9,5.5 12 | I6,11,4.1,2.2,5.5,6.2,4.5,7.6,1.5,2.2,2.5,0,1.2,1.6,1.9,2.9,5.1,5.5,4.8,5.9,4.9,5.8,6.6,2.9,3.3,4.4,4.3,4.1,4.1,3.7,2.6,6.5,6.1,5.8,5.5,6.2,5.5,6.6,7.3,6.1,5.3,4.2,1.7,2.2,2.9,3.8,3.1,3.4,3.3,3.4,2,0.9,6.2,3.4,3.5,6.1,6.8,7.5,7.2,6.8,4,5.4,5.8,4,8.1,7.3 13 | I7,9.8,3.9,2.8,5.5,4.9,3.3,12.3,1.2,2.3,2.6,1.2,0,0.45,2.4,2.8,5.4,5.1,4.7,4.6,3.9,4.6,5.5,2.7,2.1,3.1,4.3,3.9,3.9,3.4,2.4,6.3,5.4,5.3,5.5,6.2,5.5,6.1,6.8,7.1,6.2,4.2,2,2.8,3.2,4.1,3.7,4.3,4.3,4.3,2.9,2.2,4.9,3.3,2.3,4.8,5.6,6.2,6.5,5.5,3.9,5.3,5.8,3.8,6.9,6.8 14 | I8,9.4,4.1,2.9,5.4,4.5,2.8,4,1.2,2.5,2.7,1.6,0.45,0,2.6,2.7,5.2,5,4.8,4.2,3.4,4.2,4.8,2.8,2.3,3.4,4,4.1,4.2,3.6,2.4,6.6,5.6,5.5,5.4,6.1,5.4,6,6.7,6.2,5.3,4.1,2.1,2.9,3.2,4.1,3.8,4.1,4.2,4.4,3.4,2.6,4.5,3.2,1.8,4.4,4.4,5.7,6.1,5.1,3.6,5.2,5.6,3.8,6.4,6.7 15 | I9,11.7,6.3,3.5,3.7,6.6,5.2,6.1,3.4,1.4,1.8,1.9,2.4,2.6,0,3.2,7.2,7.6,6.8,6.1,5.5,6.2,4.8,5,4.5,5.6,6.3,6.3,6.3,5.8,4.7,8.7,8.2,7.9,4.3,4.4,3.7,5.1,5.8,4.7,3.8,2.4,3.9,3.5,5,5.5,4.6,3.9,3.8,3.3,1.3,2.3,6.6,3.5,4,6.5,6.5,7.9,7.5,7.1,4.3,5.6,5.8,3.9,8.5,5.8 16 | I10,9,7.2,5.4,2.7,5,4.4,6.1,4,1.6,1.4,2.9,2.8,2.7,3.2,0,7.5,7.4,7.5,5.3,4.6,4.8,5.8,6.2,5.6,5.9,6.3,7.2,7.2,6.9,6,9.6,8.6,8.5,3.3,3.3,2.7,3.2,4,3.5,2.6,1.3,5.6,5.4,6.8,7.3,6.4,5.9,6,7.2,4.5,4.2,5,0.5,2.2,4.1,5,5.4,5.1,4.7,1.8,2,2.9,1.1,6.1,4 17 | I11,12.9,3,3.7,10.5,6.8,4.2,4.2,3.7,7.2,7.8,5.1,5.4,5.2,7.2,7.5,0,1.2,1.2,4.5,6.2,5,6,2.2,3,3.6,3.2,3,2.9,1.6,2.7,7.2,3,2.7,10.5,16.4,10.5,15.4,16.2,15,14.1,9.2,3.4,3.7,2.2,2.6,3.5,4.6,5.2,5.3,6.8,4.8,6.8,8.5,6.6,9.1,8.8,8.2,7.8,7.5,9,10.4,17.5,9,7.2,16.1 18 | I12,9.2,1.7,4.1,10.3,6.6,4.2,6,3.8,7.3,7.7,5.5,5.1,5,7.6,7.4,1.2,0,2.4,3.7,5.5,4.8,5.8,2.4,3.2,2.4,1.9,1.7,1,1.8,3.1,3.8,1.7,1.5,10.2,11,10.3,16.7,18.3,16.2,15.4,9,3.8,4.1,3,3.8,4.5,5.3,5.4,5.6,7.1,5.2,6.6,8.2,6.5,8.1,9.2,8,7.6,7.3,8.6,9.7,10.6,8.7,7,18.3 19 | I13,11.5,4,3.4,10.1,7.9,4.4,6.9,3.6,7,7.5,4.8,4.7,4.8,6.8,7.5,1.2,2.4,0,5.8,7.3,6.2,7.1,2.8,3.4,4.6,4.2,4,3.9,2.7,2.4,7.5,4,3.7,10.1,15.5,10.1,14.6,15.3,14.1,13.3,8.8,3.1,3.4,1.9,1.6,2.6,3.7,4.9,4.9,6.5,4.5,7.9,8,6.6,8.5,10.5,9.3,9,8.6,8.5,9.9,10.4,8.5,8.4,15.3 20 | I15,4.2,3.1,7,8,3.6,2.2,7.1,4.2,5.7,5.7,5.9,4.6,4.2,6.1,5.3,4.5,3.7,5.8,0,1.2,1.8,2.7,3.1,3.2,1.4,1.8,3.1,2.7,3.1,4.9,5.2,3.6,3.5,7.2,8.7,8,8.6,10.6,8.8,8,6.7,6,7,6.3,7.1,7.9,8.3,8.3,8.3,7.5,6.8,3.6,5.3,3.5,5.2,6.2,5,4.6,4.2,5.6,6.8,8.6,5.8,4,10.6 21 | I16,6.6,3.2,6.5,7.3,2.4,1.3,6.3,3.8,5,5.1,4.9,3.9,3.4,5.5,4.6,6.2,5.5,7.3,1.2,0,0.65,1.6,2.9,2.9,1.9,2.3,3.2,3.2,2.9,4.2,5.6,4.6,4.5,6.1,8,7.3,7.9,8.2,8.1,7.3,6,5.3,6.5,5.7,6.6,7.2,7.4,7.5,7.7,6.8,6.1,2.4,4.2,2.8,4,4.9,3.7,3.4,3,4.5,5.6,6.4,4.7,2.9,8.4 22 | I17,3.8,3.8,7.2,7.3,2.5,2.1,6,4.5,5.5,5.7,5.8,4.6,4.2,6.2,4.8,5,4.8,6.2,1.8,0.65,0,0.95,3.5,3.5,2.6,2.9,3.8,3.9,3.5,4.8,8.9,5.3,5.2,6.3,9.6,7.3,9.4,8.7,8.3,7.5,5.4,5.9,7.2,6.4,7.3,7.9,8.3,8.3,8.4,7.5,6.7,2.5,4.3,3.1,4.1,4.3,3,2.7,2.3,4.7,5.8,6.7,4.9,2.2,8.7 23 | I18,4,4.8,8.1,6.4,1.1,3,5.7,5.4,6,6,6.6,5.5,4.8,4.8,5.8,6,5.8,7.1,2.7,1.6,0.95,0,4.5,4.5,3.5,3.9,4.8,4.8,4.5,5.8,8.9,6.2,6.1,5.4,8.7,6.4,8.5,7.8,9.6,8.6,6.3,6.9,8.1,7.3,8.2,8.8,9.1,9.3,9.4,8.4,7.9,1.1,5.3,4,3,3.4,2.2,1.9,1.5,4.1,4.8,5.8,4.9,1.3,7.8 24 | I19,8.3,1.2,4.1,8.1,5.3,3.5,5.6,1.6,5.2,5.4,2.9,2.7,2.8,5,6.2,2.2,2.4,2.8,3.1,2.9,3.5,4.5,0,0.8,1.7,1.4,1.2,1.2,0.7,1.7,3.6,2.7,2.6,8.1,8.8,8.1,8.7,9.4,8.9,8.1,6.8,2.8,4.1,3.3,4.2,4.6,5.4,5.6,5.8,4.9,3.7,5.3,5.9,4.6,6.9,7.9,6.7,6.4,6,6.5,7.9,8.4,6.5,5.8,9.4 25 | I20,8.1,2.6,4.4,7.3,4.8,1.4,1.1,1.6,4.6,4.8,3.3,2.1,2.3,4.5,5.6,3,3.2,3.4,3.2,2.9,3.5,4.5,0.8,0,1.2,2.4,2.6,2.6,2.1,2,5,4,3.9,7.3,8,7.3,7.9,8.6,8.3,7.4,6.7,3,4.4,3.6,4.5,5.1,5.6,5.8,5.9,4.9,4,4.8,5.2,3.7,5.7,7.4,6.2,5.9,5.6,5.7,7.1,7.6,5.7,5.3,8.6 26 | I21,6.6,1.3,5.6,8,4.3,1.9,1.7,2.8,5.8,5.8,4.4,3.1,3.4,5.6,5.9,3.6,2.4,4.6,1.4,1.9,2.6,3.5,1.7,1.2,0,0.45,1.3,1.4,1.8,3.5,3.8,2.8,2.7,7.9,8.7,8,8.6,11.3,8.5,7.7,7,4.6,5.6,4.9,5.8,6.5,6.7,7.1,7,6.1,5.2,4.3,5.9,4.2,5.9,6.9,5.7,5.3,4.9,6.3,7.5,9.3,6.5,4.8,9.3 27 | I22,7.1,1,5.7,8.4,4.7,2.3,2.4,2.9,6.2,6.2,4.3,4.3,4,6.3,6.3,3.2,1.9,4.2,1.8,2.3,2.9,3.9,1.4,2.4,0.45,0,1,0.9,1.4,3.5,3.3,2.3,2.2,8.2,9.1,8.4,9,11.6,8.9,8.1,7.4,4.2,5.7,4.5,5.5,6.1,6.8,7,7.2,7.2,5.1,4.7,6.2,4.6,6.2,7.2,6,5.7,5.2,6.7,7.8,8.5,6.8,5.1,9.7 28 | I23,7.5,0,5.5,9.3,5.5,3.2,3.3,2.8,7.1,7.1,4.1,3.9,4.1,6.3,7.2,3,1.7,4,3.1,3.2,3.8,4.8,1.2,2.6,1.3,1,0,0.7,1.2,2.9,2.4,1.5,1.2,9.1,9.9,9.3,9.9,16.9,9.8,9.2,8.2,4,5.5,4.4,5.3,5.9,6.5,6.7,6.3,6.1,5.4,5.5,7.1,5.4,7.1,8.1,6.9,6.6,6.1,7.6,8.7,9.5,7.7,6,10.6 29 | I24,8.5,0.7,5.4,9.8,6,3.2,3.3,3.3,7.1,7.1,4.1,3.9,4.2,6.3,7.2,2.9,1,3.9,2.7,3.2,3.9,4.8,1.2,2.6,1.4,0.9,0.7,0,1.2,2.9,3,1.6,1.3,1.8,10.5,9.8,10.4,17.5,9.8,9,8.3,4,5.4,3.7,4.6,5.2,5.5,6.3,7,7.8,5.9,6,7.6,5.9,7.6,8.6,7.4,7.1,6.8,8.1,9.2,10,8.2,6.5,11.1 30 | I25,8.3,1.2,4.3,8.7,5.3,2.7,2.5,2.3,5.8,6.1,3.7,3.4,3.6,5.8,6.9,1.6,1.8,2.7,3.1,2.9,3.5,4.5,0.7,2.1,1.8,1.4,1.2,1.2,0,4.3,3.7,2.3,2,8.7,9.4,8.7,9.3,10,9.5,8.7,7.4,3.1,4.3,3.2,4.1,4.6,5.5,5.6,5.9,5.5,4.6,5.3,6.6,5.2,7.6,7.6,6.7,6.3,6,7.2,8.4,10.2,7.2,5.7,10 31 | I26,11.1,2.9,2.7,7.9,5.6,4.3,2.3,1.1,4.7,5.1,2.6,2.4,2.4,4.7,6,2.7,3.1,2.4,4.9,4.2,4.8,5.8,1.7,2,3.5,3.5,2.9,2.9,4.3,0,5.3,3.7,3.4,7.9,8.6,7.9,8.5,9.3,8.8,7.9,6.6,1.5,2.7,1.6,2.4,3,3.9,4.2,4.2,5.1,3.2,5.6,5.8,3.9,6.1,6.8,7,6.6,6.2,6.1,7.5,7.9,6.1,7.2,9.2 32 | I27,5.8,2.4,7.7,11.7,8,5.6,5.7,5.2,9.5,9.6,6.5,6.3,6.6,8.7,9.6,7.2,3.8,7.5,5.2,5.6,8.9,8.9,3.6,5,3.8,3.3,2.4,3,3.7,5.3,0,2.2,2.5,11.6,12.4,11.7,12.3,15.2,17,11.7,10.4,6.4,7.7,6.6,9.8,10.7,8.9,9,9.2,8.5,7.9,8,9.6,7.9,10.3,10.6,6.2,10.4,11,10,11.2,13.2,10.1,8.4,13 33 | I30,9.8,1.5,5.6,10.7,7,4.6,4.8,4.3,8.5,8.6,6.1,5.4,5.6,8.2,8.6,3,1.7,4,3.6,4.6,5.3,6.2,2.7,4,2.8,2.3,1.5,1.6,2.3,3.7,2.2,0,0.29,10.6,11.4,10.7,10.9,12,11.5,10.7,9.4,5.1,5.6,4.5,5.4,6,6.8,6.8,7.1,8.6,6.6,7,8.6,6.9,8.8,9.6,8.4,8.1,7.7,9,10.2,11,9.2,7.5,12 34 | I31,7.7,1.2,5.3,10.6,6.9,4.3,4.7,4.1,8.4,8.5,5.8,5.3,5.5,7.9,8.5,2.7,1.5,3.7,3.5,4.5,5.2,6.1,2.6,3.9,2.7,2.2,1.2,1.3,2,3.4,2.5,0.29,0,10.5,11.3,10.6,11.2,11.9,11.4,10.6,9.3,4.8,5.3,4.2,5,5.7,6.5,10,6.8,8.3,6.3,6.9,8.5,6.8,9.2,9.5,8.3,8,7.6,8.9,10.1,10.9,9,7.3,17.1 35 | I32,8.4,9.1,8,0.85,4.4,5.9,7.4,6.6,4.4,4.2,5.5,5.5,5.4,4.3,3.3,10.5,10.2,10.1,7.2,6.1,6.3,5.4,8.1,7.3,7.9,8.2,9.1,1.8,8.7,7.9,11.6,10.6,10.5,0,1.4,0.85,1.9,2.4,2.5,3.4,1.9,7,8,8.2,9.4,8.4,10.4,9,7.6,6,6.8,4.4,2.9,3.7,3.4,3.2,4.1,4.6,3.5,0.85,0.6,1,0.8,6.1,2.6 36 | I33,11.2,9.9,7.4,0.55,6.3,7.8,8.1,7.3,5.1,4.9,6.2,6.2,6.1,4.4,3.3,16.4,11,15.5,8.7,8,9.6,8.7,8.8,8,8.7,9.1,9.9,10.5,9.4,8.6,12.4,11.4,11.3,1.4,0,0.55,0.9,7.4,2,2.7,1.9,7.5,7.4,8.8,9.4,8.5,9.8,8.7,7.4,5.3,6.2,6.3,2.9,5.1,3.9,3.7,5.3,5.7,6,3.3,3,2.1,2.5,6.6,0.8 37 | I34,9,9.3,7.4,0,5.4,6.6,7.4,6.6,4.4,4.2,5.5,5.5,5.4,3.7,2.7,10.5,10.3,10.1,8,7.3,7.3,6.4,8.1,7.3,8,8.4,9.3,9.8,8.7,7.9,11.7,10.7,10.6,0.85,0.55,0,1.1,1.3,2,2.8,1.3,7.6,7.4,8.9,9.4,8.5,7.6,7.8,7.9,5.8,6.2,5.4,2.2,4.6,3.8,3.6,5.2,4.6,5.1,1.6,1.3,1.8,1.7,6.5,1.4 38 | I35,11,9.9,8,1.1,7.6,7.7,8,7.2,5,4.8,6.6,6.1,6,5.1,3.2,15.4,16.7,14.6,8.6,7.9,9.4,8.5,8.7,7.9,8.6,9,9.9,10.4,9.3,8.5,12.3,10.9,11.2,1.9,0.9,1.1,0,0.75,1.1,1.8,1.9,7.4,8,9.2,9.7,8.4,8.7,7.2,6.8,4.8,6.1,7.6,3,5,4.4,4.4,6.3,6.6,6,2.6,2.4,2.8,2.6,7.4,0.7 39 | I36,9.4,16.9,8.3,1.3,6.5,7.9,8.7,8,5.7,5.5,7.3,6.8,6.7,5.8,4,16.2,18.3,15.3,10.6,8.2,8.7,7.8,9.4,8.6,11.3,11.6,16.9,17.5,10,9.3,15.2,12,11.9,2.4,7.4,1.3,0.75,0,1.8,2.6,2.7,8.4,8.3,9.9,10.4,9.3,8.8,8.5,7.7,5.5,7,6.5,3.7,5.7,4.1,3.9,5.5,5.9,6.3,3.6,3.3,2.4,3.1,6.8,0.022 40 | I37,11,9.8,7.7,2,7,7.9,8.2,7.5,5.2,5,6.1,7.1,6.2,4.7,3.5,15,16.2,14.1,8.8,8.1,8.3,9.6,8.9,8.3,8.5,8.9,9.8,9.8,9.5,8.8,17,11.5,11.4,2.5,2,2,1.1,1.8,0,0.85,2.3,7.9,7.7,8.9,9.4,9.5,8.3,6.9,6.5,4.5,6.4,7,3.3,5.3,6,5.7,7.4,7.7,6.7,4.1,3.1,3.5,3.3,8.1,1.8 41 | I38,12,9.2,6.9,2.8,7.6,5.9,7.4,6.6,4.4,4.2,5.3,6.2,5.3,3.8,2.6,14.1,15.4,13.3,8,7.3,7.5,8.6,8.1,7.4,7.7,8.1,9.2,9,8.7,7.9,11.7,10.7,10.6,3.4,2.7,2.8,1.8,2.6,0.85,0,2.2,7,6.9,8,8.5,8.6,7.4,6.5,5.7,3.6,5.5,7.6,3.2,4.5,6.8,6.5,8.2,8,7.4,4.5,4.6,5,3.4,8.9,2.6 42 | I39,9.4,8.2,6.1,1.3,5.3,5.8,6.1,5.3,3.1,2.9,4.2,4.2,4.1,2.4,1.3,9.2,9,8.8,6.7,6,5.4,6.3,6.8,6.7,7,7.4,8.2,8.3,7.4,6.6,10.4,9.4,9.3,1.9,1.9,1.3,1.9,2.7,2.3,2.2,0,6.2,6.1,7.4,8,7.1,6.4,6.4,6,4,4.8,5.3,1.1,3,4.4,4.9,6.5,6.9,5,2.2,3.2,2.9,1.3,6.4,2.9 43 | I40,11.9,4,1.5,7.6,6.3,4.9,3.4,1.5,3.9,4.2,1.7,2,2.1,3.9,5.6,3.4,3.8,3.1,6,5.3,5.9,6.9,2.8,3,4.6,4.2,4,4,3.1,1.5,6.4,5.1,4.8,7,7.5,7.6,7.4,8.4,7.9,7,6.2,0,1.5,1.2,2.1,2,2.7,2.8,3,4.5,2,6.3,5,3.6,6.2,6.9,7.6,7.3,6.8,5.6,7,7.4,5.6,8.2,8.4 44 | I41,13,5.5,0,7.4,7.4,5.9,4.6,2.7,3.6,4,2.2,2.8,2.9,3.5,5.4,3.7,4.1,3.4,7,6.5,7.2,8.1,4.1,4.4,5.6,5.7,5.5,5.4,4.3,2.7,7.7,5.6,5.3,8,7.4,7.4,8,8.3,7.7,6.9,6.1,1.5,0,1.5,2,1.1,1.3,1.6,1.6,3.1,1.2,7.4,5.2,4.7,7.3,8,8.7,8.4,7.9,5.8,7.2,7.7,5.8,9.3,8.8 45 | I42,12.7,4.4,1.5,8.9,7.5,5.8,3.7,2.5,5.1,5.4,2.9,3.2,3.2,5,6.8,2.2,3,1.9,6.3,5.7,6.4,7.3,3.3,3.6,4.9,4.5,4.4,3.7,3.2,1.6,6.6,4.5,4.2,8.2,8.8,8.9,9.2,9.9,8.9,8,7.4,1.2,1.5,0,0.85,1.9,2.7,2.8,3,4.5,2.6,7.5,6.2,4.8,7.4,8.1,9.4,9,8,6.8,8.2,8.6,6.8,8.8,10.9 46 | I43,12.8,5.3,2,9.4,8.3,6,4.8,3.6,5.6,6,3.8,4.1,4.1,5.5,7.3,2.6,3.8,1.6,7.1,6.6,7.3,8.2,4.2,4.5,5.8,5.5,5.3,4.6,4.1,2.4,9.8,5.4,5,9.4,9.4,9.4,9.7,10.4,9.4,8.5,8,2.1,2,0.85,0,0.9,2,3.5,3.6,5.4,3.5,8.3,7,5.7,8.2,9,10.2,9.9,8.6,7.6,9,9.5,9.7,9.7,13.5 47 | I44,13.4,5.9,1.1,8.5,8.3,6.9,5.5,3.5,4.7,8.2,3.1,3.7,3.8,4.6,6.4,3.5,4.5,2.6,7.9,7.2,7.9,8.8,4.6,5.1,6.5,6.1,5.9,5.2,4.6,3,10.7,6,5.7,8.4,8.5,8.5,8.4,9.3,9.5,8.6,7.1,2,1.1,1.9,0.9,0,1.1,2.4,2.6,4.9,2.6,8.3,6.5,5.6,8.2,8.9,10.2,9.8,9.4,7.1,8.5,8.9,7.1,10.2,10.6 48 | I45,14.2,6.5,1.3,7.6,8.6,7.1,5.8,3.9,4.4,4.9,3.4,4.3,4.1,3.9,5.9,4.6,5.3,3.7,8.3,7.4,8.3,9.1,5.4,5.6,6.7,6.8,6.5,5.5,5.5,3.9,8.9,6.8,6.5,10.4,9.8,7.6,8.7,8.8,8.3,7.4,6.4,2.7,1.3,2.7,2,1.1,0,1.4,1.7,3.8,2.5,8.6,6.4,5.9,8.5,9.2,10.5,9.6,9.1,7,8.4,8.9,7,10.5,9.4 49 | I46,14.5,6.7,1.6,7.8,8.7,7.3,6.1,4.2,4.3,4.7,3.3,4.3,4.2,3.8,6,5.2,5.4,4.9,8.3,7.5,8.3,9.3,5.6,5.8,7.1,7,6.7,6.3,5.6,4.2,9,6.8,10,9,8.7,7.8,7.2,8.5,6.9,6.5,6.4,2.8,1.6,2.8,3.5,2.4,1.4,0,0.24,2.8,2.4,8.7,6.5,6,8.6,10.2,10.6,10.2,9.2,7.1,8.5,8.9,7.1,10.6,8.5 50 | I47,14.5,6.3,1.6,7.9,8.9,7.5,6.1,4.2,4,4.5,3.4,4.3,4.4,3.3,7.2,5.3,5.6,4.9,8.3,7.7,8.4,9.4,5.8,5.9,7,7.2,6.3,7,5.9,4.2,9.2,7.1,6.8,7.6,7.4,7.9,6.8,7.7,6.5,5.7,6,3,1.6,3,3.6,2.6,1.7,0.24,0,2,2.5,8.9,6.4,6.2,8.8,11.6,13.2,10.5,10,9.1,9.8,10,7,10.8,7.7 51 | I48,12.7,6.1,3.1,5.8,9.8,6.6,5.2,3.5,2.7,4.4,2,2.9,3.4,1.3,4.5,6.8,7.1,6.5,7.5,6.8,7.5,8.4,4.9,4.9,6.1,7.2,6.1,7.8,5.5,5.1,8.5,8.6,8.3,6,5.3,5.8,4.8,5.5,4.5,3.6,4,4.5,3.1,4.5,5.4,4.9,3.8,2.8,2,0,2.4,9.8,5,5.2,9.3,9.6,11.2,10.3,9.9,5.6,7.8,8,5.2,9.8,5.7 52 | I49,12.9,5.4,1.2,6.2,7.1,5.6,4.2,2.6,2.5,2.9,0.9,2.2,2.6,2.3,4.2,4.8,5.2,4.5,6.8,6.1,6.7,7.9,3.7,4,5.2,5.1,5.4,5.9,4.6,3.2,7.9,6.6,6.3,6.8,6.2,6.2,6.1,7,6.4,5.5,4.8,2,1.2,2.6,3.5,2.6,2.5,2.4,2.5,2.4,0,7.1,4.3,4.5,7,7.8,8.5,8.1,7.7,4.9,6.3,6.7,4.9,9,7.6 53 | I50,4.9,5.5,7.4,5.4,0,2.4,2.8,4.8,5.4,5.4,6.2,4.9,4.5,6.6,5,6.8,6.6,7.9,3.6,2.4,2.5,1.1,5.3,4.8,4.3,4.7,5.5,6,5.3,5.6,8,7,6.9,4.4,6.3,5.4,7.6,6.5,7,7.6,5.3,6.3,7.4,7.5,8.3,8.3,8.6,8.7,8.9,9.8,7.1,0,4.5,3.3,2.1,2.5,1.4,1,0.6,3.1,3.9,4,3.9,1.8,6.9 54 | I51,9.4,7.1,5.2,2.2,4.5,4.9,5.3,4.5,2.2,1.7,3.4,3.3,3.2,3.5,0.5,8.5,8.2,8,5.3,4.2,4.3,5.3,5.9,5.2,5.9,6.2,7.1,7.6,6.6,5.8,9.6,8.6,8.5,2.9,2.9,2.2,3,3.7,3.3,3.2,1.1,5,5.2,6.2,7,6.5,6.4,6.5,6.4,5,4.3,4.5,0,2,3.5,4.3,4.9,4.6,4.1,1.3,1.5,2.4,0.6,5.5,4.3 55 | I52,7.6,5.4,4.7,4.6,3.3,2.8,3.9,3.1,2.6,2.6,3.5,2.3,1.8,4,2.2,6.6,6.5,6.6,3.5,2.8,3.1,4,4.6,3.7,4.2,4.6,5.4,5.9,5.2,3.9,7.9,6.9,6.8,3.7,5.1,4.6,5,5.7,5.3,4.5,3,3.6,4.7,4.8,5.7,5.6,5.9,6,6.2,5.2,4.5,3.3,2,0,2.5,3.3,4,3.7,3.2,2.1,3.2,3.4,2.3,4.2,5.8 56 | I53,6.2,7.1,7.3,3.8,2.1,4.8,5.9,5.3,5.1,4.9,6.1,4.8,4.4,6.5,4.1,9.1,8.1,8.5,5.2,4,4.1,3,6.9,5.7,5.9,6.2,7.1,7.6,7.6,6.1,10.3,8.8,9.2,3.4,3.9,3.8,4.4,4.1,6,6.8,4.4,6.2,7.3,7.4,8.2,8.2,8.5,8.6,8.8,9.3,7,2.1,3.5,2.5,0,0.75,2.4,2.4,1.8,2.2,2.1,2.1,3,3.4,4.4 57 | I54,6.4,8.1,8,3.6,2.5,4.6,6.6,6,5.8,5.3,6.8,5.6,4.4,6.5,5,8.8,9.2,10.5,6.2,4.9,4.3,3.4,7.9,7.4,6.9,7.2,8.1,8.6,7.6,6.8,10.6,9.6,9.5,3.2,3.7,3.6,4.4,3.9,5.7,6.5,4.9,6.9,8,8.1,9,8.9,9.2,10.2,11.6,9.6,7.8,2.5,4.3,3.3,0.75,0,1.7,1.5,1.9,2.5,2.9,1.9,3.7,2.9,3.9 58 | I55,4.4,6.9,8.7,5.2,1.4,4.6,6.3,6.2,6.4,7.5,7.5,6.2,5.7,7.9,5.4,8.2,8,9.3,5,3.7,3,2.2,6.7,6.2,5.7,6,6.9,7.4,6.7,7,6.2,8.4,8.3,4.1,5.3,5.2,6.3,5.5,7.4,8.2,6.5,7.6,8.7,9.4,10.2,10.2,10.5,10.6,13.2,11.2,8.5,1.4,4.9,4,2.4,1.7,0,0.35,0.45,3.6,4.3,3.5,4.4,1.2,5.6 59 | I56,4.9,6.6,8.4,4.6,1,3.5,5.9,5.8,6.1,5.9,7.2,6.5,6.1,7.5,5.1,7.8,7.6,9,4.6,3.4,2.7,1.9,6.4,5.9,5.3,5.7,6.6,7.1,6.3,6.6,10.4,8.1,8,4.6,5.7,4.6,6.6,5.9,7.7,8,6.9,7.3,8.4,9,9.9,9.8,9.6,10.2,10.5,10.3,8.1,1,4.6,3.7,2.4,1.5,0.35,0,0.75,3.3,4,3.4,4.1,1.2,5.9 60 | I57,4.5,6.1,7.9,5.1,0.6,3,3.3,5.4,5.7,5.5,6.8,5.5,5.1,7.1,4.7,7.5,7.3,8.6,4.2,3,2.3,1.5,6,5.6,4.9,5.2,6.1,6.8,6,6.2,11,7.7,7.6,3.5,6,5.1,6,6.3,6.7,7.4,5,6.8,7.9,8,8.6,9.4,9.1,9.2,10,9.9,7.7,0.6,4.1,3.2,1.8,1.9,0.45,0.75,0,2.8,3.6,3.8,3.6,1.4,6.3 61 | I58,7.2,7.6,5.8,1.6,3.1,4.3,5.9,5.1,2.7,2.7,4,3.9,3.6,4.3,1.8,9,8.6,8.5,5.6,4.5,4.7,4.1,6.5,5.7,6.3,6.7,7.6,8.1,7.2,6.1,10,9,8.9,0.85,3.3,1.6,2.6,3.6,4.1,4.5,2.2,5.6,5.8,6.8,7.6,7.1,7,7.1,9.1,5.6,4.9,3.1,1.3,2.1,2.2,2.5,3.6,3.3,2.8,0,0.29,1.3,0.8,4.2,8.2 62 | I59,8.1,8.7,7.2,1.3,3.9,6.4,7.2,6.5,3,4.1,5.4,5.3,5.2,5.6,2,10.4,9.7,9.9,6.8,5.6,5.8,4.8,7.9,7.1,7.5,7.8,8.7,9.2,8.4,7.5,11.2,10.2,10.1,0.6,3,1.3,2.4,3.3,3.1,4.6,3.2,7,7.2,8.2,9,8.5,8.4,8.5,9.8,7.8,6.3,3.9,1.5,3.2,2.1,2.9,4.3,4,3.6,0.29,0,1,1,4.3,3.7 63 | I60,8.2,9.5,7.7,1.8,4,5.6,7.7,6.9,4,3.8,5.8,5.8,5.6,5.8,2.9,17.5,10.6,10.4,8.6,6.4,6.7,5.8,8.4,7.6,9.3,8.5,9.5,10,10.2,7.9,13.2,11,10.9,1,2.1,1.8,2.8,2.4,3.5,5,2.9,7.4,7.7,8.6,9.5,8.9,8.9,8.9,10,8,6.7,4,2.4,3.4,2.1,1.9,3.5,3.4,3.8,1.3,1,0,1.8,5.3,3.1 64 | I61,9.2,7.7,5.8,1.7,3.9,5.5,5.8,5.1,2.8,2.6,4,3.8,3.8,3.9,1.1,9,8.7,8.5,5.8,4.7,4.9,4.9,6.5,5.7,6.5,6.8,7.7,8.2,7.2,6.1,10.1,9.2,9,0.8,2.5,1.7,2.6,3.1,3.3,3.4,1.3,5.6,5.8,6.8,9.7,7.1,7,7.1,7,5.2,4.9,3.9,0.6,2.3,3,3.7,4.4,4.1,3.6,0.8,1,1.8,0,5.4,3.3 65 | I62,3.7,6,9.3,6.5,1.8,4.3,5.3,6.7,7.1,6.9,8.1,6.9,6.4,8.5,6.1,7.2,7,8.4,4,2.9,2.2,1.3,5.8,5.3,4.8,5.1,6,6.5,5.7,7.2,8.4,7.5,7.3,6.1,6.6,6.5,7.4,6.8,8.1,8.9,6.4,8.2,9.3,8.8,9.7,10.2,10.5,10.6,10.8,9.8,9,1.8,5.5,4.2,3.4,2.9,1.2,1.2,1.4,4.2,4.3,5.3,5.4,0,6.9 66 | I82,10.3,10.6,8.8,1.4,6.9,8.4,8.7,8,5.7,5.5,7.3,6.8,6.7,5.8,4,16.1,18.3,15.3,10.6,8.4,8.7,7.8,9.4,8.6,9.3,9.7,10.6,11.1,10,9.2,13,12,17.1,2.6,0.8,1.4,0.7,0.022,1.8,2.6,2.9,8.4,8.8,10.9,13.5,10.6,9.4,8.5,7.7,5.7,7.6,6.9,4.3,5.8,4.4,3.9,5.6,5.9,6.3,8.2,3.7,3.1,3.3,6.9,0 67 | -------------------------------------------------------------------------------- /Data/data1/costSatelite.csv: -------------------------------------------------------------------------------- 1 | ,Sat 1a,Sat 2a 2 | Biaya Operasional Satelit/Hari,95922.19128,257907.3503 3 | Kapasitas Satelit (dalam kg),3277,3277 4 | -------------------------------------------------------------------------------- /Data/data1/costVehicle.csv: -------------------------------------------------------------------------------- 1 | ,Truck,Motor 2 | Biaya Variabel (Rp/km),1257.759556,474.1418062 3 | Kapasitas Kendaraan (kg),3277,250 4 | Biaya Per kendaraan,1000,500 5 | -------------------------------------------------------------------------------- /Data/data1/demand.csv: -------------------------------------------------------------------------------- 1 | ,gula,beras,minyak,Total 2 | A1,25,15,28.8,68.8 3 | A2,25,15,24,64 4 | A3,25,20,28.8,73.8 5 | A4,25,25,9.6,59.6 6 | A5,50,10,48,108 7 | A6,50,10,9.6,69.6 8 | A7,50,10,9.6,69.6 9 | A8,25,5,4.8,34.8 10 | A9,49,15,19.2,83.2 11 | A10,25,30,4.8,59.8 12 | A11,50,15,28.8,93.8 13 | A12,25,10,14.4,49.4 14 | A13,5,10,4.8,19.8 15 | A14,25,10,24,59 16 | A15,50,15,9.6,74.6 17 | A16,25,25,19.2,69.2 18 | A17,10,15,14.4,39.4 19 | A18,25,10,9.6,44.6 20 | A19,25,15,9.6,49.6 21 | A20,25,15,24,64 22 | A21,50,10,14.4,74.4 23 | A22,25,15,19.2,59.2 24 | A23,50,25,48,123 25 | A24,24,5,48,77 26 | A25,50,20,16,86 27 | A27,50,10,14.4,74.4 28 | A54,20,95,20.8,135.8 29 | -------------------------------------------------------------------------------- /Data/data1/distance.csv: -------------------------------------------------------------------------------- 1 | ,Dc Alfa,Sat 1a,Sat 2a,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12,A13,A14,A15,A16,A17,A18,A19,A20,A21,A22,A23,A24,A25,A27,A54 2 | Dc Alfa,0,45.8,41.6,30.8,26.3,25.5,27.5,28,26.1,29.4,24.3,25.6,33.4,31,34.9,36.7,31.6,30.1,26.1,25,24.2,24.2,24.6,26.9,28.8,25.5,31.7,31.3,31.9,39.2 3 | Sat 1a,45.8,0,7,1.1,4.4,4.6,2.7,7.1,5.3,8.9,5.7,5.8,2,0.3,1.8,3,3.9,2.8,8.7,10,9.5,8.6,6.7,9.1,6.8,6.8,8,4.4,3.8,7.9 4 | Sat 2a,41.6,7,0,6.6,7.9,7,5.1,4.8,2.7,4.8,2.5,1,8.8,7.2,8.7,8.9,11.9,6.6,3.4,5,5.2,4.3,2.5,2.9,2.1,0.9,6,7.9,8.4,3.7 5 | A1,30.8,1.1,6.6,0,3.9,4.5,2.5,6.6,5.1,8.9,5.3,5.8,1.9,0.9,1.8,3,3.2,3.4,8.4,9.7,9,8.5,7.5,7.5,7.7,6.8,8.8,5.4,4.6,8.6 6 | A2,26.3,4.4,7.9,3.9,0,0.7,2.3,8.1,6.4,8.2,4,6.3,6,4.5,6.2,7.2,3.4,6.5,6.6,6.1,9.2,5.4,4.1,7.4,7.1,6.5,10.9,7.9,8,4.1 7 | A3,25.5,4.6,7,4.5,0.7,0,2.9,7.5,5.7,10.8,3.2,5.6,6.7,4.7,6.2,7.4,3.9,5.9,5.6,4.9,4.6,4.9,3.4,6.7,5.7,4.5,11.6,7.8,8.2,3.4 8 | A4,27.5,2.7,5.1,2.5,2.3,2.9,0,6.7,4.6,8.8,3,4.6,4.1,2.8,4.3,5.5,2.9,4.4,6.7,6.8,6.7,5.7,4.5,6.1,5.1,5.2,9.5,8.9,6.2,5.3 9 | A5,28,7.1,4.8,6.6,8.1,7.5,6.7,0,3.4,2.1,5.7,3.7,7.9,6.2,7.7,6.8,9.4,4.8,5.1,8.1,7.1,6.6,5.7,4.5,4.5,5,2.6,6,6.6,7.2 10 | A6,26.1,5.3,2.7,5.1,6.4,5.7,4.6,3.4,0,3.7,3.3,0.8,7.4,5.8,7.3,7.4,8,4.9,3.4,5.6,5.6,4.7,2.8,2.8,2.7,1.9,4.8,6.6,7.2,4 11 | A7,29.4,8.9,4.8,8.9,8.2,10.8,8.8,2.1,3.7,0,6.9,4.2,7,7.4,9.4,8.4,10.6,6.4,4.7,6.2,7.2,6.1,6.3,4,4.1,4.5,1.1,8,8.2,8 12 | A8,24.3,5.7,2.5,5.3,4,3.2,3,5.7,3.3,6.9,0,2.3,7.1,5.8,7.2,8.5,5.4,5.9,4.2,5.2,5.2,4.2,1.1,3.6,2.4,2.6,7.5,8.1,8.6,2.3 13 | A9,25.6,5.8,1,5.8,6.3,5.6,4.6,3.7,0.8,4.2,2.3,0,7.7,6.1,7.6,7.9,7.3,5.8,2.6,4.8,4.8,3.9,2.1,2,1,1.1,5.2,7.6,7.8,3.5 14 | A10,33.4,2,8.8,1.9,6,6.7,4.1,7.9,7.4,7,7.1,7.7,0,1.6,1.5,4.1,3.6,4.3,10.6,11.1,11.2,10.3,8.7,9.6,8.3,8.4,10.7,6.3,5.4,11.3 15 | A11,31,0.3,7.2,0.9,4.5,4.7,2.8,6.2,5.8,7.4,5.8,6.1,1.6,0,1.5,2.7,3.9,2.6,8.6,9.5,9.3,8.4,6.7,7.7,6.7,6.8,8.5,5.1,3.8,7.8 16 | A12,34.9,1.8,8.7,1.8,6.2,6.2,4.3,7.7,7.3,9.4,7.2,7.6,1.5,1.5,0,2.3,4,2.8,10.1,11,11,10.2,8.2,9.2,8.2,8.3,8.7,4.8,3.9,11 17 | A13,36.7,3,8.9,3,7.2,7.4,5.5,6.8,7.4,8.4,8.5,7.9,4.1,2.7,2.3,0,6.6,2.4,10.6,11.7,11.7,10.8,9.2,10,9,9.2,7.8,2.9,2.1,11 18 | A14,31.6,3.9,11.9,3.2,3.4,3.9,2.9,9.4,8,10.6,5.4,7.3,3.6,3.9,4,6.6,0,6.2,10.6,9.1,9.6,8.3,9.3,8.7,7.7,7.8,11.4,8,7.4,14.3 19 | A15,30.1,2.8,6.6,3.4,6.5,5.9,4.4,4.8,4.9,6.4,5.9,5.8,4.3,2.6,2.8,2.4,6.2,0,8.6,9.6,9.7,8.8,7.1,8,7,7.2,5.8,1.9,2.3,8.3 20 | A16,26.1,8.7,3.4,8.4,6.6,5.6,6.7,5.1,3.4,4.7,4.2,2.6,10.6,8.6,10.1,10.6,10.6,8.6,0,1.5,1.9,1,2,0.7,1.6,1.5,5.4,9.6,10.2,2.8 21 | A17,25,10,5,9.7,6.1,4.9,6.8,8.1,5.6,6.2,5.2,4.8,11.1,9.5,11,11.7,9.1,9.6,1.5,0,1,1,2.4,1.9,4.3,3.4,7.4,10.8,11.4,1.8 22 | A18,24.2,9.5,5.2,9,9.2,4.6,6.7,7.1,5.6,7.2,5.2,4.8,11.2,9.3,11,11.7,9.6,9.7,1.9,1,0,1.3,2.3,2.3,4.6,3.2,7.8,10.5,11,1.2 23 | A19,24.2,8.6,4.3,8.5,5.4,4.9,5.7,6.6,4.7,6.1,4.2,3.9,10.3,8.4,10.2,10.8,8.3,8.8,1,1,1.3,0,1.5,1.4,3.1,2.2,6.9,9.7,10.3,1.8 24 | A20,24.6,6.7,2.5,7.5,4.1,3.4,4.5,5.7,2.8,6.3,1.1,2.1,8.7,6.7,8.2,9.2,9.3,7.1,2,2.4,2.3,1.5,0,2.3,2.3,1.6,6.9,9,9.6,1.3 25 | A21,26.9,9.1,2.9,7.5,7.4,6.7,6.1,4.5,2.8,4,3.6,2,9.6,7.7,9.2,10,8.7,8,0.7,1.9,2.3,1.4,2.3,0,1,1,4.7,9,9.5,3.2 26 | A22,28.8,6.8,2.1,7.7,7.1,5.7,5.1,4.5,2.7,4.1,2.4,1,8.3,6.7,8.2,9,7.7,7,1.6,4.3,4.6,3.1,2.3,1,0,0.9,4.4,8.8,9.4,3.2 27 | A23,25.5,6.8,0.9,6.8,6.5,4.5,5.2,5,1.9,4.5,2.6,1.1,8.4,6.8,8.3,9.2,7.8,7.2,1.5,3.4,3.2,2.2,1.6,1,0.9,0,5.3,8,8.6,2.9 28 | A24,31.7,8,6,8.8,10.9,11.6,9.5,2.6,4.8,1.1,7.5,5.2,10.7,8.5,8.7,7.8,11.4,5.8,5.4,7.4,7.8,6.9,6.9,4.7,4.4,5.3,0,6.8,7.4,8.2 29 | A25,31.3,4.4,7.9,5.4,7.9,7.8,8.9,6,6.6,8,8.1,7.6,6.3,5.1,4.8,2.9,8,1.9,9.6,10.8,10.5,9.7,9,9,8.8,8,6.8,0,0.8,9.3 30 | A27,31.9,3.8,8.4,4.6,8,8.2,6.2,6.6,7.2,8.2,8.6,7.8,5.4,3.8,3.9,2.1,7.4,2.3,10.2,11.4,11,10.3,9.6,9.5,9.4,8.6,7.4,0.8,0,9.8 31 | A54,39.2,7.9,3.7,8.6,4.1,3.4,5.3,7.2,4,8,2.3,3.5,11.3,7.8,11,11,14.3,8.3,2.8,1.8,1.2,1.8,1.3,3.2,3.2,2.9,8.2,9.3,9.8,0 32 | -------------------------------------------------------------------------------- /Data/data2.xlsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AdityaRadya/Optimal-Routing-With-Genetic-Algorithm/295e6ba4df1f85099ea5b80fd7c4ecf658933643/Data/data2.xlsx -------------------------------------------------------------------------------- /Data/dataKecil.xlsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AdityaRadya/Optimal-Routing-With-Genetic-Algorithm/295e6ba4df1f85099ea5b80fd7c4ecf658933643/Data/dataKecil.xlsx -------------------------------------------------------------------------------- /Data/dataKecil/costSatelite.csv: -------------------------------------------------------------------------------- 1 | ,S1,S2,S3,S4,S5 2 | Biaya Operasional Satelit/Hari,95922.19128,257907.3503,257907.3503,257907.3503,257907.3503 3 | Kapasitas Satelit (dalam kg),2500,2500,2500,2500,2500 4 | -------------------------------------------------------------------------------- /Data/dataKecil/costVehicle.csv: -------------------------------------------------------------------------------- 1 | ,primary,secondary 2 | Biaya Variabel (Rp/km),8,2 3 | Kapasitas Kendaraan (kg),2500,250 4 | Biaya Per kendaraan,1500,500 5 | -------------------------------------------------------------------------------- /Data/dataKecil/demand.csv: -------------------------------------------------------------------------------- 1 | ,P1,P2,P3,Demand 2 | A1,29,15,17.6,61.6 3 | A2,26,15,19.2,60.2 4 | A3,28,15,17.6,60.6 5 | A4,28,15,17.6,60.6 6 | A5,30,15,19.2,64.2 7 | A6,30,15,16,61 8 | -------------------------------------------------------------------------------- /Data/dataKecil/distance.csv: -------------------------------------------------------------------------------- 1 | ,DC,S1,S2,S3,S4,S5,A1,A2,A3,A4,A5,A6 2 | DC,0,45.3,50,45.1,38.7,42.3,30.8,26.3,25.5,27.5,28.0,26.1 3 | S1,45.3,0,16.9,20.6,8.1,16.9,9.0,15.7,14.8,9.2,3.4,7.8 4 | S2,50,16.9,0,5.2,18.1,11,3.2,11.0,11.3,4.9,6.4,7.4 5 | S3,45.1,20.6,5.2,0,13.2,6,4.7,6.1,6.3,3.5,9.1,7.3 6 | S4,38.7,8.1,18.1,13.2,0,8.7,11.2,7.4,6.6,8.9,7.3,6.3 7 | S5,42.3,16.9,11,6,8.7,0,5.7,2.0,1.4,3.6,7.8,6.2 8 | A1,30.8,9.0,3.2,4.7,11.2,5.7,0,3.9,4.5,2.5,6.6,5.1 9 | A2,26.3,15.7,11.0,6.1,7.4,2.0,3.9,0,0.7,2.3,8.1,6.4 10 | A3,25.5,14.8,11.3,6.3,6.6,1.4,4.5,0.7,0,2.9,7.5,5.7 11 | A4,27.5,9.2,4.9,3.5,8.9,3.6,2.5,2.3,2.9,0,6.7,4.6 12 | A5,28.0,3.4,6.4,9.1,7.3,7.8,6.6,8.1,7.5,6.7,0,3.4 13 | A6,26.1,7.8,7.4,7.3,6.3,6.2,5.1,6.4,5.7,4.6,3.4,0 14 | ,,,,,,,,,,,, 15 | ,,,,,,,,,,,, 16 | ,,,,,,,,,,,, 17 | ,,,,,,,,,,,, 18 | ,,,,,,,,,,,, 19 | ,,,,,,,,,,,, 20 | ,,,,,,,,,,,, 21 | ,,,,,,,,,,,, 22 | ,,,,,,,,,,,, 23 | ,,,,,,,,,,,, 24 | ,,,,,,,,,,,, 25 | ,,,,,,,,,,,, 26 | ,,,,,,,,,,,, 27 | ,,,,,,,,,,,, 28 | ,,,,,,,,,,,, 29 | ,,,,,,,,,,,, 30 | ,,,,,,,,,,,, 31 | ,,,,,,,,,,,, 32 | ,,,,,,,,,,,, 33 | ,,,,,,,,,,,, 34 | ,,,,,,,,,,,, 35 | ,,,,,,,,,,,, 36 | ,,,,,,,,,,,, 37 | ,,,,,,,,,,,, 38 | ,,,,,,,,,,,, 39 | ,,,,,,,,,,,, 40 | ,,,,,,,,,,,, 41 | ,,,,,,,,,,,, 42 | -------------------------------------------------------------------------------- /Data/dataKecil/~$kasus skala kecil buat adit.xlsx: -------------------------------------------------------------------------------- 1 | Aditya Radya Aditya Radya -------------------------------------------------------------------------------- /Data/test.xlsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AdityaRadya/Optimal-Routing-With-Genetic-Algorithm/295e6ba4df1f85099ea5b80fd7c4ecf658933643/Data/test.xlsx -------------------------------------------------------------------------------- /GA.py: -------------------------------------------------------------------------------- 1 | import pandas as pd 2 | import random as rn 3 | import numpy as np 4 | 5 | class genetic(object): 6 | def __init__(self,popNum, dcNum, satNum, retNum, retData, satData, dcData, distance, demand, cVehicle, cSatelite): 7 | self.popNum = popNum 8 | self.pc = 0.7 9 | self.pm = 0.3 10 | #Number of DC 11 | self.dcNum = dcNum 12 | #Number of Satelite 13 | self.satNum = satNum 14 | #Number of retails 15 | self.retNum = retNum 16 | #List of retails name 17 | self.oriDataRetail = retData 18 | #List of satelites name 19 | self.oriDataSat = satData 20 | #List of DC 21 | self.oriDataDc = dcData 22 | #Used since data set for retail start after the dc and sat data 23 | self.indexRet = dcNum + satNum 24 | #Dataset 25 | self.dataDistance = distance 26 | self.dataDemand = demand 27 | self.datacVehicle = cVehicle 28 | #Capacity of the Satelite 29 | self.datacSatelite = cSatelite 30 | self.pop = [] 31 | self.count = 0 32 | self.generateSol() 33 | 34 | def generateSol(self): 35 | for num in range(self.popNum): 36 | #Asign a satelite with a dc 37 | s1 = [rn.randint(0,self.dcNum-1) for i in range(self.satNum)] 38 | #Permutation of the retails 39 | r1 = [] 40 | for i in range(self.retNum): 41 | r1.append(self.oriDataRetail[i]) 42 | rn.shuffle(r1) 43 | #Asigning the retail to a satelite 44 | r2 = [rn.randint(0,self.satNum-1) for i in range(self.retNum)] 45 | chromo = [] 46 | chromo.append(s1) 47 | chromo.append(r1) 48 | chromo.append(r2) 49 | fitness = self.fitness(chromo) 50 | chromo.append(fitness) 51 | self.pop.append(chromo) 52 | 53 | def multipointCrossover(self,x,y): 54 | size = len(x) 55 | #Singlepoint Crossover when size if 2 and 1 56 | if size==2: 57 | return [x[0],y[1]],[y[0],x[1]] 58 | if size==1: 59 | return y,x 60 | 61 | index1 = rn.randint(1, size - 2) 62 | index2 = rn.randint(1, size - 2) 63 | if index1 > index2: index1, index2 = index2, index1 64 | return y[:index1] + x[index1:index2] + y[index2:], x[:index1] + y[index1:index2] + x[index2:] 65 | 66 | def orderCrossover(self,p1,p2): 67 | size = len(p1) 68 | #Index for ordered 69 | index1 = rn.randint(0, size-2) 70 | index2 = rn.randint(0, size-2) 71 | if index1 > index2: index1, index2 = index2, index1 72 | temp = [] 73 | for i in range(size): 74 | orderCek = 0 75 | for j in range(index1, index2): 76 | #To check data within range 77 | if p2[i]==p1[j]: 78 | orderCek = 1 79 | break 80 | if orderCek == 0: 81 | val = p2[i] 82 | temp.append(val) 83 | return temp[:index1] + p1[index1:index2] + temp[index1:] 84 | 85 | def permutationCrossover(self,x,y): 86 | a = self.orderCrossover(x,y) 87 | b = self.orderCrossover(y,x) 88 | return a, b 89 | 90 | def crossover(self,x,y): 91 | s11,s12 = self.multipointCrossover(x[0],y[0]) 92 | r11,r12 = self.permutationCrossover(x[1],y[1]) 93 | r21,r22 = self.multipointCrossover(x[2],y[2]) 94 | return [s11,r11,r21], [s12,r12,r22] 95 | 96 | def mutation(self,x): 97 | s1 = self.mutationS1(x[0]) 98 | r1 = self.mutationR1(x[1]) 99 | r2 = self.mutationR2(x[2]) 100 | chromo = [s1,r1,r2] 101 | return chromo 102 | 103 | def mutationS1(self,y): 104 | x = y[:] 105 | for i in range(self.satNum): 106 | randomVal = rn.uniform(0, 1) 107 | if randomVal <= self.pm: x[i] = rn.randint(0,self.dcNum-1) 108 | return x 109 | 110 | def mutationR1(self,y): 111 | x = y[:] 112 | swapInd = 1 113 | tempIndex = 0 114 | for i in range(self.retNum): 115 | randomVal = rn.uniform(0, 1) 116 | if randomVal <= self.pm: 117 | #Indicate the 2nd index of swap 118 | swapInd = swapInd*-1 119 | if swapInd == -1: tempIndex = i 120 | if swapInd == 1: x[tempIndex], x[i] = x[i], x[tempIndex] 121 | return x 122 | 123 | def mutationR2(self,x): 124 | r2 = x[:] 125 | #satUsed numbers of satelite used 126 | for i in range(self.retNum): 127 | randomVal = rn.uniform(0, 1) 128 | if randomVal <= self.pm: 129 | r2[i] = rn.randint(0,self.satNum-1) 130 | return r2 131 | 132 | #Group the retail with the asign satelite 133 | def routingRet(self, r1, r2): 134 | route = [[] for i in range(self.satNum)] 135 | for i in range(self.retNum): route[r2[i]].append(r1[i]) 136 | return route 137 | 138 | #Distance of 2 places x and y 139 | def getDistance(self, x, y): 140 | return self.dataDistance.loc[x,y] 141 | 142 | #Get the demands of retail x 143 | def getDemand(self, x): 144 | return self.dataDemand.loc[x,self.dataDemand.columns[-1]] 145 | 146 | #Get the cost of a vehicle from the dataset 147 | def costVehicle(self, x): 148 | return self.datacVehicle.loc[self.datacVehicle.index[0],x] 149 | 150 | #Get the capacity of a vehicle from the dataset 151 | def capacityVehicle(self, x): 152 | return self.datacVehicle.loc[self.datacVehicle.index[1],x] 153 | 154 | #Get capacity of Satelite 155 | def capacitySatelite(self, x): 156 | return self.datacSatelite.loc[self.datacSatelite.index[0],x] 157 | 158 | #Get cost per vehicle 159 | def costPerVehicle(self, x): 160 | return self.datacVehicle.loc[self.datacVehicle.index[2],x] 161 | 162 | #Find route that satisfy the capacity of vehicle (Secondary) 163 | def routeCost(self, sPosition, route): 164 | sizeRoute = len(route) 165 | cost = 0 166 | capacity = 0 167 | prev = 0 168 | if not route: return 0 169 | for i in range(sizeRoute): 170 | capacity += self.getDemand(route[i]) 171 | if capacity > self.capacityVehicle(self.datacVehicle.columns.values[1]): 172 | cost += self.capRoute(sPosition, route[prev:i]) 173 | prev = i 174 | capacity = self.getDemand(route[i]) 175 | #Add cost of vehicle into the cost value 176 | cost += self.costPerVehicle(self.datacVehicle.columns.values[1]) 177 | if i == sizeRoute-1: 178 | cost += self.capRoute(sPosition, route[prev:]) 179 | cost += self.costPerVehicle(self.datacVehicle.columns.values[1]) 180 | return cost 181 | 182 | 183 | #cost with full capacity, secondary vehicle 184 | def capRoute(self,sPosition, route): 185 | sizeRoute = len(route) 186 | totalDist = self.getDistance(sPosition, route[0]) 187 | totalDist += self.getDistance(sPosition, route[sizeRoute-1]) 188 | for i in range(1,sizeRoute): 189 | totalDist += self.getDistance(route[i-1],route[i]) 190 | cost = totalDist*self.costVehicle(self.datacVehicle.columns.values[1]) 191 | return cost 192 | 193 | def fitness(self, chromo): 194 | cost = 0 195 | route = self.routingRet(chromo[1],chromo[2]) 196 | 197 | #cost for route truck, dc to satelite 198 | totalDistanceTruck = 0 199 | for i in range(self.satNum): 200 | if not route[i]: 201 | continue 202 | else: 203 | totalDistanceTruck += 2*(self.getDistance(self.dataDistance.columns.values[chromo[0][i]], self.oriDataSat[i])) 204 | cost += self.costPerVehicle(self.datacVehicle.columns.values[0]) 205 | cost += totalDistanceTruck *self.costVehicle(self.datacVehicle.columns.values[0]) 206 | 207 | #cost for route motor, satelite to retail 208 | for i in range(self.satNum): 209 | cost += self.routeCost(self.oriDataSat[i], route[i]) 210 | 211 | #Check for contraints in the Satelite 212 | for sat in range(self.satNum): 213 | capSat = 0 214 | for ret in route[sat]: 215 | capSat += self.getDemand(ret) 216 | if self.capacitySatelite(self.oriDataSat[sat]) - capSat < 0: 217 | cost += 10000000 218 | 219 | return 1/cost 220 | 221 | def parentSelection(self): 222 | parArr=[] 223 | totalFitness = 0 224 | for val in self.pop: 225 | totalFitness += val[3] 226 | 227 | propFitness = [f[3]/totalFitness for f in self.pop] 228 | #Roulette Wheel, Creating Wheel 229 | wheel = [sum(propFitness[:i+1]) for i in range(self.popNum)] 230 | 231 | #Parent Selection 232 | for i in range(int(self.popNum/4)): 233 | selectIndex = rn.random() 234 | for j in range(self.popNum): 235 | if selectIndex <= wheel[j]: 236 | parArr.append(self.pop[j]) 237 | break 238 | for j in range(self.popNum): 239 | if 1-selectIndex <= wheel[j]: 240 | parArr.append(self.pop[j]) 241 | break 242 | return parArr 243 | 244 | def updatePop(self, x): 245 | self.pop = x 246 | 247 | def cost(self, x): 248 | cost = 0 249 | route = self.routingRet(x[1],x[2]) 250 | #cost for route truck, dc to satelite 251 | totalDistanceTruck = 0 252 | for i in range(self.satNum): 253 | if not route[i]: 254 | continue 255 | else: 256 | totalDistanceTruck += 2*(self.getDistance(self.dataDistance.columns.values[x[0][i]], self.oriDataSat[i])) 257 | cost += self.costPerVehicle(self.datacVehicle.columns.values[0]) 258 | cost += totalDistanceTruck *self.costVehicle(self.datacVehicle.columns.values[0]) 259 | 260 | #cost for route motor, satelite to retail 261 | for i in range(self.satNum): 262 | pp = 1 263 | cost += self.routeCost(self.oriDataSat[i], route[i]) 264 | 265 | for sat in range(self.satNum): 266 | capSat = 0 267 | for ret in route[sat]: 268 | capSat += self.getDemand(ret) 269 | if self.capacitySatelite(self.oriDataSat[sat]) - capSat < 0: 270 | cost += 0 271 | return cost 272 | 273 | #Printing the results 274 | def translatorSol(self, chromo): 275 | path = self.routingRet(chromo[1],chromo[2]) 276 | count = 0 277 | for i in range(self.satNum): 278 | if not path[i]: 279 | count+=1 280 | else: 281 | print(self.oriDataDc[chromo[0][i]] ," to ", self.oriDataSat[i]) 282 | for i in range(self.satNum): 283 | self.printPath(self.oriDataSat[i], path[i]) 284 | return 285 | 286 | def printPath(self, sPosition,route): 287 | sizeRoute = len(route) 288 | capacity = 0 289 | prev = 0 290 | if not route: return 0 291 | for i in range(sizeRoute): 292 | capacity += self.getDemand(route[i]) 293 | capVehicle = self.capacityVehicle(self.datacVehicle.columns.values[1]) 294 | if capacity > capVehicle: 295 | self.printRoute(sPosition, route[prev:i]) 296 | prev = i 297 | capacity = self.getDemand(route[i]) 298 | if i == sizeRoute-1: 299 | self.printRoute(sPosition, route[prev:]) 300 | return 301 | 302 | def printRoute(self, sPosition, route): 303 | x = route[:] 304 | print(sPosition ," -> ", x," -> ", sPosition) 305 | return 306 | 307 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Optimal_Routing With Genetic Algorithm 2 | This is a program that calculates and finds the most optimal cost in a routing problem. The routing problem is described as having a Producer called DC, Distributors called Satelites, and Retailers. The problems comes by finding the optimal cost effective route from the DC to the Satellites, and from the Satellite to the Retailers. 3 | 4 | DC to Satelites 5 | 6 | Satelites to Retailers 7 | 8 | Conditions 9 | The problem comes that from the DC to the Satellite uses a vehicle that can travel to a single route, while the vehicle from the Satelite to the retail uses a vehicle that can travel to multiple retailers in a single path. 10 | Each Retailers have different Demands 11 | There are 2 types of vehicle both have different cost and capacity 12 | No all Satellite is required to be used 13 | There is a cost in renting a Satellite which is taken in to account the total cost 14 | 15 | The Goal is to find a path and the number of vehicle needed and the number of satelite needed to satisfy all retailers 16 | 17 | The solution used in this program uses Genetic Algorithm. 18 | -------------------------------------------------------------------------------- /loading.py: -------------------------------------------------------------------------------- 1 | # Print iterations progress 2 | def printProgressBar (iteration, 3 | total, 4 | prefix = '', 5 | suffix = '', 6 | decimals = 1, 7 | length = 100, 8 | fill = '█'): 9 | """ 10 | Call in a loop to create terminal progress bar 11 | @params: 12 | iteration - Required : current iteration (Int) 13 | total - Required : total iterations (Int) 14 | prefix - Optional : prefix string (Str) 15 | suffix - Optional : suffix string (Str) 16 | decimals - Optional : positive number of decimals in percent complete (Int) 17 | length - Optional : character length of bar (Int) 18 | fill - Optional : bar fill character (Str) 19 | """ 20 | percent = ("{0:." + str(decimals) + "f}").format(100 * (iteration / float(total))) 21 | filledLength = int(length * iteration // total) 22 | bar = fill * filledLength + '-' * (length - filledLength) 23 | print('\r%s |%s| %s%% %s' % (prefix, bar, percent, suffix), end = '\r') 24 | # Print New Line on Complete 25 | if iteration == total: 26 | print("\n") 27 | 28 | -------------------------------------------------------------------------------- /main.py: -------------------------------------------------------------------------------- 1 | import pandas as pd 2 | import random as rn 3 | import numpy as np 4 | import matplotlib.pyplot as plt 5 | from timeit import default_timer as timer 6 | from GA import genetic 7 | from loading import printProgressBar 8 | 9 | popNum = 500 10 | generationNum = 100 11 | 12 | data = input("Input File name : ") 13 | data.replace(" ", "") 14 | 15 | distance = pd.read_excel('Data/'+data+'.xlsx', sheet_name="distance", index_col=0) 16 | demand = pd.read_excel('Data/'+data+'.xlsx', sheet_name="demand", index_col=0) 17 | costVehicle = pd.read_excel('Data/'+data+'.xlsx', sheet_name="vehicle", index_col=0) 18 | capSatelite = pd.read_excel('Data/'+data+'.xlsx', sheet_name="satelite", index_col=0) 19 | 20 | #Value to determine the percentage of best chromo for next gen 21 | satNum = capSatelite.shape[1] 22 | retNum = demand.shape[0] 23 | dcNum = distance.shape[1] - satNum - retNum 24 | retData1 = demand.index[:] 25 | satData = distance.index[dcNum:satNum+dcNum] 26 | dcData = distance.index[:dcNum] 27 | retData = [] 28 | 29 | #Convert pandas into normal array 30 | for i in range(retNum): 31 | retData.append(retData1[i]) 32 | 33 | settings = input("Change Setting [Y/N] : ") 34 | if settings == "Y" or settings == "y" or settings == "yes" or settings == "Yes": 35 | popNum = int(input("Population Number (500) : ")) 36 | generationNum = int(input("Total Generation (100) : ")) 37 | 38 | ga = genetic(popNum, dcNum, satNum, retNum, retData, satData, dcData, distance, demand, costVehicle, capSatelite) 39 | 40 | if settings == "Y" or settings == "y" or settings == "yes" or settings == "Yes": 41 | ga.pm = float(input("Input Probability Mutation (0.3) : ")) 42 | ga.pc = float(input("Input Probability Crossover (0.7) : ")) 43 | 44 | printProgressBar(1, generationNum, prefix = 'Progress:', suffix = 'Complete', length = 50) 45 | fitness = [] 46 | start = timer() 47 | for generation in range(generationNum): 48 | rn.shuffle(ga.pop) 49 | parents = ga.parentSelection() 50 | #Randomize parents array 51 | newPop = ga.pop 52 | 53 | for parentIndex in range(1,int(popNum/2)): 54 | randomVal = rn.random() 55 | if randomVal < ga.pc: 56 | child1, child2 = ga.crossover(parents[parentIndex-1], parents[parentIndex]) 57 | child1, child2 = ga.mutation(child1), ga.mutation(child2) 58 | child1.append(ga.fitness(child1)) 59 | child2.append(ga.fitness(child2)) 60 | newPop.append(child1) 61 | newPop.append(child2) 62 | newPop = sorted(newPop,key=lambda l:l[3],reverse=True) 63 | nextPop = newPop[:popNum] 64 | ga.updatePop(nextPop) 65 | fitness.append(ga.cost(ga.pop[0])) 66 | printProgressBar(generation+1, generationNum, prefix = 'Progress:', suffix = 'Complete', length = 50) 67 | 68 | ga.translatorSol(ga.pop[0]) 69 | print("Cost : ",ga.cost(ga.pop[0])) 70 | end = timer() 71 | print ("Time : ",end - start) 72 | 73 | import matplotlib.pyplot as plt 74 | index = [i for i in range(generationNum)] 75 | plt.plot(index, fitness) 76 | plt.xlabel('Epoch') 77 | plt.ylabel('Cost') 78 | plt.title('Result') 79 | plt.show() 80 | -------------------------------------------------------------------------------- /src: -------------------------------------------------------------------------------- 1 | 2 | --------------------------------------------------------------------------------