ปัญหาอัลกอริทึมที่ดูยากทำได้ง่ายโดยทฤษฎีบท


28

ฉันกำลังมองหาตัวอย่างที่ดีที่มีปรากฏการณ์ต่อไปนี้เกิดขึ้น: (1) ปัญหาอัลกอริทึมดูยากถ้าคุณต้องการแก้ปัญหาให้ทำงานจากคำจำกัดความและใช้ผลลัพธ์มาตรฐานเท่านั้น (2) ในทางกลับกันมันจะกลายเป็นเรื่องง่ายถ้าคุณรู้ว่าบางทฤษฎี (ไม่ได้มาตรฐาน)

เป้าหมายของสิ่งนี้คือเพื่อแสดงให้นักเรียนเห็นว่าการเรียนรู้ทฤษฎีมากกว่านี้อาจมีประโยชน์แม้กับผู้ที่อยู่นอกสนามทฤษฎี (เช่นวิศวกรซอฟต์แวร์วิศวกรคอมพิวเตอร์ ฯลฯ ) นี่คือตัวอย่าง:

คำถาม:ได้รับจำนวนเต็ม , มีกราฟ -vertex อยู่ (และถ้าเป็นเช่นนั้น, หาหนึ่งอัน), เช่นว่าการเชื่อมต่อจุดยอดคือ , การเชื่อมต่อของขอบคือ , และระดับต่ำสุดคือ ?n k l dn,k,l,dnkld

โปรดทราบว่าเราต้องการให้พารามิเตอร์นั้นมีค่าเท่ากับตัวเลขที่กำหนดไม่ใช่เพียงขอบเขตเท่านั้น หากคุณต้องการแก้ปัญหานี้ตั้งแต่เริ่มต้นมันอาจดูค่อนข้างยาก ในทางตรงกันข้ามถ้าคุณคุ้นเคยกับทฤษฎีบทต่อไปนี้ (ดูทฤษฎีกราฟ Extremalโดย B. Bollobas) สถานการณ์จะแตกต่างกันมาก

ทฤษฎีบท:ปล่อยเป็นจำนวนเต็ม มีกราฟ -vertex พร้อมจุดเชื่อมต่อ , การเชื่อมต่อขอบ , และระดับต่ำสุด , ถ้าหากว่าตรงตามเงื่อนไขใด ๆ ต่อไปนี้:n k l dn,k,l,dnkld

  • 0kld<n/2 ,
  • 12d+2nkl=d<n1
  • k=l=d=n1.

เงื่อนไขเหล่านี้ง่ายต่อการตรวจสอบซึ่งเป็นความไม่เท่าเทียมกันอย่างง่าย ๆ ระหว่างพารามิเตอร์อินพุตดังนั้นคำถามการมีอยู่สามารถตอบได้อย่างง่ายดาย นอกจากนี้การพิสูจน์ทฤษฎีบทก็คือการสร้างสรรค์การแก้ไขปัญหาการก่อสร้างเช่นกัน ในทางกลับกันผลลัพธ์นี้ไม่ได้มาตรฐานเพียงพอดังนั้นคุณสามารถคาดหวังให้ทุกคนรู้เกี่ยวกับมัน

คุณสามารถให้ตัวอย่างเพิ่มเติมในจิตวิญญาณนี้โดยที่การรู้ทฤษฎีบท (ไม่ได้มาตรฐาน) ทำให้งานง่ายขึ้นมาก?


1
ฉันไม่แน่ใจว่าฉันเข้าใจคำถามของคุณอย่างเต็มที่ ตัวอย่างที่คุณให้นั้นเป็นปัญหาที่ไม่สำคัญซึ่ง Bollobas ได้ให้อัลกอริทึม (ซึ่งหมายถึงการระบุลักษณะ) ดังนั้นการแสดงผลของฉันกับตัวอย่างของคุณคือการที่ใด ๆที่ไม่น่ารำคาญอัลกอริทึมจะเป็นคำตอบ ...
บรูโน่

3
ชนพื้นเมืองและทฤษฎีบท AKS
Lamine

