คำถามติดแท็ก ds.algorithms

คำถามเกี่ยวกับคำแนะนำที่กำหนดไว้อย่างดีสำหรับการทำงานให้สำเร็จและการวิเคราะห์ที่เกี่ยวข้องในแง่ของเวลา / หน่วยความจำ / ฯลฯ

30
อัลกอริทึมจากหนังสือ
Paul Erdos พูดคุยเกี่ยวกับ "หนังสือ" ที่ซึ่งพระเจ้าเก็บหลักฐานอันงดงามที่สุดของทฤษฎีบทคณิตศาสตร์แต่ละอันไว้ นี้ยังเป็นแรงบันดาลใจหนังสือ (ซึ่งผมเชื่อว่าตอนนี้อยู่ในฉบับที่ 4): หลักฐานจากหนังสือ ถ้าพระเจ้ามีหนังสือที่คล้ายกันสำหรับอัลกอริทึมคุณคิดว่าอัลกอริทึมแบบใด หากเป็นไปได้โปรดจัดหาข้อมูลอ้างอิงที่สามารถคลิกได้และข้อมูลเชิงลึกที่สำคัญซึ่งทำให้ใช้งานได้ กรุณาหนึ่งอัลกอริทึมต่อคำตอบโปรด

29
ปรับใช้อัลกอริทึมหลัก
เพื่อแสดงให้เห็นถึงความสำคัญของอัลกอริทึม (เช่นสำหรับนักเรียนและอาจารย์ที่ไม่ได้ทำทฤษฏีหรือแม้กระทั่งจากสาขาที่แตกต่างกันโดยสิ้นเชิง) บางครั้งมันก็มีประโยชน์ที่จะมีรายการตัวอย่างที่มีอัลกอริธึมหลักในเชิงพาณิชย์ หรือซอฟต์แวร์ / ฮาร์ดแวร์ที่ใช้กันอย่างแพร่หลาย ฉันกำลังมองหาตัวอย่างดังกล่าวที่ตรงตามเกณฑ์ต่อไปนี้: ซอฟต์แวร์ / ฮาร์ดแวร์ที่ใช้อัลกอริทึมควรใช้งานอย่างกว้างขวางในขณะนี้ ตัวอย่างควรเฉพาะเจาะจง กรุณาให้การอ้างอิงถึงระบบที่เฉพาะเจาะจงและอัลกอริทึมเฉพาะ ตัวอย่างเช่นใน "อัลกอริทึม X มีประโยชน์สำหรับการประมวลผลภาพ" คำว่า "การประมวลผลภาพ" นั้นไม่เฉพาะเจาะจงเพียงพอ ใน "การค้นหาของ Google ใช้อัลกอริธึมกราฟ" คำว่า "อัลกอริทึมกราฟ" นั้นไม่เจาะจงพอ อัลกอริทึมควรจะสอนในระดับปริญญาตรีทั่วไปหรือปริญญาเอก คลาสในอัลกอริทึมหรือโครงสร้างข้อมูล เป็นการดีที่อัลกอริทึมจะครอบคลุมในตำราเรียนอัลกอริทึมทั่วไป เช่น "ระบบที่รู้จักกันดี X ใช้อัลกอริทึมที่รู้จักกันน้อย Y" ไม่ดี ปรับปรุง: ขอบคุณอีกครั้งสำหรับคำตอบและลิงก์ที่ยอดเยี่ยม! บางคนแสดงความคิดเห็นว่ามันเป็นเรื่องยากที่จะทำตามเกณฑ์เพราะอัลกอริธึมหลักนั้นแพร่หลายจนยากที่จะชี้ไปที่การใช้งานเฉพาะ ฉันเห็นความยากลำบาก แต่ฉันคิดว่ามันคุ้มค่าที่จะหาตัวอย่างที่เฉพาะเจาะจงเพราะจากประสบการณ์ของฉันที่บอกผู้คนว่า: "ดูสิอัลกอริธึมมีความสำคัญเพราะมันเกือบทุกที่ !" ไม่สำเร็จ.

