Verimli günlük alanı algoritmaları


17

Deterministik günlük alanında ( ) karar verilebilen herhangi bir sorunun en çok polinom zamanında ( P ) oluştuğunu görmek kolaydır . Bilinen birçok günlük alanı algoritması (Örneğin: yönlendirilmemiş st-bağlanabilirlik, düzlemsel grafik izomorfizmi) k'nin delice büyük olduğu O ( n k ) ' de çalışır.LPO(nk)k

  • Ben Çözülebilir eşzamanlı deterministik logspace ve olduğu bilinen doğal sorunların örnekler arıyorum zaman nerede k 10 . 10 hakkında özel bir şey yok. Şu anda bilinen günlük alanı algoritmalarına baktığımda, k 10'un yeterince ilginç olduğunu düşünüyorum .O(nk)k10k10
  • Aleliunas ve ark. yönsüz st-bağlantı içinde olduğunu göstermiştir (randomize logspace). Algoritmalarının çalışma süresi O ( n 3 ) 'tür . Eş zamanlı olarak çözülebilir doğal problemler vardır R L lineer zaman yakın ve doğrusal bir zaman (ya da), yani O ( n, log i n ) zaman?RLO(n3)RLO(nlogin)

Düzenleme: Daha ilginç şeyler yapmak için en azından -hard sorunlara bakalım.NC1


Courcelle teoreminin günlük alanına yönelik herhangi bir zaman analizi var mı? eccc.uni-trier.de/report/2010/062
Hsien-Chih Chang 張顯 之

Yanıtlar:


10

Sanırım Tek kaynaklı Tek lavabo Düzlemsel DAG (SSPD) erişilebilirliği, mütevazı bir çalışma süresine sahip günlük alanı algoritmasına sahiptir ( ?). Tek kaynaklı Çok lavabolu Düzlemsel DAG Erişilebilirlik (SMPD) algoritması hakkında o kadar emin değilim.O(n2)

Ref: Eric Allender, David A. Mix Barrington, Tanmoy Chakraborty, Samir Datta, Sambuddha Roy: Düzlemsel ve Izgara Grafik Erişilebilirlik Sorunları. Teori Bilgisayar Sist. 45 (4): 675-723 (2009)

Ayrıca, düzlemsellik testi ve gömme için yeni bir günlük alanı algoritması mütevazi polinom zamanında çalışır (elbette modulo yönlendirilmemiş ulaşılabilirlik)

Referans: Samir Datta, Gautam Prakriya: Düzlemsel Test Revisited CoRR abs / 1101.2637: (2011)

Son olarak, burada mütevazı bir çalışma süresi (modulo yönlendirilmemiş ulaşılabilirlik) viz ile bir günlük alanı algo sahip basit bir oyuncak sorunu var. Dış Düzlem İzomorfizması.


1
O(n2)uv

9

Bu cevap, gerçek bir araştırma probleminden çok bir oyuncak problemidir.

Programcı arkadaşlara vermek için tipik bir günlük alanı algoritması örneğim aşağıdaki bulmaca:

Boyutunun bilinmeyen bağlantılı bir listesi verildi (n) ve sabit sayıda işaretçi değişkeni kullanarak bağlı listenin döngü yapıp yapmadığını belirleyin.

Çözüm, iki günlük kullanan bir günlük alanı algoritmasıdır. Ö(günlükn)bağlantılı düğümlere büyük boyutlu işaretçiler. Her ikisini de bağlı listenin başında başlatın ve aşağıdaki yinelemeli prosedürü uygulayın:

  • Listedeki ilk işaretçiyi bir adım ilerletin.
  • Listedeki ikinci işaretçiyi iki adım ilerletin.
  • İşaretçilerden herhangi biri sonu bulursa false değerini döndürün.
  • Düğümler aynı düğümü gösteriyorsa true değerini döndürün.
  • Aksi takdirde tekrarlayın.

Bu süreç sonunda sona erecek. Döngü yoksa, alırnadımları tekrarlayın. Bir döngü varsa, iki adımlı işaretçi tek adımlı işaretçiyi çarpışmadan geçiremez ve bu, tek adımlı işaretçi döngüyü bitirmeden önce gerçekleşir (n ) Adımları tekrarlayın.


3
Evet. Bu kategoriye giren birçok bağlantılı liste problemi (ekleme, silme, birleştirme) vardır. İşleri daha ilginç hale getirmek için en azından sorunlara bakalımN-C1-zor.
Shiva Kintali

3

Deutsch-Schorr-Waite algoritması birÖ(n)varyantları birçok çöp toplayıcı uygulamasının kalbini oluşturan grafik işaretleme algoritması. Sorun, kök düğümden erişilebilen bir grafiğin düğümlerini işaretlemektir. Saf özyinelemeli geçiş, ziyaret edilen düğümlerin yığınını tutmak için doğrusal alana ihtiyaç duyar, ancak DSW algoritması bu yığını kurnaz bir bağlantı ters hile ile kodlar - bir kenarı takip ettiğinde, kaynağı ve hedefi tersine çevirmek için takip ettiği kenarı değiştirir, bu nedenle yığınını grafiğin kendisinde kodlayabilir.

IIUC, bence bu sizin N-C1çünkü ek işlemciler eğer grafik bağlantılı bir liste olarak düzenlenmişse grafiği geçmenize yardımcı olmaz. (Bu aslında pratik çöp toplama algoritmaları için büyük bir PITA!)


2
Grafiği değiştirdiğiniz için, bu, giriş bandının salt okunur olması gereken bir günlük alanı algoritması değildir. Bu kendi başına ilginç bir algoritma.
Derrick Stolee
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.