Bölüm 4: Mekanizma Tasarımı

Algoritmik Oyun Kuramı
Sosyal seçim fonksiyonuDoğrudan mekanizmaAçıklama ilkesiTeşvik uyumluluğuMyerson lemmasıVCGGale–ShapleyMedyan mekanizmasıTTCBayesçi oyunlar
Sercan KÜLCÜ · Giresun Üniversitesi · Bilgisayar Mühendisliği

Temel Kavramlar

Oyunla Başlangıç: Ültimatom Oyunu

Oyunun kuralı

Teklif eden 10 jetonu bölüşür ve yanıtlayana bir pay önerir; yanıtlayan kabul ederse bölüşüm uygulanır, reddederse ikisi de 0 alır.

Merak sorusu
  • Yanıtlayan siz olsaydınız 1 jetonluk teklifi kabul eder miydiniz?
  • Teklif eden siz olsaydınız kaç jeton önerirdiniz?

Ültimatom Oyunu →

teklif eden 7yanıtlayan 3Tx jeton önerirYkabulret(10 − x, x)(0, 0)

Temel Kavramlar

Öğrenme Çıktıları

Kavramlar

Sosyal seçim fonksiyonu, doğrudan mekanizma, açıklama ilkesi ve Bayes–Nash dengesini açıklamak.

Teşvik analizi

Bir mekanizmanın teşvik uyumlu (IC) ve bireysel rasyonel (IR) olup olmadığını sınamak.

VCG hesabı

Verimli sonucu ve her oyuncunun VCG ödemesini “o olmasaydı” refahıyla hesaplamak.

Parasız tasarım

Gale–Shapley ile kararlı eşleştirme, TTC ile takas bulmak; medyan mekanizmasının neden stratejiye dayanıklı olduğunu göstermek.

Temel Kavramlar

Mekanizma Tasarımı Nedir?

  • Oyun kuramının “ters” yaklaşımı: oyun verilmez, oyunu biz kurarız.
  • İstenen sonuç için kurallar (kim ne alır, kim ne öder) tasarlanır.
  • Zorluk: oyuncuların özel bilgisi (değer, tercih, maliyet) tasarımcıdan gizlidir.
  • Amaç: bencil ve stratejik oyuncular kendi çıkarını gözetirken bile istenen sonuca ulaşmak.
  • Örnekler: vergiler, ihaleler, seçim sistemleri, okul yerleştirme, reklam açık artırmaları.
AAyşev = 70b = ?BBorav = 55b = ?CCemv = 85b = ?Mekanizma (kurallar)tasarımcı görür: ?, ?, ?sonuç x (kim alır) · ödemeler p
2007 Nobel Ekonomi Ödülü: Hurwicz, Maskin ve Myerson — “mekanizma tasarımı kuramının temellerini attıkları için”. 2012'de Roth ve Shapley kararlı eşleştirme ve piyasa tasarımı çalışmalarıyla ödüllendirildi.

Temel Kavramlar

Oyun Kuramı ve Mekanizma Tasarımı

Oyun kuramı (analiz): kurallar verilir, sonuç tahmin edilirKurallaroyun, kazançlarDavranışdenge stratejileriSonuçkim ne kazandı?Mekanizma tasarımı (sentez): istenen sonuç verilir, kurallar aranırKurallar ?tahsis + ödemeDavranışdengede ne yaparlar?Hedef f(θ)istenen sonuçSoru: “Bu sonucu dengede elde etmek için hangi mekanizma gerekir?”
Oyun kuramı: Kurallar → Sonuç.   Mekanizma tasarımı: Sonuç → Kurallar. Tasarımcı oyuncuları zorlayamaz; yalnızca kuralları seçer.

Temel Kavramlar

Teşvikler (Incentives)

İnsanlar teşviklere göre davranır

Kurallar belli bir davranışı kârlı yaparsa oyuncular o davranışa yönelir.

İyi bir mekanizma

Dürüst davranışı ödüllendirir, stratejik yalanı caydırır: teşvik uyumluluğu (incentive compatibility).

Beleşçi (free-rider) sorunu

Kamu malı finansmanında herkes katkısını düşük gösterip başkalarının ödemesinden yararlanmak ister.

Stratejik oy

Seçmen gerçek tercihi yerine kazanma şansı olan adaya oy verebilir.

Teşvik uyumsuzluğu → yanlış bilgi → verimsiz ya da adil olmayan sonuçlar.

Temel Kavramlar

Gerçek Hayat Uygulamaları

Vergi sistemleri

Gelir beyanı özel bilgidir; denetim ve oranlar dürüst beyanı teşvik etmelidir.

Kamu malı finansmanı

Park, yol, kütüphane: kim ne kadar ödemeli, proje yapılmalı mı?

İhale ve açık artırmalar

Kamu alımları, frekans lisansları, sanat eserleri.

Çevrim içi reklam

Her arama sorgusunda milisaniyeler içinde çalışan reklam açık artırmaları.

Eşleştirme piyasaları

Okul yerleştirme, tıp ihtisası, yurt odası değişimi: para yok, kurallar var.

Grup proje notlama

Öğrenciler katkılarını kendileri bildirirse notlama kuralı abartmayı caydırmalıdır.

Doğrudan Mekanizmalar

Sosyal Seçim Fonksiyonu (Social Choice Function)

  • Her oyuncunun bir tipi θi ∈ Θi vardır: değeri, tercihi, maliyeti. Tip özel bilgidir.
  • Olası sonuçlar kümesi O (ör. nesneyi kim alır, hangi proje yapılır).
  • Sosyal seçim fonksiyonu f : Θ1 × … × Θn → O, her tip profiline “istenen” sonucu atar.
  • Sorun: tasarımcı θ'yı bilmez; f(θ)'yı uygulamak için oyunculardan bilgi alması gerekir.
tip profili θ = (70, 55, 85)Ayşe70Bora55Cem85“1000”?f = en yüksek değersonuç: Cem alır

Verimli seçim: f(θ) = en yüksek değerli oyuncu → Cem. Ama herkes “benim değerim 1000” derse?

Mekanizma tasarımının sorusu: f'yi, oyuncular kendi çıkarlarını gözetirken de uygulayan kurallar var mı?

Doğrudan Mekanizmalar

Doğrudan Mekanizma (Direct Mechanism)

1θ1 (gizli)b12θ2 (gizli)b23θ3 (gizli)b3Mekanizmax(b) tahsis · p(b) ödemeSonuç x veödemeler piui = vi(x) − pi
  • Doğrudan mekanizmada katılımcılar özel bilgilerini (tiplerini) bildirir: bi (bildirim; yalan olabilir).
  • Mekanizma bu bildirimlerden sonucu x(b) ve ödemeleri p(b) hesaplar. Yarı doğrusal fayda: ui = vi(x) − pi (vi: tipi θi olan oyuncunun değerlemesi; tek nesnede vi = θi).
  • Dolaylı mekanizmada ise strateji başka bir şeydir: artırmada el kaldırmak, sırayla teklif vermek…

Doğrudan Mekanizmalar

Açıklama İlkesi (Revelation Principle)

Dolaylı mekanizma M: her oyuncu denge stratejisini kendisi oynarθisi(θi)oyuncunun stratejisiMsonuç oDoğrudan mekanizma M*: oyuncu yalnızca bᵢ bildirir, stratejiyi tasarımcı uygularM*bisi(bi)tasarımcı hesaplarMaynı sonuç o
  • Bir sonuç dolaylı bir mekanizmada denge olarak uygulanabiliyorsa, uygun koşullarda dürüst bildirimin denge olduğu doğrudan bir mekanizma da aynı sonucu uygulayabilir.
  • Neden? Yalan söylemek, M'de denge dışı bir strateji oynamakla aynıdır; dengede bu kârlı değildi.
  • Örnek: İngiliz açık artırmasında herkes değerine kadar kalır. Tasarımcı “değerini yaz, senin yerine ben kalayım” derse doğrudan bir mekanizma (ikinci fiyat) çıkar ve dürüst yazmak en iyisidir.
  • İlke dürüst bildirimin baskın strateji olduğunu her durumda söylemez: kullanılan denge kavramına (baskın strateji / Bayes–Nash) göre teşvik koşulu değişir.

Doğrudan Mekanizmalar

Teşvik Uyumluluğu (IC) ve Bireysel Rasyonellik (IR)

Baskın stratejide teşvik uyumlu (DSIC)

Gerçek tipi θi olan oyuncu için doğruyu söylemenin faydası ≥ bi yalanını söylemenin faydası (diğerleri ne bildirirse bildirsin):

ui(θi; θi, b−i) ≥ ui(θi; bi, b−i)
Bayesçi teşvik uyumlu (BIC)

Diğerleri doğruyu söylerken, tiplerin dağılımına göre beklenen faydada doğruyu söylemek en iyisidir. DSIC ⇒ BIC.

