กลยุทธ์ในการทำความเข้าใจ TCS


19

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

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


5
ชนะฉัน ดูเหมือนจะเป็นคำถามที่สมเหตุสมผลสำหรับไซต์นี้
Suresh

4
ฉันโหวตให้ปิด ปัญหาหลักที่ฉันเห็นคือคำถามไม่ได้เกี่ยวกับวิทยาศาสตร์คอมพิวเตอร์จริงๆ มันเกี่ยวกับวิธีการเรียนรู้วิทยาศาสตร์คอมพิวเตอร์ หลังไม่มีคำตอบที่เป็นวัตถุประสงค์เพราะแต่ละคนจะมีวิธีที่ดีที่สุดของตัวเอง การโหวตสามครั้งเพื่อปิดนั้นได้รับการจัดสรรให้กับเหตุผล "เกินไปแปล" แต่ฉันคิดว่าคำถามนี้เป็นหัวข้อนอกเพราะมันไม่เกี่ยวกับวิทยาศาสตร์คอมพิวเตอร์
Carl Mummert

1
ฉันคิดว่าคำถามนี้มีข้อดีและเป็นประเภทของคำถามที่ฉันต่อสู้อย่างเข้มข้น ฉันคิดว่าการรับคำแนะนำเกี่ยวกับปัญหาประเภทนี้จากชุมชนที่เชื่อถือได้นั้นเป็นสิ่งที่นักเรียน CS หลายคนต้องเผชิญ ฉันเข้าใจคำคัดค้านของคำถาม สำหรับฉันแล้วดูเหมือนว่าคำถามนี้จะเกี่ยวกับเมตาของเว็บไซต์นี้
BrotherJack

6
@CarlMummert: ทุกคำถามเกี่ยวกับวิทยาศาสตร์คอมพิวเตอร์เป็นคำถามเกี่ยวกับวิธีการเรียนรู้วิทยาศาสตร์คอมพิวเตอร์
JeffE

2
คำถามกว้างเกินไปในรูปแบบปัจจุบัน มุ่งเน้นคำถามของคุณเช่นขอทรัพยากร (เช่นหนังสือปัญหา) เพื่อช่วยปรับปรุงความสามารถในการแก้ปัญหาในหลักสูตรหรือหากคุณมีตัวอย่างเฉพาะมุ่งเน้นไปที่ปัญหานั้นและถามเกี่ยวกับสัญชาตญาณหรือวิธีการเพื่อแก้ไขปัญหาที่คล้ายกัน
Kaveh

คำตอบ:


15

สิ่งที่เป็นนามธรรมเป็นวิทยาศาสตร์และวิทยาการคอมพิวเตอร์ แต่น่าเสียดายที่มันยากที่จะสอนอย่างชัดเจน

ในความคิดของฉันแนวคิดการทำความเข้าใจมีความสำคัญมากกว่าความสามารถในการคำนวณหรือพิสูจน์สิ่งของ แน่นอนว่าคุณต้องรู้วิธีการเบื้องต้นของคุณ แต่เนื้ออยู่ที่อื่น

ก่อนอื่นคุณต้องเข้าใจเนื้อหาบ้าง ด้วยเหตุนี้ฉันจึงพบว่ามีประโยชน์ที่จะถามคำถามต่อไปนี้เมื่อมีสิ่งใดที่ไม่ชัดเจนสำหรับคุณ:

  • ทำไมเราถึงทำเช่นนี้?
  • สิ่งที่เราจะใช้วิธีนี้หรือไม่?
  • สิ่งนี้คล้ายกันกับเรื่องอะไรบ้าง?
  • วิธีทำแหล่งข้อมูลอื่น ๆอธิบายมันได้หรือไม่
  • ฉันไม่เข้าใจอะไรอย่างแน่ชัด

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

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

