วิทยาศาสตร์คอมพิวเตอร์

ถาม - ตอบสำหรับนักเรียนนักวิจัยและผู้ปฏิบัติงานด้านวิทยาการคอมพิวเตอร์

2
วิธีเข้ารหัสวันที่เป็นอินพุตในเครือข่ายประสาทเทียม
ฉันกำลังใช้โครงข่ายประสาทเทียมเพื่อทำนายอนุกรมเวลา คำถามที่ฉันกำลังเผชิญอยู่ในขณะนี้คือฉันจะเข้ารหัสวันที่ / เวลา / หมายเลขซีเรียลได้อย่างไร ของแต่ละอินพุตกำหนดให้เป็นอินพุตไปยังเครือข่ายประสาทเทียมหรือไม่ ฉันควรใช้การเข้ารหัส 1 จาก C (ใช้สำหรับการเข้ารหัสหมวดหมู่) ตามที่อธิบายไว้ที่นี่หรือไม่ หรือฉันควรจะให้อาหารเวลา (ในมิลลิวินาทีตั้งแต่ 1-1-1970)? หรือกำลังป้อนเวลาที่ไม่จำเป็นตราบใดที่ฉันป้อนส่วนที่เหลือของข้อมูลตามลำดับเวลา?

2
ความสมบูรณ์ของ coNP แสดงถึงความแข็งของ NP หรือไม่?
ความสมบูรณ์ของ coNP แสดงถึงความแข็งของ NP หรือไม่? โดยเฉพาะอย่างยิ่งฉันมีปัญหาที่ฉันแสดงให้เห็นว่าเป็น coNP-complete ฉันสามารถอ้างว่าเป็น NP-hard ได้หรือไม่ ฉันรู้ว่าฉันสามารถเรียกร้องความแข็ง coNP ได้ แต่ฉันไม่แน่ใจว่าคำศัพท์นั้นเป็นมาตรฐานหรือไม่ ฉันสบายใจกับการกล่าวอ้างว่าหากปัญหา NP-complete เป็นของ coNP ดังนั้น NP = coNP อย่างไรก็ตามการบรรยายเหล่านี้ระบุว่าหากปัญหา NP-hard เป็นของ coNP ดังนั้น NP = coNP นี่จะแนะนำว่าฉันไม่สามารถอ้างได้ว่าปัญหาของฉันคือ NP-hard (หรือว่าฉันได้พิสูจน์ coNP = NP ซึ่งฉันสงสัยอย่างมาก) บางทีอาจมีบางอย่างผิดปกติกับความคิดของฉัน ความคิดของฉันคือปัญหาที่ทำให้เสร็จสมบูรณ์ของ coNP นั้นคือปัญหา NP-hard เพราะ: ทุกปัญหาใน NP สามารถลดลงเป็นส่วนเสริมซึ่งจะเป็นของ coNP ปัญหาส่วนเติมเต็มใน coNP ลดปัญหา …