2
ปัญหา Super Mario Galaxy
สมมติว่ามาริโอกำลังเดินอยู่บนพื้นผิวของดาวเคราะห์ หากเขาเริ่มเดินจากที่ตั้งที่รู้จักไปในทิศทางที่กำหนดสำหรับระยะทางที่กำหนดไว้เราจะทราบได้อย่างรวดเร็วว่าจะหยุดที่ใด อีกอย่างเป็นทางการเช่นสมมติว่าเราจะได้รับนูน polytopeใน 3 พื้นที่ซึ่งเป็นจุดเริ่มต้นบนพื้นผิวของทิศทางเวกเตอร์ (ในระนาบของแง่มุมบางอย่างที่มี ) และระยะไกล\เราจะทราบได้อย่างไรว่า Mario ตัวไหนที่จะหยุดอยู่ข้างในได้เร็วแค่ไหน? (ในฐานะที่เป็นจุดทางเทคนิคสมมติว่าหากมาริโอเข้าสู่จุดสุดยอดของเขาจะระเบิดทันทีโชคดีที่สิ่งนี้แทบจะไม่เคยเกิดขึ้นเลย)PPPsssPPPvvvpppℓℓ\ellPPPPPP หรือถ้าคุณต้องการ: สมมติว่าเราจะได้รับ polytopeจุดแหล่งและทิศทางเวกเตอร์ล่วงหน้า หลังจาก preprocessing วิธีการอย่างรวดเร็วเราสามารถตอบคำถามสำหรับระยะทางที่กำหนด ?PPPsssvvvℓℓ\ell มันง่ายมากที่จะติดตามรอยเท้าของมาริโอโดยเฉพาะถ้ามีแง่มุมสามเหลี่ยม เมื่อใดก็ตามที่มาริโอเข้าสู่ด้านหนึ่งของขอบเราสามารถกำหนดในเวลาซึ่งอีกสองขอบเขาต้องผ่าน แม้ว่าเวลาทำงานของขั้นตอนวิธีนี้เป็นเส้นตรงเท่านั้นในจำนวนของขอบนํ้ามันมากมายเป็นหน้าที่ของขนาดการป้อนข้อมูลเพราะระยะทางที่อาจจะเป็นพลขนาดใหญ่กว่าเส้นผ่าศูนย์กลางของPเราทำได้ดีกว่านี้ไหมPPPO(1)O(1)O(1)ℓℓ\ellPPP (ในทางปฏิบัติความยาวเส้นทางไม่ได้มากมายจริง; มีขอบเขตบนโลกในแง่ของจำนวนบิตที่จำเป็นเพื่อแสดงการป้อนข้อมูล แต่ยืนยันในปัจจัยการผลิตจำนวนเต็มยกประเด็นตัวเลขบางอย่างค่อนข้างน่ารังเกียจ - วิธีทำเราคำนวณ. ตรงที่ เพื่อหยุด? - งั้นลองทำกับอินพุตจริงและเลขคณิตจริงที่แน่นอน) มีสิ่งใดที่ไม่เป็นที่รู้จักเกี่ยวกับความซับซ้อนของปัญหานี้หรือไม่? อัปเดต:จากความเห็นของ julkiewicz ดูเหมือนว่าเวลาทำงานจริงของ RAM จะ จำกัด ขอบเขตอย่างหมดจดในแง่ของ (ความซับซ้อนของ polytope) เป็นไปไม่ได้ พิจารณากรณีพิเศษของสองด้านหน่วยตารางกับมาริโอเริ่มต้นที่และเดินไปในทิศทาง(1,0)มาริโอจะหยุดที่ด้านหน้าหรือด้านหลังของตารางขึ้นอยู่กับความเท่าเทียมกันของจำนวนเต็มที่\ เราไม่สามารถคำนวณฟังก์ชันพื้นในเวลาอย่างต่อเนื่องในแรมจริงเว้นแต่ว่าเรากำลังมีความสุขPSPACE การเทียบและ P แต่เราสามารถคำนวณในnnn[0,1]2[0,1]2[0,1]^2(0,1/2)(0,1/2)(0,1/2)(1,0)(1,0)(1,0)⌊ℓ⌋⌊ℓ⌋\lfloor \ell \rfloor⌊ℓ⌋⌊ℓ⌋\lfloor \ell …

