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

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

1
ในการ จำกัด การเขียนโปรแกรมมีรุ่นใดบ้างที่คำนึงถึงจำนวนการเปลี่ยนแปลงของตัวแปร
พิจารณาโมเดล CSP ที่การเปลี่ยนค่าของตัวแปรเฉพาะนั้นมีราคาแพง มีงานใดบ้างที่ฟังก์ชั่นวัตถุประสงค์ยังพิจารณาจำนวนการเปลี่ยนแปลงในค่าของตัวแปรในระหว่างกระบวนการค้นหาหรือไม่? ตัวอย่าง: ตัวแปรที่มีราคาแพงต่อการเปลี่ยนแปลงอาจอยู่ในการควบคุมของเอเจนต์อื่นและมีค่าใช้จ่ายที่เกี่ยวข้องกับเอเจนต์นั้นเพื่อเปลี่ยนตัวแปร อีกตัวอย่าง: ตัวแปรมีส่วนร่วมในข้อ จำกัด ข้อใดข้อหนึ่งและความพึงพอใจของข้อ จำกัด นี้เกี่ยวข้องกับการเรียกใช้ฟังก์ชันที่มีราคาแพง (เช่นเครื่องจำลอง) เช่นคือข้อ จำกัด และเป็นราคาแพง - ฟังก์ชั่นการคำนวณ ดังนั้นและเป็นตัวแปรราคาแพงที่เปลี่ยนแปลงf x yz=f(x,y)z=f(x,y)z = f(x, y)fffxxxyyy

