มันเป็นคำถามแรกของฉันในเว็บไซต์นี้ ฉันกำลังเรียนหลักสูตรปริญญาโทด้านทฤษฎีการคำนวณ คุณจะอธิบายปัญหา P = NP ให้กับเด็กอายุ 10 ปีได้อย่างไรและทำไมมันถึงได้รางวัลทางการเงินเช่นนี้?
ของคุณ
ฉันจะอัปเดตคำถามเมื่อหัวของฉันชัดเจน
มันเป็นคำถามแรกของฉันในเว็บไซต์นี้ ฉันกำลังเรียนหลักสูตรปริญญาโทด้านทฤษฎีการคำนวณ คุณจะอธิบายปัญหา P = NP ให้กับเด็กอายุ 10 ปีได้อย่างไรและทำไมมันถึงได้รางวัลทางการเงินเช่นนี้?
ของคุณ
ฉันจะอัปเดตคำถามเมื่อหัวของฉันชัดเจน
คำตอบ:
ฉันใช้สไลด์ทั้ง 3 นี้เพื่อแสดงว่าทำไมมันยาก (เป็นไปไม่ได้) เพื่อหาอัลกอริทึมที่รวดเร็วสำหรับปัญหา NP:
ในการพูดคุยครั้งนี้Scott Aaronsonตอบคำถาม
TEDxCaltech - Scott Aaronson - ฟิสิกส์ในศตวรรษที่ 21: การทำงานในเงาของไฟน์แมน
คำเตือน:โปรดอย่าแสดงคำพูดนี้โดยตรงกับคุณยาย / 10 ปี ทำไม? ดูมันแล้วคุณจะรู้ ;-)
แก้ไข:
ให้เด็กแก้ปริศนา 8 ควีนส์ ให้เวลาเขาด้วย
หากเขา "พบ" ทางออกจากนั้นเขาเป็นเด็กอัจฉริยะคุณสามารถเริ่มสอนเขาได้ทันที :) มิ
ฉะนั้นคุณจะแสดงให้เขาแก้ปัญหาและขอให้เขา "ตรวจสอบ" ถ้ามันถูกต้อง
เป็นชุดของปัญหาที่คอมพิวเตอร์สามารถ "หา" ทางออกได้อย่างง่ายดาย
เป็นชุดของปัญหาที่คอมพิวเตอร์ไม่สามารถ "ค้นหา" วิธีแก้ปัญหาได้ง่าย แต่สามารถ "ตรวจสอบ" วิธีแก้ปัญหาได้อย่างง่ายดาย
หากเราสามารถ "ตรวจสอบ" วิธีแก้ปัญหาได้ง่ายแล้วทำไมเราไม่ "ค้นหา" ได้อย่างง่ายดาย
สิ่งที่คุณทำใน CS คือคุณแก้ปัญหาหรือพิสูจน์ว่าไม่มีใครทำได้
ถ้ามีคนคิดค้นอัลกอริทึมที่ทำให้ง่ายต่อการ "หา" วิธีแก้ปัญหาปัญหา NP ตารางจะมีลักษณะเป็น และ{} P=NP
และถ้ามีคนพิสูจน์ได้ว่าไม่มีใครสามารถหาขั้นตอนวิธีการ "ค้นหา" โซลูชั่นสำหรับปัญหาแล้วตารางยังคงเหมือนเดิมและ{}P ≠ N P
หนึ่งในสิ่งสำคัญที่ผู้คนใช้คอมพิวเตอร์คือการค้นหา โปรแกรมเช่น Google นั้นเรียกว่า "เสิร์ชเอ็นจิ้น" และมีการใช้งานหลายล้านครั้งต่อวัน คอมพิวเตอร์เพิ่งเอาชนะมนุษย์บน Jeopardy ได้เพราะสามารถค้นหาข้อมูลได้เร็วมาก
แต่บางสิ่งก็ยากสำหรับคอมพิวเตอร์ที่จะค้นหา ฟังดูแปลกใช่ไหม? ตัวอย่างหนึ่งคือการคูณแบบย้อนกลับ แน่นอนถ้าฉันพูดว่า "5 ครั้ง 3 มีอะไรบ้าง" คุณสามารถพูดว่า "15" ในเสี้ยววินาที แต่คำตอบคืออะไร "ตัวเลขสองตัวใดที่รวมกันเป็น 21 ได้อย่างไร" (รอคำตอบ 7 x 3) ถูกต้อง! ทีนี้ตัวเลขสองตัวคูณกันรวมกันเท่ากับ 23 เป็นเท่าไหร่? (รอคำตอบหรือแห้ว)
ตัวเลขสองตัวเท่านั้นคูณด้วยกันที่เท่ากับ 23 คือ 1 และ 23 เอง มันต้องใช้ความคิดใช่ไหม? และ 23 คือจำนวนเล็กน้อย ลองคิดดูว่าตัวเลขมีความยาวหลายร้อยหลักหรือไม่ และสิ่งที่เป็นโปรแกรมที่ดีที่สุดในโลกไม่สามารถย้อนกลับการคูณได้ดีกว่า 7 ปีอาจพยายามเพียงแค่ทดสอบหมายเลขหนึ่งแล้วต่อไปและต่อไป คอมพิวเตอร์สามารถทำมันได้เร็วขึ้นแต่เราไม่ทราบจริงๆวิธีที่จะบอกคอมพิวเตอร์ที่จะทำมันอย่างชาญฉลาด ผู้คนได้รับปริญญาเอกจากสิ่งนี้และพวกเขารู้วิธีที่จะบอกคอมพิวเตอร์ให้ทำการคูณย้อนกลับอย่างชาญฉลาดขึ้นเล็กน้อย
ดังนั้นอาจไม่มีวิธีที่ชาญฉลาด แต่อาจจะมีและเราก็ยังไม่พบ นั่นคือปัญหา P / NP โดยย่อ: ถ้าฉันจำคำตอบได้ทันที - 1 คูณ 23 คือ 23, duh - นั่นช่วยให้ฉันค้นหาคำตอบได้เร็วขึ้นหรือไม่? ผู้คนคิดว่ามันสำคัญมากที่คนที่คิดคำตอบว่าใช่หรือไม่ใช่จะชนะเงินหนึ่งล้านเหรียญ
ฉันคิดว่าปัญหา P vs. NP สามารถอธิบายได้อย่างนุ่มนวลในแง่ของ Sudoku ฉันสมมติว่าสิบปีที่มีปัญหานั้นคุ้นเคยกับ Sudoku ฉันจะพยายามอธิบายความเรียบง่ายมากกว่าความยากลำบากในคำอธิบายของฉัน
นี่คือความพยายามของฉันที่จะอธิบาย P = NP ให้กับสมมุติอายุสิบปี:
หากคุณมีตัวต่อซูโดกุที่ยังไม่เสร็จและคุณต้องการทำให้เสร็จนั่นอาจเป็นเรื่องยากที่จะทำ ในทางกลับกันถ้าเพื่อนของคุณแก้ปัญหาเสร็จและคุณเก่งคณิตศาสตร์ก็ไม่ยากที่จะตรวจสอบว่าวิธีแก้ปริศนาของเพื่อนคุณนั้นถูกต้องหรือไม่
คำถาม P = NP ถามว่ามีกระบวนการที่เร็วและเป็นขั้นเป็นตอนสำหรับการไขปริศนา Sudoku ที่ยังไม่เสร็จหรือไม่ กระบวนการทีละขั้นตอนจะต้องมีความชัดเจนและง่ายต่อการเข้าใจว่าแม้คอมพิวเตอร์สามารถเข้าใจและใช้เพื่อแก้ปริศนาซูโดกุโดยอัตโนมัติและรวดเร็วมาก หากมีกระบวนการทีละขั้นตอนอย่างรวดเร็วนักคณิตศาสตร์จะเรียกว่า "อัลกอริธึมเวลาแบบพหุนาม" (ฉันจะอธิบายความหมายเมื่อคุณอายุมากขึ้น)
ในความเป็นจริงนักวิทยาศาสตร์คอมพิวเตอร์และโปรแกรมเมอร์คอมพิวเตอร์ได้ระบุปริศนาอื่น ๆ จำนวนมากและปัญหาที่สำคัญมากซึ่งยากที่จะแก้ปัญหาเช่นเดียวกับ Sudoku สิ่งสำคัญคือต้องรู้ว่าปัญหาเหล่านี้สามารถแก้ไขได้หรือไม่เพราะคอมพิวเตอร์สามารถช่วยเราทำสิ่งต่างๆได้เร็วขึ้นถ้าทำได้ ตัวอย่างเช่นพวกเขาสามารถช่วยเราจัดตารางเวลารถไฟได้อย่างมีประสิทธิภาพยิ่งขึ้นทำลายรหัสลับและอาจสร้างความช่วยเหลือในการสร้างคอมพิวเตอร์อัจฉริยะที่มีความสามารถในการประดิษฐ์
จะมีหลายสิ่งที่ดีมากที่จะเกิดขึ้นหากผู้คนสามารถแก้ไข P = NP ได้ แน่นอนว่ามันจะมีปัญหาด้วยเช่นกันเพราะมันยากที่จะใช้รหัสลับในการเก็บข้อความส่วนตัวเป็นความลับอีกต่อไป
นักคณิตศาสตร์ที่ฉลาดส่วนใหญ่คิดว่า P = NP นั้นไม่เป็นความจริง กล่าวอีกนัยหนึ่งคนส่วนใหญ่คิดว่าจะไม่มีใครสามารถไขปริศนาซูโดกุที่ยากได้อย่างรวดเร็ว อย่างไรก็ตามไม่มีใครสามารถพิสูจน์ได้ว่า P ไม่เท่ากับ NP มาก่อนดังนั้นองค์กรที่เรียกว่า Clay Mathematics Institute จะเสนอรางวัลหนึ่งล้านดอลลาร์สำหรับการพิสูจน์ครั้งแรกว่า P = NP เป็นจริงหรือเป็นครั้งแรก พิสูจน์ว่ามันเป็นเท็จ
อย่างที่คุณเห็นฉันเอา "อธิบายให้สิบปี" ส่วนหนึ่งอย่างแท้จริง :)
หวังว่านี่จะช่วยได้
นี่คือวิธีที่ฉันอธิบายให้แม่ของฉันหวังว่ามันจะให้บริการคุณ :)
มีปัญหาที่ง่ายต่อการค้นหาวิธีแก้ไขปัญหา (P แต่น้อยกว่าเรียกพวกเขาว่า "แก้ปัญหาได้ง่าย") ปัญหาที่ง่ายต่อการตรวจสอบว่าวิธีแก้ไขปัญหาที่ถูกต้อง (NP แต่เรียกว่า "ตรวจสอบได้ง่าย" ) และปัญหาที่ไม่สามารถแก้ไขได้ง่ายหรือตรวจสอบได้ง่าย สำหรับความเรียบง่ายสมมติว่า "ง่าย" มีการกำหนดอย่างเป็นทางการและแต่ละปัญหามีทางออกที่ไม่ซ้ำกัน
ตอนนี้ผู้คนสามารถพิสูจน์ (ใช้คณิตศาสตร์) ความสัมพันธ์ที่น่าสนใจระหว่างสองแนวคิดของ "แก้ปัญหาได้ง่าย" และ "ตรวจสอบได้ง่าย" เช่นปัญหาบางอย่างไม่สามารถแก้ไขได้ง่ายและบางคนไม่สามารถตรวจสอบได้ง่าย ตัวอย่างพื้นฐานของผลลัพธ์ดังกล่าวคือปัญหาที่แก้ได้ง่ายสามารถตรวจสอบได้ง่ายเพียงแค่หาวิธีแก้ปัญหาและเปรียบเทียบกับวิธีแก้ปัญหาที่ให้ไว้
ยั่วเย้าพอสำหรับปัญหาการปฏิบัติจำนวนมาก (เช่นการตัดสินใจว่ามีความเป็นไปได้ของการมอบหมายให้นักเรียนอาจารย์และห้องเรียนเมื่อมีอัตรากำไรขั้นต้นน้อยมาก) ไม่ทราบว่ามีวิธี "ง่าย" เพื่อแก้ปัญหา แต่ เป็นที่ทราบกันว่าจะตรวจสอบได้ง่ายว่าวิธีแก้ไขนั้นถูกต้องหรือไม่ ผู้คนพยายามมากและล้มเหลวจากนั้นพยายามพิสูจน์ว่ามันเป็นไปไม่ได้และล้มเหลวเช่นกันพวกเขาไม่รู้ บางคนคิดว่าปัญหาทั้งหมดที่ตรวจสอบได้ง่ายสามารถแก้ไขได้ง่าย (เราควรคิดให้มากขึ้น) บางคนคิดว่าตรงกันข้ามเราไม่ควรเสียเวลากับการพยายามหาวิธีแก้ไขปัญหาเหล่านี้
สิ่งที่เราค้นพบคือวิธีแสดงลิงค์ระหว่างปัญหา (เช่นถ้าคุณรู้วิธีไปโรงเรียนคุณรู้วิธีไปร้านเบเกอรี่ที่อยู่ข้างหน้า) และปัญหาที่ตรวจสอบได้ง่ายซึ่งเชื่อมโยงกับปัญหาที่ตรวจสอบได้ง่ายอื่น ๆ NP-complete แต่ลองเรียกพวกเขาว่า "ปัญหาสำคัญ") เช่นถ้าใครสักคนหนึ่งวันแสดงให้เห็นว่าหนึ่งในปัญหาที่สำคัญคือการแก้ไขได้อย่างง่ายดายจากนั้นปัญหาทั้งหมดที่ตรวจสอบได้ง่ายนอกจากนี้ยังสามารถแก้ไขได้ง่าย (เช่น P = NP) ในทางกลับกันหากมีคนแสดงให้เห็นว่าหนึ่งในปัญหาที่สำคัญไม่สามารถแก้ไขได้อย่างง่ายดายจากนั้นคนอื่น ๆ ไม่สามารถแก้ไขได้อย่างง่ายดาย (เช่น P <> NP)
ดังนั้นคำถามก็ยั่วเย้าและค่อนข้างสำคัญในทางปฏิบัติ (แม้ว่าบางคนแย้งว่าเราควรมุ่งเน้นไปที่คำจำกัดความทางเลือกของ "ง่าย") และผู้คนก็ลงทุนเงินและเวลาในการอภิปรายค่อนข้างมาก
Michael Sipser อธิบายปัญหา P vs NP ด้วยวิธีการที่ใช้งานง่ายในวิดีโอนี้
ฉันสงสัยเกี่ยวกับความเป็นไปได้ที่จะอธิบายปัญหานั้นให้กับเด็กอายุ 10 ปีหรือแม้แต่กับบุคคลทั่วไปโดยไม่เกิดขึ้นในการบิดเบือนแนวคิดหลัก ๆ
คำอธิบายทั้งหมดในรูปแบบของ "ความง่าย" และ "ความกระด้าง" ในการค้นหาและการตรวจสอบการแก้ปัญหาสันนิษฐานวิทยานิพนธ์ของคอบซึ่งเป็นเนื้อหาที่เป็นเท็จในกรณีทั่วไปและสามารถพิจารณาน้อยกว่ากฎที่ดีที่สุด
กลยุทธ์การชนะสำหรับเกมกระดานคลาสสิกต่างๆเช่นเรือรบหรือวิดีโอเกม (ได้รับการพิสูจน์แล้วว่าผ่านมาแล้วนั้นสมบูรณ์แล้วและนี่คือวิธีการที่ยอดเยี่ยม / มุมในการนำเสนอ / อธิบายทฤษฎีแกนกลางถึงมือใหม่
เรือประจัญบานเป็นปัญหาการตัดสินใจที่สมบูรณ์ของ NP Merlijn Sevenster ICGA Journal sep 2004
เรือกวาดทุ่นระเบิดเป็นคำถามที่พบบ่อยสมบูรณ์ NPโดยนักคณิตศาสตร์ RW Kaye ฤดูใบไม้ผลิ 2000 ของนักคณิตศาสตร์ทางคณิตศาสตร์ (เล่มที่ 22 จำนวน 2 หน้า 9--15)
การเล่นเกมเป็นงานที่ยาก แต่มีคนต้องทำ! กระดาษ arxiv โดย Giovanni Viglietta วิเคราะห์ความซับซ้อนในการคำนวณของ Pac-Man, Tron, Lode Runner, Boulder Dash, Deflektor, Mindbender, Pipe Mania, Skweek, Prince of Persia, Lemmings, Doom, Puzzle Bobble 3 และ Starcraft
Pacman เป็นบทความเกี่ยวกับเทคโนโลยีขั้นสูงที่ยากมากบนกระดาษด้านบน
และนี่คือปัญหาของฉัน
Kido!
คุณรู้ว่าเราประสบปัญหามากมายในชีวิตของเรา คุณสามารถพูดความท้าทาย บางคนยากบางคนง่ายกว่า ตัวอย่างเช่นคุณมักจะต้องเพิ่มตัวเลขสองตัว และเมื่อเย็นนี้เราอยู่บนกระดานหมากรุกและเราต้องชนะกับเพื่อนบ้านของเรา การเพิ่มตัวเลขสองตัวนั้นเป็นปัญหาที่ง่ายและตรงไปตรงมากับขั้นตอนที่ จำกัด ปัญหาดังกล่าวเรียกว่าปัญหาระดับ P เนื่องจากมีปัญหามากมายที่ตรงไปตรงมากับขั้นตอนที่ไม่ต่อเนื่องที่จะต้องทำซ้ำซ้ำแล้วซ้ำอีกเพื่อให้ได้คำตอบ
เมื่อคืนที่ผ่านมาเมื่อเกมอกของเรากลยุทธ์ที่ดีที่สุดในการชนะเกมคืออะไร? เราสามารถย้ายจำนำแรกหนึ่งขั้นตอนหรือจำนำที่สองขั้นตอนเดียวหรือเราสามารถย้ายจำนำที่สองสองขั้นตอนและจำนำแรกขั้นตอนเดียวเพื่อให้คุณเห็นว่ามีความเป็นไปได้มากมาย แต่มีวิธีสำหรับเราหรือผู้รับที่ทำให้เรามีชุดของคำสั่งที่สมบูรณ์ซึ่งให้ผลที่ดีที่สุดและรุกฆาต? ดังนั้นคุณจะเห็นว่ามันเลิกยากเพราะมีความเป็นไปได้มากมายในแต่ละขั้นตอน พันล้านและพันล้านขณะที่คาร์ลเซแกนพูดว่า
แต่ที่รักถ้าฉันบอกคุณทุกตำแหน่งกระดานและถามคุณว่ามันเป็นรุกฆาต? แน่นอนคุณจะสามารถบอกได้อย่างรวดเร็วภายในการตรวจสอบไม่กี่ว่ามีการเคลื่อนไหวทางกฎหมายที่เหลือสำหรับพระมหากษัตริย์
ดังนั้นปัญหาดังกล่าวซึ่งแก้ไขได้ยาก แต่หากวิธีการแก้ปัญหาของพวกเขาสามารถตรวจสอบได้ง่ายในไม่กี่ขั้นตอนพวกเขาจะเรียกว่าปัญหา NP
ตอนนี้คุณถามว่า P = NP หมายถึงอะไร จริง ๆ แล้วคำถามนี้หมายความว่ามีวิธีที่เราสามารถหาวิธีแก้ปัญหาที่ง่ายกว่าสำหรับการหากลยุทธ์ที่ดีที่สุดหรือสั่งรายการการเคลื่อนไหวสำหรับเกมหมากรุกโดยไม่ต้องผ่านความเป็นไปได้หลายพันล้านอย่างที่เราทำได้ คำถามง่ายๆนี้ยังไม่ได้รับคำตอบ เราไม่มีหลักฐานใด ๆ เกี่ยวกับความจริงหรือการปฏิเสธ แต่ถ้าเราทำมันจะเป็นการพัฒนา ถ้ามันเป็นจริงอารยธรรมของเราอาจจะแก้ปัญหาที่ซับซ้อนมากได้โดยการทำให้มันกลายเป็นปัญหาระดับ P ผู้คนจะสามารถทำลายรหัสผ่านไม่กี่วินาทีข้อความจะถูกถอดรหัสและอื่น ๆ อีกมากมายและนั่นคือสาเหตุที่ปัญหานี้ถือเป็นหนึ่งในโพรบที่สำคัญที่สุดของสหัสวรรษ