1
การนับจำนวนผลรวมจากอาร์เรย์ย่อยที่ต่อเนื่องกันของอาร์เรย์
เราได้รับอาร์เรย์กับทั้งหมดa[1…n]a[1…n]a[1 \ldots n]a[i]>0a[i]>0a[i]>0 ตอนนี้เราต้องการค้นหาจำนวนผลรวมที่แตกต่างจาก subarrays ของมัน (ที่ subarray เป็นช่วงต่อเนื่องของอาร์เรย์คือสำหรับ , ผลรวมคือผลรวมของทั้งหมด องค์ประกอบของ subarray) ตัวอย่างเช่นถ้าแล้วคำตอบคือ 4: เราสามารถสร้าง1,2,3,4a[j…k]a[j…k]a[j\ldots k]j,kj,kj,ka=[1,2,1]a=[1,2,1]a=[1,2,1]1,2,3,41,2,3,4 1,2,3,4 ฉันรู้วิธีการนับจำนวนของจำนวนเงินที่แตกต่างกันในเวลาO(n2)O(n2)O(n^2) ยิ่งกว่านั้นฉันได้ตระหนักว่านี่คล้ายกับปัญหาคลาสสิคที่เราต้องการค้นหาจำนวนสตริงย่อยที่แตกต่างกันของสตริง ฉันกำลังคิดถึงความเป็นไปได้ในการสร้างอาเรย์ต่อท้ายและแก้ไขในลักษณะที่คล้ายกัน (ในเวลา ) แต่ฉันไม่สามารถหาวิธีแก้ไขได้ที่นี่ ตัวอย่างเช่นถ้าเราใช้ส่วนต่อท้ายสำหรับเราจะได้รับ 5 กรณีแทนที่จะเป็นสี่ที่ยอมรับได้ เป็นไปได้ที่จะทำเช่นนี้โดยใช้อาร์เรย์ต่อท้ายหรือฉันคิดผิดทิศทาง?O(n)O(n)O(n)a=[1,2,1]a=[1,2,1]a=[1,2,1] นอกจากนี้ยังมีอีกหนึ่งทิศทางที่ฉันคิดอยู่แบ่งและพิชิต เช่นถ้าฉันแบ่งอาร์เรย์ออกเป็นสองส่วนทุกครั้งจนกว่าจะลดลงเป็นองค์ประกอบเดียว องค์ประกอบเดียวสามารถมีหนึ่งผลรวม ทีนี้ถ้าเรารวมสององค์ประกอบเดียวเข้าด้วยกันมันสามารถทำได้สองวิธี: ถ้าทั้งสองช่วงมีองค์ประกอบเดียวกันเราจะได้รับผลรวม 2 อันที่แตกต่างกันหรือถ้าทั้งสองมีองค์ประกอบต่างกัน แต่ฉันไม่สามารถที่จะพูดถึงเรื่องนี้สำหรับการรวมอาร์เรย์ที่มีความยาวมากกว่า 1 มันเป็นไปได้ไหมที่จะรวมอาร์เรย์ขนาดสองม. เข้ากับคำตอบใน ?O(m)O(m)O(m)

2
มีคำจำกัดความ CS อย่างเป็นทางการของ VCS และรุ่นของไฟล์หรือไม่
ฉันไม่รู้ว่ามันเป็นเรื่องตลกหรือไม่ แต่เมื่อฉันอ่านสิ่งที่เรียกว่าคำจำกัดความที่เป็นทางการของไฟล์ในระบบการกำหนดเวอร์ชันเช่น git, hg หรือ svn มันเป็นอะไรบางอย่างที่เหมือนกับวัตถุทางคณิตศาสตร์เช่นโฮมมอร์ฟิซึม นั่นเป็นเรื่องตลกหรือมีทฤษฎีวิทยาศาสตร์คอมพิวเตอร์จริงๆเกี่ยวกับระบบการควบคุมเวอร์ชันและคณิตศาสตร์ของ VCS หรือไม่?

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

