Hayatımızdaki Algoritmalar: Günlük Kararların Bilgisayar Bilimi [1 ed.]
 9786056685897

  • 0 0 0
  • Like this paper and download? You can publish your own PDF file online for free in a few minutes! Sign Up
File loading please wait...
Citation preview

Yayın Numarası: 1707 1. Baskı: Eylül 2017

ISBN 978-605-66858-9-7 G enel Yayın Yönetmeni Fatih ÖZD EMİR Çevirmen AliATAV

Sertifika Numarası: 30821

Buzdağı Yayınevi Altay Mahallesi 2668. Cadde Fırat Life Style Rezidans 1 F/61 Eryaman/ANKARA

t: +90 o 312 219 77 98 f: +90 o 312 219 55 43 [email protected]

Editör

www. buzdagiyayinevi .cam

Fatih GÜDÜK Copyright © 2016

Son Okuma

by Brian Christian, Tam Griffiths

Ahmet Okan ŞEKER ©Türkçe yayın hakları

Kapak Uygulama

Buzdağı Yayınevi'ne aittir.

Halil İbrahim DAGKILIÇ Bu kitabın hiçbir bölümü, yazarın

Baskı Ankamat Matbaacılık 13256

ve yayınevinin izni alınmadan basılı ya da dijital olarak çoğaltılamaz, yayınlanamaz.

hayatımızdaki algoritmalar

günlük kararların bilgisayar bilimi Brian Christian Tam Griffiths �

~

İçindekiler

Giriş 111 Hayatımızdaki Algoritmalar

1.

Optimal Duraklama (Optimal Stopping) 121 Araştırmaya ne zaman son vermeli?

2.

Araştır/Kullan (Explore/Exploit) l 51 En yeni mi, En iyi mi?

3.

Sıralama (Sorting) 193 Düzenlemek

4.

Önbellekleme (Caching) 1131 Unut Gitsin

5.

Çizelgeleme (Scheduling) l 161 İlk Önce Öncelikler

6.

Bayes Kuralı 1195 Geleceği Tahmin Etmek

7. 8.

Fazla Uyum Sağlama (Overfitting) 1225

Ne Zaman Daha Az Düşünmeli

Rahatlama 1253 Bırak Gitsin

9.

Rastlantısallık (Randomness) 1271 Ne Zaman Şansa Bırakmalı?

1 O. İletişim Ağı Yönetimi (Networking) Nasıl Bağlanırız?

1 1. Oyun Teorisi ( Game Theory) Başkalarının Akılları Nasıl Çalışır?

Sonuç 1374 Bilişimsel Nezaket

Notlar J 383 Bibliyografya 1 466 Teşekkür 1 486

1337

l 303

Giriş Hayatımızdaki Algoritmalar

Ev bulmanın tartışmasız en ürkütücü olduğu Amerikan şehri San Francisco'da bir ev aradığınızı düşünün. Bu şehrin patlama yaşayan teknoloji sektörü yüzünden, yeni inşaatları sınırlayan sıkı imar yasalarının şehri New York kadar pahalı olduğu ve hatta birçok alanda onu geçtiği söylenmektedir. Emlakçılarda ev ilanları sürekli asılmakta, asıldığı gibi indirilmekte ve bu evlerin anahtarları depozitoyu ilk verenin elinde kalmaktadır. Böylesine vahşi bir pazar, teorik olarak rasyonel tüketici (rational consumer) eylemleri olan araştırma ve incelemeye çok az şans tanımaktadır. Karar vermeden önce seçenekleri karşı­ laştırabilen bir A VM yatırımcısı ya da internette alışveriş yapan birinin aksine San Fransisco'da kiralık ev arayan bir kişi, iki hareket tarzından birini derhal seçmek zorundadır: O anda bak­ makta olduğu apartman dairesini diğer tüm seçeneklerden vaz­ geçerek tutacaktır ya da bir daha arkasına bakmamak üzere vazgeçip gidecektir. Durumu biraz basite indirgeyelim ve bir anlığına uygun olan evler içerisinden en iyisini tutma şansınızı maksimize etmeye çalıştığınızı varsayalım. Tuttuğunuz ev ile bakmadıklarınızın "toplam pişmanlıklarını" minimumda tutmayı amaçlamaktası-

H ayatı mızdaki Al go ritmal ar

12