Bireysel rasyonellik (IR)

Katılım, oyuncuya sistemin dışında kalmaktan daha düşük fayda vermemelidir:

ui(θi; θi, b−i) ≥ 0   (dürüst bildirimde)
024681012-2024teklif bfayda udürüstb = 7 → 3ikinci fiyat: 4birinci fiyat

Değer 10, rakip teklif 6. Kazananın kendi teklifini ödediği kuralda (birinci fiyat) dürüst teklif 0, 7 teklifi 3 fayda verir: IC değil. Kazananın rakip teklifi ödediği kuralda (ikinci fiyat) 6'nın üstündeki her teklif 4 verir.

Doğrudan Mekanizmalar

Oyuna Dönüş: Ültimatom Oyunu

Kuramın cevabı

Yalnız jetonu önemseyen yanıtlayana kabul x, ret 0 verir: x ≥ 0 her teklifi kabul etmek en iyi tepkidir (IR); x = 0'da ret de olabilir. Teklif eden bir “al ya da bırak” mekanizması sunar. Tam sayı tekliflerde iki alt oyun mükemmel denge vardır: (10, 0) (0 da kabul edilir) ve (9, 1) (kayıtsızken ret).

Gerçekte

İlk deneyden (Güth, Schmittberger ve Schwarze, 1982) beri sonuç benzer: en sık teklif pastanın %40–50'sidir ve %20'nin altındaki tekliflerin yaklaşık yarısı reddedilir (Camerer, 2003). İnsanlar adaletsiz bulduğu teklifi, kendi kazancı pahasına cezalandırır.