11
การคลายสตริงทำได้ยากเพียงใด
การสับเปลี่ยนของสองสายจะเกิดขึ้นโดยการกระจายอักขระเป็นสตริงใหม่โดยรักษาอักขระของแต่ละสตริงตามลำดับ ยกตัวอย่างเช่นMISSISSIPPIเป็นสับเปลี่ยนของและMISIPP SSISIขอผมเรียกรูปสี่เหลี่ยมจัตุรัสถ้ามันเป็นการสลับของสองสายเหมือนกัน ตัวอย่างเช่นABCABDCDเป็นรูปสี่เหลี่ยมเนื่องจากเป็นแบบสลับABCDและABCDสตริงABCDDCBAจะไม่เป็นแบบสี่เหลี่ยม มีอัลกอริทึมที่รวดเร็วในการพิจารณาว่าสตริงเป็นสแควร์หรือมันเป็น NP-hard หรือไม่? วิธีการเขียนโปรแกรมแบบไดนามิกที่เห็นได้ชัดดูเหมือนจะไม่ทำงาน แม้แต่กรณีพิเศษต่อไปนี้ก็ดูเหมือนว่าจะยาก: (1) สตริงที่แต่ละอักขระปรากฏมากที่สุดสี่ ครั้งที่หกและสตริง (2) ที่มีอักขระที่แตกต่างกันเพียงสองตัวเท่านั้น ตามที่ออสเตรรินชี้ให้เห็นด้านล่างกรณีพิเศษที่ตัวละครแต่ละตัวเกิดขึ้นมากที่สุดสี่ครั้งสามารถลดลงเป็น 2SAT ปรับปรุง: ปัญหานี้มีสูตรอื่นที่อาจทำให้การพิสูจน์ความแข็งง่ายขึ้น พิจารณากราฟ G ที่จุดยอดเป็นจำนวนเต็ม 1 ถึง n ระบุแต่ละขอบด้วยช่วงเวลาจริงระหว่างจุดปลาย เราบอกว่าขอบสองด้านของ G ซ้อนกันถ้าช่วงเวลาหนึ่งบรรจุอีกด้านหนึ่งอย่างเหมาะสม ตัวอย่างเช่นขอบ (1,5) และ (2,3) ซ้อนกัน แต่ (1,3) และ (5,6) ไม่และและ (1,5) และ (2,8) ไม่ใช่ การจับคู่ใน G ไม่ซ้อนกันถ้าไม่มีคู่ของขอบซ้อนกัน มีอัลกอริธึมที่รวดเร็วในการพิจารณาว่า G มีการจับคู่ที่สมบูรณ์แบบที่ไม่ซ้อนกันหรือไม่หรือเป็นปัญหาที่ NP-hard การคลายสตริงจะเทียบเท่ากับการค้นหาการจับคู่ที่สมบูรณ์แบบที่ไม่ซ้อนกันในการรวมกลุ่มของกลุ่ม …

