• Sonuç bulunamadı

Algoritmalara Giriş 6.046J/18.401J

N/A
N/A
Protected

Academic year: 2022

Share "Algoritmalara Giriş 6.046J/18.401J"

Copied!
40
0
0

Yükleniyor.... (view fulltext now)

Tam metin

(1)

Algoritmalara Giriş

D

ERS

14

Yarışmacı Çözümleme

Kendini Düzenleyen Listeler

Öne Taşıma - Buluşsal Yaklaşım

Öne Taşımanın Yarışmacı Çözümlemesi

Prof. Charles E. Leiserson

6.046J/18.401J

(2)

Kendini Düzenleyen Listeler

n elemanlı L listesi

• Erişim(x) işlemi seviyeL(x) = x’in L’nin başına olan uzaklığına mal olur.

L listesi, komşu elemanların 1 maliyetle yer değiştirmesi ile yeniden düzenlenebilir.

(3)

Kendini Düzenleyen Listeler

n elemanlı L listesi

• Erişim(x) işlemi seviyeL(x) = x’in L’nin başına olan uzaklığına mal olur.

L listesi, komşu elemanların 1 maliyetle yer değiştirmesi ile yeniden düzenlenebilir.

Örnek :

(4)

Kendini Düzenleyen Listeler

n elemanlı L listesi

• Erişim(x) işlemi seviyeL(x) = x’in L’nin başına olan uzaklığına mal olur.

L listesi, komşu elemanların 1 maliyetle yer değiştirmesi ile yeniden düzenlenebilir.

Örnek :

14 anahtarlı elemana erişim 4’e mal olur.

(5)

Kendini Düzenleyen Listeler

n elemanlı L listesi

• Erişim(x) işlemi seviyeL(x) = x’in L’nin başına olan uzaklığına mal olur.

L listesi, komşu elemanların 1 maliyetle yer değiştirmesi ile yeniden düzenlenebilir.

Örnek :

3 ile 50’nin yer değiştirmesi 1’e mal olur.

(6)

Çevrimiçi ve Çevrimdışı Problemler

Tanım. İşlemler serisi S her seferinde bir kez oluşturulur. Her işlem için,

gelecekle ilgili herhangi bir bilgi

olmaksızın bir çevrimiçi algoritma A, işlemi çalıştırır. (örn. Tetris)

Çevrimdışı bir algoritma bütün S serisini en baştan görür.

Amaç : Toplam maliyet CA(S)’yi en aza indirgemektir.

Tetris Oyunu

(7)

Kendini Düzenleyen Listelerin En Kötü Durum Analizi

Rakip her zaman, L listesinin kuyruğundaki n’inci

elemana erişir. Herhangi bir çevrimiçi A algoritması için en kötü durum :

(8)

Kendini Düzenleyen Listelerin Ortalama Durum Analizi

x elemanının p(x) ihtimali ile erişildiğini varsayalım. Bu durumda;

seviyeL(x)

Bu, L listesi p’ye göre azalan şekilde sıralı olursa en aza indirgenir.

Buluş : L listesindeki her elemanın kaç kere erişildiğini gösteren bir liste tutalım, L’yi bu listeye göre sıralayalım.

(9)

Öne Taşıma Buluşu

Pratik : Geliştiriciler, Öne Taşıma (ÖT) Buluşunun iyi sonuçlar verdiğini tecrübe ettiler.

Fikir : x’e eriştikten sonra, x’i listenin en başına sıra değiştirmelerle taşımak.

maliyet = 2 . seviyeL(x)

ÖT Buluşu, S dizisindeki erişim yerelliğine iyi tepki verir.

(10)

Yarışmacı Çözümleme

Tanım : Eğer bir k sabiti, herhangi bir S işlemler dizisi için;

durumunu sağlıyorsa, çevrimiçi A algoritması α – yarışmacıdır.

Burada OPT en uygun çevrimdışı algoritmadır. (“Tanrının algoritması”)

(11)

Öne Taşıma O(1) yarışmacıdır

Teorem : ÖT, kendini düzenleyen listeler için 4-yarışmacıdır.

(12)

Teorem : ÖT, kendini düzenleyen listeler için 4-yarışmacıdır.

İspat. Li, i’inci erişimden sonraki ÖT listesi olsun, Li* ise i’inci erişimden sonra en uygun liste olsun.

ci = ÖT’deki i’inci işlem için maliyet

= 2 . seviyeL i-1(x) , eğer x’e erişiliyorsa.

c

i

* =

ÖT’deki i’inci işlem için maliyet

= seviyeLi-1*(x) + ti

ti en uygun sıra değiştirme sayısıdır.

Öne Taşıma O(1) yarışmacıdır

(13)

Potansiyel Fonksiyonu

Potansiyel Fonksiyonu tanımlayın :

Ters çevirme

ve

(14)

Potansiyel Fonksiyonu tanımlayın :

Ters çevirme

ve

Örnek :

Potansiyel Fonksiyonu

(15)

Potansiyel Fonksiyonu tanımlayın :

Ters çevirme

ve

Örnek :

Potansiyel Fonksiyonu

(16)

Potansiyel Fonksiyonu

Potansiyel Fonksiyonu tanımlayın :

Ters çevirme

ve

Örnek :

(17)

Potansiyel Fonksiyonu

Potansiyel Fonksiyonu tanımlayın :

Ters çevirme

ve

Örnek :

(18)

Potansiyel Fonksiyonu

