Perkiraan TSP 1d dengan perbandingan linear?

21

Masalah jalur penjual keliling satu dimensi, tentu saja, sama dengan penyortiran, dan dengan demikian dapat diselesaikan dengan tepat dengan perbandingan dalam waktu , tetapi dirumuskan sedemikian rupa sehingga perkiraan serta tepat solusi masuk akal. Dalam model perhitungan di mana input adalah bilangan real, dan pembulatan ke bilangan bulat dimungkinkan, mudah untuk memperkirakan dalam faktor , untuk konstanta apa pun , pada waktu : cari min dan maks, bulatkan semuanya ke angka dalam jarak dari nilai aslinya, lalu gunakan jenis radix. Tetapi model dengan pembulatan memiliki teori kompleksitas yang bermasalah dan ini membuat saya bertanya-tanya, bagaimana dengan model komputasi yang lebih lemah?O(nlogn)1+O(nc)cO(n)(maxmin)n(c+1)

Jadi, seberapa akurat TSP satu dimensi dapat diperkirakan, dalam model perbandingan pohon linear perhitungan (setiap node perbandingan menguji tanda fungsi linear dari nilai input), dengan algoritma yang kompleksitas waktunya adalah ? Metode pembulatan yang sama memungkinkan setiap rasio perkiraan bentuk dapat dicapai (dengan menggunakan pencarian biner untuk melakukan pembulatan, dan pembulatan jauh lebih kasar untuk membuatnya cukup cepat). Tetapi apakah mungkin untuk mencapai bahkan rasio perkiraan seperti untuk beberapa ?o(nlogn)n1o(1)O(n1ϵ)ϵ>0

David Eppstein
sumber
Saya yang tidak terbiasa dengan 1D TSP. Bisakah Anda mendefinisikannya?
Tyson Williams
4
@Tyson Williams: Masalah jalur salesperson perjalanan 1D adalah kasus khusus dari masalah jalur salesperson perjalanan Euclidean di mana semua kota berada pada sumbu x. Atau secara formal, Anda diberi n bilangan real a_1, ..., a_n, dan tujuan Anda adalah menghasilkan permutasi π: {1, ..., n} → {1, ..., n} sedemikian rupa sehingga arganya_ {i = 1} ^ {n − 1} | a_ {π (i)} - a_ {π (i + 1)} | diminimalkan.
Tsuyoshi Ito

Jawaban:

10

EDIT (PEMBARUAN): Batas bawah dalam jawaban saya di bawah ini telah terbukti (dengan bukti berbeda) dalam "Tentang kerumitan perkiraan tur penjual keliling Euclidean dan pohon merentang minimum", oleh Das et al; Algorithmica 19: 447-460 (1997).


apakah mungkin untuk mencapai bahkan rasio perkiraan seperti untuk beberapa ϵ > 0 dalam waktu o ( n log n ) menggunakan algoritma berbasis perbandingan?O(n1ϵ)ϵ>0o(nlogn)

Tidak. Ini batas bawah.

Klaim. Untuk , setiap perbandingan berbasis n 1 - ϵ algoritma-aproximation membutuhkan perbandingan Ω ( ϵ n log n ) dalam kasus terburuk.ϵ>0n1ϵΩ(ϵnlogn)

Dengan "berbasis perbandingan" maksud saya algoritma apa pun yang hanya menanyakan input dengan permintaan biner (Benar / Salah).

Ini adalah upaya untuk membuktikan. Semoga tidak ada kesalahan. FWIW batas bawah tampaknya cenderung meluas ke algoritma acak.


Perbaiki sembarang dan sembarang kecil tetapi konstan ϵ > 0 .nϵ>0

Anggap saja instance input "permutasi" ( x 1 , x 2 , ... , x n ) yang merupakan permutasi dari [ n ] . Solusi optimal untuk setiap instance tersebut memiliki biaya n - 1 .n!(x1,x2,,xn)[n]n1

Tentukan biaya permutasi menjadi c ( π ) = i | π ( i + 1 ) - π ( i ) | . Model algoritma sebagai mengambil input permutasi π , mengeluarkan permutasi π , dan membayar biaya d ( π , π ) = c ( π π ) .πc(π)=i|π(i+1)π(i)|ππd(π,π)=c(ππ)

Tentukan sebagai jumlah minimum perbandingan untuk setiap algoritma berbasis perbandingan untuk mencapai rasio kompetitif n 1 - ϵ pada contoh-contoh ini. Karena opt adalah n - 1 , algoritma harus menjamin biaya paling banyak n 2 - ϵ .Cn1ϵn1n2ϵ

Kami akan menunjukkan .CΩ(ϵnlogn)

Tentukan sebagai, untuk kemungkinan output π , fraksi dari kemungkinan input yang mana output π akan mencapai biaya paling banyak n 2 - ϵ . Fraksi ini tidak bergantung pada π .Pππn2ϵπ

