4. KULLANILAN SEZGİSEL ALGORİTMALAR VE ÖRNEK
4.4. Uygulama Problemleri
4.4.4. Rassal test problemleri
Bu bölümde 11 farklı nokta sayısı ve her nokta sayısı için 3 farklı Dmax değeri belirlenmiş olup, 33 farklı durum için programdan alınan sonuçlar incelenmiştir.
Çizelge 4.7.’de problemlere ilişkin veriler ve 5, 6 ve 7.Yöntem mesafe ve puan bilgileri
Mesafe Puan Mesafe Puan Mesafe Puan
100 76 45 97 53 97 53
150 145 58 145 58 145 58
10 100 5
200 181 70 195 74 195 74
100 99 69 99 69 83 67
150 142 106 142 106 142 106
15 500 5
200 190 134 190 134 183 120
150 134 125 146 128 143 131
200 186 158 186 158 185 151
20 1000 5
220 215 167 215 167 215 161
150 143 196 149 205 148 176
200 192 236 188 236 193 234
25 2000 5
220 211 235 211 237 215 235
200 196 253 184 256 197 233
250 239 279 244 282 246 265
30 3000 5
280 260 287 269 288 272 270
200 198 286 198 286 198 262
220 219 297 219 297 207 289
35 4000 5
250 244 310 247 311 250 296
200 189 366 187 370 197 368
225 222 388 225 392 222 384
40 5000 10
250 242 401 245 402 250 401
150 149 349 149 349 149 307
250 199 425 188 429 194 446
50 6000 10
300 250 476 241 477 239 477
200 199 458 198 470 193 432
250 250 512 247 519 247 497
60 7500 10
300 300 528 293 536 300 523
250 240 693 245 700 248 709
300 290 760 295 761 300 763
80 10000 10
350 346 786 344 793 350 803
300 290 760 295 761 300 763
400 399 799 389 800 398 808
100 15000 10
500 476 811 487 812 470 812
GENEL PERFORMANS (+ / = / ) =9 +13 =11 9 +9 =4 20
ORTALAMA PUAN 358,27 361,09 353,75
Rassal test problerine ilişkin 3 yöntem ile elde edilen en iyi sonuçlar çizelgede koyu olarak işaretlenmiştir. Çizelgenin en altında genel performans değerlendirmesi gösterilmiş olup, beşinci yöntem ile elde edilen sonuçlar, 9 durumda diğer 2 yöntem ile iyileştirilememiştir. Beşinci yönteme altıncı yöntem ile iyileştirme aşamaları tekrar uygulandığında, 13 durumda en iyi sonuçlara ulaşılırken 11 durumda 5. yöntem ve/
veya 7. yöntem ile eşit sonuçlar elde edilmiş, 9 durumda birinci yönteme iyileştirme aşamalarının uygulandığı 7. yöntemden daha kötü sonuçlar elde edilmiştir. Yedinci yöntemde ise 9 en iyi duruma ilave olarak 4 durumda 5. yöntem ve/ veya 6. yöntem ile eşitlik sağlanırken, 20 durumda daha kötü sonuçlara ulaşılmıştır.
Yedinci yönteme uygulanan iyileştirme aşamalarının tekrar sayısının genel olarak 5’i geçmediği görülmüştür. İkinci yöntemde ise üretilen rota sayısı (deneme sayısı), problemin büyüklüğü (nokta sayısı) ve kısmen Dmax kısıtı ile orantılı olarak çok uzun işlem süreleri ile karşılaşılmıştır. Özellikle 50100 arasında nokta bulunan problemlerde işlem süresi 30 dakika ile 1 saat arasında değişmiştir. Yedinci yöntem işlem süresi ise hiç bir durumda 5 dakikayı geçmemiştir. 50, 80 ve 100 noktadan oluşan problemlerde ikinci yöntem için kullanılan deneme sayıları çok uzun işlem süresine sebebiyet vermesine rağmen birinci ve yedinci yöntem ile daha iyi sonuçlara ulaşılmıştır. Burada 2. yöntem deneme sayılarının küçük kalması nedeniyle daha yüksek puanlı sonuçların kaçırılmış olabileceği değerlendirilmektedir. Bununla birlikte 1 ve 7. yöntemin küçük boyutlu problemlerde iyi sonuç verebileceği, büyük boyutlu problemlerde ise işlem süresi avantajına rağmen puan olarak yetersiz kalabileceği düşünülmektedir.
BÖLÜM 5
SONUÇLAR
Bu çalışmada Orienteering Problemi kapsamlı olarak incelenmiş, problemin çözüm yöntemlerini esas alacak şekilde detaylı bir literatür taraması yapılmıştır. Genel olarak literatürde Orienteering sporuna dayanan OP tanımı esas alınmıştır. OP literatüründe ilk olan ve Orienteering sporuyla ilişkilendirilen Tsiligirides’in (1984) tanımı ve kullandığı sezgisel yöntem temel alınmıştır. Literatürdeki bu ilk sezgisel algoritmayı esas alan bir yaklaşımla 3 farklı alanda yeni tasarlanan örnek problemler ile test problemleri üzerinde uygulamalar yapılmıştır. Kullanılan yazılım her bir yöntemin performansının ayrı ayrı gözlemlenebilmesi ve karşılaştırma yapılabilmesi için yedi aşamadan oluşturulmuştur. Gerçek problemler üzerinde uygulama yapılması amaçlanmasına rağmen, özellikle sağlıklı veri temini konusundaki kısıtlamalar nedeniyle literatür çalışmalarında olduğu gibi örnek problemler tercih edilmiştir.
Uygulamalarda Tsiligirides’in S Algoritması (2. yöntem) özellikle büyük boyutlu problemlerde işlem süresi bakımından etkin olmadığından, alternatif olarak S Algoritmasının rassallığını ortadan kaldıran ve en yüksek puan/maliyet oranına göre çok kısa sürede başlangıç çözümü veren bir yöntem geliştirilmiş (1. yöntem) ve bu yönteme Tsiligirides’in RI algoritmaları (3, 4, 5. yöntem) ile iyileştirme uygulanmıştır (7.
yöntem). Ayrıca Tsiligirides’in iyileştirme aşamaları uygulanmış olan S(RI) sonuçlarına iyileştirme aşamaları tekrar uygulanarak (6. yöntem) daha iyi sonuçlara ulaşılması hedeflenmiştir. Gerek örnek gerekse de test problemlerinde 6. yöntem ile başarılı sonuçlara ulaşılmış ancak 1 ve 7. yöntem ile işlem süresinde sağlanan başarı problem sonuçları üzerinde kısmen gözlemlenebilmiştir.
Literatürde genellikle test problemleri üzerinde uygulamalar yapılması geliştirilen yöntemlerin kıyaslanması açısından çok önemli olmakla birlikte, gerçek problemler için uzun vadede sürekli veri temini gerekmektedir. Ayrıca bu çalışmada bazı problemlerde görüldüğü gibi, literatürde de her yöntem farklı problemler üzerinde
değişken sonuçlar verebilmektedir. Çalışmalarda maliyet matrisinde çoğunlukla uzaklık ölçütü kuş uçuşu mesafe olarak belirlenirken, bu çalışmada algoritmalar gerçekçi uygulamalar yapılabilmesi için gerçek uzaklık bilgilerine göre tasarlanmıştır.
Bu tez çalışmasında yapılan uygulamalar ve literatür çalışmaları ışığında OP’nin çözümü için işlem süresi kısa ve çözüm değerleri tüm problemler üzerinde daha etkili bir başlangıç algoritması önerilmekle birlikte, iyileştirme aşamalarına yeni yöntemler dahil edilebileceği ve bu yöntemlerin bir defadan fazla uygulanabileceği değerlendirilmektedir. Ayrıca OP ile ilgili birçok yöntem ortaya konmasına rağmen, herhangi bir paket programa ulaşılamamaktadır. Yazılan OP programının, gerçek verilerin sabırla ve sürekli olarak tutulması halinde birçok uygulamada kullanılabileceği, gerektiğinde problemlere göre geliştirilebileceği düşünülmektedir.
Bu çalışmada bilimsel literatür için çok değerli ve potansiyel bir problem olan Orienteering Problemi kapsamlı bir şekilde ele alınmış olup, iyi bir Türkçe kaynak olacağı değerlendirilmektedir. OP, üzerinde sürekli olarak çalışılabilcek çok zengin bir konudur. Takım Orienteering Problemi (TOP) ve Zaman Pencereli Orienteering Problemi (OPTW) gelecek çalışmalar için incelenebilecek konular olarak önerilmektedir. Stok yönetim sistemleri, üretim programlama ve turne programları yeni uygulama alanları olabilir. Modern sezgisel yöntemler ve kesin çözüm yöntemleri de uygulamalarda tercih edilebilir. Ayrıca Zaman Pencereli Takım Orienteering Problemi (Team Orienteering Problem with Time WindowsTOPTW)’nin literatüre kazandırılabilecek bir OP versiyonu olabileceği değerlendirilmektedir.
KAYNAKLAR DİZİNİ
Archetti, C., Hertz, A. and Speranza, M.G., 2007, Metaheuristics for the team orienteering problem, Journal of Heuristics, 13, 4976.
Baker, E.K., 1983, An exact algorithm for the timeconstrained traveling salesman problem, Operations Research, 31, 5, 938945.
Balas, E., 1989, The Prize Collecting Traveling Salesman Problem, Networks, 19, 6, 621636.
Boussier, S., Feillet, D. and Gendreau, M., 2006, An exact algorithm for team orienteering problems, 4OR, 5, 211230.
Butt, S.E. and Ryan, D.M., 1999, An optimal solution procedure for the multiple tour maximum collection problem using column generation, Computers & Operations Research, 26, 4, 427441.
Chao, I.M., Golden, B.L. and Wasil, E.A., 1996 a, A fast and effective heuristic for the orienteering problem, European Journal of Operational Research, 88, 3, 475489.
Chao, I.M., Golden, B.L. and Wasil, E.A., 1996 b, The team orienteering problem, European Journal of Operational Research, 88, 3, 464474.
Cook, W.J., Cunningham, W.H., Pulleyblank, W.R. and Schrijver, A., 1998, Combinatorial Optimization, Wiley Interscience Publication.
Dallard, H., Lam, S.S. and Konak, S.K., 2007, Solving the Orienteering Problem Using Attractive and Repulsive Particle Swarm Optimization (unpublished).
Deitch, R. and Ladany, S.P., 2000, The oneperiod bus routing problem: Solved by an effective heuristic for the orienteering tour problem and improvement algorithm, European Journal of Operational Research, 127, 6977.
KAYNAKLAR DİZİNİ (devam)
Dumas, Y., Desrosiers, J., Gelinas, E. and Solomon, M.M., 1995, An optimal algorithm for the traveling salesman problem with time windows, Operations Research, 43, 2, 367371.
Erkut, E. and Zhang J., 1996, The maximum collection problem with timedependent rewards, Naval Research Logistics, 43, 5, 749763.
Feillet, D., Dejax, P. and Gendreau, M., 2005, Traveling Salesman Problems with Profits, Transportation Science, 39, 188205.
Fischetti, M., Salazar González, J.J. and Toth, P., 1998, Solving the orienteering problem through branchandcut, INFORMS Journal on Computing, 10, 2, 133
148.
Golden, B.L., Levy, L., and Dahl, R., 1981, Two generalizations of the traveling salesman problem, OMEGA 9, 4, 439445.
Golden, B.L., Assad, A. and Dahl, R., 1984. Analysis of a large scale vehicle routing problem with an inventory component, Large Scale Systems, 7, 181190.
Golden, B.L., Levy, L. and Vohra, R., 1987, The orienteering problem, Naval Research Logistics, 34, 3, 307318.
Golden, B.L., Wang, Q. and Liu, L., 1988, A multifaceted heuristic for the orienteering problem, Naval Research Logistics, 35, 359366.
Gutin, G. and Punnen, A., eds., 2002, Traveling salesman problem and its variations, Kluwer Academic Publishers, Dordrecht, The Netherlands.
Hayes, M. and Norman, J.M., 1984, Dynamic programming in orienteering: route choice and siting of controls, Journal of Operational Research Society, 35, 9, 791
796.
KAYNAKLAR DİZİNİ (devam)
İlhan,T., Iravani, S.M.R. and Daskin, M.S., 2008, The orienteering problem with stochastic profits, IIE Transactions , 40, 406421.
Kantor, M.G., and Rosenwein, M.B., 1992, The orienteering problem with time windows. Journal of Operational Research Society, 43, 6, 629635.
Kataoka, S., Yamada, T. and Morito, S., 1998, Minimum directed 1subtree relaxation for score orienteering problem, European Journal of Operational Research, 104, 139153.
Ke, L., Archetti, C. and Feng, Z., 2007, Ants can solve the team orienteering problem, Computers & Industrial Engineering (in press).
Keller, C.P., 1989, Algorithms to solve the orienteering problem: A comparison, European Journal of Operational Research, 41, 224231.
Laporte,G. and Nobert, Y., 1983, Generalized travelling salesman problem through n sets of nodes: an integer programming approach, INFOR, 21, 1, 6175.
Laporte, G. and Martello, S., 1990, The selective traveling salesman problem, Discrete Applied Mathematics, 26, 193207.
Leifer, A.C., Rosenwein, M.B., 1994, Strong linear programming relaxations for the orienteering problem, European Journal of Operational Research, 73, 517523.
Liang, Y.C., Konak, S.K. and Smith, A.E., 2002, Meta heuristics for the orienteering problem, Proceedings of the Congress on Evolutionary Computation, Honolulu, Hawaii, 384389.
Mocholi, J.A., Jaen, J. and Canos J.H., 2005, A Grid ant colony algorithm for the orienteering problem, Congress on Evolutionary Computation, 942949.
KAYNAKLAR DİZİNİ (devam)
Ramesh, R. and Brown, K.M., 1991, An efficient fourphase heuristic for the generalized orienteering problem, Computers & Operations Research, 18, 2, 151
165.
Ramesh, R., Yoon, Y.S. and Karwan, M.H., 1992, An optimal algorithm for the orienteering tour problem, ORSA Journal on Computing, 4, 2, 155165.
Righini, G. and Salani, M., 2008, Decremental state space relaxation strategies and initialization heuristics for solving the orienteering problem with time windows with dynamic programming, Computers & Operations Research (in press)
Sevkli, Z. and Sevilgen, F.E., 2006, Variable neighborhood search for the orienteering problem, Levi , A., et al., (Eds.) , LNCS 4263, 134143.
Tang, H. and MillerHooks, E., 2005, A tabu search heuristic for the team orienteering problem, Computers and Operations Research, 32, 13791407.
Tasgetiren, F.M. and Smith, A.E., 2000, A genetic algorithm for the orienteering problem, Proceedings of the 2000 Congress Evolutionary Computation, San Diego, CA, 11901195.
Tasgetiren, M.F., 2002, A Genetic algorithm with an adaptive penalty function for the orienteering problem, Journal of Economic and Social Research 4, 2, 126.
Teng, S.Y., Ong, H.L. and Huang, H.C., 2006, Heuristic algorithms for visiting the customers in a rolling schedule environment, OR Spectrum, 28, 241266.
Tsiligirides, T., 1984, Heuristic methods applied to orienteering, Journal of Operational Research Society, 35, 9, 797809.
Vansteenwegen, P. and Audheusden, D.V., 2007, Selection of tourist attractions and routing using personalised electronic guides (unpublished).
KAYNAKLAR DİZİNİ (devam)
Vansteenwegen, P., Souffriau, W., Berghe, G.V. and Oudheusden, D.V., 2008, A guided local search metaheuristic for the team orienteering problem, European Journal of Operational Research (in press).
Wang, Q., Sun, X., Golden, B.L. and Jia, J., 1995, Using artificial neural networks to solve the orienteering problem, Annals of Operations Research, 61, 111120.
Wren, A. and Holliday, A., 1972, Computer scheduling of vehicles from one or more depots to a number of delivery points, Operational Research Quarterly, 23, 333
344.
Orienteering Problemi için Sezgisel bir Yaklaşım ve Örnek Uygulamalar
Ecir Şık
EKLER
Ek.1. Birinci yöntemin önemli kodları Ek.2. İkinci yöntemin önemli kodları Ek.3. Üçüncü yöntemin önemli kodları Ek.4. Dördüncü yöntemin önemli kodları Ek.5. Beşinci yöntemin önemli kodları Ek.6. Turizm problemi mesafe matrisi
Danışman: Yrd. Doç. Dr. R. Aykut Arapoğlu
Temmuz 2008
Ek.1. Birinci Yöntemin Önemli Kodları
Ek.2. İkinci Yöntemin Önemli Kodları
if (OncekiToplamDegerler < RandomSayi && RandomSayi <=
GuncelToplamDegerler)
if (OncekiToplamDegerler < RandomSayi && RandomSayi <=
GuncelToplamDegerler)
Ek.2. İkinci Yöntemin Önemli Kodları (Devam)
if (DRow != null)
DRow1 = _SolutionDataTable.NewRow();
DRow1["Sira"] = DRow["Sira"];
DRow1["Nokta"] = DRow["Nokta"];
DRow1["Puan"] = DRow["Puan"];
DRow1["Mesafe"] = DRow["Mesafe"];
_SolutionDataTable.Rows.Add(DRow1);
SetZiyaretEdildi(DRow["Nokta"].ToString());
_KalanMesafe = Convert.ToDecimal(DRow["Mesafe"]);
else
DRow = _SolutionDataTable.NewRow();
DRow["Nokta"] = EnSonNokta;
DRow["Sira"] = _DTableDistance.Rows.Count;
DRow["Puan"] = 0;
DRow["Mesafe"] = GetMesafe(AktifSonNokta, EnSonNokta);
_SolutionDataTable.Rows.Add(DRow);
_KalanMesafe = Convert.ToDecimal(DRow["Mesafe"]);
Ek.3. Üçüncü Yöntemin Önemli Kodları
TblSolutionTemp.AcceptChanges();
for (int i = 1; i < TblSolution.Rows.Count; i++) ilknokta=TblSolution.Rows[i]["Nokta"].ToString();
for (int k = i + 1; k < TblSolution.Rows.Count; k++)
TblSolution.Rows[i]["Nokta"] = TblSolution.Rows[k]["Nokta"];
TblSolution.Rows[k]["Nokta"] = ilknokta;
CalcSolutionTbl(ref TblSolution);
DegisenMesafe =
Convert.ToDecimal(TblSolution.Compute("Sum(Mesafe)", ""));
if(DegisenMesafe<OncekiMesafe&&DegisenMesafe<=
_GidilebilecekMesafe) TblSolutionTemp=
(DSetSolution.SolutionDataTable)TblSolution.Copy();
OncekiMesafe=
Convert.ToDecimal(TblSolution.Compute("Sum(Mesafe)", ""));
TblSolution.RejectChanges();
_SolutionDataTable = TblSolutionTemp;
_KalanMesafe = _GidilebilecekMesafe SumMesafe();
Ek.4. Dördüncü Yöntemin Önemli Kodları
TblSolutionTemp.AcceptChanges();
DRows=_DTableDistance.Select("ZiyaretEdildi='0'");
for (int i = 0; i < DRows.Length; i++)
for (int k = 0; k < _SolutionDataTable.Rows.Count1; k++) Mesafe=
GetMesafe(_SolutionDataTable.Rows[k]["Nokta"].ToString(), DRows[i]["Nokta"].ToString());
DRow=TblSolutionTemp.NewRow();
DRow["Sira"] = DRows[i]["Sira"];
DRow["Nokta"] = DRows[i]["Nokta"];
//DRow["Puan"] = GetPuan(DRows[i]["Nokta"].ToString());
//DRow["Mesafe"] = Mesafe;
TblSolutionTemp.Rows.InsertAt(DRow, k + 1);
CalcSolutionTbl(ref TblSolutionTemp);
if(TSPSolution.SumMesafe(TblSolutionTemp)<=
_GidilebilecekMesafe)
if (TSPSolution.SumPuan(TblSolutionTemp) > OncekiPuan) TblSolution=
(DSetSolution.SolutionDataTable)TblSolutionTemp.Copy();
TblSolutionTemp=
(DSetSolution.SolutionDataTable)_SolutionDataTable.Copy();
_SolutionDataTable=
(DSetSolution.SolutionDataTable)TblSolution.Copy();
_KalanMesafe = _GidilebilecekMesafe SumMesafe();
Ek.5. Beşinci Yöntemin Önemli Kodları
public void SolveProblem() DataRow DRow;
DataRow[] DRows;
DSetSolution.SolutionDataTable TblSolutionTemp =
(DSetSolution.SolutionDataTable)_SolutionDataTable.Copy();
DSetSolution.SolutionDataTable TblSolution =
(DSetSolution.SolutionDataTable)_SolutionDataTable.Copy();
DRows = _DTableDistance.Select("ZiyaretEdildi='0'");
for (int i = 0; i < DRows.Length; i++)
for (int k = 1; k < TblSolutionTemp.Rows.Count 1; k++) if (GetPuan(DRows[i]["Nokta"].ToString()) >
Convert.ToDecimal(TblSolutionTemp.Rows[k]["Puan"])) TblSolutionTemp.Rows[k].Delete();
DRow = TblSolutionTemp.NewRow();
DRow["Sira"] = DRows[i]["Sira"];
DRow["Nokta"] = DRows[i]["Nokta"];
TblSolutionTemp.Rows.InsertAt(DRow, k);
CalcSolutionTbl(ref TblSolutionTemp);
if (TSPSolution.SumMesafe(TblSolutionTemp) <=
_GidilebilecekMesafe) TblSolution =
(DSetSolution.SolutionDataTable)TblSolutionTemp.Copy();
TblSolutionTemp =
(DSetSolution.SolutionDataTable)_SolutionDataTable.Copy();
_SolutionDataTable =
(DSetSolution.SolutionDataTable)TblSolution.Copy();
_KalanMesafe = _GidilebilecekMesafe SumMesafe();
.6. Turizm problemi mesafe matrisi
İSTANBUL 1 0 ADIYAMAN 2 1210 0 AFYON 3 461 903 0 AĞRI 4 1405 648 1314 0 AMASYA 5 671 636 593 734 0 ANKARA 6 453 757 257 1057 336 0 ARTVİN 7 1317 766 1256 391 708 999 0 AYDIN 8 685 1223 352 1652 939 603 1602 0 BARTIN 9 420 1040 516 1169 435 283 1072 862 0 BİTLİS 10 1504 414 1299 234 833 1098 536 1619 1268 0 BOLU 11 262 948 424 1143 409 191 1055 715 174 1242 0 BURSA 12 243 1128 274 1416 682 382 1328 442 431 1469 273 0 ÇANAKKALE 13 320 1399 529 1687 953 653 1599 455 702 1740 544 271 0 ÇORUM 14 614 700 501 826 92 244 755 847 378 925 352 625 866 0 DENİZLİ 15 649 1097 226 1526 813 477 1476 126 736 1493 615 437 495 721 0 DİYARBAKIR 16 1365 205 1096 443 702 912 561 1416 1137 209 1103 1283 1554 766 1290 0 EDİRNE 17 229 1439 690 1634 900 682 1546 664 649 1733 491 420 217 843 697 1594 0 ERZURUM 18 1224 529 1133 183 553 876 237 1471 988 328 962 1235 1506 645 1345 324 1453 0 ESKİŞEHİR 19 330 979 145 1290 569 233 1232 483 454 1320 296 149 420 477 357 1134 559 1109 0 GAZİANTEP 20 1126 150 779 760 609 673 878 1099 956 526 864 1043 1308 630 973 317 1355 641 894 0 HATAY 21 1130 320 764 956 705 681 1036 1084 960 722 868 1028 1293 726 958 513 1359 799 879 196 0 İÇEL 22 932 399 565 1035 639 483 1115 833 762 801 670 829 1094 568 711 592 1161 878 680 275 260 0 İZMİR 23 565 1231 328 1636 915 579 1578 130 753 1627 595 322 325 823 224 1424 534 1455 412 1107 1092 893 0 KARABÜK 24 396 972 448 1099 365 215 1002 794 84 1198 134 407 678 308 668 1067 625 918 424 888 892 694 729 0 KARS 25 1424 731 1333 215 753 1076 210 1671 1188 410 1162 1435 1706 845 1545 526 1653 202 1310 843 1002 1080 1655 1118 0 KAYSERİ 26 773 437 521 811 348 320 849 841 603 778 511 691 962 277 715 592 1002 630 542 353 449 326 849 535 830 0 KONYA 27 668 686 223 1115 560 258 1153 541 537 1082 445 487 752 468 415 879 897 934 338 562 547 348 551 469 1134 304 0 MARDİN 28 1451 296 1104 518 797 998 656 1424 1232 284 1189 1368 1633 861 1298 95 1680 419 1219 325 521 600 1432 1162 621 678 887 0 MUĞLA 29 784 1201 371 1671 958 622 1621 99 881 1603 760 541 554 866 145 1394 763 1490 502 1077 1062 802 229 813 1690 860 556 1402 0 NEVŞEHİR 30 730 518 440 892 363 277 930 760 560 859 468 648 919 292 634 673 959 711 499 434 478 280 768 492 911 81 223 759 779 0 ORDU 31 902 727 841 589 293 584 415 1187 657 734 640 913 1184 340 1061 729 1131 408 817 727 823 799 1163 587 608 498 794 824 1206 571 0 RİZE 32 1158 854 1097 542 549 840 159 1443 913 687 896 1169 1440 596 1317 701 1387 377 1073 916 1018 994 1419 843 361 693 997 796 1462 774 256 0 SAMSUN 33 737 753 676 754 131 419 580 1022 492 899 475 748 1019 175 896 819 966 573 652 726 822 743 998 422 773 452 643 914 1041 467 165 421 0 SİNOP 34 697 899 691 919 263 434 745 1037 371 1064 435 708 979 307 911 965 926 738 667 872 968 872 1013 301 938 584 692 1060 1056 599 330 586 165 0 SİVAS 35 893 414 699 615 222 442 653 1037 657 666 631 824 1095 286 911 480 1122 434 675 425 521 497 1021 587 634 196 500 575 1056 277 313 497 339 485 0 TRABZON 36 1083 779 1022 483 474 765 234 1368 838 628 821 1094 1365 521 1242 626 1312 302 998 841 943 919 1344 768 436 618 922 721 1387 699 181 75 346 511 422 0 ŞANLIURFA 37 1263 109 916 623 719 810 741 1236 1093 389 1001 1180 1445 767 1110 180 1492 504 1031 137 333 412 1244 1025 706 490 699 188 1214 571 810 881 836 982 497 806 0 VAN 38 1637 582 1439 232 966 1238 568 1759 1401 168 1375 1609 1880 1058 1633 377 1866 415 1460 694 890 969 1767 1331 364 918 1222 452 1771 999 821 719 986 1151 806 715 557 0 ANTALYA 39 724 888 293 1430 875 544 1468 344 803 1290 690 537 717 783 222 1081 919 1249 424 764 749 489 446 735 1449 619 323 1089 313 538 1109 1312 958 978 815 1237 901 1458 0