nız. Peki, bir evin en iyi olduğunu, buna hüküm verecek bir da­ yanağınız olmadan nasıl anlarsınız? Ve bu karar tabanını oluştu­ ran esasları bir dizi apartman dairesine bakmadan (ve elden ka­ çırmadan) nası l tesis edebilirsiniz? Ne kadar fazla bilgi toplarsa­ nız, bunun farkına o kadar iyi varırsınız ama geçen süre zarfında muhtemelen o fırsatı kaçırmış olursunuz. O zaman ne yapacaksınız? Bilgiye dayalı bir kararı , bilgi

edinmek kararın sonucunu tehlikeye atarken nasıl verirsiniz? Paradoksa yol açmaya çok yakın acımasız bir durumla karşı kar­ şıya kalırsınız. Birçok insan bu tür bir sorunla karşılaştığında araştırma ile ilk gördüğüne atlama arasında bir denge kurduğunu söyleyecek­ tir. Bir standart oluşturmak adına yeteri kadar eve bakmalısınız ve daha sonra da koyduğunuz standardı karşılayan birini tutmalı­ sınız. Bu denge söylemi asl ında tam olarak doğrudur. Söylenme­

yen şey ise bu dengenin nasıl kurulduğudur. Neyse ki bu sorunun bir cevabı var. Yüzde 37 Eğer en iyi evi tutmaya dair en iyi olasıl ıkları elde etmek isti­ yorsanız ev arayacağınız sürenin yüzde 3 7'sini (örneğin bir ayı­ nız varsa bunun 11 gününü) tarafsız olarak seçeneklere bakarak geçirin. Kontrol çizelgenizi evde bırakın, sadece bakmaya gitti­ ğinizi düşünün . Bir noktadan sonra en iyiyi gördüğünüz anda taahhüt altına girmeye hazır olun : Hem depozito hetn de kiranın tamamı için. Bu sadece seçeneklere bakma ile ilk gördüğünüze atlama arasındaki içgüdüsel bir uzlaşma değildir. İspat edilebilen optimal bir çözümdür. Bu çözümü "optimal duraklama ( optimal stopping)" olarak bilinen bir matematik problemi sınıfına girdiği için bil iyoruz. Yüzde 3 7 Kuralı, bu problemleri çözmek için bilgisayar mühen­ dislerinin "algoritma" dedikleri bir dizi basit adımlar serisin i kullanmaktadır. Ve ev aramak, optimal duraklamanın günlük

Giriş

13

yaşantımıza bumunu soktuğu alanlardan sadece biridir. B ir dizi seçeneği kabul etmek ya da vazgeçmek yaşamımızda devaml ı olarak birbirinden biraz farklı şekilde ortaya çıkan b i r durumdur. B ir park yerine aracınızı bırakmadan önce bütün bloğun etrafın­ da kaç kere dönersiniz? Riskli bir işe yatırdığınız parayı ne kadar bekletirsiniz? Evinizi ya da arabanızı satarken daha iyi bir teklif için ne kadar beklersiniz? Aynı sorun çok daha rahatsız edici bir durumda da ortaya çıkmaktadır: Randevulaşma. Optimal duraklama, aynı zamanda evlilik (serial monogamy) bilimidir. Basit algoritmalar sadece ev bulmak için değil aynı zamanda optimal d.uraklama problemiyle karş ılaştığımız, yaşamdaki tüm sorunlar için çözümler sunmaktadır. İ nsanlar her gün benzer so­ runlarla -elbette ki şairler park sorunundan daha çok aşk üzerine mürekkep harcamışlardır- boğuşmaktadır ve bazı d urum larda bu, acı verici bir deneyim haline dönüşebilir. Aslında burada katlanı­ lan acı gereksizdir. En azından matematiksel olarak bunlar çö­ zümlü problemlerdir. Etrafınızda gördüğünüz eziyet çeken kiracılar, sürücüler ya da evlenmek isteyen kiş iler as lında Amerika 'yı yeniden keşfet­ mektedir. Bir terapiste değil bir algoritmaya ihtiyaçları vardır. Terapist onlara detayl ı düşünme ile acele karar verme arasındaki uygun dengeyi bulmalarını söyleyecektir. Algoritm a ise onlara dengen in yüzde 3 7 ' de o lduğunu söyle­ yecektir. Tüm insanların karşılaştığı birtakım prob lemler vard ır: Yaşamla­ rımızın sonsuz bir uzay ve zaman içinde devam ediyor olmasının doğrudan bir sonucu o lan problem ler. B ir gün ya da on yı l içeri­ sinde neleri yapmalıyız ve neleri yapmamalıyız? H ayatımızdaki düzensizliğin kabul derecesi nedir ya da yaşantım ızdaki düzenin