@Bruno: สิ่งที่ฉันหมายถึงคือว่างานอัลกอริทึมกลายเป็นเรื่องง่ายถ้าคุณรู้ทฤษฎีบทซึ่งไม่เป็นที่รู้จักกันดีดังนั้นหนึ่งอาจไม่เคยได้ยินมาก่อน ตัวอย่างที่นำเสนอไม่สมบูรณ์แบบในแง่ที่ว่าที่นี่ทฤษฎีบทไม่เพียง แต่ช่วยแก้ปัญหาได้จริง สิ่งที่ฉันกำลังมองหาคือเมื่อทฤษฎีบทช่วยให้มีทางลัดที่มีประโยชน์ แต่ไม่สามารถแก้ปัญหาได้อย่างเต็มที่
Andras Farago

3
วิกิชุมชน
Joshua Grochow

1
ทฤษฎีบทของโรเบิร์ตสันสัน - มัวร์เช่นเดียวกันกับการคาดเดาที่ทำให้การหาช่วงเวลานั้นง่ายขึ้น
Kaveh

คำตอบ:


31

การตัดสินใจความผิดปกติของกลุ่มอย่างง่ายที่กำหนดโดยตารางการคูณของพวกเขา ความจริงที่ว่าสิ่งนี้สามารถทำได้ในเวลาพหุนามตามโดยตรงจากข้อเท็จจริงที่ว่าทุกกลุ่มง่าย ๆ สามารถถูกสร้างขึ้นได้อย่างมากที่สุด 2 องค์ประกอบและในปัจจุบันเป็นที่รู้จักเพียงพิสูจน์ความจริงที่ว่าใช้การจำแนกประเภทของกลุ่มธรรมดา จำกัด (บางทีอาจเป็นทฤษฎีบทที่ใหญ่ที่สุด - ในแง่ของผู้เขียนเอกสารและหน้า - พิสูจน์แล้วว่าเคย)


3
นี่เป็นตัวอย่างที่ยอดเยี่ยม! BTW ความคิดเห็นต่อคำตอบนี้อ้างว่าในบางแง่มุมทฤษฎีบทนี้เป็นเรื่องยากพอ ๆ กับการจำแนก: mathoverflow.net/a/59216/35733
Sasho Nikolov

32

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


20

ช่วงบ่ายวันนี้ที่ผมอ่านStringology - ที่ "จริง" ทฤษฎีสตริง

ปัญหา:ถ้าและมีสองสายเหนือตัวอักษรบางอย่างเมื่อมีบางจำนวนเต็มบวกเช่นว่า ny m , n x m = y nxym,nxm=yn

ทฤษฎีบท:มีจำนวนเต็มบวกเช่นว่าถ้าหากYXx m = y n x y = y xm,nxm=ynxy=yx


9

การหาจำนวนของรากที่แท้จริง (ชัดเจน) ของพหุนามจริงทั้งในℝทั้งหมดหรือในช่วงเวลาที่กำหนด ทฤษฎีบทของ Sturm บอกคุณว่าลำดับของพหุนามที่ตอบสนองความต้องการจำนวนน้อยสามารถใช้เพื่อนับจำนวนรากที่แท้จริงของพหุนามด้วยสัมประสิทธิ์จริง

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

น่าแปลกที่มีคนไม่กี่คนที่รู้เกี่ยวกับผลลัพธ์นี้แม้จะค่อนข้างเก่า (1829) มันถูกใช้ใน Computer Algebra Systems หลายแห่ง แต่อาจารย์คณิตศาสตร์ทุกคนในมหาวิทยาลัยของฉันที่ฉันถามไม่เข้าใจทฤษฎีบทของ Sturm เลยหรือพวกเขารู้เพียงชื่อและมันมีส่วนเกี่ยวข้องกับรากของพหุนาม

คนส่วนใหญ่จะประหลาดใจมากเมื่อคุณบอกพวกเขาสิ่งที่เหมือนนับรากจริงตรงนี้เป็นเรื่องง่ายและไม่ต้องใช้ประมาณใด ๆ พิจารณาว่าการหารากเป็นการยากมาก (โปรดจำไว้ว่าสำหรับพหุนามระดับ degree 5 ไม่มีสูตร "เหมาะสม" สำหรับราก)


9

ทฤษฎีบท:กราฟระนาบทุกอันมีจุดยอดที่มีองศาไม่เกิน 5