Oyundaki yanıtlayanKabul ettiği en küçük teklifTeklif edenin kazancı
Kuram (yalnızca jeton)1 (0'ı da kabul ederse 0)9 (o zaman 10)
Seviye 1: hoşgörülü19
Seviye 2: stratejik37
Seviye 3: adalete duyarlı55
Teşvik uyumlu bir mekanizma tasarlarken fayda fonksiyonu doğru seçilmelidir: oyuncu adaleti de önemsiyorsa, IR koşulu “x ≥ 0” değil, “x, adil bulduğu payı aşıyor” olur.

Doğrudan Mekanizmalar

Adım Adım: Orantılı Maliyet Paylaşımı IC mi?

AyşeBoraCemToplam
Gerçek değer v30252075
Bildirim————
Ödeme————
Fayda u = v − ödeme————
Park yapılır mı?—

Park 60 bin TL. Kural: bildirimlerin toplamı ≥ 60 ise park yapılır, maliyet bildirimlerle orantılı paylaşılır.

AyşeBoraCemToplam
Gerçek değer v30252075
Bildirim30252075
Ödeme24201660
Fayda u = v − ödeme65415
Park yapılır mı?Evet (toplam ≥ 60)

Herkes dürüst: toplam 75 ≥ 60, park yapılır. Ödemeler 60·30/75 = 24, 20, 16; faydalar 6, 5, 4. Herkes ≥ 0 → IR sağlanır.

AyşeBoraCemToplam
Gerçek değer v30252075
Bildirim3025560
Ödeme3025560
Fayda u = v − ödeme001515
Park yapılır mı?Evet (toplam ≥ 60)

Cem değerini 5 gösterir: toplam yine 60, park yine yapılır; Cem artık 5 öder ve faydası 4 → 15. Yalan kazandırdı → IC değil.

AyşeBoraCemToplam
Gerçek değer v30252075
Bildirim1512,51037,5
Ödeme0000
Fayda u = v − ödeme0000
Park yapılır mı?Hayır (toplam < 60)

Herkes aynı mantıkla yarısını bildirirse toplam 37,5 < 60: park yapılmaz, toplam fayda 15 → 0. Beleşçilik verimsizlik doğurur.

Çözüm fikri: oyuncunun bildirimi ödemesini yalnızca seçilen sonucu değiştirerek etkileyebilmeli → VCG.

Doğrudan Mekanizmalar

Mekanizma Tasarımının Ölçütleri

  • Teşvik uyumluluğu (IC): gerçek bilgiyi açıklamak en iyi seçenektir.
  • Bireysel rasyonellik (IR): katılmak, dışarıda kalmaktan kötü değildir.
  • Verimlilik (efficiency): sosyal refahı SW(x) = Σi vi(x) en yüksek sonuç (dürüst bildirimde).
  • Bütçe dengesi: ödemelerin toplamı ≥ 0 (zayıf: dış finansman gerekmez) ya da = 0 (tam: fazla da kalmaz).
ICIRVerimliTam bütçeVCGkamu projesi✓✓✓✗Orantılı paykamu projesi✗✓✓✓Sabit fiyatiki taraflı ticaret✓✓✗✓Orta noktaiki taraflı ticaret✗✓✓✓

Örnek mekanizmalar: her biri bir ölçütten vazgeçiyor.

Bu ölçütler her zaman birlikte sağlanamaz: iki taraflı ticarette verimlilik + (Bayesçi) IC + IR + bütçe dengesi birlikte imkânsızdır (Myerson–Satterthwaite, 1983). Tasarım problemi aralarındaki ödünleşimi belirler.

Doğrudan Mekanizmalar

Uygulama Kuramı: Dürüstlük Tek Denge mi?

  • Açıklama ilkesi yalnızca dürüst bildirimin bir denge olduğunu söyler; aynı mekanizmada istenmeyen başka dengeler de bulunabilir.
  • Kurallar iyi bir dengeyi mümkün kılar ama oyuncuların o dengede buluşacağını garanti etmez. Bütün dengeleri istenen sonuca götüren mekanizmaları uygulama kuramı (implementation theory) inceler (ek okuma: Maskin, 1999).
Vickrey'de kötü denge

Değerler Ayşe 10, Bora 5. Ayşe 0, Bora 100 teklif eder: Bora kazanır ve 0 öder (fayda 5). Ayşe kazanmak için 100'ü geçip 100 ödemeli (fayda −90), bu yüzden sapmaz. Bora da sapmakla daha fazla kazanamadığı için bu teklifler bir Nash dengesi oluşturur, ama nesne değeri düşük olan Bora'ya gider.

Dürüst teklif baskın stratejidir; bu denge zayıf baskılanan tekliflerle kurulur.

Ders: DSIC'te oyuncu rakibini tahmin etmek zorunda değildir; bu yüzden yalnızca Nash dengesine dayanan tasarımlardan daha sağlamdır. Yine de tek denge garantisi vermez.

Doğrudan Mekanizmalar

Tek Parametreli Ortamlar: Myerson Lemması

  • Her oyuncunun tek bir özel sayısı vardır: birim değer vi. Mekanizma tahsis xi(b) ve ödeme pi(b) seçer; fayda vi·xi − pi.
  • Myerson lemması (1981): x, DSIC bir mekanizmada kullanılabilir ⇔ x monoton (teklif artınca xi azalmaz). Ödeme de tek biçimde belirlenir (pi(0) = 0 ile):

pi(b) = bi·xi(b) − ∫0bi xi(z, b−i) dz   = eğrinin solunda, 0 ile x(b) arasında kalan boyalı alan (b × x(b) dikdörtgeninden eğrinin altındaki alan çıkınca kalan kısım)

02040608010001teklif zx(z)b = 85p = 70tek nesne: kritik teklif = 700246800,41teklif zx(z)b = 6p = 4,2ödeme = Σ sıçrama × teklif = 0,4·3 + 0,6·5 = 4,2
0/1 tahsiste ödeme = kritik teklif (kazanmak için gereken en düşük teklif): Vickrey'nin ikinci fiyatı tam olarak budur. Ödeme kritik teklif değilse IC bozulur: eşik 50, sabit ödeme 20 ise değeri 20 ile 50 arasındaki oyuncu 50'yi aşan bir teklifle abartıp kazanır.

VCG Mekanizması

Vickrey–Clarke–Groves (VCG) Mekanizması

  • Bildirilen değerlere göre sosyal refahı en yüksek yapan sonucu seçer: x* = argmaxx Σi bi(x)  (bi(x): i'nin x için bildirdiği değer).
  • Her oyuncunun ödemesi, katılımının diğer oyuncular üzerinde oluşturduğu dışsallığa (externality) dayanır (Clarke pivot kuralı):
pi = maxx Σj≠i bj(x) − Σj≠i bj(x*)
= (i olmasaydı diğerlerinin en iyi refahı) − (i varken diğerlerinin refahı)
Ayşe 40Cem 10Bora yokkenen iyisi Park50Cem 45Bora varkenSpor seçilir45p = 5

Kamu projesi örneğinde Bora'nın dışsallığı.

  • Bildirim ödemeyi yalnızca x* üzerinden etkiler; bu yüzden uygun koşullarda dürüst bildirim baskın stratejidir.
  • Oyuncunun faydası = sosyal refah − (kendisinden bağımsız bir terim): herkes sosyal refahı maksimize etmek ister.

VCG Mekanizması

Adım Adım: VCG ile Kamu Projesi Seçimi

ParkKütüphaneSpor salonuÖdeme piFayda ui
Ayşe4050——
Bora03020——
Cem102045——
(a) Σ herkes———
(b) Σ i olmadan———

Üç sakin, üç proje. Her sakin her projeye değerini (bin TL) bildiriyor. Yalnızca bir proje yapılacak.

ParkKütüphaneSpor salonuÖdeme piFayda ui
Ayşe4050——
Bora03020——
Cem102045——
(a) Σ herkes505565 ✓
(b) Σ i olmadan———

(a) Herkesle en iyi seçim: her projede üç değerin toplamı (sosyal refah) Park 50, Kütüphane 55, Spor 65. En yüksek toplam Spor salonunda: x* = Spor salonu, refah 65.

ParkKütüphaneSpor salonuÖdeme piFayda ui
Ayşe4050——
Bora03020——
Cem102045——
(a) Σ herkes505565 ✓
(b) Σ Ayşe olmadan105065

(b) Ayşe olmasaydı: yalnız Bora ve Cem değerlerinin toplamı Park 10, Kütüphane 50, Spor 65. En iyisi Spor; diğerlerinin refahı 65.

ParkKütüphaneSpor salonuÖdeme piFayda ui
Ayşe4050——
Bora03020——
Cem102045——
(a) Σ herkes505565 ✓
(b) Σ Ayşe olmadan105065

(c) Ayşe varken seçilen proje Spor salonu. Spor salonunda diğerlerinin refahı: Bora 20 + Cem 45 = 65.

ParkKütüphaneSpor salonuÖdeme piFayda ui
Ayşe40500—
Bora03020——
Cem102045——
(a) Σ herkes505565 ✓
(b) Σ Ayşe olmadan105065

(d) Ödeme = (b) − (c) = 65 − 65 = 0. Ayşe olsa da olmasa da Spor seçiliyor; Ayşe başkalarına zarar vermiyor.

ParkKütüphaneSpor salonuÖdeme piFayda ui
Ayşe40500—
Bora03020——
Cem102045——
(a) Σ herkes505565 ✓
(b) Σ Bora olmadan502545

(b) Bora olmasaydı: yalnız Ayşe ve Cem değerlerinin toplamı Park 50, Kütüphane 25, Spor 45. En iyisi Park; diğerlerinin refahı 50.

ParkKütüphaneSpor salonuÖdeme piFayda ui
Ayşe40500—
Bora03020——
Cem102045——
(a) Σ herkes505565 ✓
(b) Σ Bora olmadan502545

(c) Bora varken seçilen proje Spor salonu. Spor salonunda diğerlerinin refahı: Ayşe 0 + Cem 45 = 45.

ParkKütüphaneSpor salonuÖdeme piFayda ui
Ayşe40500—
Bora030205—
Cem102045——
(a) Σ herkes505565 ✓
(b) Σ Bora olmadan502545

(d) Ödeme = (b) − (c) = 50 − 45 = 5. Bora olmasaydı Park seçilirdi ve diğerleri 50 alırdı; Bora yüzünden Spor seçiliyor ve diğerleri 45 alıyor. Bora'nın başkalarına verdiği zarar 5.

ParkKütüphaneSpor salonuÖdeme piFayda ui
Ayşe40500—
Bora030205—
Cem102045——
(a) Σ herkes505565 ✓
(b) Σ Cem olmadan403520

(b) Cem olmasaydı: yalnız Ayşe ve Bora değerlerinin toplamı Park 40, Kütüphane 35, Spor 20. En iyisi Park; diğerlerinin refahı 40.

ParkKütüphaneSpor salonuÖdeme piFayda ui
Ayşe40500—
Bora030205—
Cem102045——
(a) Σ herkes505565 ✓
(b) Σ Cem olmadan403520

(c) Cem varken seçilen proje Spor salonu. Spor salonunda diğerlerinin refahı: Ayşe 0 + Bora 20 = 20.

ParkKütüphaneSpor salonuÖdeme piFayda ui
Ayşe40500—
Bora030205—
Cem10204520—
(a) Σ herkes505565 ✓
(b) Σ Cem olmadan403520

(d) Ödeme = (b) − (c) = 40 − 20 = 20. Cem olmasaydı Park seçilirdi ve diğerleri 40 alırdı; Cem yüzünden Spor seçiliyor ve diğerleri 20 alıyor. Cem'in başkalarına verdiği zarar 20.

ParkKütüphaneSpor salonuÖdeme piFayda ui
Ayşe405000
Bora03020515
Cem1020452025
(a) Σ herkes505565 ✓2540
(b) Σ i olmadan———

Faydalar (değer − ödeme): Ayşe 0 − 0 = 0, Bora 20 − 5 = 15, Cem 45 − 20 = 25. Herkesin faydası ≥ 0 (IR). Toplanan 25 kimseye geri dağıtılmaz: bütçe fazlası.

Ödeme pi = (b) − (c) = (i olmasaydı diğerlerinin en iyi refahı) − (i varken diğerlerinin refahı): i'nin başkalarına verdiği zarar.

VCG Mekanizması

Kod İzleme: vcg(v, A)

ParkKütüphaneSpor salonu
w(a, N)———
w(a, D)———

Oyuncu listesi çıkarılır. v[i][a]: i'nin a projesine bildirdiği değer.

ParkKütüphaneSpor salonu
w(a, N)505565
w(a, D)———

Her proje için w(a, N) hesaplanır; en büyüğü Spor (65) → x = S.

ParkKütüphaneSpor salonu
w(a, N)505565
w(a, D)———

Ödeme sözlüğü boş başlar; şimdi her oyuncu için “o olmasaydı” sorusu sorulacak.

ParkKütüphaneSpor salonu
w(a, N)505565
w(a, D) · D = N − Ayşe105065

i = Ayşe: D, Ayşe dışındaki oyunculardır.

ParkKütüphaneSpor salonu
w(a, N)505565
w(a, D) · D = N − Ayşe105065

Ayşe yokken en iyi proje Spor salonu: yok = 65.

ParkKütüphaneSpor salonu
w(a, N)505565
w(a, D) · D = N − Ayşe105065

Ayşe varken seçilen Spor'da D'nin refahı: var = 65.

ParkKütüphaneSpor salonu
w(a, N)505565
w(a, D) · D = N − Ayşe105065

p[Ayşe] = 65 − 65 = 0.

ParkKütüphaneSpor salonu
w(a, N)505565
w(a, D) · D = N − Bora502545

i = Bora: D, Bora dışındaki oyunculardır.

ParkKütüphaneSpor salonu
w(a, N)505565
w(a, D) · D = N − Bora502545

Bora yokken en iyi proje Park: yok = 50.

ParkKütüphaneSpor salonu
w(a, N)505565
w(a, D) · D = N − Bora502545

Bora varken seçilen Spor'da D'nin refahı: var = 45.

ParkKütüphaneSpor salonu
w(a, N)505565
w(a, D) · D = N − Bora502545

p[Bora] = 50 − 45 = 5.

ParkKütüphaneSpor salonu
w(a, N)505565
w(a, D) · D = N − Cem403520

i = Cem: D, Cem dışındaki oyunculardır.

ParkKütüphaneSpor salonu
w(a, N)505565
w(a, D) · D = N − Cem403520

Cem yokken en iyi proje Park: yok = 40.

ParkKütüphaneSpor salonu
w(a, N)505565
w(a, D) · D = N − Cem403520

Cem varken seçilen Spor'da D'nin refahı: var = 20.

ParkKütüphaneSpor salonu
w(a, N)505565
w(a, D) · D = N − Cem403520

p[Cem] = 40 − 20 = 20.

ParkKütüphaneSpor salonu
w(a, N)505565
w(a, D)———

Sonuç: Spor salonu yapılır; ödemeler {Ayşe: 0, Bora: 5, Cem: 20}. Toplam 25.

def vcg(v, A):
  N = list(v)            # oyuncular
  def w(a, S):           # S'nin a'daki refahı
    return sum(v[i][a] for i in S)
  x = max(A, key=lambda a: w(a, N))
  p = {}
  for i in N:
    D = [j for j in N if j != i]
    yok = max(w(a, D) for a in A)  # i yokken
    var = w(x, D)                  # i varken
    p[i] = yok - var
  return x, p

VCG Mekanizması

VCG'de Yalan Söylemek Kazandırır mı?

DurumBildirim (P, K, S)SeçilenÖdemeGerçek fayda
Cem dürüst10, 20, 45Spor salonu2045 − 20 = 25
 
 
 

Referans: Cem dürüst bildirir → Spor seçilir, 20 öder, gerçek faydası 45 − 20 = 25.

DurumBildirim (P, K, S)SeçilenÖdemeGerçek fayda
Cem dürüst10, 20, 45Spor salonu2045 − 20 = 25
Cem abartır10, 20, 100Spor salonu2045 − 20 = 25
 
 

Cem Spor'u 100 gösterir: sonuç değişmez, ödeme de değişmez (ödeme diğerlerinin bildirimlerine bağlı) → yine 25.

DurumBildirim (P, K, S)SeçilenÖdemeGerçek fayda
Cem dürüst10, 20, 45Spor salonu2045 − 20 = 25
Cem abartır10, 20, 100Spor salonu2045 − 20 = 25
Cem küçültür10, 20, 25Kütüphane520 − 5 = 15
 

Cem Spor'u 25 gösterir: toplamlar 50, 55, 45 → Kütüphane seçilir. Cem 5 öder ama gerçek değeri 20 → fayda 15 < 25.

DurumBildirim (P, K, S)SeçilenÖdemeGerçek fayda
Cem dürüst10, 20, 45Spor salonu2045 − 20 = 25
Cem abartır10, 20, 100Spor salonu2045 − 20 = 25
Cem küçültür10, 20, 25Kütüphane520 − 5 = 15
Bora abartır0, 60, 20Kütüphane2530 − 25 = 5

Bora Kütüphane'yi 60 gösterir: Kütüphane seçilir ama Bora 25 öder → 30 − 25 = 5 < 15. Hiçbir yalan kazandırmıyor.

Tüm bildirimler (her proje için 0, 10, …, 100) denendiğinde hiçbir oyuncu dürüst bildirimden daha yüksek fayda elde edemiyor.

VCG Mekanizması

VCG'nin Özellikleri ve Sınırları

Güçlü yönler

  • DSIC: dürüst bildirim baskın strateji.
  • Verimli: sosyal refahı en yüksek sonuç seçilir.
  • Clarke pivotu ve negatif olmayan değerlerde IR; ödemeler ≥ 0.
  • Tek nesnede VCG = Vickrey (ikinci fiyat) açık artırması.

Sınırlar

  • Tam bütçe dengesi yok: örnekte 25 birim fazla kalır (fazla verir, açık vermez; zayıf bütçe dengesi sağlanır).
  • argmax hesabı kombinatoryal problemlerde NP-zor olabilir.
  • Danışıklılığa (collusion) ve sahte kimliklere açık; gelir düşük kalabilir.
  • Oyuncuların tüm değerlerini açıklaması mahremiyet sorunu doğurur.
Yüksek hesaplama maliyeti ve bütçe dengesi sorunları gerçek uygulamalarda sınırlayıcı olabilir. Sponsorlu arama reklamlarında VCG yerine çoğunlukla GSP kullanılır.

VCG Mekanizması

Kod İzleme: Tek Nesnede vcg() = Vickrey

Ayşe70Bora55Cem85a = Ayşea = Boraa = Cemw(a, N)———w(a, D)———

Tek nesne: sonuç a = nesneyi kim alır. v[i][a] = i'nin değeri (a = i ise), yoksa 0.

Ayşe70Bora55Cem85a = Ayşea = Boraa = Cemw(a, N)705585w(a, D)———

w(a, N) yalnızca alıcının değeridir: 70, 55, 85 → x = Cem (en yüksek değer).

Ayşe70Bora55Cem85a = Ayşea = Boraa = Cemw(a, N)705585w(a, D)———

Ödemeler için her teklifçiye “sen olmasaydın?” diye sorulur.

Ayşe70Bora55Cem85a = Ayşea = Boraa = Cemw(a, N)705585w(a, D)05585

i = Ayşe: Ayşe'nin satırı silikleşir; D = diğerleri.

Ayşe70Bora55Cem85a = Ayşea = Boraa = Cemw(a, N)705585w(a, D)05585

Ayşe yokken nesne Cem'e giderdi: yok = 85.

Ayşe70Bora55Cem85a = Ayşea = Boraa = Cemw(a, N)705585w(a, D)05585

Nesne Cem'de; D'nin oradaki refahı var = 85. p[Ayşe] = 85 − 85 = 0 → kaybeden ödemez.

Ayşe70Bora55Cem85a = Ayşea = Boraa = Cemw(a, N)705585w(a, D)70085

i = Bora: Bora'nın satırı silikleşir; D = diğerleri.

Ayşe70Bora55Cem85a = Ayşea = Boraa = Cemw(a, N)705585w(a, D)70085

Bora yokken nesne Cem'e giderdi: yok = 85.

Ayşe70Bora55Cem85a = Ayşea = Boraa = Cemw(a, N)705585w(a, D)70085

Nesne Cem'de; D'nin oradaki refahı var = 85. p[Bora] = 85 − 85 = 0 → kaybeden ödemez.

Ayşe70Bora55Cem85a = Ayşea = Boraa = Cemw(a, N)705585w(a, D)70550

i = Cem: Cem'in satırı silikleşir; D = diğerleri.

Ayşe70Bora55Cem85a = Ayşea = Boraa = Cemw(a, N)705585w(a, D)70550

Cem yokken nesne Ayşe'ye giderdi: yok = 70.

Ayşe70Bora55Cem85a = Ayşea = Boraa = Cemw(a, N)705585w(a, D)70550

Nesne Cem'de; D'nin oradaki refahı var = 0. p[Cem] = 70 − 0 = 70 = ikinci en yüksek değer!

Ayşe70Bora55Cem85a = Ayşea = Boraa = Cemw(a, N)705585w(a, D)———

Sonuç: Cem kazanır ve 70 öder; kaybedenler 0. Tek nesnede VCG = Vickrey (ikinci fiyat).

def vcg(v, A):
  N = list(v)            # oyuncular
  def w(a, S):           # S'nin a'daki refahı
    return sum(v[i][a] for i in S)
  x = max(A, key=lambda a: w(a, N))
  p = {}
  for i in N:
    D = [j for j in N if j != i]
    yok = max(w(a, D) for a in A)  # i yokken
    var = w(x, D)                  # i varken
    p[i] = yok - var
  return x, p

Parasız Mekanizmalar

Para Olmadan Mekanizma Tasarımı

  • Okul yerleştirme, yurt odası değişimi, oy verme: ödeme yapmak ya yasak ya da uygunsuzdur.
  • Para yoksa ödeme ile teşvik düzeltilemez; yalnızca sonuç kuralı tasarlanabilir.
  • Genel tercihlerde kötü haber: en az üç seçenekli, her sonucu mümkün kılan, stratejiye dayanıklı (yalan söylemenin hiç kazandırmadığı) her kural diktatörlüktür: sonucu hep aynı tek kişinin tercihi belirler (Gibbard–Satterthwaite).
  • Çıkış yolları: tercihlerin yapısını kullan (tek tepeli → medyan) ya da hedefi değiştir (“en iyi” yerine kararlı → Gale–Shapley; takas → TTC).
ParasıztasarımGenel tercihler, ≥ 3 seçenekG–S: yalnızca diktatörlükTek tepeli tercihlermedyan: DSICİki taraflı eşleştirmeGale–Shapley: kararlıOda / vardiya takasıTTC: DSIC + Pareto

Parasız Mekanizmalar

Kararlı Eşleştirme Problemi

  • İki taraf: öğrenciler ve bitirme projeleri (her proje tek öğrenci alır). Her iki taraf da karşı tarafı sıralar.
  • Engelleyici çift (blocking pair): birbirlerini şu anki eşlerine tercih eden öğrenci–proje çifti.
  • Engelleyici çifti olmayan eşleştirme kararlıdır (stable): kimse anlaşmayı bozup kaçmak istemez.
Öğrenci1.2.3.
AXYZ
BXZY
CYXZ
Proje1.2.3.
XBAC
YACB
ZABC
AX ≻ Y ≻ ZBX ≻ Z ≻ YCY ≻ X ≻ ZXB ≻ A ≻ CYA ≻ C ≻ BZA ≻ B ≻ Cöğrenciprojekalın: eşleştirme · kesikli: engelleyici çift
Kararsız örnek {A–X, B–Y, C–Z}: B, X'i Y'ye; X de B'yi A'ya tercih eder → (B, X) engelleyici. Aynı mantıkla (B, Z) ve (C, Y) de engelleyici (9 çiftin hepsi denetlendiğinde başka engelleyici çift çıkmaz).

Parasız Mekanizmalar

Gale–Shapley: Ertelenmiş Kabul (Teklif Turları)

Öğrenci (teklif verir)Proje (kabul/ret)tercih sırasıtercih sırasıAX ≻ Y ≻ ZBX ≻ Z ≻ YCY ≻ X ≻ ZXB ≻ A ≻ CYA ≻ C ≻ BZA ≻ B ≻ C

Başlangıç: herkes serbest. Öğrenciler tercih sırasına göre teklif verir; proje en iyi adayı geçici tutar, diğerlerini reddeder.

Öğrenci (teklif verir)Proje (kabul/ret)tercih sırasıtercih sırasıAX ≻ Y ≻ ZBX ≻ Z ≻ YCY ≻ X ≻ ZXB ≻ A ≻ CYA ≻ C ≻ BZA ≻ B ≻ C

Tur 1 teklifleri: A→X, B→X, C→Y (serbest her öğrenci, henüz reddetmemiş en iyi projesine).

Öğrenci (teklif verir)Proje (kabul/ret)tercih sırasıtercih sırası✗AX ≻ Y ≻ ZBX ≻ Z ≻ YCY ≻ X ≻ ZXB ≻ A ≻ CYA ≻ C ≻ BZA ≻ B ≻ C

Tur 1 kararı — X: B tutulur, A reddedilir (1. sıradaki B daha iyi); Y: C kabul (geçici).

Öğrenci (teklif verir)Proje (kabul/ret)tercih sırasıtercih sırasıAX ≻ Y ≻ ZBX ≻ Z ≻ YCY ≻ X ≻ ZXB ≻ A ≻ CYA ≻ C ≻ BZA ≻ B ≻ C

Tur 2 teklifleri: A→Y (serbest her öğrenci, henüz reddetmemiş en iyi projesine).

Öğrenci (teklif verir)Proje (kabul/ret)tercih sırasıtercih sırası✗AX ≻ Y ≻ ZBX ≻ Z ≻ YCY ≻ X ≻ ZXB ≻ A ≻ CYA ≻ C ≻ BZA ≻ B ≻ C

Tur 2 kararı — Y: A tutulur, C reddedilir (1. sıradaki A daha iyi).

Öğrenci (teklif verir)Proje (kabul/ret)tercih sırasıtercih sırasıAX ≻ Y ≻ ZBX ≻ Z ≻ YCY ≻ X ≻ ZXB ≻ A ≻ CYA ≻ C ≻ BZA ≻ B ≻ C

Tur 3 teklifleri: C→X (serbest her öğrenci, henüz reddetmemiş en iyi projesine).

Öğrenci (teklif verir)Proje (kabul/ret)tercih sırasıtercih sırası✗AX ≻ Y ≻ ZBX ≻ Z ≻ YCY ≻ X ≻ ZXB ≻ A ≻ CYA ≻ C ≻ BZA ≻ B ≻ C

Tur 3 kararı — X: B tutulur, C reddedilir (1. sıradaki B daha iyi).

Öğrenci (teklif verir)Proje (kabul/ret)tercih sırasıtercih sırasıAX ≻ Y ≻ ZBX ≻ Z ≻ YCY ≻ X ≻ ZXB ≻ A ≻ CYA ≻ C ≻ BZA ≻ B ≻ C

Tur 4 teklifleri: C→Z (serbest her öğrenci, henüz reddetmemiş en iyi projesine).

Öğrenci (teklif verir)Proje (kabul/ret)tercih sırasıtercih sırasıAX ≻ Y ≻ ZBX ≻ Z ≻ YCY ≻ X ≻ ZXB ≻ A ≻ CYA ≻ C ≻ BZA ≻ B ≻ C

Tur 4 kararı — Z: C kabul (geçici).

Öğrenci (teklif verir)Proje (kabul/ret)tercih sırasıtercih sırasıAX ≻ Y ≻ ZBX ≻ Z ≻ YCY ≻ X ≻ ZXB ≻ A ≻ CYA ≻ C ≻ BZA ≻ B ≻ C

Herkes eşleşti → dur. A–Y, B–X, C–Z. Kontrol: A, X'i ister ama X, B'yi A'ya tercih eder; C'yi ise X de Y de istemez → engelleyici çift yok, kararlı.

Parasız Mekanizmalar

Kod İzleme: gale_shapley(ogr, proj)

serbest (kuyruk)ABCX: B ≻ A ≻ CX ← —Y: A ≻ C ≻ BY ← —Z: A ≻ B ≻ CZ ← —

Herkes serbest, projeler boş. proj[p][s]: p'nin s'ye verdiği sıra (0 = en iyi).

serbest (kuyruk)ABCX: B ≻ A ≻ CX ← —Y: A ≻ C ≻ BY ← —Z: A ≻ B ≻ CZ ← —

Her öğrencinin sıradaki tercihi 0. indis (en sevdiği proje).

serbest (kuyruk)BCA → XX: B ≻ A ≻ CX ← —Y: A ≻ C ≻ BY ← —Z: A ≻ B ≻ CZ ← —

Kuyruktan A çıkar ve sıradaki tercihi X'e teklif verir.

serbest (kuyruk)BCA → XX: B ≻ A ≻ CX ← AY: A ≻ C ≻ BY ← —Z: A ≻ B ≻ CZ ← —

X boş (r = None) → A geçici olarak kabul edilir.

serbest (kuyruk)CB → XX: B ≻ A ≻ CX ← AY: A ≻ C ≻ BY ← —Z: A ≻ B ≻ CZ ← —

Kuyruktan B çıkar ve sıradaki tercihi X'e teklif verir.

serbest (kuyruk)CAB → XX: B ≻ A ≻ CX ← BY: A ≻ C ≻ BY ← —Z: A ≻ B ≻ CZ ← —A reddedildi

X'in elinde A vardı; X için B daha iyi (sıra 0 < 1) → B kabul, A kuyruğa döner.

serbest (kuyruk)AC → YX: B ≻ A ≻ CX ← BY: A ≻ C ≻ BY ← —Z: A ≻ B ≻ CZ ← —

Kuyruktan C çıkar ve sıradaki tercihi Y'ye teklif verir.

serbest (kuyruk)AC → YX: B ≻ A ≻ CX ← BY: A ≻ C ≻ BY ← CZ: A ≻ B ≻ CZ ← —

Y boş (r = None) → C geçici olarak kabul edilir.

serbest (kuyruk)boşA → YX: B ≻ A ≻ CX ← BY: A ≻ C ≻ BY ← CZ: A ≻ B ≻ CZ ← —

Kuyruktan A çıkar ve sıradaki tercihi Y'ye teklif verir.

serbest (kuyruk)CA → YX: B ≻ A ≻ CX ← BY: A ≻ C ≻ BY ← AZ: A ≻ B ≻ CZ ← —C reddedildi

Y'nin elinde C vardı; Y için A daha iyi (sıra 0 < 1) → A kabul, C kuyruğa döner.

serbest (kuyruk)boşC → XX: B ≻ A ≻ CX ← BY: A ≻ C ≻ BY ← AZ: A ≻ B ≻ CZ ← —

Kuyruktan C çıkar ve sıradaki tercihi X'e teklif verir.

serbest (kuyruk)CC → XX: B ≻ A ≻ CX ← BY: A ≻ C ≻ BY ← AZ: A ≻ B ≻ CZ ← —C reddedildi

X, elindeki B'yi C'ye tercih eder → C reddedilir ve kuyruğa döner.

serbest (kuyruk)boşC → ZX: B ≻ A ≻ CX ← BY: A ≻ C ≻ BY ← AZ: A ≻ B ≻ CZ ← —

Kuyruktan C çıkar ve sıradaki tercihi Z'ye teklif verir.

serbest (kuyruk)boşC → ZX: B ≻ A ≻ CX ← BY: A ≻ C ≻ BY ← AZ: A ≻ B ≻ CZ ← C

Z boş (r = None) → C geçici olarak kabul edilir.

serbest (kuyruk)boşX: B ≻ A ≻ CX ← BY: A ≻ C ≻ BY ← AZ: A ≻ B ≻ CZ ← C

Kuyruk boş: 6 teklifle bitti. Sonuç eşzamanlı turlardakiyle aynı: A–Y, B–X, C–Z.

def gale_shapley(ogr, proj):
  serbest, es = list(ogr), {}
  sira = {s: 0 for s in ogr}
  while serbest:
    s = serbest.pop(0)
    p = ogr[s][sira[s]]        # sıradaki
    sira[s] += 1
    r = es.get(p)              # p'deki aday
    if r is None or proj[p][s] < proj[p][r]:
      es[p] = s                # kabul
      if r: serbest.append(r)
    else: serbest.append(s)    # red
  return es

Parasız Mekanizmalar

Gale–Shapley'in Özellikleri

Her zaman kararlı

Algoritma sonlanır ve sonuç kararlıdır (Gale ve Shapley, 1962). En fazla n² teklif → O(n²).

Teklif veren tarafa en iyi

Teklif verenler, tüm kararlı eşleştirmeler içinde en iyi eşlerini alır; teklif alan taraf ise en kötüsünü.

Teklif verenler için DSIC

Teklif veren taraf için dürüst tercih sırası bildirmek baskın stratejidir. Teklif alan taraf ise bazen yalanla kazanabilir.

Uygulamalar

ABD tıp ihtisası eşleştirmesi (NRMP), Boston ve New York okul seçimi. 2012 Nobel: Roth ve Shapley.

Örneğimizde tek bir kararlı eşleştirme var (3! = 6 eşleştirmenin hepsi denendiğinde); projeler teklif verse de sonuç A–Y, B–X, C–Z olur.

Parasız Mekanizmalar

Teklif Alan Taraf Yalanla Kazanabilir

AX ≻ Y ≻ ZBY ≻ X ≻ ZCX ≻ Y ≻ ZXB ≻ A ≻ CYA ≻ B ≻ CZA ≻ B ≻ Cöğrenciproje

Yeni örnek. Öğrenciler teklif verir. Projelerin gerçek tercihleri: X: B ≻ A ≻ C; Y ve Z: A ≻ B ≻ C.

AX ≻ Y ≻ ZBY ≻ X ≻ ZCX ≻ Y ≻ ZXB ≻ A ≻ CYA ≻ B ≻ CZA ≻ B ≻ Cöğrenciproje

Dürüst bildirimle teklifler A→X, B→Y, C→X, C→Y, C→Z → A–X, B–Y, C–Z. X, 2. sıradaki A'yı alır.

AX ≻ Y ≻ ZBY ≻ X ≻ ZCX ≻ Y ≻ ZXB ≻ C ≻ AYA ≻ B ≻ CZA ≻ B ≻ Cöğrenciproje

X yalan söyler: listesini B ≻ C ≻ A diye bildirir (A'yı en sona atar).

AX ≻ Y ≻ ZBY ≻ X ≻ ZCX ≻ Y ≻ ZXB ≻ C ≻ AYA ≻ B ≻ CZA ≻ B ≻ Cöğrenciproje

Teklifler A→X, B→Y, C→X, A→Y, B→X, C→Y, C→Z: A'nın reddi zincirleme B'yi X'e getirir → B–X. X, gerçek 1. tercihini aldı: yalan kazandırdı.

Bu örnekte iki kararlı eşleştirme var (3! = 6 eşleştirmenin hepsi denendiğinde): öğrencilere en iyi gelen A–X, B–Y, C–Z ve projelere en iyi gelen A–Y, B–X, C–Z. X'in yalanı sonucu projelere en iyi gelene taşır. Hiçbir kararlı mekanizma iki taraf için birden DSIC olamaz (Roth, 1982).

Parasız Mekanizmalar

Tesis Yerleşimi: Ortalama mı, Medyan mı?

0510152025303540ABCDE
DurumTesisE'nin uzaklığı
 
 
 
 
 

Beş köy bir yol üzerinde: 2, 5, 9, 14, 20 km. Tek bir tesis (hastane) kurulacak; her köy tesisin kendisine yakın olmasını ister (maliyet = uzaklık).

0510152025303540ABCDEortalama = 10
DurumTesisE'nin uzaklığı
Ortalama, herkes dürüst1010
 
 
 
 

Ortalama mekanizması: (2+5+9+14+20)/5 = 10. E'nin uzaklığı 10 km.

0510152025303540ABCDEE “40”ortalama = 14
DurumTesisE'nin uzaklığı
Ortalama, herkes dürüst1010
Ortalama, E “40” der146
 
 
 

E yalan söyleyip 40 bildirir: ortalama (2+5+9+14+40)/5 = 14. E'nin uzaklığı 10 → 6. Yalan kazandırdı: ortalama manipüle edilebilir.

0510152025303540ABCDEmedyan = 9
DurumTesisE'nin uzaklığı
Ortalama, herkes dürüst1010
Ortalama, E “40” der146
Medyan, herkes dürüst911
 
 

Medyan mekanizması: bildirimler sıralanır, ortadaki seçilir → 9. E'nin uzaklığı 11 km.

0510152025303540ABCDEE “40”medyan = 9
DurumTesisE'nin uzaklığı
Ortalama, herkes dürüst1010
Ortalama, E “40” der146
Medyan, herkes dürüst911
Medyan, E “40” der911
 

E 40 bildirir: sıralama 2, 5, 9, 14, 40 → medyan yine 9. Uç değer medyanı çekemez.

0510152025303540ABCDEE “8”medyan = 8
DurumTesisE'nin uzaklığı
Ortalama, herkes dürüst1010
Ortalama, E “40” der146
Medyan, herkes dürüst911
Medyan, E “40” der911
Medyan, E “8” der812

E medyanın öbür yanına geçip 8 bildirir: medyan 8 olur, E'nin uzaklığı 11 → 12. Daha kötü!

0510152025303540ABCDEmedyan = 9
DurumTesisE'nin uzaklığı
Ortalama, herkes dürüst1010
Ortalama, E “40” der146
Medyan, herkes dürüst911
Medyan, E “40” der911
Medyan, E “8” der812

Her köy için 0–60 arası tüm bildirimler denendiğinde medyanda hiçbir yalan kazandırmıyor. Üstelik toplam uzaklık medyanda 27, ortalamada 28: medyan toplam uzaklığı da en aza indirir.

Parasız Mekanizmalar

Neden Medyan Stratejiye Dayanıklı?

A 2B 5C 9D 14E 2005101520250510B'nin bildirimi rB'nin uzaklığıdürüst r = 5 → 4

1) xᵢ < m (B = 5, medyan 9): r ≤ 9 bildirimleri medyanı 9'da bırakır (uzaklık 4); r > 9 medyanı sağa, yani B'den uzağa iter. Hiçbir r 4'ün altına inemez.

A 2B 5C 9D 14E 2005101520250510D'nin bildirimi rD'nin uzaklığıdürüst r = 14 → 5

2) xᵢ > m (D = 14): simetrik durum. r ≥ 9 medyanı değiştirmez (uzaklık 5); r < 9 medyanı sola, D'den uzağa çeker.

A 2B 5C 9D 14E 2005101520250510C'nin bildirimi rC'nin uzaklığıdürüst r = 9 → 0

3) xᵢ = m (C = 9): tesis tam C'nin konumunda, uzaklık 0; her yalan medyanı ancak C'den uzaklaştırır.

