fbpx
วิกิพีเดีย

การลดรูป (ความซับซ้อน)

ในด้านของ ทฤษฎีการคำนวณได้ และ ทฤษฎีความซับซ้อนในการคำนวณ คำว่า การลดรูป นั้นหมายถึงการพิจารณาการแก้ปัญหาอย่างหนึ่งให้ไปเป็นการแก้ปัญหาอีกปัญหาหนึ่ง ซึ่งบางทีอาจจะรู้สึกว่าปัญหานั้นไม่เกี่ยวกันเลยก็ได้ ถ้าเรากล่าวว่า A ลดรูปเป็น B เราหมายความว่าการแก้ปัญหา B ได้จะส่งผลให้เราสามารถแก้ปัญหา A ได้ด้วย เพราะฉะนั้น A จะไม่ยากไปกว่า B

เกริ่นนำ

การลดรูปในเชิงของทฤษฎีความซับซ้อนในการคำนวณนั้นมีมากมายหลายรูปแบบ แต่ละแบบจะนำมาใช้ในแง่ที่แตกต่างกัน แล้วแต่ว่าเรากำลังสนใจปัญหาแบบใด เช่นถ้าเราสนใจปัญหาของการนับ เราจะบอกว่าการนับจำนวนในเซ็ต A ลดรูปไปเป็นการนับจำนวนในเซ็ต B รูปแบบของการลดรูปที่เรานำมาใช้ก็ควรเป็นการลดรูปที่ไม่ทำให้จำนวนนั้นเปลี่ยนไป การลดรูปแบบนี้เรียกว่า (parsimonious reduction) การลดรูปที่มักจะใช้กันบ่อยๆก็คือ

  1. การลดรูปคุก (Cook reduction)
  2. การลดรูปคาร์ป (Karp reduction)
  3. การลดรูปเลวิน (Levin reduction)

ทั้งสามแบบที่กล่าวมานี้เป็นการลดรูปแบบใช้เวลาเป็นพหุนามกับขนาดของอินพุต และถูกสร้างขึ้นมาเพื่อใช้นิยามความยากของเอ็นพี การลดรูปคุกจะมีลักษณะเหมือนกับการลดรูปทัวริง (Turing reduction) ในเชิงของทฤษฎีการคำนวณได้ (ที่ไม่สนใจว่าเวลาในการทำงานที่ใช้เป็นเท่าไร แต่จะเน้นที่การคำนวณได้เท่านั้น) การลดรูปคาร์ปจะเหมือนกับการลดรูปแบบเอ็ม (m-reduction or many-to-one reduction)

การลดรูปทั้งสามแบบถูกจัดลำดับตามความรุนแรงของเงื่อนไขในการลดรูป (การลดรูปแบบเลวินมีเงื่อนไขที่รุนแรงที่สุด) แต่การลดรูปที่นักเรียนส่วนใหญ่ได้เรียนกันในชั้นเรียนคือ การลดรูปคุก และการลดรูปคาร์ป ซึ่งสามารถนำมาใช้ได้ง่ายกว่า และเพียงพอในการนำมาศึกษาเอ็นพีบริบูรณ์ นอกจากนี้ยังมีการลดรูปอีกแบบหนึ่งที่เป็นที่นิยมในหมู่ของ "นักทฤษฎีการคำนวณได้" (Computability Theorist) ก็คือ การลดรูปแบบตารางค่าความจริง (Truth table reduction or tt-reduction) ซึ่งมีระดับความรุนแรงของเงื่อนไขมากกว่าการลดรูปทัวริง แต่น้อยกว่าการลดรูปแบบเอ็ม แต่เราไม่ขอกล่าวถึงรายละเอียดในที่นี้

การลดรูปที่กล่าวมาทั้งหมดเป็นการลดรูปจากปัญหาหนึ่งไปอีกปัญหาหนึ่ง นอกจากนี้ยังมีการลดรูประหว่างปัญหาเดียวกันที่เรียกว่า การลดรูปตัวเอง (Self-reduction) และการลดรูปตัวเองแบบสุ่ม (Random self-reduction) ซึ่งมีประโยชน์อย่างมากในการศึกษาทฤษฎีความซับซ้อนในการคำนวณเช่นกัน

นิยาม