ปัญหา:การออกแบบเป็นตัวแทนของกราฟเชิงระนาบที่เราสามารถตรวจสอบว่าเป็นขอบในการเวลา( u , v ) O ( 1 )O(n)(u,v)O(1)

เราสามารถลบจุดสุดยอดที่มีระดับมากที่สุด 5 และเพิ่มลงในรายการเป็นคีย์และเพื่อนบ้านเป็นค่า กราฟที่เหลือยังเป็นระนาบและมีจุดสุดยอดที่มีระดับที่มากที่สุด 5. ดังนั้นพื้นที่ที่บริโภคเป็นอย่างมาก5nเราสามารถตรวจสอบว่าอยู่ในรายการ adjacency ของ ; ถ้าเราไม่สามารถตรวจสอบว่าที่อยู่ในรายชื่อของถ้อยคำยูขั้นตอนนี้ใช้เวลาไม่ขั้นu v v u 105nuvvu10


5
ด้วยความระมัดระวังเพิ่มขึ้นเล็กน้อยคุณสามารถลดขนาดของรายการที่จัดเก็บในแต่ละจุดสุดยอดเป็น 3 และจำนวนขั้นตอนในการตรวจสอบ adjacency ถึง 6 ดู: การวางแนวแนวระนาบกับระดับนอกต่ำและการบดอัดของเมทริกซ์ adjacency M. Chrobak และ D. Eppstein theor คอมพ์ วิทย์ 86 (2): 243–266, 1991. ics.uci.edu/~eppstein/pubs/ChrEpp-TCS-91.pdf
David Eppstein

7

ฉันคิดว่าโปสเตอร์เด็กสำหรับหมวดหมู่นี้อย่างน้อยที่สุดเท่าที่ความเกี่ยวข้องกับความยากลำบากเป็นปัญหาต่อไปนี้:

ให้กราฟระนาบเป็น 4 สีหรือไม่GGG

ทฤษฎีบทสี่สีreturn trueลดความยุ่งยากในขั้นตอนวิธีการ


6

ไม่ว่าจะเป็นพหุนามจริง (หลายตัวแปร)สามารถแสดงเป็นผลรวมของกำลังสองของพหุนามที่แท้จริงสามารถแก้ไขได้โดยการลดการเขียนโปรแกรมกึ่งแน่นอน จำเป็นต้องรู้ SDP และ SDP นั้นสามารถแก้ไขได้อย่างมีประสิทธิภาพp


5

อีกตัวอย่าง: กำหนดกราฟที่ไม่ได้บอกทิศทางมันมีการตัดขั้นต่ำซึ่งขอบทั้งหมดจะแยกออกจากกันหรือไม่? ถ้าเป็นเช่นนั้นหาหนึ่ง

ตั้งแต่แรกเห็นสิ่งนี้อาจดูยาก อย่างไรก็ตามมันกลายเป็นเรื่องง่าย แต่ถ้าคุณรู้ว่าผลลัพธ์ที่กราฟ -vertex ที่ไม่ได้บอกทิศทางสามารถมีการตัดขั้นต่ำได้สูงสุดและพวกมันสามารถแสดงรายการในเวลาพหุนามn ( n - 1 ) / 2nn(n1)/2

มันสามารถขยายไปสู่การตัดเกือบขั้นต่ำซึ่งมีขนาดใหญ่กว่าการตัดต่ำสุด แต่อย่างมากโดยปัจจัยคงที่ จำนวนของพวกเขายังคงล้อมรอบด้วยพหุนาม

(ฉันไม่ได้ค้นหาข้อมูลอ้างอิงความทรงจำของฉันคือผลลัพธ์เหล่านี้เกิดจาก D. Karger)


4

ปัญหา: ความอิ่มใจของสูตร MSO (ตรรกะลำดับที่สองแบบ monadic) เหนือคำที่ จำกัด

ทฤษฎีบท: MSO เทียบเท่ากับขอบเขตออโตมาตะกับคำ จำกัด

สามารถยกขึ้นไปเป็นคำพูดไม่มีที่สิ้นสุดต้นไม้ จำกัด ต้นไม้ไม่มีที่สิ้นสุด


4

ตัวอย่างที่ซับซ้อนขึ้นเล็กน้อย: การแยกตัวประกอบเมทริกซ์เชิงลบเมื่ออันดับที่ไม่ใช่ค่าลบเป็นค่าคงที่