สำหรับการออกกำลังกายขั้นพื้นฐานไปและหาหนังสือที่มีบางอย่าง จากด้านบนของหัวของฉันฉันสามารถอ้างถึงคณิตศาสตร์คอนกรีตโดย Graham, Knuth และ Patashnik หนังสือเล่มนี้ไม่เพียง แต่เป็นกล่องเครื่องมืออันมีค่าสำหรับนักวิทยาศาสตร์คอมพิวเตอร์เท่านั้น แต่ยังมีแบบฝึกหัดมากมายพร้อมวิธีแก้ปัญหา (!) จำไว้ว่าให้พยายามแก้ไขก่อนที่จะค้นหาคำตอบและทำซ้ำคำตอบที่คุณต้องค้นหา

หนังสือที่มีประโยชน์อีกเล่มหนึ่งคือรู้เบื้องต้นเกี่ยวกับอัลกอริทึมโดย Cormen, Leiserson, Rivest และ Stein รวมเป็นบทที่ใหญ่มากเกี่ยวกับพื้นฐานทางคณิตศาสตร์ มันยังมีแบบฝึกหัดมากมาย โซลูชันมีให้บริการผ่านหน้าที่เชื่อมโยง (เนื้อหาเพิ่มเติม) นอกจากนี้ยังมีวิดีโอบรรยายโดยผู้เขียนคนหนึ่งซึ่งอาจเป็นไปได้อย่างดีกับหนังสือเล่มนี้

สำหรับ introductore การบรรยายเกี่ยวกับการพิสูจน์มีลักษณะที่พีชคณิตเชิงเส้นพิสูจน์ใน Khan Academy ฉันไม่ได้ดูพวกเขา แต่หวังว่าพวกเขาทั้งพื้นฐานและเป็นประโยชน์ มีหลักฐานอีกมากมายที่ Khan Academy; ฉันแค่คิดว่าการพิสูจน์พีชคณิตเชิงเส้นอาจเหมาะสมกับวิทยาการคอมพิวเตอร์ที่ดีที่สุด อย่าลังเลที่จะดูคนอื่นด้วย


7
ฉันยอมรับว่าแนวคิดการทำความเข้าใจมีความสำคัญมากกว่าความสามารถในการคำนวณหรือพิสูจน์สิ่งต่าง ๆ แต่ความเข้าใจเป็นผลมาจากการฝึกฝนพร้อมการคำนวณและการพิสูจน์ไม่ใช่การใช้แทนการฝึกฝน
JeffE

ขอบคุณสำหรับความเข้าใจ ฉันจะใช้คำแนะนำของคุณอย่างสุดซึ้งและพยายามปรับปรุงตามนั้น
trigoman

สำหรับความต้องการขั้นพื้นฐานเพิ่มเติมหนังสือพิสูจน์อาจเป็นข้อมูลอ้างอิงที่มีค่า
กราฟิลส์

8

บางครั้งฉันพบว่าคนที่ทำได้ไม่ดีในทางทฤษฎีมีพื้นฐานที่ไม่ถูกต้อง (ในวันที่ 1-3 การบรรยายครั้งแรกพวกเขาคิดว่าเนื้อหานั้นง่ายมากดังนั้นพวกเขาจึงไม่สนใจมากนัก แต่หลังจากนั้น ในการบรรยาย 5-7 สิ่งที่เร็วขึ้นและมันสายเกินไปที่จะสรุป)

@fbernardo กล่าวว่าอาจเป็นความคิดที่ดีที่จะเริ่มต้นตั้งแต่ต้น ไม่เท่า FLA (ไม่มีประโยชน์ในการเรียน TC, IMHO) แต่เปิด Sipser และเริ่มแก้ไขคำถามทีละคำสั่งตามลำดับ ด้วยประสบการณ์ที่คุณจะได้รับสัญชาติญาณและเครื่องมือพื้นฐานที่จำเป็นสำหรับแนวคิดขั้นสูงเพิ่มเติม

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

ขอให้โชคดีนะ!


3