H ayatı mı zdaki Algoritmalar

14

ne kadarı bize fazla gelebilir? En tatmin edici yaşam için yeni ile

tercih edilen tecrübeler aras ındaki denge nasıl olmalıdır? Bunlar sadece insanlara has sorunlar gibi görünebi lir ancak değillerdir. Yarım asırdan daha uzun b ir süredir b i lgisayar mü­ hendisleri her gün karşımıza çıkan bu açmazlarla boğuşmakta ve çoğunu çözmektedir. B ir işlemci minimum yük ve en kısa sürede kullanıcısının

kendisi nden

istediğini

yapmak

için

"perfor­

mansını" nasıl kul lanmalıdır? Farklı görevler arasında ne zaman geçiş yapmalı ve ilk olarak kaç adet görev üstlenmelidir? Sınırlı hafıza kaynaklarını kullanmanın en iyi yolu nedir? Daha fazla veri toplamalı mıdır yoksa elindeki mevcut veriye göre mi hare­ ket etmelidir? Anın tadını çıkarmak insanlar için zor olabilir ama etrafımızdaki b i lgisayarlar her bir milisaniyen in tadını kolaylıkla çıkarmaktadır. Ve bu başarılarından öğreneceğimiz çok şey var­ dır. İ nsan yaşamı için algoritmalardan bahsetmek garip görünebi­ lir. Birçok kişi için "algoritma" kelimesi büyük verinin (big OJJ

o"' �

40

1: �

30

...

§� ;ı==

= c l /2( 1 -p)2 >=c şeklinde sadeleştirilebilir ve bunun p için çözümü de bize 3 8 'nci sayfadaki tabloda yer alan p>= 1 - (2c) 1 12 değerini verir. 39 " İ lk gelen teklif şahaneydi. . . " : Laura Albert McLay, röportaj, 1 6 Ekim 20 1 4 . 3 9 insanların nasıl i ş aramaları gerektiğini m odellemek İ ş aramayı bir optimal duraklama problemi olarak düşünme konusuyla Stigler "The Economics of Information" ve "Information in the Labor Market" isimli çalışmalarında çalışm ıştır. McCall 'un "Economics of Informa­ tion and Job Search" çalışmas ı ev satma prob lemine çok benzer bir model önerdi ve Lippman ve McCall "The Economics of Job S earch" isimli çalışmalarında bu modelin çeşitli uzanım larını ele almışlardır. Tıpkı sekreter probleminin birçok türev prob leme esin kaynağı olmas ı gib i burada d a ekonomistler, b u basit modeli daha gerçekçi olacak şekilde geliştirmiş lerdir: Aynı gün içerisinde b irden çok teklifin gel­ mesine izin verecek şekilde modele izin vermek, satıcı için maliyetler ile oynanmasına izin vermek ve araştırma sıras ındaki ekonomik dal­ galanmanın probleme dahil edilmesini sağlamak. İş arama konusun­ daki optimal duraklama prob lemlerinin iyi b ir incelemesi Rogerson, Shimer ve Wright ' ın "Search : Theoretic Models of the Labor Market" isimli çalışmada bulunabilir. 3 9 Eğer daha önce eşik değerinizin üzerinde değilse, şimdi de olmaya­ caktır: İş arama üzerine b ir araştırmada da belirtildiği gibi, "Daha önce geri çevrilmiş olan tekliflere geri dönülemeyeceğini varsayın; bu durum aslında prob lem durağan olduğu için b ir kısıt teşkil etmese

396

Notlar bile. Bu nedenle bugün kabul edilemez olan bir teklif, yarın da kabul edi lemez olacaktır (a.g.e.)."