2
พิสูจน์ความสมบูรณ์แบบ NP ของการตัดสินใจความพึงพอใจของสูตรบูลีนโมโนโทน
ฉันพยายามที่จะแก้ปัญหานี้และฉันกำลังดิ้นรนจริงๆ สูตรเดียวบูลเป็นสูตรในตรรกะประพจน์ที่ทุกตัวอักษรที่มีในเชิงบวก ตัวอย่างเช่น, (x1∨x2)∧(x1∨x3)∧(x3∨x4∨x5)(x1∨x2)∧(x1∨x3)∧(x3∨x4∨x5)\qquad (x_1 \lor x_2) \land (x_1 \lor x_3) \land (x_3 \lor x_4 \lor x_5) เป็นฟังก์ชั่นบูลีนเสียงเดียว ในทางกลับกันบางอย่างเช่น (x1∨x2∨x3)∧(¬x1∨x3)∧(¬x1∨x5)(x1∨x2∨x3)∧(¬x1∨x3)∧(¬x1∨x5)\qquad (x_1 \lor x_2 \lor x_3) \land (\neg x_1 \lor x_3) \land (\neg x_1 \lor x_5) ไม่ใช่ฟังก์ชั่นบูลีนเสียงเดียว ฉันจะพิสูจน์ความสมบูรณ์แบบของ NP สำหรับปัญหานี้ได้อย่างไร: ตรวจสอบว่าฟังก์ชันบูลีนแบบโมโนโทนเป็นที่น่าพอใจหรือไม่หากตั้งค่าตัวแปรหรือน้อยกว่าเป็น ?kkk111 เห็นได้ชัดว่าตัวแปรทั้งหมดสามารถตั้งค่าให้เป็นค่าบวกและนั่นเป็นเรื่องเล็กน้อยดังนั้นจึงมีข้อ จำกัด ของตัวแปรตั้งในเชิงบวกkkk ฉันลองลดจาก SAT ไปเป็นสูตรบูลีนโมโนโทน สิ่งหนึ่งที่ฉันได้ลองคือการแทนที่ตัวแปรดัมมี่สำหรับตัวอักษรเชิงลบทุกตัว ตัวอย่างเช่นฉันลองแทนที่ด้วยจากนั้นฉันพยายามบังคับให้และเป็นค่าที่ต่างกัน ฉันยังไม่สามารถทำให้เรื่องนี้ทำงานได้¬x1¬x1\neg …


2
อัลกอริทึมการติดฉลากเวลาเชิงเส้นสำหรับต้นไม้หรือไม่?
ฉันมีต้นไม้ที่ไม่มีทิศทางซึ่งมีจุดสูงสุดที่ฉันต้องการติดป้าย โหนดใบไม้ควรมีป้ายกำกับหนึ่งรายการ จากนั้นสมมติว่าใบถูกลบออก ในต้นไม้ที่เหลือใบควรจะติดป้ายที่สอง กระบวนการนี้จะดำเนินต่อไปในลักษณะที่ชัดเจนจนกระทั่งจุดยอดทั้งหมดมีป้ายกำกับ เหตุผลที่ฉันทำเช่นนี้คือฉันต้องการเก็บจุดยอดในคิวและผ่านพวกเขา "ทิ้งก่อน" มีวิธีง่าย ๆ ในการทำเวลาO(n+m)O(n+m)O(n+m)นี้หรือไม่? ฉันสามารถแก้ปัญหาด้วยการทำ BFS ในทุกขั้นตอน แต่ในกรณีที่เลวร้ายที่สุดในทุกขั้นตอนที่ฉันไปถึงจุดสุดยอดทุกอันให้เอาใบสองใบออกและเข้าพวกเขา ฉันเชื่อว่านี่ใช้เวลากำลังสอง อีกแนวคิดหนึ่งคือค้นหาใบทั้งหมดก่อนแล้วจึงทำ BFS จากทุก ๆ ใบ นี่ไม่ได้ให้ทางออกที่ต้องการแก่ฉัน ตัวอย่างเช่นลองพิจารณา "กราฟรูปทรงมงกุฎ" ดังในรูปด้านล่าง โซลูชั่นที่ต้องการแสดงขึ้น แต่การเปิดตัว BFS จากแต่ละใบไม้จะทำให้มีการใช้ป้ายกำกับเพียงสองป้ายเท่านั้น อุดมคติแล้วอัลกอริธึมเชิงเส้นเวลาก็จะอธิบายและนำไปปฏิบัติได้ง่าย
12 algorithms  trees 