แม้ว่าการลดรูปที่เราใช้จะสามารถเป็นการลดรูปแบบใดก็ได้ แต่เพื่อความสะดวกในการนิยาม เราจะมาพิจารณาการลดรูปแบบที่ใช้เวลาเป็นฟังก์ชันพหุนามกับขนาดของอินพุตกัน

การลดรูปคุก

เราจะกล่าวว่าปัญหา   ลดรูปแบบคุกไปเป็นปัญหา   เมื่อ มีขั้นตอนวิธี A ที่สามารถเรียกใช้ ออราเคิล   และ

 

โดยที่ A ทำงานในเวลาที่เป็นฟังก์ชันพหุนามกับขนาดของอินพุต

วิธีหนึ่งในการมองว่า A ลดรูปแบบคุกไปเป็น B ก็คือ การที่แก้ปัญหา A ได้อย่างมีประสิทธิภาพถ้าเรามี B เป็น subroutine แล้วเรียกใช้ได้ พิจารณาตัวอย่างของปัญหากลุ่มพรรคพวกดังนี้

การลดรูปคาร์ป

เราจะกล่าวว่าปัญหา   ลดรูปแบบคาร์ปไปเป็นปัญหา   เมื่อมีฟังก์ชัน f ที่สามารถคำนวณได้ในเวลาที่เป็นพหุนามกับขนาดของอินพุต และ

 

การลดรูปคาร์ปค่อนข้างจะมีเงื่อนไขที่รุนแรงกว่าการลดรูปคุก (จะเห็นได้ชัดเจนว่า ถ้า A สามารถลดรูปคาร์ปเป็น B ได้ จะส่งผลให้ A สามารถลดรูปคุกเป็น B ได้เช่นกัน) การลดรูปคาร์ปนี้เป็นการลดรูปที่เหมาะสมที่สุดในการศึกษาปัญหาเอ็นพีบริบูรณ์ และเป็นที่นิยมในการนำมาสอนในชั้นเรียนปริญญาตรี ตัวอย่างของการลดรูปคาร์ปเช่น การลดรูปจากปัญหาความสอดคล้องแบบบูล (SAT) ไปเป็น ปัญหา 3-SAT อธิบายอย่างย่อได้ดังต่อไปนี้

การลดรูปเลวิน

การลดรูปเลวินนี้ โดยมากแล้วจะไม่ค่อยได้เห็นกันเท่าไรนัก นิยามแบบเป็นทางการคือ เราจะกล่าวว่าปัญหา   สามารถลดรูปเลวินไปเป็นปัญหา   ได้ เมื่อมีฟังก์ชัน f g และ h ที่มีสมบัติคือ

  •  
  • สำหรับทุก x,y ถ้า y เป็นบทพิสูจน์ของ x ในปัญหา   แล้ว g (x,y) จะเป็นบทพิสูจน์ของ f (x) ใน  
  • สำหรับทุก x,z ถ้า z เป็นบทพิสูจน์ของ f (x) ในปัญหา   แล้ว h (x,z) จะเป็นบทพิสูจน์ของ x ใน  

สังเกตได้อย่างหนึ่งว่าการลดรูปเลวินส่งผลให้เกิดการลดรูปคาร์ปและคุกไปด้วย แต่มากไปกว่านั้นการลดรูปเลวินยังให้โอกาสในการแปลงบทพิสูจน์ระหว่างสองปัญหา โดย g ทำหน้าที่แปลงบทพิสูจน์ของ   ไปเป็น   ส่วน h ทำหน้าที่กลับกัน ส่วนนี้ของการลดรูปเลวินมีข้อดีคือ ถ้าเราพิสูจน์ได้ว่าปัญหาการตัดสินใจ A ลดรูปแบบเลวินไปเป็นปัญหาการตัดสินใจ B เราสามารถสรุปได้ทันทีว่าปัญหาการค้นหาคำตอบ (search problem) ของ A ลดรูปไปเป็นปัญหาการค้นหาคำตอบของ B ด้วย (เพราะว่าหลังจากเราแก้ปัญหา B และค้นหาบทพิสูจน์ (คำตอบ) ได้ เราสามารถใช้ h ในการแปลงบทพิสูจน์ของ B กลับไปเป็นบทพิสูจน์ของ A ได้)