40 a kadem isyen personel için de otom obil park yeri : C lark Kerr, "Education: View from the Bridge," Time, 1 7 Kasım 1 95 8 . 4 0 sanırım beklenen trafiğe göre d e planlama yapmalısınız : Donald Shoup ile kiş isel yazışmalar, Haziran 20 1 3 . 42 San Francisco şehir m erkezinde yürürlüktedir : SFMTA tarafından geliştirilen SFpark sistem ine ve Shoup 'tan esinlenen dinamik park sistemine dair daha fazla bilgi http ://stpark. org/how -it-works/pricing/ adresinde bu lunab ilir. (Bu sayfada S houp danışmandır). Bu program 20 1 1 ' de uygulamaya konuldu ve dünyada kendi türünün ilki olan bir projedir. Programın etkilerine yönelik yakın zamanda yapılmış bir analiz için bakınız Mil lard-Ball, Weinberger ve Hampshire, "Is the Curb 80% Full or 20% Empty?" 42 doluluk oranı yüzde 90'dan yüzde 95'e yüks eldiğinde: Donald S houp, kişisel yazışmalar, 7 Haziran 20 1 3 . Daha kesin olmak gerekir­ se, doluluk oranında yüzde 9 0 ' dan yüzde 9 5 ' e doğru olan bir artış aslında yüzde 5 , 5 5 5 5 5 . . . ' lik bir artışı göstermektedir. 42 Park yerlerinin düzgün bir şekilde dağılmış olduğu sonsuz uzun­ lukta bir yolda olduğunuzu : Temel park yeri problemi, burada da

belirtildiği gibi DeGroot ' un "Optimal Statistical Decisions" isimli çalışmas ında bir problem olarak belirtilmiştir. Ç özüm, varış noktasın­ dan -log2/log( l -p) önceki noktadan daha erken olan boş bir yere aracı park etmektir. Burada p herhangi bir park yerinin boş olma ihtimalini göstermektedir.

43 ciddi bir şekilde yer aramak zorunda kalm azsınız : Shoup ' un The H igh Cost of Free Parking eserinin l 7 ' nci bölümü, blok başına ortala­ ma bir boş yer yarattığı durumda optimal sokak üzeri park etme stra­ tej isini ele almaktadır ve Shoup "problem açgözlülük ile üşengeçlik arasındaki çatışmaya dayanır" demektedir (kişisel yazışmalar). Ucuz sokak üstü park yerleri için arabayla gezinmek ya da özel park yerleri için ücret ödemek sorusu Shoup ' un çalışmas ının 1 3 ' üncü bölümünde­ dir. 43

bu

tem el

senaryo

üzerinde

çeşitli

değişiklikler: Tamaki'nin

"Adaptive Approach to Some Stopping Problems" çalışmas ı bir nok­ tanın boş olma olas ılığının konumuna bağlı olduğunu öne sürmüş ve bu olasılıkların hareket hal inde nasıl hesap lanab ileceğini ele almıştır.

N otlar

397

Taınaki' nin "Optiınal Stopp ing i n the Parking Problem with U -Tum" çalışmas ı ise U dönüşü olas ıl ıklarını prob leme eklemiştir. Tamaki ' nin "An Optimal Parking Prob lem" DeGroot ' un modeline park imkanları­ nın ayrık b ir nokta kümesi olarak ele alınmadığı bir uzantı olarak ele alm ıştır. Sakaguchi ile Tamaki 'nin "On the Optimal Parking Prob lem in Which Spaces Appear Randomly" çalışması bu sürekli formülü kullanmış ve varış noktasının bilinmemesi durumunu mümkün kıl­ mıştır. Mac-Queen ve Miller' ın "Optimal Persistence Policies" çal ış­ ması bunlardan ayrı olarak araçların b loğun etrafında dolaşmasına imkan tanıyarak problemi sürekli bir halde incelem iştir. 44 "Bisiklet kullanıyorum " : Donald Shoup, kişisel görüşme, 7 Haziran 201 3 .

44 Forbes dergisi Boris Berezovsky 'yi üç m ilya r dolar civarı varlığıyla : Forbes, "World ' s Bill ionaires'', 28 Temmuz 1 997, sf. 1 74. 44 Yeni bir oliga rşi sınıfının üyesi olarak: Paul Klebnikov, "The Rise of an Oligarch", Forbes, 9 Eylül 2000.

45 Devletin bir sopası vardır; sadece bir kez kullanır ve tam kafaya vurur: Vlad imir Putin, Frans ız gazetesi Le Figaro ile olan röportaj ın­ dan, 26 Ekim 2000.

45 kitabı tamamen sekreter p roblem i üzerineydi: Berezovsky ve Gne­ din, "Problems of Best Choice".