juga sama dengan probabilitas bahwa, untuk permutasi acak π , biayanya c ( π ) paling banyak n 2 - ϵ . (Untuk melihat alasannya, anggap π sebagai permutasi identitas I. Kemudian P adalah fraksi input yang paling banyak d ( π , I ) paling banyak n 2 - ϵ , tetapi d ( π , I ) = c ( π ) . )Pπc(π)n2ϵπIPd(π,I)n2ϵd(π,I)=c(π)

Lema 1. .Clog21/P

Bukti. Perbaiki semua algoritma yang selalu menggunakan perbandingan kurang dari Pohon keputusan untuk algoritma memiliki kedalaman kurang dari log 2 1 / P , jadi ada kurang dari 1 / P daun, dan, untuk beberapa permutasi output π , algoritma memberikan π sebagai output untuk lebih dari fraksi P dari input. Menurut definisi P , untuk setidaknya satu input seperti itu, output π memberikan biaya lebih dari n 2 - ϵ . QEDlog21/Plog21/P1/PππPPπn2ϵ

Lemma 2. .Pexp(Ω(ϵnlogn))

Sebelum kami memberikan bukti Lemma 2, perhatikan bahwa kedua lemma bersama-sama memberikan klaim:

C  log21P = log2exp(Ω(ϵnlogn)) = Ω(ϵnlogn).

Bukti Lemma 2. Biarkan menjadi permutasi acak. Ingat bahwa P sama dengan probabilitas bahwa biayanya c ( π ) paling banyak n 2 - ϵ . Katakanlah bahwa setiap pasangan ( i , i + 1 ) adalah tepi dengan biaya | π ( i + 1 ) - π ( i ) | , jadi c ( π ) adalah jumlah dari biaya tepi.πPc(π)n2ϵ(i,i+1)|π(i+1)π(i)|c(π)

Misalkan .c(π)n2ϵ

Kemudian, untuk apa pun , paling banyak n 2 - ϵ / q pada tepi memiliki biaya q atau lebih. Katakan bahwa tepi biaya kurang dari q yang murah .q>0n2ϵ/qqq

Perbaiki . Mengganti dan menyederhanakan, paling tidak n 1 - ϵ / 2 dari tepi tidak murah.q=n1ϵ/2n1ϵ/2

Jadi, paling tidak tepinya murah. Jadi, ada himpunan S yang berisi n / 2 tepi murah.nn1ϵ/2n/2Sn/2

Klaim. Untuk setiap himpunan dari n / 2 edge, probabilitas bahwa semua edge di S adalah paling murah exp ( - Ω ( ϵ n log n ) ) .Sn/2Sexp(Ω(ϵnlogn))

Sebelum kami membuktikan klaim, perhatikan bahwa itu menyiratkan lemma sebagai berikut. Dengan klaim, dan ikatan naif terikat, probabilitas bahwa ada yang ada set paling banyak ( nSexp(O(n)-Ω(ϵnlogn))exp(-Ω(ϵnlogn)).

(nn/2)exp(Ω(ϵnlogn))  2nexp(Ω(ϵnlogn))
  exp(O(n)Ω(ϵnlogn))  exp(Ω(ϵnlogn)).

Bukti Klaim. Pilih dengan proses berikut. Pilih π ( 1 ) secara seragam dari [ n ] , lalu pilih π ( 2 ) secara seragam dari [ n ] - { π ( 1 ) } , lalu pilih π ( 3 ) secara seragam dari [ n ] - { π ( 1 ) , π ( 2 ) } , dll.ππ(1)[n]π(2)[n]{π(1)}π(3)[n]{π(1),π(2)}

Pertimbangkan setiap tepi di S . Pertimbangkan waktu tepat setelah π ( i ) telah dipilih, ketika π ( i + 1 ) akan dipilih. Terlepas dari pilihan i pertama (untuk π ( j ) untuk j i ), setidaknya ada n - i pilihan untuk π ( i + 1 ) , dan paling banyak 2 n 1(i,i+1)Sπ(i)π(i+1)iπ(j)jiniπ(i+1) dari orang-orang pilihan akan memberikan tepi(i,i+1) biaya kurang dari n 1 - ε / 2 (menjadikannya murah).2n1ϵ/2(i,i+1)n1ϵ/2

Dengan demikian, dikondisikan pada pilihan pertama , probabilitas bahwa tepi murah paling banyak 2 n 1 - ϵ / 2i . Dengan demikian, probabilitas bahwa semua tepin/2diSadalah paling murah (i,i+1)S2n 1 - ϵ / 22n1ϵ/2nin/2S Sejak| S| n/2, setidaknya adan/4tepi diS dengann-in/4. Dengan demikian, produk ini paling banyak (2n 1 - ϵ / 2

(i,i+1)S2n1ϵ/2ni.
|S|n/2n/4Snin/4
(2n1ϵ/2n/4)n/4  (8nϵ/2)n/4 = exp(O(n)Ω(ϵnlogn)) = exp(Ω(ϵnlogn)).

QED

Neal Young
sumber
6
ps saya mendapat permintaan untuk membuat citable ini, jadi saya taruh di arvix.org di sini .
Neal Young