17
ตัวอย่างของราคานามธรรม?
ทฤษฎีวิทยาการคอมพิวเตอร์ได้ให้ตัวอย่างของ "ราคาของนามธรรม" ทั้งสองที่โดดเด่นที่สุดสำหรับการกำจัดแบบเกาส์และการเรียงลำดับ กล่าวคือ: เป็นที่ทราบกันดีว่าการกำจัดแบบเกาส์นั้นดีที่สุดสำหรับการคำนวณคำนวณดีเทอร์มิแนนต์ถ้าคุณ จำกัด การทำงานในแถวและคอลัมน์โดยรวม [1] เห็นได้ชัดว่าอัลกอริธึมของ Strassen ไม่ปฏิบัติตามข้อ จำกัด ดังกล่าวและดีกว่าการกำจัดแบบเกาส์ ในการเรียงลำดับถ้าคุณปฏิบัติต่อองค์ประกอบของรายการเป็นกล่องสีดำที่สามารถนำมาเปรียบเทียบและย้ายไปรอบ ๆ แล้วเรามีมาตรฐานข้อมูลตามทฤษฎีขอบเขตล่าง ทว่าฟิวชั่นก็เอาชนะต้นไม้นี้ได้เท่าที่ฉันเข้าใจมันการใช้การคูณอย่างชาญฉลาดnlognnlog⁡nn \log n มีตัวอย่างอื่น ๆ เกี่ยวกับราคาของสิ่งที่เป็นนามธรรมหรือไม่ เพื่อเป็นทางการมากขึ้นฉันกำลังมองหาตัวอย่างที่ขอบเขตล่างเป็นที่รู้จักโดยไม่มีเงื่อนไขในการคำนวณแบบจำลองที่อ่อนแอ แต่เป็นที่รู้กันว่าถูกละเมิดในรูปแบบที่แข็งแกร่งกว่า นอกจากนี้จุดอ่อนของแบบจำลองที่อ่อนแอควรมาในรูปแบบของนามธรรมซึ่งเป็นที่ยอมรับว่าเป็นความคิดส่วนตัว ตัวอย่างเช่นฉันไม่พิจารณาข้อ จำกัด ของวงจรโมโนโทนที่เป็นนามธรรม หวังว่าตัวอย่างสองตัวอย่างข้างต้นจะทำให้ชัดเจนในสิ่งที่ฉันกำลังมองหา [1] KLYUYEV, VV และ NI KOKOVKIN-SHcHERBAK: ในการลดจำนวนการดำเนินการทางคณิตศาสตร์สำหรับการแก้ปัญหาของระบบพีชคณิตเชิงเส้นของสมการ แปลโดย GI TEE: รายงานทางเทคนิค CS 24 มิถุนายน t4, t965 ภาควิชาวิทยาการคอมพิวเตอร์มหาวิทยาลัยสแตนฟอร์ด

6
อัลกอริทึมการค้นหาเส้นทางที่ทันสมัยสำหรับการเปลี่ยนกราฟ (D *, D * -Lite, LPA *, ฯลฯ ) แตกต่างกันอย่างไร
อัลกอริธึมการค้นพบเส้นทางจำนวนมากได้รับการพัฒนาในช่วงไม่กี่ปีที่ผ่านมาซึ่งสามารถคำนวณเส้นทางที่ดีที่สุดในการตอบสนองต่อการเปลี่ยนแปลงของกราฟได้เร็วกว่า A * พวกมันคืออะไรและแตกต่างกันอย่างไร? พวกเขาอยู่ในสถานการณ์ที่แตกต่างกันหรือไม่ นี่คือสิ่งที่ฉันได้ค้นพบ: D * (1994) โฟกัส D * (1995) DynamicSWSF-FP (1996) LPA (1997) LPA * / A * ที่เพิ่มขึ้น (2001) D * Lite (2002) SetA * (2002) HPA * (2004) ทุกเวลา D * (2005) PRA * (2005) ฟิลด์ D * (2007) เธต้า * (2007) HAA * …

2
ความซับซ้อนของเวลาจริงของการกำจัดแบบเกาส์เซคืออะไร?
ในการตอบเป็นนักคำถามก่อนหน้านี้ผมได้กล่าวถึงความเชื่อร่วมกัน แต่ผิดว่า“เสียน”กำจัดทำงานในเวลา ในขณะที่เห็นได้ชัดว่าอัลกอริทึมใช้การดำเนินการทางคณิตศาสตร์การดำเนินการที่ไม่ระมัดระวังสามารถสร้างตัวเลขด้วยบิตจำนวนมากแทน เป็นตัวอย่างง่ายๆสมมติว่าเราต้องการทำให้เมทริกซ์ต่อไปนี้เป็นแนวเส้นทแยงมุม:O(n3)O(n3)O(n^3)O(n3)O(n3)O(n^3) ⎡⎣⎢⎢⎢⎢⎢⎢⎢211⋮1021⋮1002⋮1⋯⋯⋯⋱⋯000⋮2⎤⎦⎥⎥⎥⎥⎥⎥⎥[200⋯0120⋯0112⋯0⋮⋮⋮⋱⋮111⋯2]\begin{bmatrix} 2 & 0 & 0 & \cdots & 0 \\ 1 & 2 & 0 & \cdots & 0 \\ 1 & 1 & 2 & \cdots & 0 \\ \vdots & \vdots & \vdots & \ddots & \vdots\\ 1 & 1 & 1 & …