Sonuç: her durumda dürüst bildirim baskın strateji → medyan mekanizması stratejiye dayanıklıdır (strategy-proof; Moulin, 1980). Aynı fikir tek tepeli tercihlerle oylamada da geçerlidir (Black).

Parasız Mekanizmalar

Seri Diktatörlük ve Boston Mekanizması

Seri diktatörlük (serial dictatorship)

Sırası gelen, kalanlar içinden en sevdiğini alır. Kimse öncekilerin seçimini etkileyemez → DSIC ve Pareto optimal. Sıra kurayla belirlenirse rastgele seri diktatörlük (RSD).

Boston mekanizması (doğrudan kabul)

Her turda öğrenciler sıradaki tercihlerine başvurur. Her okul, o turda kendisini seçen öğrencilere boş koltuklarını öncelik sırasına göre verir; verilen koltuk sonraki turlarda geri alınmaz. İlk tercihini kaybeden, ikincisini dolmuş bulabilir.

Tercihler A: X ≻ Y ≻ Z, B: X ≻ Y ≻ Z, C: Y ≻ X ≻ Z. Öncelik X ve Z: A, B, C; Y: B, A, C. Her okul tek koltuk.

TurB dürüstB “Y ≻ X ≻ Z” der
1X: A, B → A; Y: C → CX: A → A; Y: B, C → B
2B → Y doluC → X dolu
3B → ZC → Z
SonuçA–X, B–Z, C–YA–X, B–Y, C–Z