Potansiyel Fonksiyonu tanımlayın :

Ters çevirme

ve

Örnek :

(19)

Potansiyel Fonksiyonu

Potansiyel Fonksiyonu tanımlayın :

Ters çevirme

ve

Örnek :

(20)

Potansiyel Fonksiyonu

Potansiyel Fonksiyonu tanımlayın :

Ters çevirme

ve

Örnek :

(21)

Potansiyel Fonksiyonu

Potansiyel Fonksiyonu tanımlayın :

Ters çevirme

ve

Örnek :

(22)

Potansiyel Fonksiyonu

Potansiyel Fonksiyonu tanımlayın :

Ters çevirme

ve

(23)

Potansiyel Fonksiyonu

Potansiyel Fonksiyonu tanımlayın :

Ters çevirme

ve

• i=0, 1, …., için

• Eğer ÖT ve en uygun algoritma aynı liste ile başlıyorsa;

(24)

Potansiyel Fonksiyonu

Potansiyel Fonksiyonu tanımlayın :

Ters çevirme

ve

• i=0, 1, …., için

• Eğer ÖT ve en uygun algoritma aynı liste ile başlıyorsa;

1 değişimle Ф ne kadar değişir?

• Bir değişim 1 ters çevirme yaratır veya yok eder.

(25)

Erişim sırasında ne olur?

i’inci işlemin x’e eriştiğini düşünün ve şunu tanımlayın;

ve ve ve

ve

(26)

Erişim sırasında ne olur?

(27)

Erişim sırasında ne olur?

ÖT x’i öne hareket ettirdiğinde, ters çevirme yaratır ve ters çevirmeyi yok eder. En uygun algoritmada, her bir yer değiştirme ters çevirme yaratır. Bu durumda;

(28)

Amortize edilmiş maliyet

ÖT’nin i’inci işlemi için Ф göre amortize edilmiş maliyet :

(29)

Amortize edilmiş maliyet

ÖT’nin i’inci işlemi için Ф göre amortize edilmiş maliyet :

(30)

Amortize edilmiş maliyet

ÖT’nin i’inci işlemi için Ф göre amortize edilmiş maliyet :

iken.

(31)

Amortize edilmiş maliyet

ÖT’nin i’inci işlemi için Ф göre amortize edilmiş maliyet :

(32)

Amortize edilmiş maliyet

ÖT’nin i’inci işlemi için Ф göre amortize edilmiş maliyet :

(33)

Amortize edilmiş maliyet

ÖT’nin i’inci işlemi için Ф göre amortize edilmiş maliyet :

iken

(34)

Amortize edilmiş maliyet

ÖT’nin i’inci işlemi için Ф göre amortize edilmiş maliyet :

(35)

Büyük Final

Bu durumda, şuna sahibiz;

(36)

Büyük Final

Bu durumda, şuna sahibiz;

(37)

Büyük Final

Bu durumda, şuna sahibiz;

(38)

Büyük Final

Bu durumda, şuna sahibiz;

ve iken.

(39)

EK

Eğer x’i öne taşıyan yer değiştirmeleri bedava kabul edersek, bu durumda öne taşıma 2-yarışmacı olur.

(40)

EK

Eğer x’i öne taşıyan yer değiştirmeleri bedava kabul edersek, bu durumda öne taşıma 2-yarışmacı olur.

Eğer L0 ≠ L0* ise ne olur?

• Bu durumda, Ф(L0) en kötü durumda Θ(n2) olur.

• Ayrıca, CMTF(S) ≤ 4 olur. n2, |S| → ∞ bir sabitse, COPT(S) + Θ(n2) ise hala 4-yarışmacıdır.

Referanslar

Benzer Belgeler

Firmaların, Ar-Ge merkezlerindeki Ar-Ge harcamalarına ilişkin olarak Ar-Ge indiriminden 5746 sayılı Kanuna göre faydalanmaları mümkün olmakla birlikte 5520 sayılı Kurumlar

Dijital ve temassız ödeme için dönüm noktası olan Covid-19 döneminde, Mastercard, dünya çapında küresel olarak temassız işlemlerde %40'ın üzerinde bir büyüme

Önümüzdeki hafta genel olarak Euro bölgesinde açıklanacak PMI rakamları ön plana çıkabilir. Teknik görünümde ise endeksin geniş bant aralığıonda yatay seyrini

Teknik görünüme baktığımızda, kısa vadeli yükseliş kanalı oluşturan paritede 1.2455 direncinin aşılması durumunda 1.2510-1.2570 direnç seviyeleri olarak

Teknik olarak kısa vadeli yükseliş kanalı içerisinde hareketine devam eden ons altında destek olarak 1209-1202 seviyeleri takip edilebilir.. Olası yükselişlerde 1219

Önümüzdeki hafta kritik ABD Tarım Dışı İstihdam verisi ve Çekirdek Kişisel Tüketim Giderleri Fiyat Endeksi (PCE) verisi takip edilecek.. Ancak gözler bugün için FED

Hızlı nüfus artışı ve son yıllarda özellikle Kuzey Afrika ülkelerinde gözlenen şehirleşme projeleri doğrultusunda inşaat sektörü gerek kısa gerekse uzun vadede en

ViewSonic 'in geliştirdiği dahili renk yönetim sistemi ile yüksek standartlarda renk akıcılığı ve beyaz renk dengesi sağlaması sayesinde üstün renk kalitesi elde