9
อัลกอริทึมที่มีประสิทธิภาพซับซ้อนเกินไปที่จะใช้
อัลกอริทึมของยูทิลิตี้ที่ถูกต้องตามกฎหมายมีอะไรบ้างที่ซับซ้อนเกินกว่าจะนำไปใช้ได้จริง? ให้ฉันชัดเจน: ฉันไม่ได้มองหาอัลกอริทึมเช่นอัลกอริทึมการคูณเมทริกซ์ที่เหมาะสมที่สุดในปัจจุบัน (Coppersmith-Winograd) ซึ่งมีเหตุผลที่จะดำเนินการ แต่มีค่าคงที่ที่ทำให้มันไร้ประโยชน์ในทางปฏิบัติ ฉันกำลังมองหาอัลกอริทึมที่อาจมีคุณค่าในทางปฏิบัติ แต่ก็ยากที่จะเขียนโค้ดที่พวกเขาไม่เคยใช้งานมาใช้เฉพาะในการตั้งค่าที่ประดิษฐ์มาก ๆ หรือนำไปใช้เฉพาะกับแอปพลิเคชันวัตถุประสงค์พิเศษ การต้อนรับยังเป็นอัลกอริธึมที่ไม่สามารถนำไปใช้งานได้ซึ่งมี asymptotics ที่ดี แต่มีแนวโน้มว่าจะมีประสิทธิภาพที่แท้จริงต่ำ

17
อัลกอริธึมเวลาพหุนามที่มีเลขชี้กำลังจำนวนมาก / คงที่
คุณรู้หรือไม่ว่าอัลกอริธึมที่สมเหตุสมผลที่ทำงานในเวลาพหุนามใน (ความยาวอินพุต + ความยาวเอาท์พุท) แต่มีเวลาทำงานเชิงซีมโทติคในการวัดเดียวกันมีเลขชี้กำลัง / ค่าคงที่ขนาดใหญ่มาก (อย่างน้อย วิธีดังกล่าว)?

4
หลักฐานที่แสดงว่าการคูณเมทริกซ์สามารถทำได้ในเวลากำลังสอง?
มันมีการคาดเดากันอย่างกว้างขวางว่าเลขชี้กำลังที่ดีที่สุดสำหรับการคูณเมทริกซ์นั้นจริง ๆ แล้วเท่ากับ 2 คำถามของฉันง่าย:ωω\omega เหตุผลอะไรบ้างที่เรามีความเชื่อว่า ?ω=2ω=2\omega = 2 ฉันรู้ขั้นตอนวิธีการอย่างรวดเร็วเช่นทองแดง-Winograd แต่ผมไม่ทราบว่าทำไมเหล่านี้อาจได้รับการพิจารณาหลักฐาน2ω=2ω=2\omega = 2 ฉันดูไร้เดียงสาเหมือนตัวอย่างคลาสสิกที่ชุมชนหวังว่าผลลัพธ์นั้นแท้จริงสำหรับเหตุผลด้านสุนทรียภาพ ฉันชอบที่จะรู้ว่าเป็นกรณีที่นี่