บอกว่าฉันให้คุณเมทริกซ์พร้อมกับคำสัญญาว่ามีอยู่เป็นค่าลบ ,เช่นนั้น . ปัญหาคือการหาตัวประกอบดังกล่าวสำหรับAMm×nUMm×kVMk×nA=UVA

ด้วยพีชคณิตเชิงเส้นเบื้องต้นสองสามบรรทัดคุณสามารถลดปัญหาในการแก้ไขระบบของความไม่เท่าเทียมกันของพหุนามในตัวแปรโดยที่คืออันดับที่ไม่ใช่เชิงลบของเมทริกซ์ที่คุณต้องการคำนึงถึงO(r2)r

การใช้อัลกอริทึม Renegar ของค้อนแล้วคุณสามารถแก้ปัญหานี้ในเวลาและด้วยเหตุนี้การกู้คืนและVนี้อยู่ไม่ไกลจาก optimality เพราะมันเป็นผลประโยชน์ทับซ้อนยากที่จะแก้ปัญหาในเวลาที่ NMF(R)}(mn)O(r2)UV(mn)o(r)


4

Decieional Diffie Hellman

มันระบุ: รับโดยที่เป็นตัวกำเนิดของกลุ่มวงจร , ตรวจสอบว่า(g,ga,gb,gc)gGgc=gab

ภายใต้สมมติฐานมาตรฐานของความแข็งของปัญหาบันทึกแยกปัญหานี้อาจดูเหมือนยาก

อย่างไรก็ตามด้วยแผนที่ bilinear ปัญหานี้เป็นเรื่องง่ายและสามารถตรวจสอบได้เป็น

e(g,gc)=?e(ga,gb)

โดยที่e:G×GGT

ข้อมูลเพิ่มเติมเกี่ยวกับเรื่องนี้สามารถอ่านได้เกี่ยวกับปัญหาการตัดสินใจแตกต่างเฮลแมนหรือ Boneh'98 หรือการค้นหา google บนการจับคู่


3

(เล็กน้อย) การดำรงอยู่ของ Nash สมดุลในเกม จำกัด จำนวน Hamiltonian Paths ในลูกบาศก์กราฟ, คะแนนคงที่ประเภทต่างๆ, การเปรียบเทียบที่สมดุลอย่างเหมาะสมในคำสั่งบางส่วนและปัญหา PPAD อื่น ๆ


การดำรงอยู่ของสมดุลของแนช - และหลายหลักฐานอันอื่น ๆ ของการดำรงอยู่ที่ลักษณะ PPAD - ดูเหมือนจะไม่ทำการใด ๆ ของปัญหาเหล่านี้ได้ง่ายขึ้นในการแก้อัลกอริทึม ...
โจชัว Grochow

1
ฉันอ้างถึงเวอร์ชันการตัดสินใจของปัญหาเหล่านี้
Yonatan N

2

หาการตัดขั้นต่ำ ให้กราฟถ่วงน้ำหนักและสองจุดยอด , หาเช่นที่และไม่ได้เชื่อมต่อในเช่นน้ำหนักรวมของคือ ขยายE E s t ( V , E ) E ((V,E),s,t)EEst(V,E)E

โดยทฤษฎีบทสูงสุดไหล / นาทีตัดนี้จะช่วยลดการหาการไหลสูงสุดจากไปในE) ปัญหานี้ไม่ได้เป็นเรื่องเล็กน้อย แต่เป็นความคิดที่เรียบง่ายใช้งานได้: ถ้าเราสามารถเพิ่มการไหลไปตามเส้นทาง -ได้ ส่วนที่ยุ่งยากคือการเลือกเส้นทางที่จะเพิ่มในทางที่พบการไหลสูงสุดอย่างรวดเร็วt ( V , E ) s tst(V,E)st


1
หนึ่งสามารถพูดได้ว่าการไหลนั้นง่ายถ้าคุณรู้ว่า LP นั้นง่าย ดังนั้นทฤษฎีบทใหญ่สองรายการ (LP ในเวลาโพลีและ maxflow-mincut) ช่วยให้เราคำนวณการตัดขั้นต่ำได้
จันทรา Chekuri