คำแนะนำเดียวของฉันคือการที่คุณเริ่มจากจุดเริ่มต้น ในหลักสูตรของฉันเราใช้หนังสือของ Sipser ด้วยเช่นกันมันเป็นหนังสือที่ดีในความคิดของฉัน แต่เรามีหลักสูตรก่อนหน้า TC ซึ่งมีชื่อว่า FLA (Formal Languages ​​an Automaton) ที่ให้สัญชาตญาณและพื้นหลังที่ดีกว่าใน TC ดังนั้นอีกครั้งทุกคนเรียนรู้ในอัตราที่แตกต่างกันและคุณมีหนังสือที่ดีมาก คำถามเฉพาะอื่น ๆ คุณสามารถรับความช่วยเหลือได้ที่นี่ :)


2

คุณถามคำถามทั่วไปในชื่อของคุณแล้วอย่างน้อยสองจุดพื้นฐาน / เฉพาะในคำถามและฉันคิดว่ามีคำตอบที่ดี (แยก) แต่ละคน:

  • วิธีการพิสูจน์สิ่งต่าง ๆ
  • สร้าง descr อย่างเป็นทางการของพฤติกรรม TM

นี่คือรายการที่ 1 เท่านั้น (ซึ่งกว้างและสมควรจะได้รับ) - การเรียงลำดับของช้างในห้องของ STEM (วิทยาศาสตร์, เทคโนโลยี, วิศวกรรม, คณิตศาสตร์) การศึกษาที่ได้รับการเบี่ยงเบนสั้น & มักจะเป็นเงา . อาจดูเหมือนว่าไม่มีใครรู้วิธีสอนวิธีสร้างหลักฐานอย่างแท้จริง subj นี้เริ่มต้นในรูปทรงเรขาคณิตตรีโกณมิติและแคลคูลัส แต่ไม่ค่อยเป็นองค์ประกอบที่เข้มงวดของมัน ครูส่วนใหญ่ถือว่าเป็นตัวเลือก ดูเหมือนว่าทั้งชั้นเรียนที่อุทิศให้กับ "วิธีการพิสูจน์สิ่งต่าง ๆ " จะเป็นการเพิ่มเติมที่ยอดเยี่ยมหรือที่สำคัญแม้กระทั่งหรือเปลี่ยนเป็นการศึกษา STEM

นี่คือบางส่วนของการอ้างอิงที่ฉันเปิดการค้นหาอย่างรวดเร็วสำหรับวิธีการพิสูจน์สิ่งต่าง ๆ & ฉันคิดว่ามีแหล่งข้อมูลที่ดีอื่น ๆ อีกมากมาย ทุกวันนี้ยังมีวิดีโอหลายเรื่องที่อาจปรากฏขึ้นผ่านการค้นหา แต่ฉันไม่เคยเห็นองค์กรประเภทวิดีโอ "วิธีการพิสูจน์สิ่ง" ที่ครอบคลุมดี

ส่วนสำคัญของการพิสูจน์คือต้นแบบพื้นฐานของคณิตศาสตร์และใช้มันเป็นเครื่องมือหรือชิ้นส่วนอาคาร เช่นรู้ว่าชุดคืออะไรสิ่งอันดับคือความแตกต่าง / ความคล้ายคลึงกันคือเมื่อคุณจะใช้อย่างใดอย่างหนึ่ง แต่ไม่ใช่ชุดอื่น ๆ ฯลฯ

อีกวิธีคือรักษาเหมือนสว่าน ทำข้อพิสูจน์การปฏิบัติหลาย ๆ อย่างด้วยตัวเองเริ่มจากง่ายไปยาก (หวังว่าฉันจะรู้หนังสือมากกว่านี้แบบนี้ดูเหมือนจะไม่มากนัก)


1
เพิ่มPólyaสุดคลาสสิก "วิธีแก้ปัญหา" นอกจากนี้ยังมีประโยชน์ (พิเศษสำหรับผู้สำเร็จการศึกษา) เพื่อมองไปรอบ ๆ สำหรับการเขียนเชิงคณิตศาสตร์เช่น Knuth et al "การเขียนเชิงคณิตศาสตร์" นี่เป็นทักษะที่ได้รับบ่อยเกินไป
vonbrand
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.