4
ความซับซ้อนของปัญหา NP-hard หรือ -complete ที่เปลี่ยนไปอย่างมากเมื่ออินพุตถูกเข้ารหัสแบบ unary หรือไม่?
ปัญหาของปัญหา NP-hard หรือ NP-complete อย่างรุนแรง (ดังเช่นที่กำหนดไว้ที่นี่ ) จะเปลี่ยนไปเมื่ออินพุทของมันไม่เหมือนกันแทนที่จะเข้ารหัสแบบไบนารี่หรือไม่? มันแตกต่างกันอย่างไรหากอินพุตของปัญหา NP-hard ที่รุนแรงถูกเข้ารหัสแบบ unary ฉันหมายถึงถ้าฉันใช้ตัวอย่างปัญหาเครื่องหลังที่ไม่สมบูรณ์ของ NP อย่างอ่อนแอมันเป็น NP-complete เมื่อเข้ารหัสแบบไบนารี แต่สามารถแก้ไขได้ในเวลาพหุนามโดยโปรแกรมแบบไดนามิกเมื่อเข้ารหัสแบบ unary บางทีมันอาจมีความเกี่ยวข้องกับความแข็งของระดับพหุนามเวลาแบบพหุนามที่สูงขึ้น? แนวคิดเกี่ยวกับการ ... อย่างหนักนั้นมีไว้สำหรับคลาสความซับซ้อนอื่น ๆ เช่นคลาสที่สูงขึ้นของลำดับเวลาพหุนามหรือไม่ ก่อนหน้านี้ฉันเคยถามคำถามนี้ที่ stackoverflow.comแต่มันก็ชี้ให้เห็นว่ามันเหมาะสมกว่าที่นี่