B ikinci tercihini ilk sıraya yazarak Z yerine Y'yi alır: yalan kazandırdı.

Gale–Shapley aynı profilde dürüst bildirimle A–X, B–Y, C–Z verir. Abdulkadiroğlu ve Sönmez (2003), Boston mekanizmasında tercihleri olduğu gibi yazmanın öğrenciye zarar verebildiğini gösterdi; Boston şehri 2005'te okul yerleştirmesinde öğrenci önerili ertelenmiş kabule (Gale–Shapley) geçti.

Parasız Mekanizmalar

Yurt Odası Takası: En İyi Takas Döngüleri (TTC)

  • Her öğrencinin bir yurt odası var, para yok; her öğrenci başkalarının odalarını sıralar (Shapley ve Scarf, 1974; algoritma Gale'e atfedilir).
  • TTC: herkes en sevdiği kalan odanın sahibini gösterir. Sonlu çizgede en az bir döngü vardır; döngüdekiler takas eder ve çıkar. Tekrarla.
  • Dürüst tercih bildirmek baskın strateji (Roth, 1982); sonuç Pareto optimal ve çekirdektedir: kimse grup kurup daha iyisini yapamaz (Roth ve Postlewaite, 1977).
  • Aynı kural nöbet ya da vardiya takasına da uyar; gerçek dünyada böbrek nakli eşleştirmelerinde de kullanılır (Roth, Sönmez ve Ünver, 2004).
KişiTercih (oda sahibi)
AC ≻ A ≻ B
BA ≻ D ≻ B
CB ≻ A ≻ C
DC ≻ E ≻ B ≻ D
EA ≻ D ≻ E

Örnek: beş öğrenci yurt odası takası. Listede olmayan odalar kişinin kendi odasından kötüdür.

Parasız Mekanizmalar

Kod İzleme: ttc(pref)

ABCDEA: —B: —C: —D: —E: —A: C ≻ A ≻ BB: A ≻ D ≻ BC: B ≻ A ≻ CD: C ≻ E ≻ B ≻ DE: A ≻ D ≻ E

Herkes kalanlar listesinde; henüz kimse takas etmedi.

ABCDEA: —B: —C: —D: —E: —A: C ≻ A ≻ BB: A ≻ D ≻ BC: B ≻ A ≻ CD: C ≻ E ≻ B ≻ DE: A ≻ D ≻ E

Tur 1: her kalan kişi en sevdiği kalan odanın sahibini gösterir (oklar).

ABCDEA: —B: —C: —D: —E: —A: C ≻ A ≻ BB: A ≻ D ≻ BC: B ≻ A ≻ CD: C ≻ E ≻ B ≻ DE: A ≻ D ≻ E

A yola eklenir, ok C'yi gösterir.

ABCDEA: —B: —C: —D: —E: —A: C ≻ A ≻ BB: A ≻ D ≻ BC: B ≻ A ≻ CD: C ≻ E ≻ B ≻ DE: A ≻ D ≻ E

C yola eklenir, ok B'yi gösterir.

ABCDEA: —B: —C: —D: —E: —A: C ≻ A ≻ BB: A ≻ D ≻ BC: B ≻ A ≻ CD: C ≻ E ≻ B ≻ DE: A ≻ D ≻ E

B yola eklenir, ok A'yı gösterir; A zaten yolda → döngü bulundu.

ABCDEA: —B: —C: —D: —E: —A: C ≻ A ≻ BB: A ≻ D ≻ BC: B ≻ A ≻ CD: C ≻ E ≻ B ≻ DE: A ≻ D ≻ E

Döngü: A → C → B → A. Döngüdeki herkes gösterdiği odayı alır.

ABCDEA ← C'nin odasıB ← A'nın odasıC ← B'nin odasıD: —E: —A: C ≻ A ≻ BB: A ≻ D ≻ BC: B ≻ A ≻ CD: C ≻ E ≻ B ≻ DE: A ≻ D ≻ E

Takas: A ← C'nin odası, C ← B'nin odası, B ← A'nın odası. Bu kişiler çıkar.

ABCDEA ← C'nin odasıB ← A'nın odasıC ← B'nin odasıD: —E: —A: C ≻ A ≻ BB: A ≻ D ≻ BC: B ≻ A ≻ CD: C ≻ E ≻ B ≻ DE: A ≻ D ≻ E

Tur 2: her kalan kişi en sevdiği kalan odanın sahibini gösterir (oklar).

ABCDEA ← C'nin odasıB ← A'nın odasıC ← B'nin odasıD: —E: —A: C ≻ A ≻ BB: A ≻ D ≻ BC: B ≻ A ≻ CD: C ≻ E ≻ B ≻ DE: A ≻ D ≻ E

D yola eklenir, ok E'yi gösterir.

ABCDEA ← C'nin odasıB ← A'nın odasıC ← B'nin odasıD: —E: —A: C ≻ A ≻ BB: A ≻ D ≻ BC: B ≻ A ≻ CD: C ≻ E ≻ B ≻ DE: A ≻ D ≻ E

E yola eklenir, ok D'yi gösterir; D zaten yolda → döngü bulundu.

ABCDEA ← C'nin odasıB ← A'nın odasıC ← B'nin odasıD: —E: —A: C ≻ A ≻ BB: A ≻ D ≻ BC: B ≻ A ≻ CD: C ≻ E ≻ B ≻ DE: A ≻ D ≻ E

Döngü: D → E → D. Döngüdeki herkes gösterdiği odayı alır.

ABCDEA ← C'nin odasıB ← A'nın odasıC ← B'nin odasıD ← E'nin odasıE ← D'nin odasıA: C ≻ A ≻ BB: A ≻ D ≻ BC: B ≻ A ≻ CD: C ≻ E ≻ B ≻ DE: A ≻ D ≻ E

Takas: D ← E'nin odası, E ← D'nin odası. Bu kişiler çıkar.

ABCDEA ← C'nin odasıB ← A'nın odasıC ← B'nin odasıD ← E'nin odasıE ← D'nin odasıA: C ≻ A ≻ BB: A ≻ D ≻ BC: B ≻ A ≻ CD: C ≻ E ≻ B ≻ DE: A ≻ D ≻ E

Bitti: A, B, C üçlü döngüyle; D ve E ikili döngüyle takas etti. Her kişinin tüm yalan listeleri denendiğinde hiçbiri daha iyi oda getirmiyor (DSIC); sonuç Pareto optimal.

def ttc(pref):
  kalan, atama = list(pref), {}
  while kalan:
    g = {i: next(j for j in pref[i]
             if j in kalan) for i in kalan}
    i, yol = kalan[0], []
    while i not in yol:          # okları izle
      yol.append(i); i = g[i]
    dongu = yol[yol.index(i):]
    for k in dongu:              # takas
      atama[k] = g[k]; kalan.remove(k)
  return atama

Bayesçi Oyunlar

Eksik Bilgi: Bayesçi Oyunlar (Bayesian Games)

  • Şimdiye kadar tasarımcı tipleri bilmiyordu; oyuncular da çoğu zaman birbirinin tipini bilmez.
  • Bayesçi oyun: oyuncular, tip kümeleri Θi, tipler üzerinde ortak ön olasılık (common prior) π, kazançlar ui(a, θ).
  • Önce şans (Doğa) her oyuncunun tipini seçer; her oyuncu yalnızca kendi tipini görür (Harsanyi dönüşümü).
  • Strateji artık bir kuraldır: her tip için hangi eylemin seçileceği.
  • Bayes–Nash dengesi: her oyuncu, her tipinde, diğerlerinin stratejilerine karşı beklenen kazancını maksimize eder.
DoğaB · 1/2P1Ç · 1/2P1bilgi kümesi(P1 tipi görmez)KP2MP2KP2MP2P2 kendi tipini bilir → tipe göre eylem

Örnek oyun: P2'nin tipi B (buluşmak ister) ya da Ç (kaçınmak ister).

Mekanizma bağlantısı: açıklama ilkesinin Bayesçi sürümü → Bayes–Nash dengesinde uygulanabilen her sonuç, BIC bir doğrudan mekanizmayla da uygulanabilir.

Bayesçi Oyunlar

Adım Adım: Bayes–Nash Dengesini Bulmak

Tip B · olasılık 1/2P2: KP2: M
P1: K(2, 1)(0, 0)
P1: M(0, 0)(1, 2)
Tip Ç · olasılık 1/2P2: KP2: M
P1: K(2, 0)(0, 2)
P1: M(0, 1)(1, 0)
Aday profilP1: K beklenenP1: M beklenenDenge?
 
 

P1 konser (K) ya da maç (M) seçer ve K'yi tercih eder. P2 ya B (buluşmak ister) ya da Ç (kaçınmak ister) tipindedir; P1 tipi bilmez, olasılıklar 1/2–1/2.

Tip B · olasılık 1/2P2: KP2: M
P1: K(2, 1)(0, 0)
P1: M(0, 0)(1, 2)
Tip Ç · olasılık 1/2P2: KP2: M
P1: K(2, 0)(0, 2)
P1: M(0, 1)(1, 0)
Aday profilP1: K beklenenP1: M beklenenDenge?
 
 

Aday: P1 = K. P2'nin en iyi tepkisi tipe göre değişir: B tipi K (1 > 0), Ç tipi M (2 > 0) seçer → s2 = (B→K, Ç→M).

Tip B · olasılık 1/2P2: KP2: M
P1: K(2, 1)(0, 0)
P1: M(0, 0)(1, 2)
Tip Ç · olasılık 1/2P2: KP2: M
P1: K(2, 0)(0, 2)
P1: M(0, 1)(1, 0)
Aday profilP1: K beklenenP1: M beklenenDenge?
P1 = K; B→K, Ç→M½·2 + ½·0 = 1½·0 + ½·1 = 0,5✓ evet
 

P1'in beklenen kazancı: K → ½·2 + ½·0 = 1; M → ½·0 + ½·1 = 0,5. K en iyisi → (K; B→K, Ç→M) Bayes–Nash dengesi.

Tip B · olasılık 1/2P2: KP2: M
P1: K(2, 1)(0, 0)
P1: M(0, 0)(1, 2)
Tip Ç · olasılık 1/2P2: KP2: M
P1: K(2, 0)(0, 2)
P1: M(0, 1)(1, 0)
Aday profilP1: K beklenenP1: M beklenenDenge?
P1 = K; B→K, Ç→M½·2 + ½·0 = 1½·0 + ½·1 = 0,5✓ evet
 

Öbür aday: P1 = M. O zaman B tipi M (2 > 0), Ç tipi K (1 > 0) seçer → s2 = (B→M, Ç→K).

Tip B · olasılık 1/2P2: KP2: M
P1: K(2, 1)(0, 0)
P1: M(0, 0)(1, 2)
Tip Ç · olasılık 1/2P2: KP2: M
P1: K(2, 0)(0, 2)
P1: M(0, 1)(1, 0)
Aday profilP1: K beklenenP1: M beklenenDenge?
P1 = K; B→K, Ç→M½·2 + ½·0 = 1½·0 + ½·1 = 0,5✓ evet
P1 = M; B→M, Ç→K½·0 + ½·2 = 1½·1 + ½·0 = 0,5✗ K'ye sapar

P1: K → ½·0 + ½·2 = 1; M → ½·1 + ½·0 = 0,5. P1 M'den K'ye sapar → denge değil. Tek saf Bayes–Nash dengesi: (K; B→K, Ç→M).

Hücrelerde (P1 kazancı, P2 kazancı). 2 × 2 × 2 = 8 saf strateji profilinin hepsi denendi.

Bayesçi Oyunlar

Bayesçi Bakışla Mekanizmalar

Örnek: birinci fiyat

Dürüst teklif kazanınca fayda 0 bırakır; dengede herkes değerinin altında teklif verir. Bu denge Bayesçidir: rakiplerin değerleri hakkındaki inanca dayanır.

DSIC mi, BIC mi?

DSIC diğerlerinin inançlarından bağımsız ve sağlamdır. BIC daha zayıftır ama daha fazla hedefe izin verir: ör. verimli ve tam bütçe dengeli kamu malı mekanizması (d'Aspremont ve Gérard-Varet, 1979; Arrow, 1979).

En yüksek gelir

Satıcının beklenen gelirini maksimize eden mekanizma da Bayesçi bir sorudur; cevabı rezerv fiyatlı (satıcının belirlediği en düşük fiyatın altında satılmayan) bir açık artırmadır (Myerson, 1981).

Poker ve blöf

Rakibin eli (tipi) gizlidir; blöf, karışık Bayesçi stratejinin parçasıdır.

Değerlendirme

Tartışma: Davranış, Adalet ve Etik

İnsanlar her zaman teşviklere göre mi davranır?
  • Kuram: oyuncular faydasını maksimize eder.
  • Gerçekte duygular, ahlak, alışkanlık ve adalet duygusu da etkilidir (ör. Ültimatom oyununda düşük teklifler reddedilir).
  • Teşvikler güçlüdür, ama tek belirleyici değildir; basit ve anlaşılır kurallar önemlidir.
Mekanizma tasarımında etik sorunlar
  • Manipülasyon ve bilgi saklama; güçlü oyuncuların avantaj sağlaması.
  • Adil olmayan gelir dağılımı; ödeme gücü olmayanların dışlanması.
  • Etik sınırlar toplum ve kurumlarca belirlenmeli: iyi mekanizma yalnızca verimli değil, adil ve etik de olmalıdır.

Değerlendirme

Özet: Bu Bölümün Mekanizmaları

MekanizmaParaTeşvik özelliğiNe sağlar?
Orantılı maliyet paylaşımıvarIC değil (beleşçilik)—
VCG (Clarke pivotu)varDSIC, IRVerimli sonuç; bütçe fazlası olabilir
Vickrey (tek nesne VCG)varDSIC, IREn yüksek değerli kazanır
Gale–ShapleyyokTeklif verenler için DSICKararlı eşleştirme, O(n²)
Medyan (tesis yerleşimi)yokDSIC (stratejiye dayanıklı)Toplam uzaklık en az
TTC (ev takası)yokDSICPareto optimal, çekirdekte
Bayesçi mekanizmalarvarBIC (Bayes–Nash)Beklenen hedefler (ör. gelir)
Açıklama ilkesi sayesinde doğrudan, dürüst bildirimli mekanizmalara odaklanmak yeterlidir; ama IC + IR + verimlilik + bütçe dengesi her zaman birlikte sağlanamaz.

Değerlendirme

Örnek Problemler

  1. İki özdeş nesne, üç teklifçi (birer nesne ister), değerler 10, 8, 5. VCG'de kim kazanır, kim ne öder?
  2. Maliyet paylaşımı örneğinde (60; 30, 25, 20) diğerleri dürüstse Bora'nın en kârlı bildirimi nedir?
  3. Köyler 3, 7, 8, 12, 30: medyan ve ortalama? Ortalamada 30'daki köy tesisi kendine çekmek için ne bildirir?
  4. Gale–Shapley örneğinde projeler teklif verseydi sonuç ne olurdu?
  5. Bayesçi örnekte B tipinin olasılığı 1/4 olsaydı (K; B→K, Ç→M) yine denge olur muydu?
  6. TTC, tercihler A: B ≻ C ≻ A, B: A ≻ C ≻ B, C: A ≻ B ≻ C. Kim hangi odayı alır?
Cevapları göster
  1. 10 ve 8 kazanır; her biri 5 öder (ör. 10'luk: onsuz 8 + 5 = 13, onunla 8 → 13 − 8 = 5).
  2. 10: toplam 60'ta kalır, ödemesi 10'a iner, faydası 5 → 15 (IC değil).
  3. Medyan 8, ortalama 12. (3 + 7 + 8 + 12 + x)/5 = 30 → x = 120.
  4. Aynı: A–Y, B–X, C–Z (örnekte tek kararlı eşleştirme var).
  5. Hayır: K → ¼·2 = 0,5, M → ¾·1 = 0,75; P1 sapar. Saf denge yok, karışık denge gerekir.
  6. Tur 1: A→B, B→A, C→A; döngü A ↔ B takas eder. Tur 2: C kendini gösterir, kendi odasında kalır.

Değerlendirme

Etkileşimli Oyunlar ve Simülatörler

Teşvik Uyumluluğu Laboratuvarı

Dürüst ve stratejik bildirimlerde ödemeler ve fayda.

Kararlı Eşleştirme

Adım adım ertelenmiş kabul; kararlılık ve toplam memnuniyet.

Ültimatom Oyunu

Pazarlık, ret ve adalet duygusu: teşviklerin sınırı.

Tesis Yerleşimi

Ortalama ve medyan kuralı: hangisinde yalan kazandırır?

Değerlendirme

Kaynaklar

  • N. Nisan, T. Roughgarden, É. Tardos, V. Vazirani (ed.), Algorithmic Game Theory, Cambridge University Press, 2007.
  • T. Roughgarden, Twenty Lectures on Algorithmic Game Theory, Cambridge University Press, 2016.
  • Y. Shoham, K. Leyton-Brown, Multiagent Systems, Cambridge University Press, 2009.
  • D. Gale, L. S. Shapley, “College Admissions and the Stability of Marriage”, American Mathematical Monthly, 1962.
  • H. Moulin, “On Strategy-Proofness and Single Peakedness”, Public Choice, 1980 · M. J. Osborne, An Introduction to Game Theory, Oxford University Press, 2004 (Bayesçi oyunlar).
  • R. Myerson, “Optimal Auction Design”, Mathematics of Operations Research, 1981 · L. Shapley, H. Scarf, “On Cores and Indivisibility”, Journal of Mathematical Economics, 1974.
  • A. E. Roth, T. Sönmez, M. U. Ünver, “Kidney Exchange”, Quarterly Journal of Economics, 2004.
  • A. E. Roth, A. Postlewaite, “Weak versus Strong Domination in a Market with Indivisible Goods”, J. Math. Econ. 4(2), 1977 · C. d'Aspremont, L.-A. Gérard-Varet, “Incentives and Incomplete Information”, J. Public Econ. 11(1), 1979 · A. Abdulkadiroğlu, T. Sönmez, “School Choice: A Mechanism Design Approach”, AER 93(3), 2003.
  • E. Maskin, “Nash Equilibrium and Welfare Optimality”, Review of Economic Studies 66(1), 1999.
  • A. R. Karlin, Y. Peres, Game Theory, Alive, AMS, 2017 (mekanizma tasarımı, kararlı eşleştirme) · D. Easley, J. Kleinberg, Networks, Crowds, and Markets, Cambridge, 2010 (Bölüm 10 ve 15).
  • Ders sayfaları: Roughgarden CS364A · Shah CSC304 · Procaccia 15-896 · Dinitz AGT

Son

Bölüm 4: Mekanizma Tasarımı
Sonraki bölüm: Bölüm 5: Açık Artırmalar
Çalışma soruları · Terim sözlüğü
1 / 1 Sercan KÜLCÜ, Tüm hakları saklıdır.