45 çeşitli isim ve şekiller altında çalışmalar yapılm ıştır: Önde olduğu­ nuzda bırakma prob lemine yaklaşmanın çeşitli yolları mevcuttur. Bunlardan ilki kazanma dizisinin uzunluğunu maksimize etmektir. D iyelim ki yazı gelme ihtimali p olan b ir atış yap ıyorsunuz. Her bir atış için c dolar ödüyorsunuz ve yazı geldiği her seferinde bir dolar al ıyor, tura geldiğinde ise tüm kazanım toplamınızı kaybediyorsunuz. Bu para atışını ne zaman bırakmalıs ınız? Bu sorunun cevab ı, Norman Starr tarafından 1 972 ' de gösteri ldiği gibi, r defa yazı geldikten sonra bırakmaktır. r burada p r+ ı (f(n)) [çalışma zamanı hem O(f(n)) hem de O(f(n) ) ' e eşit ise] mevcuttur.

1 02 "Kab arcık sırala m a dediğinde beni kazandı": Bu mühend is daha önce 2 ' nci bölümde karş ılaştığımız Dan S iroker 'dır. Bkz. "The AIB

41 3

Notlar

Test: inside the Technology at' s Changing the Rules of Business", Wired, Mayıs 20 1 2 . 1 0 5 bilgi işlem e 1 9 ' uncu yüzyılda ABD nüfus sayımlarında : Daha fazla­ sı için bkz. Knuth, "The Art o f C omputer Programm ing'', § 5 . 5 . 1 06 saklı yazılım bilgisayarlarının gücünü göstermek için : B i lgisayar testi EDVAC makines iydi ve o zamanlar von Neumann ' ın program ı çok gizli askeri istihbarat olarak sınıflandırılmıştı. B kz. Knuth, "Yon Neuınann ' s First Coınputer Program''. 1 06 "B irleştirmeli Sırala m a sıralama tarihinde, sıralam anın bilgisayar tarihindeki önem i kadar önem lidir. " : Katajainen ve Tra, "A Meti­

culous Analys is ofMergesort Programs". 1 06 B üyük ölçekli endüstriyel sıralama problem leri için bir metot : Mevcut kayıtlara, http ://sortbenchmark. org/ adresinden ulaş ılabilir. 20 1 4 senesi itibariyle Samsung ' dan bir grup, bir dakika içinde en fazla veriyi sıralama rekorunu elinde bulundurmaktadır: 3 , 7 Terabayt­ lık veri. Zdenek Bradac ' ın kırdığı insan rekoruyla karşılaştırmasını yapacak olursak bunun karşılığı, 3 7 m ilyar adet oyun kağıdıdır ve 500 Boeing 747 ' yi doldurmaya yeter.

1 07 da kikada 1 67 : Gönderim bölümü şefi Tony Miranda şöyle demekte­ dir: "Sanırım en yüksek performansımız saatte 2 5 0 sepettir. Ortalama­ mız ise saatte 1 80 sepet. Her sepetin içinde 40'tan fazla kitap olduğu­ nu da unutmayın ." "KCLS AMH Tour'', 6 Kasım 2007, https:// www . youtube.com/watch?v=4fq3CWsyde4. 1 07 -günde 85.000- kitabı geçirir: "Reducing operating costs", American Libraries Magazine, 3 1 Ağustos 2 0 1 O , http ://www . americanlibraries ­ magazine.org/aldirect/al-direct-september- 1 -20 1 O.

1 09 "boş versene" : B kz. Matthew Taub, "Brooklyn & Manhattan Beat Washington State in 4th Annual ' Battle of the Book Sorters "', Bro­ oklyn Brief, 29 Eylül 20 1 4, http://brooklynbrief.com/4th-annua l­ battle-book-sorters-pits-brooklyn-washington-state/ . 1 09 u m abileceğimiz en iyi zaman aralığıdır : n sayıda nesnenin tam ola­ rak sahip olab ileceği b irbirinden farklı s ıralanma sayısı n!'dir. B u nedenle b i r dizi tam olarak log n! b it veri üretir ve bu d a yaklaş ık olarak n log n bite eş ittir. n ! ' in nx(n- 1 )x(n-2)x . . . . 2x 1 olduğunu dü­ şündüğümüzde, n ' in en büyü k olduğu n kadar sayının çarp ıma eşit olduğunu biliriz. Sonuç olarak n!< nn, bu nedenle de log n! < log nn olur ve bu da b ize log n.'