2
การสั่งซื้อองค์ประกอบเพื่อให้องค์ประกอบบางอย่างไม่ได้อยู่ระหว่างคนอื่น
ได้รับจำนวนเต็มnnnและเซตของจำนวนเต็มสามเท่าของจำนวนเต็ม ค้นหาอัลกอริธึมที่พบการเปลี่ยนแปลงของเซตเช่นนั้น หรือกำหนดอย่างถูกต้องว่าไม่มีการเปลี่ยนแปลงดังกล่าว อย่างเป็นทางการน้อยเราต้องการเรียงลำดับหมายเลข 1 ถึงอีกครั้ง แต่ละสามในระบุว่าต้องปรากฏก่อนkในลำดับใหม่ แต่jต้องไม่ปรากฏระหว่างiπS⊆{(i,j,k)∣1≤i,j,k≤n,i≠j,j≠k,i≠k},S⊆{(i,j,k)∣1≤i,j,k≤n,i≠j,j≠k,i≠k},S \subseteq \{(i, j, k) \mid 1\le i,j,k \le n, i \neq j, j \neq k, i \neq k\},ππ\pi{1,2,…,n}{1,2,…,n}\{1, 2, \dots, n\}(i,j,k)∈S⟹(π(j)&lt;π(i)&lt;π(k)) ∨ (π(i)&lt;π(k)&lt;π(j))(i,j,k)∈S⟹(π(j)&lt;π(i)&lt;π(k)) ∨ (π(i)&lt;π(k)&lt;π(j))(i,j,k) \in S \implies (\pi(j)<\pi(i)<\pi(k)) ~\lor~ (\pi(i)<\pi(k)<\pi(j))nnn(i,j,k)(i,j,k)(i,j,k)SSSiiikkkjjjiiiและkkk . ตัวอย่างที่ 1 สมมติว่าn=5n=5n=5และS={(1,2,3),(2,3,4)}S={(1,2,3),(2,3,4)}S = \{(1,2,3), (2,3,4)\}\} แล้วก็ π=(5,4,3,2,1)π=(5,4,3,2,1)\pi = (5, …

3
ความซับซ้อนของการจำพื้นที่ Palindromes Watson-Crick
ฉันมีปัญหาเกี่ยวกับอัลกอริทึมดังต่อไปนี้: กำหนดพื้นที่ความซับซ้อนของทัวริงในการรับรู้สตริงของ DNA คือ Watson-Crick palindromes Watson-Crick palindromes เป็นสตริงที่ส่วนประกอบที่ตรงกันข้ามเป็นสตริงเดิม ส่วนเติมเต็มนั้นถูกกำหนดด้วยตัวอักษรที่ได้รับแรงบันดาลใจจาก DNA: A คือส่วนเติมเต็มของ T และ C คือส่วนเติมเต็มของ G ตัวอย่างง่ายๆสำหรับ WC-palindrome คือ ACGT ฉันคิดวิธีแก้ปัญหานี้สองวิธี หนึ่งต้องพื้นที่O(n)O(n)\mathcal{O}(n) เมื่อเครื่องเสร็จอ่านค่าอินพุทแล้ว เทปอินพุตต้องถูกคัดลอกไปยังเทปงานในลำดับย้อนกลับ เครื่องจะอ่านค่าอินพุตและเทปการทำงานจากด้านซ้ายและเปรียบเทียบแต่ละรายการเพื่อตรวจสอบเซลล์ในเทปงานคือคำชมเชยของเซลล์ในอินพุต นี้ต้องใช้พื้นที่O(n)O(n)\mathcal{O}(n) อื่น ๆ ที่ต้องใช้พื้นที่O(logn)O(log⁡n)\mathcal{O}(\log n) ในขณะที่อ่านอินพุต นับจำนวนรายการในเทปอินพุต เมื่ออ่านเทปเสร็จแล้ว คัดลอกส่วนประกอบของจดหมายไปยังเทปงาน คัดลอกตัวอักษร L ไปยังจุดสิ้นสุดของเทปงาน (จุดลูป) หากตัวนับ = 0 ให้ล้างเวิร์กเทปและเขียนใช่แล้วหยุด หากอินพุตเทปอ่าน L ย้ายหัวอินพุตไปทางซ้ายตามจำนวนครั้งที่ระบุโดยตัวนับ (ต้องใช้ตัวนับที่สอง) หากอินพุตเทปอ่าน R …

3
ความหลากหลายและประเภทข้อมูลอุปนัย
ฉันอยากรู้. ฉันได้ทำงานกับประเภทข้อมูลนี้ในOCaml : type 'a exptree = | Epsilon | Delta of 'a exptree * 'a exptree | Omicron of 'a | Iota of 'a exptree exptree ซึ่งสามารถจัดการได้โดยใช้ฟังก์ชั่นวนซ้ำอย่างชัดเจน (คุณลักษณะที่ถูกเพิ่มเข้ามาเมื่อไม่นานมานี้) ตัวอย่าง: let rec map : 'a 'b. ('a -&gt; 'b) -&gt; 'a exptree -&gt; 'b exptree = fun f -&gt; begin …

1
อัตราการแก้ไขข้อผิดพลาดทำให้เข้าใจผิด
ในทฤษฎีการเข้ารหัส 'วิธีที่ดีรหัสคือ' หมายความว่ามีกี่ข้อผิดพลาดของช่องที่สามารถแก้ไขได้หรือดีกว่าระดับเสียงรบกวนสูงสุดที่รหัสสามารถจัดการได้ เพื่อให้ได้รหัสที่ดีกว่ารหัสนั้นได้รับการออกแบบโดยใช้ตัวอักษรขนาดใหญ่ (แทนที่จะเป็นเลขฐานสอง) จากนั้นรหัสจะดีถ้าสามารถจัดการกับ "สัญลักษณ์" ที่มีอัตราผิดพลาดจำนวนมาก เหตุใดจึงไม่พิจารณาการโกง? ฉันหมายความว่าเราไม่ควรสนใจว่าจะเกิดอะไรขึ้นเมื่อเรา "แปล" สัญลักษณ์แต่ละตัวเป็นสตริงไบนารีหรือไม่ "rate of bit error" แตกต่างจาก rate ของ "symbol error" ยกตัวอย่างเช่นอัตราบิตข้อผิดพลาดไม่สามารถไปข้างต้นในขณะที่ 1/2 (ถ้าผมเข้าใจอย่างถูกต้อง) มีตัวอักษรขนาดใหญ่พอสัญลักษณ์ข้อผิดพลาดสามารถไปได้ถึง1-นี่คือเพราะเราเทียมจำกัด ช่องทางที่จะเปลี่ยนเฉพาะ "สัญลักษณ์" มากกว่าบิตหรือจะเป็นเพราะรหัสเป็นจริงดีกว่า?1 - ϵ1-ε1-\epsilon

2
คำถามเกี่ยวกับเครื่องจักรทัวริงที่ไม่มีประโยชน์
ตกลงดังนั้นนี่คือคำถามจากการทดสอบที่ผ่านมาในระดับทฤษฎีการคำนวณของฉัน: สถานะที่ไร้ประโยชน์ใน TM คือสถานะที่ไม่เคยป้อนลงในสตริงอินพุตใด ๆ ปล่อย พิสูจน์ว่านั้นไม่สามารถตัดสินใจได้U S E L E S S T MUSELESSTM={⟨M,q⟩∣q is a useless state in M}.USELESSTM={⟨M,q⟩∣q is a useless state in M}.\mathrm{USELESS}_{\mathrm{TM}} = \{\langle M, q \rangle \mid q \text{ is a useless state in }M\}.USELESSTMUSELESSTM\mathrm{USELESS}_{\mathrm{TM}} ฉันคิดว่าฉันมีคำตอบ แต่ฉันไม่แน่ใจว่าถูกต้องหรือไม่ จะรวมไว้ในส่วนคำตอบ

3
ข้อผิดพลาดในการใช้สัญลักษณ์ asymptotic
ฉันพยายามที่จะเข้าใจสิ่งที่ผิดกับหลักฐานต่อไปนี้ของการเกิดซ้ำต่อไปนี้ T(n)≤2(c⌊nT(n)=2T(⌊n2⌋)+nT(n)=2T(⌊n2⌋)+n T(n) = 2\,T\!\left(\left\lfloor\frac{n}{2}\right\rfloor\right)+n T(n)≤2(c⌊n2⌋)+n≤cn+n=n(c+1)=O(n)T(n)≤2(c⌊n2⌋)+n≤cn+n=n(c+1)=O(n) T(n) \leq 2\left(c\left\lfloor\frac{n}{2}\right\rfloor\right)+n \leq cn+n = n(c+1) =O(n) เอกสารบอกว่ามันผิดเพราะสมมติฐานอุปนัยที่ ฉันหายไปไหน?T(n)≤cnT(n)≤cn T(n) \leq cn

1
รับสตริงและ CFG อักขระใดบ้างที่สามารถติดตามสตริง (ในรูปแบบประโยคของ CFG)
ให้เป็นชุดของขั้วและชุดของสัญลักษณ์ที่ไม่ใช่ขั้วของบางบริบทฟรีไวยากรณ์GΣΣ\SigmaNยังไม่มีข้อความNGGG บอกว่าฉันมีสายเช่นโดยที่และเป็นรูปแบบที่ sentential ของGa∈(Σ∪N)+a∈(Σ∪N)+a \in (\Sigma \cup N)^+xay∈S(G)xay∈S(G)x a y \in \mathcal{S}(G)x,y∈(Σ∪N)∗x,y∈(Σ∪N)∗x,y\in (\Sigma \cup N)^*S(G)S(G)\mathcal{S}(G)GGG ได้รับ , ฉันต้องการที่จะตรวจสอบชุดC = { B | W ขZ ∈ S ( G ) , ข∈ Σ ∪ N }GGGC={b∣wabz∈S(G),b∈Σ∪N}C={b∣wabz∈S(G),b∈Σ∪N}C = \{ b \mid wabz \in \mathcal{S}(G), b \in \Sigma \cup N \} เพื่อชี้แจงในกรณีนี้คือสตริงของเทอร์มินัลและที่ไม่ใช่เทอร์มินัลและbมีความยาวหนึ่งw,x,y,z,a,bw,x,y,z,a,bw, x, …

2
ค่าคงที่ของลูปที่ได้ในอัลกอริธึมการค้นหาขอบเขตสแควร์รูทเป็นอย่างไร?
มีพื้นเพมาจากmath.SEแต่ยังไม่มีคำตอบ พิจารณาอัลกอริทึมต่อไปนี้ u := 0 v := n+1; while ( (u + 1) is not equal to v) do x := (u + v) / 2; if ( x * x &lt;= n) u := x; else v := x; end_if end_while โดยที่ u, v และ n เป็นจำนวนเต็มและการดำเนินการหารคือการหารจำนวนเต็ม อธิบายสิ่งที่คำนวณโดยอัลกอริทึม ใช้คำตอบของคุณในส่วนที่ฉันเป็นโพสต์เงื่อนไขสำหรับอัลกอริทึมสร้างวงคงที่และแสดงให้เห็นว่าอัลกอริทึมยุติและถูกต้อง …

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

1
ตัวกำหนดเวลาสองระดับมีประโยชน์ในการจัดการการแลกเปลี่ยนหรือไม่
การกำหนดเวลาสองระดับมีประโยชน์เมื่อระบบกำลังทำงานกระบวนการมากกว่าที่เหมาะสมใน RAM: ตัวกำหนดตารางเวลาระดับล่างสลับระหว่างกระบวนการที่อยู่อาศัยและตัวจัดกำหนดการระดับสูงกว่าจะสลับกลุ่มของกระบวนการเข้าและออก ฉันพบว่าไม่มีการเอ่ยถึงการตั้งเวลาสองระดับในระบบปฏิบัติการของ Andrew Tanenbaum : การออกแบบและการนำไปใช้งานครั้งที่ 1 แบบฝึกหัด 2.22 ถามว่าเหตุใดการจัดตารางสองระดับจึงอาจใช้ ฉันไม่รู้ว่ามันเป็นการตรวจสอบความเข้าใจในการอ่านหรือมีเหตุผลอื่นที่ไม่ได้กล่าวถึงอย่างชัดเจนในข้อความ การกำหนดเวลาสองระดับมีประโยชน์ในการจัดการความขัดแย้งของทรัพยากรอื่นนอกเหนือจากหน่วยความจำหรือไม่

7
รายการหนังสือแนะนำ TCS สำหรับผู้ที่ไม่ค่อยรู้อะไรเกี่ยวกับ TCS [ปิด]
ตามที่เป็นอยู่ในปัจจุบันคำถามนี้ไม่เหมาะสำหรับรูปแบบคำถาม &amp; คำตอบของเรา เราคาดหวังว่าคำตอบจะได้รับการสนับสนุนจากข้อเท็จจริงการอ้างอิงหรือความเชี่ยวชาญ แต่คำถามนี้อาจเรียกร้องให้มีการอภิปรายโต้แย้งโต้แย้งหรือการอภิปรายเพิ่มเติม หากคุณรู้สึกว่าคำถามนี้สามารถปรับปรุงและเปิดใหม่ได้โปรดไปที่ศูนย์ช่วยเหลือเพื่อขอคำแนะนำ ปิดให้บริการใน8 ปีที่ผ่านมา หากคุณต้องแนะนำหนังสือสำหรับคนที่ต้องการเรียนรู้เพิ่มเติมเกี่ยวกับ TCS ในระดับเบื้องต้นเช่นทฤษฎีออโตมาตะอัลกอริทึมทฤษฎีความซับซ้อน ฯลฯ หนังสือเล่มไหนที่คุณอยากแนะนำสำหรับผู้ที่สนใจและต้องการเรียนรู้เพิ่มเติมเกี่ยวกับ TCS แต่ไม่มีการสัมผัสกับมัน?
10 education 

1
การวิเคราะห์และการอ้างอิงสำหรับทอพอโลยีเครือข่าย Koch-snowflake-like (และอื่น ๆ ที่แปลกใหม่)
ในระบบเครือข่ายคอมพิวเตอร์และการออกแบบคอมพิวเตอร์คลัสเตอร์ที่มีประสิทธิภาพสูงโครงสร้างเครือข่ายหมายถึงการออกแบบวิธีที่โหนดเชื่อมต่อโดยลิงก์เพื่อสร้างเครือข่ายการสื่อสาร ทอพอโลยีเครือข่ายทั่วไปรวมถึงตาข่ายทอรัสแหวนดาวต้นไม้ ฯลฯ ทอพอโลยีเหล่านี้สามารถศึกษาเชิงวิเคราะห์เพื่อกำหนดคุณสมบัติที่เกี่ยวข้องกับประสิทธิภาพที่คาดหวัง คุณลักษณะดังกล่าวรวมถึงเส้นผ่านศูนย์กลาง (ระยะทางสูงสุดระหว่างคู่โหนดในแง่ของจำนวนลิงก์ที่ต้องข้ามถ้าโหนดนั้นสื่อสาร) ระยะห่างเฉลี่ยระหว่างโหนด (เหนือโหนดคู่ทั้งหมดในเครือข่าย) และแบนด์วิดธ์ bisection (แบนด์วิดท์ตัวพิมพ์เล็กที่สุดระหว่างสองส่วนของเครือข่าย) ธรรมชาติทอพอโลยีและเมทริกอื่น ๆ นั้นมีอยู่ พิจารณาโทโพโลยีเครือข่ายตามเกล็ดหิมะ Koch การจุติของโทโพโลยีที่ง่ายที่สุดประกอบด้วยสามโหนดและสามลิงก์ในการตั้งค่าที่เชื่อมต่ออย่างสมบูรณ์ เส้นผ่านศูนย์กลางคือ 1 ระยะทางเฉลี่ยคือ 1 (หรือ 2/3 ถ้าคุณรวมการสื่อสารภายในโหนด) เป็นต้น การจุติของโทโพโลยีถัดไปประกอบด้วย 12 โหนดและลิงก์ 15 ลิงก์ มีสามคลัสเตอร์ของสามโหนดโดยสมบูรณ์แต่ละคลัสเตอร์เชื่อมต่ออย่างสมบูรณ์โดยลิงก์สามลิงก์ นอกจากนี้ยังมีสามโหนดเดิมเชื่อมต่อสามกลุ่มโดยใช้ลิงค์เพิ่มเติมหกลิงก์ ในความเป็นจริงจำนวนโหนดและลิงก์ในการจุติจุติถูกอธิบายโดยความสัมพันธ์การเกิดซ้ำดังต่อไปนี้: N ( 1 ) = 3 L ( 1 ) = 3 N ( k + 1 …

5
ภาษาของค่าของฟังก์ชันเลียนแบบ
เขียนสำหรับการขยายทศนิยมของ (โดยไม่นำหน้า) ให้และเป็นจำนวนเต็มกับ0 พิจารณาภาษาของการขยายทศนิยมของทวีคูณของบวกค่าคงที่:ˉ nn¯\bar n nnn0aaabbba&gt;0a&gt;0a > 0aaa M = { ¯ ax + b ∣x∈N}M={ax+b¯¯¯¯¯¯¯¯¯¯¯¯¯¯∣x∈N}M = \{ \overline{a\,x+b} \mid x\in\mathbb{N} \} คือปกติ? บริบทฟรีหรือไม่MMM (ตรงกันข้ามกับภาษาของกราฟของฟังก์ชันเลียนแบบ ) ฉันคิดว่านี่จะเป็นคำถามทำการบ้านที่ดีดังนั้นคำตอบที่เริ่มต้นด้วยคำใบ้หรือสองและอธิบายไม่เพียง แต่วิธีการแก้ปัญหา แต่ยังรวมถึงวิธีการตัดสินใจว่าจะใช้เทคนิคใดในการใช้งาน

1
อัลกอริทึมในการแปลBüchi automaton ที่กำหนดขึ้นมาเป็น LTL (เมื่อเป็นไปได้)
เป็น Linear ตรรกะชั่วคราวและกำหนดออBüchiหาที่เปรียบมิได้: DBA ไม่สามารถแสดงความและ LTL ไม่สามารถแสดงความ"อย่างน้อยตัวอักษรแต่ละตัวที่แปลกคือ 'a'" แต่บางครั้งมันน่าสนใจที่จะรู้ว่าภาษาของ DBA สามารถแสดงใน LTL ได้หรือไม่FGaFGaFGa ฉันต้องการอัลกอริทึมที่ตัดสินว่าภาษาของ DBA ที่ระบุนั้นสามารถอธิบายได้ใน LTL หรือไม่ คุณรู้อัลกอริทึมสำหรับสิ่งนั้นหรือไม่?

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