Setiap masalah -Lengkap, tidak mungkin untuk memiliki algoritma paralel efisien. MengapaP
Keberadaan masalah -Lengkap adalah yang paling petunjuk penting bahwa . Pertanyaannya kemudian, mengapa dugaan ini relevan dengan komputasi paralel? Mari kita mulai dengan sumber daya yang digunakan dalam perhitungan. Untuk komputasi berurutan: waktu dan ruang; untuk komputasi paralel: waktu dan perangkat keras (jumlah prosesor). Apakah ada hubungannya? Iya nih! Ruang berurutan ↔ waktu paralel; Waktu berurutan ↔ perangkat keras paralel. Korespondensi antara ruang sekuensial dan waktu paralel tampaknya independen dari model komputasi paralel yang diadopsi; ini mengarah pada yang berikut, yang disebut tesis komputasi paralel yang tidak terbukti.P(P∩POLYLOGSPACE)≠P
(Chandra dan Stockmeyer) Setiap perhitungan TM dengan kompleksitas ruang dapat disimulasikan dalam model komputasi paralel dalam waktu dan setiap perhitungan model komputasi paralel dengan kompleksitas waktu dapat disimulasikan oleh TM dengan kompleksitas ruang .T ( n ) = O ( S ( n ) O ( 1 ) ) T ′ ( n ) S ′ ( n ) = O ( T ′ ( n ) O ( 1 ) )S(n)T(n)=O(S(n)O(1))T′(n)S′(n)=O(T′(n)O(1))
Kelas masalah yang dapat dipecahkan secara berurutan dalam ruang polinom adalah dan sekumpulan masalah yang dapat dipecahkan dalam waktu polinom adalah Karena dianggap sebagai kelas masalah yang jauh lebih besar daripada , tesis ini menghitung peningkatan efektif yang dimungkinkan oleh paralelisme. Konsekuensi dari tesis ini adalah bahwa PRAM dapat menyelesaikan masalah lengkap dalam waktu polinomial ... Sayangnya, tidak! Tesis komputasi paralel menyiratkan bahwa kita benar-benar dapat menangani masalah-masalah yang dimiliki olehP P S P A C E P N P P S P A C EPSPACEPPSPACEPNPPSPACE... tetapi ini membutuhkan sejumlah prosesor yang eksponensial! Trade-off time-space berfungsi: Waktu eksponensial pada model komputasi sekuensial diubah menjadi sejumlah eksponensial prosesor pada model komputasi paralel, sedangkan ruang polinomial pada model komputasi sekuensial diubah menjadi waktu polinomial pada paralel. model komputasi.
Ini trade-off lebih mudah untuk memahami jika kita mencoba untuk membatasi baik waktu paralel dan hardware paralel: jika paralel Model komputasi memiliki sejumlah polinomial prosesor, maka kelas masalah dipecahkan dalam waktu polinomial paralel . Jika kita membatasi jumlah prosesor menjadi polinomial, kita dapat meningkatkan kinerja mesin sekuensial, tetapi tidak lebih dari faktor polinomial. Dengan demikian kita dapat mengurangi tingkat polinomial yang merepresentasikan kompleksitas waktu, tetapi kita tidak dapat menggunakan paralelisme untuk mengurangi biaya eksponensial menjadi biaya polinomial.P
Masalah diselesaikan secara paralel dengan kompleksitas waktu polinomial adalah mereka masalah milik . Batasan polinomial pada jumlah prosesor mengarah ke model komputasi paralel yang setara dengan TM. Ada dua pertimbangan praktis yang penting: jumlah prosesor yang jumlahnya banyak / terjangkau? Dalam praktiknya, jumlah prosesor polinomial dimaksudkan untuk linear atau tertutup. Waktu subpolinomial mana yang dapat dicapai? Ternyata hampir semua masalah layak yang sangat paralel dapat mencapai waktu paralel polylogarithmic. Secara paralel, kompleksitas waktu yang logaritmik pada panjang input mewakili komputasi paralel yang efisien. Algoritma paralel dianggap efisien jika, mengingat jumlah prosesor yang banyak, kompleksitas waktunya adalah polylogaritmik.P
Diberikan masalah mana dan adalah konstanta, tesis komputasi paralel menyiratkan adanya algoritma paralel untuk dengan kompleksitas waktu di mana adalah konstan. Perbandingan antara waktu berurutan dan paralel memungkinkan mengklasifikasikan sebagai masalah yang sangat dapat diparalelkan (dari perspektif waktu).k h R O ( ( l o g n ) k ′ ) k ′ RR∈TIME_SPACETM(nk,(logn)h)khRO((logn)k′)k′R
Dari tesis komputasi paralel, dapat bahwa adalah kelas masalah yang sangat paralel. tidak mengandung masalah yang lengkap terkait dengan pengurangan ruang-log; ini berarti . TampaknyaP O L Y L O G S P A C E P O L Y L O G S P A C E ≠ PPOLYLOGSPACEPOLYLOGSPACEPOLYLOGSPACE≠P
- POLYLOGSPACE⊄P
- P⊄POLYLOGSPACE
P P - ( P ∩ P O L Y L O G S P A C E )P∩POLYLOGSPACE berisi masalah yang dapat dipecahkan dalam waktu polinomial menggunakan ruang polylogarithmic. masalah lengkap mungkin milik .PP−(P∩POLYLOGSPACE)
O ( ( l o g n ) k ) ) O ( f ( n ) ) f n N C ⊂ ( P ∩ P O L Y L O G S P A C E )NC (kelas Nick - disebut untuk menghormati Nicholas Pippenger, yang pertama mengidentifikasi dan mencirikannya pada 1979) adalah kelas masalah yang dapat diselesaikan dalam waktu polylogarithmic (yaitu, dengan kompleksitas waktu dengan jumlah prosesor polinom (yaitu, dibatasi oleh untuk beberapa fungsi polinom mana adalah ukuran masalah) Tesis perhitungan paralel menyiratkan .O((logn)k))O(f(n))fnNC⊂(P∩POLYLOGSPACE)
Namun, sayangnya menurut definisi juga mencakup banyak masalah yang tidak dapat diparalelkan secara efisien. Contoh yang paling terkenal adalah pencarian biner paralel . Masalahnya adalah bahwa masalah ini memiliki kompleksitas waktu polylogarithmic bahkan untuk = 1. Algoritma berurutan yang membutuhkan paling banyak waktu logaritmik dalam kasus terburuk adalah di terlepas dari kelayakan paralelnya!p N CNCpNC
Sekarang, kita akhirnya bisa menjelaskan mengapa masalah -complete adalah masalah paralel yang paling sulit. Diberikan masalah lengkap , sangat tidak mungkin keberadaan algoritma paralel yang efisien: jika algoritma paralel seperti itu akan ada dengan kompleksitas waktu , maka tesis komputasi paralel akan menyiratkan adanya algoritma berurutan dengan kompleksitas ruang untuk masalah yang sama. Karena adalah masalah -Lengkap ini pada gilirannya akan berarti bahwa setiap masalah dalam dapat diselesaikan dalam ruang poli-log: . Seperti yang sudah Anda ketahui, kami malah percaya ituPPQO((logn)k)O((logn)k′)QPP(P∩POLYLOGSPACE)=P(P∩POLYLOGSPACE)⊂P , meskipun kami belum dapat membuktikan ini.
Satu pengamatan terakhir, tentang persyaratan prosesor polinomial. Ya, itu pernyataan teoretis. Dalam praktiknya: persyaratan prosesor yang tumbuh lebih cepat dari ukuran masalah mungkin tidak terlalu berguna.