@ChandraChekuri ความรู้สึกส่วนตัวของฉันคือว่ามันไม่เหมาะกับคำถาม: ทฤษฎีบทที่ LP สามารถแก้ไขได้ใน polytime ไม่ได้ช่วยให้เราสร้างอัลกอริทึมสำหรับการตัดขั้นต่ำได้ เราต้องการอัลกอริทึม LP จริง
สูงสุด

ไม่ได้จริงๆ หากคุณสามารถหาค่าตัดต่ำสุดในกราฟที่กำหนดอย่างมีประสิทธิภาพจากนั้นคุณสามารถใช้อัลกอริทึมดังกล่าวเพื่อค้นหาการตัดจริง
Chandra Chekuri

2

นี่คืออีกตัวอย่าง: กำหนดกราฟอย่างง่ายที่ไม่ได้บอกทางให้ตัดสินใจว่ามันมีสองจุดยอด - แยกจากกัน

23

3K5K3,n3

เนื่องจากเป็นเรื่องง่ายที่จะตรวจสอบว่ากราฟเป็นหนึ่งในกราฟที่อนุญาตโดยทฤษฎีบทหรือไม่ซึ่งทำให้เรามีอัลกอริธึมเวลาพหุนามสำหรับปัญหาการตัดสินใจ

หมายเหตุ: (1) การพิสูจน์ทฤษฎีบทนั้นไม่ง่ายเลย (2) เมื่อเราตัดสินใจว่ามีวงจรแยกไม่ออกอยู่สองวงจรดูเหมือนจะไม่ค่อยชัดเจนในการแก้ปัญหาการค้นหาที่เกี่ยวข้องนั่นคือวิธีค้นหาวงจรดังกล่าวจริง ทฤษฎีบทไม่ได้ให้คำแนะนำโดยตรงกับสิ่งนั้น


1

ตัวอย่างที่ซับซ้อนน้อยกว่า: มีคุณสมบัติคล้ายทฤษฎีบทบางอย่างที่แสดงว่าอัลกอริทึมโลภสำหรับปัญหาบางอย่างเหมาะสมที่สุด มันไม่ชัดเจนนักสำหรับผู้ที่ไม่ได้ฝึกหัดต้นสแปนนิ่งขั้นต่ำสามารถพบได้โดยอัลกอริธึมโลภ แนวคิดที่คล้ายคลึงกันค่อนข้างเป็นอัลกอริทึมของ Dijkstraเพื่อหาเส้นทางที่สั้นที่สุดในกราฟ จริง ๆ แล้วในทั้งสองกรณีที่เกี่ยวข้อง "ทฤษฎีบท" เกือบจะเหมือนกับอัลกอริธึม


ฉันคิดว่านี่จะเป็นคำตอบที่ดีกว่าถ้าเช่นคุณรวมคำแถลงคุณสมบัติการตัดของ MST และพูดถึงว่ามันหมายถึงความถูกต้องของอัลกอริทึม MST โลภทั้งหมด
Sasho Nikolov

MST ตัดคุณสมบัติที่ระบุไว้ในวิกิพีเดีย pg บางทีคุณสามารถอ้างอิงภาพรวมอื่น ๆ ที่ไม่ครอบคลุม BTW จำถามถามหาตัวอย่างที่ให้บริการ"ผู้ที่อยู่นอกเขตทฤษฎี" (ตัวอย่างที่ดีอื่น ๆ ที่ได้รับอาจจะสูงเกินไปสำหรับบุคคลภายนอก)
vzn

TeTeABeE(A,B)

1

ค้นหาลำดับหมายเลข Fibonacci ที่เป็นผลผลิตของหมายเลข Fibonacci อื่น ๆ ตัวอย่างเช่นหมายเลขฟีโบนักชี 8 อยู่ในลำดับเนื่องจาก 8 = 2 * 2 * 2 และ 2 เป็นหมายเลขฟีโบนักชีที่ไม่เท่ากับ 8 หมายเลขฟีโบนักชี 144 อยู่ในลำดับเนื่องจาก 144 = 3 * 3 * 2 * 2 2 * 2 * 2 และทั้ง 2 และ 3 เป็นหมายเลขฟีโบนักชีที่ไม่เท่ากับ 144

ทฤษฎีบทของคาร์ไมเคิลบอกเป็นนัยว่า 8 และ 144 เป็นศัพท์เฉพาะของลำดับนี้

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.