2
ปูกระเบื้องรูปหลายเหลี่ยมแบบมุมฉากพร้อมกำลังสอง
ให้รูปหลายเหลี่ยมแบบมุมฉาก (รูปหลายเหลี่ยมที่ด้านข้างขนานกับแกน) ฉันต้องการค้นหาชุดสี่เหลี่ยมจัตุรัสที่แยกกันไม่ออกซึ่งมีขนาดเล็กที่สุดซึ่งสหภาพมีรูปหลายเหลี่ยมเท่ากับ ฉันพบการอ้างอิงหลายอย่างเกี่ยวกับปัญหาที่แตกต่างกันเล็กน้อยเช่น: ครอบคลุมรูปหลายเหลี่ยมมุมฉากที่มีสี่เหลี่ยม - คล้ายกับปัญหาของฉัน แต่สี่เหลี่ยมครอบคลุมได้รับอนุญาตให้ทับซ้อนกัน ปัญหานี้มีวิธีแก้ปัญหาพหุนาม ( Aupperle, Conn, Keil และ O'Rourke, 1988 ; Bar-Yehuda และ Ben-Hanoch, 1996 ) ปูกระเบื้อง / ย่อยสลาย / แบ่งรูปหลายเหลี่ยมตั้งฉากกับรูปสี่เหลี่ยม ปัญหานี้มีวิธีแก้ปัญหาพหุนาม ( Keil, 2000 ; Eppstein, 2009 ) ครอบคลุมรูปหลายเหลี่ยมมุมฉากที่มีรูปสี่เหลี่ยมผืนผ้า - ปัญหานี้เป็นที่รู้จักกันว่า NP- สมบูรณ์ ( Culberson และ Reckhow, 1988 ) ฉันกำลังมองหาอัลกอริทึมสำหรับน้อยที่สุดการปูกระเบื้องที่มีสี่เหลี่ยม

3
ความสำคัญของรูปแบบปกติเช่น Chomsky รูปแบบปกติสำหรับ CFG
ฉันเข้าใจว่าสามารถใช้ไวยากรณ์แบบไม่มีบริบทเพื่อแสดงภาษาที่ไม่มีบริบทได้ซึ่งอาจมีความคลุมเครือ เรายังมีรูปแบบปกติเช่นChomskyและGreibachรูปแบบปกติ ฉันไม่เข้าใจความต้องการของสิ่งนั้น ทำไมพวกเขาถึงมีความสำคัญในทฤษฎีภาษา? หนังสือทุกเล่มที่ฉันพูดถึงเกี่ยวกับรูปแบบปกติเหล่านี้ แต่ไม่ได้บอกอะไรเกี่ยวกับความสำคัญของพวกเขา

5
มีข้อบกพร่องใน NP ของฉัน = หลักฐาน CoNP?
ฉันมี "การพิสูจน์" ที่ง่ายมากสำหรับ NP = CoNP และฉันคิดว่าฉันทำอะไรผิดที่ แต่ฉันไม่สามารถหาสิ่งที่ผิดได้ มีคนช่วยฉันได้ไหม ให้ A เป็นปัญหาบางอย่างใน NP และให้ M เป็นตัวตัดสินใจสำหรับ A. ให้ B เป็นส่วนประกอบเช่น B อยู่ใน CoNP เนื่องจาก M เป็นตัวตัดสินใจคุณสามารถใช้มันเพื่อตัดสินใจ B เช่นกัน (เพียงแค่พลิกคำตอบ) นั่นไม่ได้หมายความว่าเราจะแก้ปัญหาทั้งปัญหา NP และ CoNP ด้วย M เดียวกันหรือไม่? ที่จะทำให้มันดูเป็นรูปธรรมมากขึ้น ให้ A เป็นปัญหาที่สมบูรณ์แบบของ NP และให้ M เป็นตัวตัดสินใจสำหรับ A. พิจารณาปัญหา B ใด ๆ ใน …

4
การเรียนรู้ของเครื่องเทียบกับการระบุระบบ?
ใครช่วยอธิบายความแตกต่าง & ความคล้ายคลึงกันระหว่างการเรียนรู้ของเครื่องและการระบุระบบ? นี่เป็นเพียงสองชื่อในสิ่งเดียวกันหรือไม่ ในหน้านี้พวกเขาพูดว่า: ชุมชนการเรียนรู้ของเครื่องและระบบการระบุตัวตนต้องเผชิญกับปัญหาที่คล้ายกันซึ่งต้องสร้างแบบจำลองจากการสังเกตแบบ จำกัด หรือมีเสียงดัง ฉันยังได้อ่านบทแรก ๆ ของการจดจำรูปแบบหนังสือที่มีชื่อเสียงและการเรียนรู้ของเครื่องโดย Christopher M. Bishop จนถึงตอนนี้ข้อสรุปของฉันคือปัญหาที่การระบุระบบกำลังพยายามแก้ไขเป็นส่วนย่อยของสิ่งที่การเรียนรู้ของเครื่องพยายามแก้ไข

2
หาก
พูด, L⊆{0}∗L⊆{0}∗L \subseteq \{0\}^* * ถ้าเช่นนั้นเราจะพิสูจน์ได้อย่างไรว่าL∗L∗L^*นั้นปกติ? ถ้าLLLเป็นปกติแน่นอนว่าL∗L∗L^*ก็เหมือนกัน ถ้าLLLเป็นจำนวน จำกัด แสดงว่าเป็นปกติและอีกครั้งคือL∗L∗L^*ปกติ นอกจากนี้ฉันได้สังเกตเห็นว่าสำหรับL={0p∣p is a prime}L={0p∣p is a prime}L = \{0^p \mid p \text{ is a prime}\} , LLLไม่ปกติ, L⊆{0}∗L⊆{0}∗L \subseteq \{0\}^*และL∗L∗L^*เป็นปกติ แต่วิธีการแสดงนี้ได้เซตLLLของ{0}∗{0}∗\{0\}^* ?

3
'การทำลายป่า' ลบ 'ต้นไม้' ออกจากโปรแกรมอย่างไร
ฉันคิดว่าเข้าใจว่าการตัดไม้ทำลายป่าใช้งานและสร้างรายการได้อย่างไรในเวลาเดียวกัน (จากการพับและฟังก์ชั่นการขยาย - ดูคำตอบที่ดีใน CodeReview ที่นี่ ) แต่เมื่อฉันเปรียบเทียบกับรายการ wikipedia เกี่ยวกับเทคนิคที่พูดถึง ต้นไม้ 'จากโปรแกรม ฉันเข้าใจว่าโปรแกรมสามารถแยกวิเคราะห์ลงในแผนผังวากยสัมพันธ์ (ถูกไหม?) แต่อะไรคือความหมายของการใช้การตัดไม้ทำลายป่าเพื่อความเรียบง่าย (มันคืออะไร) ของโปรแกรม? และฉันจะทำอย่างไรกับรหัสของฉัน?

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