10
หนึ่งกองสองคิว
พื้นหลัง หลายปีที่ผ่านมาเมื่อฉันเป็นนักศึกษาระดับปริญญาตรีเราได้รับการบ้านเกี่ยวกับการวิเคราะห์ค่าตัดจำหน่าย ฉันไม่สามารถแก้ไขปัญหาข้อใดข้อหนึ่งได้ ฉันถามมันด้วยทฤษฎีแต่ไม่มีผลลัพธ์ที่น่าพอใจ ฉันจำหลักสูตรที่ TA ยืนยันในสิ่งที่เขาไม่สามารถพิสูจน์ได้และบอกว่าเขาลืมหลักฐานและ ... [คุณรู้ว่า] วันนี้ฉันจำปัญหาได้ ฉันยังอยากรู้ดังนั้นที่นี่มัน ... คำถาม เป็นไปได้หรือไม่ที่จะนำสแต็กมาใช้โดยใช้สองคิวเพื่อให้การดำเนินการทั้งPUSH และPOPทำงานในเวลาที่ตัดจำหน่าย O (1) ? ถ้าใช่คุณจะบอกฉันได้อย่างไร หมายเหตุ: สถานการณ์นั้นค่อนข้างง่ายหากเราต้องการใช้คิวที่มีสองกอง (พร้อมการดำเนินการที่เกี่ยวข้องENQUEUE & DEQUEUE ) โปรดสังเกตความแตกต่าง PS: ปัญหาข้างต้นไม่ใช่การบ้าน การบ้านไม่ต้องการขอบเขตที่ต่ำกว่า เพียงการดำเนินการและการวิเคราะห์เวลาทำงาน