พิจารณาตัวอย่าง ...

ประโยชน์ของการลดรูป

การลดรูปแบบอื่นๆ

การลดร, ความซ, บซ, อน, บทความน, ไม, การอ, างอ, งจากแหล, งท, มาใดกร, ณาช, วยปร, บปร, งบทความน, โดยเพ, มการอ, างอ, งแหล, งท, มาท, าเช, อถ, เน, อความท, ไม, แหล, งท, มาอาจถ, กค, ดค, านหร, อลบออก, เร, ยนร, าจะนำสารแม, แบบน, ออกได, อย, างไรและเม, อไร, ในด, านของ, ทฤ. bthkhwamniimmikarxangxingcakaehlngthimaidkrunachwyprbprungbthkhwamni odyephimkarxangxingaehlngthimathinaechuxthux enuxkhwamthiimmiaehlngthimaxacthukkhdkhanhruxlbxxk eriynruwacanasaraemaebbnixxkidxyangiraelaemuxir indankhxng thvsdikarkhanwnid aela thvsdikhwamsbsxninkarkhanwn khawa karldrup nnhmaythungkarphicarnakaraekpyhaxyanghnungihipepnkaraekpyhaxikpyhahnung sungbangthixaccarusukwapyhannimekiywknelykid thaeraklawwa A ldrupepn B erahmaykhwamwakaraekpyha B idcasngphliherasamarthaekpyha A iddwy ephraachann A caimyakipkwa B enuxha 1 ekrinna 2 niyam 2 1 karldrupkhuk 2 2 karldrupkharp 2 3 karldrupelwin 3 praoychnkhxngkarldrup 4 karldrupaebbxunekrinna aekikhkarldrupinechingkhxngthvsdikhwamsbsxninkarkhanwnnnmimakmayhlayrupaebb aetlaaebbcanamaichinaengthiaetktangkn aelwaetwaerakalngsnicpyhaaebbid echnthaerasnicpyhakhxngkarnb eracabxkwakarnbcanwninest A ldrupipepnkarnbcanwninest B rupaebbkhxngkarldrupthieranamaichkkhwrepnkarldrupthiimthaihcanwnnnepliynip karldrupaebbnieriykwa parsimonious reduction karldrupthimkcaichknbxykkhux karldrupkhuk Cook reduction karldrupkharp Karp reduction karldrupelwin Levin reduction thngsamaebbthiklawmaniepnkarldrupaebbichewlaepnphhunamkbkhnadkhxngxinphut aelathuksrangkhunmaephuxichniyamkhwamyakkhxngexnphi karldrupkhukcamilksnaehmuxnkbkarldrupthwring Turing reduction inechingkhxngthvsdikarkhanwnid thiimsnicwaewlainkarthanganthiichepnethair aetcaennthikarkhanwnidethann karldrupkharpcaehmuxnkbkarldrupaebbexm m reduction or many to one reduction karldrupthngsamaebbthukcdladbtamkhwamrunaerngkhxngenguxnikhinkarldrup karldrupaebbelwinmienguxnikhthirunaerngthisud aetkarldrupthinkeriynswnihyideriynkninchneriynkhux karldrupkhuk aelakarldrupkharp sungsamarthnamaichidngaykwa aelaephiyngphxinkarnamasuksaexnphibriburn nxkcakniyngmikarldrupxikaebbhnungthiepnthiniyminhmukhxng nkthvsdikarkhanwnid Computability Theorist kkhux karldrupaebbtarangkhakhwamcring Truth table reduction or tt reduction sungmiradbkhwamrunaerngkhxngenguxnikhmakkwakarldrupthwring aetnxykwakarldrupaebbexm aeteraimkhxklawthungraylaexiydinthinikarldrupthiklawmathnghmdepnkarldrupcakpyhahnungipxikpyhahnung nxkcakniyngmikarldruprahwangpyhaediywknthieriykwa karldruptwexng Self reduction aelakarldruptwexngaebbsum Random self reduction sungmipraoychnxyangmakinkarsuksathvsdikhwamsbsxninkarkhanwnechnknniyam aekikhaemwakarldrupthieraichcasamarthepnkarldrupaebbidkid aetephuxkhwamsadwkinkarniyam eracamaphicarnakarldrupaebbthiichewlaepnfngkchnphhunamkbkhnadkhxngxinphutkn karldrupkhuk aekikh eracaklawwapyha p 1 displaystyle pi 1 ldrupaebbkhukipepnpyha p 2 displaystyle pi 2 emux mikhntxnwithi A thisamartheriykich xxraekhil p 2 displaystyle pi 2 aela x 0 1 x p 1 A p 2 x 1 displaystyle forall x in 0 1 x in pi 1 iff A pi 2 x 1 odythi A thanganinewlathiepnfngkchnphhunamkbkhnadkhxngxinphutwithihnunginkarmxngwa A ldrupaebbkhukipepn B kkhux karthiaekpyha A idxyangmiprasiththiphaphthaerami B epn subroutine aelweriykichid phicarnatwxyangkhxngpyhaklumphrrkhphwkdngni karldrupkharp aekikh eracaklawwapyha p 1 displaystyle pi 1 ldrupaebbkharpipepnpyha p 2 displaystyle pi 2 emuxmifngkchn f thisamarthkhanwnidinewlathiepnphhunamkbkhnadkhxngxinphut aela x 0 1 x p 1 f x p 2 displaystyle forall x in 0 1 x in pi 1 iff f x in pi 2 karldrupkharpkhxnkhangcamienguxnikhthirunaerngkwakarldrupkhuk caehnidchdecnwa tha A samarthldrupkharpepn B id casngphlih A samarthldrupkhukepn B idechnkn karldrupkharpniepnkarldrupthiehmaasmthisudinkarsuksapyhaexnphibriburn aelaepnthiniyminkarnamasxninchneriynpriyyatri twxyangkhxngkarldrupkharpechn karldrupcakpyhakhwamsxdkhlxngaebbbul SAT ipepn pyha 3 SAT xthibayxyangyxiddngtxipni karldrupelwin aekikh karldrupelwinni odymakaelwcaimkhxyidehnknethairnk niyamaebbepnthangkarkhux eracaklawwapyha p 1 displaystyle pi 1 samarthldrupelwinipepnpyha p 2 displaystyle pi 2 id emuxmifngkchn f g aela h thimismbtikhux x p 1 f x p 2 displaystyle x in pi 1 iff f x in pi 2 sahrbthuk x y tha y epnbthphisucnkhxng x inpyha p 1 displaystyle pi 1 aelw g x y caepnbthphisucnkhxng f x in p 2 displaystyle pi 2 sahrbthuk x z tha z epnbthphisucnkhxng f x inpyha p 2 displaystyle pi 2 aelw h x z caepnbthphisucnkhxng x in p 1 displaystyle pi 1 sngektidxyanghnungwakarldrupelwinsngphlihekidkarldrupkharpaelakhukipdwy aetmakipkwannkarldrupelwinyngihoxkasinkaraeplngbthphisucnrahwangsxngpyha ody g thahnathiaeplngbthphisucnkhxng p 1 displaystyle pi 1 ipepn p 2 displaystyle pi 2 swn h thahnathiklbkn swnnikhxngkarldrupelwinmikhxdikhux thaeraphisucnidwapyhakartdsinic A ldrupaebbelwinipepnpyhakartdsinic B erasamarthsrupidthnthiwapyhakarkhnhakhatxb search problem khxng A ldrupipepnpyhakarkhnhakhatxbkhxng B dwy ephraawahlngcakeraaekpyha B aelakhnhabthphisucn khatxb id erasamarthich h inkaraeplngbthphisucnkhxng B klbipepnbthphisucnkhxng A id phicarnatwxyang praoychnkhxngkarldrup aekikhswnnirxephimetimkhxmul khunsamarthchwyephimkhxmulswnniidkarldrupaebbxun aekikhswnnirxephimetimkhxmul khunsamarthchwyephimkhxmulswnniidekhathungcak https th wikipedia org w index php title karldrup khwamsbsxn amp oldid 4701389, wikipedia, วิกิ หนังสือ, หนังสือ, ห้องสมุด,

บทความ

, อ่าน, ดาวน์โหลด, ฟรี, ดาวน์โหลดฟรี, mp3, วิดีโอ, mp4, 3gp, jpg, jpeg, gif, png, รูปภาพ, เพลง, เพลง, หนัง, หนังสือ, เกม, เกม