10
ข้อความที่เชื่อถือได้เกี่ยวกับอัลกอริทึมทางพันธุกรรม
อัลกอริธึมทางพันธุกรรมไม่ได้มีแรงฉุดมากนักในโลกแห่งทฤษฎี แต่เป็นวิธีการเกี่ยวกับการเปลี่ยนแปลงที่นิยมใช้อย่างสมเหตุสมผล (โดย metaheuristic ในความเป็นจริงเทคนิคคล้ายกับ GA ค่อนข้างมีประสิทธิภาพสำหรับ Euclidean TSPในทางปฏิบัติ อภิธานศัพท์บางอย่างได้รับการศึกษาอย่างดีพอสมควรในทางทฤษฎี: มีงานเกี่ยวกับการค้นหาในท้องถิ่นและการหลอม เรามีความรู้สึกที่ดีว่าการเพิ่มประสิทธิภาพทางเลือก ( เช่นค่า k ) หมายถึงอะไร แต่เท่าที่ฉันรู้ไม่มีอะไรที่เป็นประโยชน์จริง ๆ รู้เรื่องอัลกอริธึมทางพันธุกรรม มีทฤษฎีเกี่ยวกับอัลกอริทึม / ความซับซ้อนเกี่ยวกับพฤติกรรมของอัลกอริธึมทางพันธุกรรมไม่ว่าในทางรูปร่างหรือรูปแบบใด ๆ ในขณะที่ฉันได้ยินสิ่งต่าง ๆ เช่นทฤษฎีสคีมาฉันจะแยกมันออกจากการอภิปรายตามความเข้าใจปัจจุบันของฉันเกี่ยวกับพื้นที่ที่ไม่ได้เป็นอัลกอริทึมโดยเฉพาะ (แต่ฉันอาจเข้าใจผิดที่นี่)

7
ปัญหาใดใน P ที่ตรวจสอบผลลัพธ์ได้ง่ายกว่าการค้นหา
สำหรับ (รุ่นการค้นหา) ของปัญหาที่ไม่สมบูรณ์ปัญหาการตรวจสอบการแก้ปัญหานั้นง่ายกว่าการค้นหาเนื่องจากการตรวจสอบสามารถทำได้ในเวลาพหุนามในขณะที่การค้นหาพยานต้องใช้เวลา (อาจ) เวลาชี้แจง อย่างไรก็ตามในPวิธีแก้ปัญหาสามารถพบได้ในเวลาพหุนามดังนั้นจึงไม่ดูเหมือนชัดเจนเมื่อตรวจสอบได้เร็วกว่าการหาวิธีแก้ปัญหา ในความเป็นจริงปัญหาต่าง ๆ ดูเหมือนจะทำงานแตกต่างจากมุมมองนี้ ตัวอย่างบางส่วน: 3SUM:กำหนดหมายเลขป้อนค้นหา 3 ในจำนวนที่รวมเป็น 0 เท่าที่ฉันรู้อัลกอริทึมที่รู้จักกันเร็วที่สุดจะทำงานในเวลา และลำดับนี้ถือว่าเหมาะสมที่สุด ในทางกลับกันการตรวจสอบของโซลูชันนั้นเร็วกว่ามากเนื่องจากเราต้องทำเพียงแค่ตรวจสอบว่าตัวเลขที่พบ 3 ตัวนั้นรวมเป็น 0O ( n 2 - o ( 1 ) )nnnO(n2−o(1))O(n2−o(1))O(n^{2-o(1)}) เส้นทางที่สั้นที่สุดของ All-Pairs: กำหนดกราฟที่มีน้ำหนักของขอบแล้วคำนวณเมทริกซ์ระยะทางของเส้นทางที่สั้นที่สุด เมื่อได้รับเมทริกซ์ดังกล่าวแล้วจะสามารถตรวจสอบได้เร็วขึ้นหรือไม่ว่าเป็นเมทริกซ์ระยะทางที่ถูกต้องมากกว่าการคำนวณใหม่อีกครั้งหรือไม่ ฉันเดาว่าคำตอบนั้นอาจจะใช่ แต่ก็ชัดเจนน้อยกว่าสำหรับ3SUM โปรแกรมเชิงเส้น หากได้รับโซลูชันที่ดีที่สุดที่อ้างสิทธิ์การตรวจสอบจะง่ายกว่าการคำนวณใหม่อีกครั้งเมื่อได้รับข้อมูลเสริม (โซลูชันคู่ที่ดีที่สุด) ในทางกลับกันถ้ามีเพียงวิธีแก้ปัญหาเบื้องต้นเท่านั้นมันไม่ชัดเจนว่าใครสามารถตรวจสอบได้เร็วกว่าแก้ปัญหา LP จริง ๆ คำถาม:สิ่งที่เป็นที่รู้จักเกี่ยวกับเรื่องนี้? นั่นคือเมื่อใดจะง่ายต่อการตรวจสอบการแก้ไขปัญหาในPกว่าการหาวิธีแก้

13
อัลกอริทึมใดที่มีช่องว่างขนาดใหญ่ระหว่างการวิเคราะห์เชิงทฤษฎีและความเป็นจริง?
สองวิธีในการวิเคราะห์ประสิทธิภาพของอัลกอริทึมคือ เพื่อใส่ขอบเขตบนเชิงเส้นกำกับบนรันไทม์และ เพื่อเรียกใช้และรวบรวมข้อมูลการทดลอง ฉันสงสัยว่ามีหลายกรณีที่ทราบว่ามีช่องว่างที่สำคัญระหว่าง (1) และ (2) หรือไม่ จากนี้ฉันหมายถึงว่า (a) ข้อมูลการทดลองแสดงให้เห็นว่า asymptotic ที่เข้มงวดมากขึ้นหรือ (b) มีอัลกอริธึม X และ Y ซึ่งการวิเคราะห์เชิงทฤษฎีแสดงให้เห็นว่า X ดีกว่า Y มากและข้อมูลการทดลองแสดงว่า Y นั้นดีกว่า เอ็กซ์ เนื่องจากการทดลองมักจะเปิดเผยพฤติกรรมกรณีโดยเฉลี่ยฉันคาดหวังคำตอบที่น่าสนใจที่สุดในการอ้างถึงขอบเขตบนของกรณีโดยเฉลี่ย อย่างไรก็ตามฉันไม่ต้องการแยกแยะคำตอบที่น่าสนใจซึ่งพูดถึงขอบเขตที่ต่างกันเช่นคำตอบของ Noam เกี่ยวกับ Simplex รวมถึงโครงสร้างข้อมูล โปรดใส่หนึ่งอัลโก / ds ต่อคำตอบ

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

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