แคลคูลัสใช้กับวิทยาศาสตร์คอมพิวเตอร์อย่างไร


95

โปรแกรมวิทยาศาสตร์คอมพิวเตอร์หลายโปรแกรมต้องการเรียนแคลคูลัสสองหรือสามชั้น

ฉันสงสัยว่าแคลคูลัสใช้กับวิทยาศาสตร์คอมพิวเตอร์อย่างไรและเมื่อไหร่? เนื้อหา CS ของปริญญาในสาขาวิทยาศาสตร์คอมพิวเตอร์มีแนวโน้มที่จะมุ่งเน้นไปที่อัลกอริธึมระบบปฏิบัติการโครงสร้างข้อมูลปัญญาประดิษฐ์วิศวกรรมซอฟต์แวร์ ฯลฯ มีเวลาที่แคลคูลัสมีประโยชน์ในสาขาเหล่านี้หรือสาขาอื่น ๆ ของวิทยาศาสตร์คอมพิวเตอร์หรือไม่?


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

42
คุณดูเหมือนจะทำผิดพลาดโดยทั่วไปของสมมติว่าเนื้อหาของทุกหลักสูตรจะต้องเกี่ยวข้อง (สำหรับทุกเส้นทางอาชีพ) บางครั้งเป็นเพียงเกี่ยวกับการฝึกอบรมวิธีคิดในบางวิธี
Raphael

8
มันอาจจะเป็นประโยชน์หากคำถามนี้สามารถอธิบายได้ว่าคุณเพียงถามเกี่ยวกับการใช้ภายในวิทยาการคอมพิวเตอร์ที่เหมาะสมหรือการใช้งานทั้งหมดสำหรับนักเรียนที่ได้รับปริญญา Comp Sci อย่างน้อยที่นี่ในสหรัฐอเมริกาผู้สำเร็จการศึกษาจาก Comp Sci จำนวนมากกลายเป็นวิศวกรซอฟต์แวร์ที่แพร่กระจายไปทั่วทุกพื้นที่ทางวิศวกรรมเท่าที่จะเป็นไปได้ โดเมนเหล่านี้จำนวนมากต้องการความเข้าใจแคลคูลัสสำหรับวัตถุประสงค์ต่างๆ ไม่ใช่ CS grads ทุกคนจะใช้แคลคูลัสในงานของพวกเขา แต่จะมีหลายคนที่แน่นอน (อาจมากกว่าที่คิดว่าพวกเขาจะได้ในช่วงปีแรกของพวกเขา)
reirab

1
ความคิดเห็นไม่ได้มีไว้สำหรับการอภิปรายเพิ่มเติม การสนทนานี้ได้รับการย้ายไปแชท
ราฟาเอล

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

คำตอบ:


110

ฉันจะคิดว่าหลักสูตรไม่กี่ที่จะต้องแคลคูลัสโดยตรง ฉันได้ใช้ใบหน้าที่กล้าหาญสำหรับสาขาวิชาที่บังคับมักจะสำหรับการศึกษาระดับปริญญาวิทยาศาสตร์คอมพิวเตอร์และตัวเอียงสำหรับคนที่ไม่จำเป็นมักจะ

  • คอมพิวเตอร์กราฟิก / การประมวลผลภาพและที่นี่คุณจะต้องมีเรขาคณิตวิเคราะห์และพีชคณิตเชิงเส้นอย่างยิ่ง ! หากคุณไปตามเส้นทางนี้คุณอาจต้องการศึกษาเรขาคณิตเชิงอนุพันธ์บางอย่าง (ซึ่งมีแคลคูลัสหลายตัวแปรเป็นเงื่อนไขเบื้องต้นขั้นต่ำ) แต่คุณจะต้องแคลคูลัสที่นี่แม้จะเป็นสิ่งพื้นฐานมาก ๆ ลองค้นหา "Fourier Transform" หรือ "Wavelets" - นี่เป็นเครื่องมือพื้นฐานสองอย่างสำหรับผู้ที่ทำงานกับรูปภาพ
  • การหาค่าเหมาะที่สุดไม่ใช่เชิงเส้นส่วนใหญ่ที่แคลคูลัสหลายตัวแปรเป็นภาษาพื้นฐานที่ใช้ในการพัฒนาทุกอย่าง แต่การเพิ่มประสิทธิภาพเชิงเส้นก็ยังได้รับประโยชน์จากแคลคูลัส (อนุพันธ์ของฟังก์ชันวัตถุประสงค์มีความสำคัญอย่างยิ่ง)
  • น่าจะเป็น / สถิติ สิ่งเหล่านี้ไม่สามารถศึกษาอย่างจริงจังหากไม่มีแคลคูลัสหลายตัวแปร
  • การเรียนรู้ของเครื่องซึ่งใช้ประโยชน์จากสถิติอย่างหนัก (และด้วยเหตุนี้แคลคูลัสหลายตัวแปร)
  • การขุดข้อมูลและวิชาที่เกี่ยวข้องซึ่งใช้สถิติเป็นจำนวนมาก
  • วิทยาการหุ่นยนต์ซึ่งคุณจะต้องจำลองการเคลื่อนไหวทางกายภาพของหุ่นยนต์ดังนั้นคุณจะต้องรู้อนุพันธ์และการไล่ระดับสีบางส่วน
  • คณิตศาสตร์ไม่ต่อเนื่องและ Combinatorics ( ใช่!คุณอาจต้องแคลคูลัสสำหรับการนับต่อเนื่อง!) - ถ้าคุณจริงจังกับการสร้างฟังก์ชั่นคุณจะต้องรู้วิธีการรวมและสร้างสูตรบางอย่าง และนั่นเป็นประโยชน์สำหรับการวิเคราะห์อัลกอริทึม (ดูหนังสือโดย Sedgewick และ Flajolet "การวิเคราะห์อัลกอริทึม") ในทำนองเดียวกันชุด Taylor และแคลคูลัสมีประโยชน์ในการแก้ปัญหาความสัมพันธ์ที่เกิดซ้ำซึ่งใช้ในการวิเคราะห์อัลกอริทึม
  • การวิเคราะห์อัลกอริทึมที่คุณใช้ความคิดของขีด จำกัด จากจุดเริ่มต้น (ดูสัญกรณ์รถม้าสี่ล้อ "น้อย " - มันถูกกำหนดโดยใช้วงเงิน)o

อาจมีคนอื่น - นี่เป็นเพียงส่วนหัวของฉัน

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

สุดท้าย - คุณจะต้องแคลคูลัสเพื่อโต้ตอบกับผู้คนจากวิทยาศาสตร์และวิศวกรรมที่แน่นอนอื่น ๆ และไม่ใช่เรื่องแปลกที่นักวิทยาศาสตร์คอมพิวเตอร์ไม่เพียง แต่ต้องพูดคุย แต่ยังทำงานร่วมกับนักฟิสิกส์หรือวิศวกร


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

6
ฉันทั้งหมดสามารถเกี่ยวข้องกับจุดสุดท้าย (ผลประโยชน์ทางอ้อม) ทำงานเกี่ยวกับทฤษฎีการเขียนโปรแกรมภาษาฉันไม่ค่อยใช้แคลคูลัสโดยตรง บางทีแอปพลิเคชันที่ตรงที่สุดอาจอยู่ในโมเดลการคำนวณความน่าจะเป็น (เช่น Plotkin & Jones powerdomains ความน่าจะเป็น กระนั้นหลักสูตรแคลคูลัสของฉันส่วนใหญ่เกี่ยวกับการพิสูจน์สิ่งต่าง ๆ และนี่เป็นสิ่งที่มีค่ามากมาก หลักสูตรแคลคูลัสหนึ่งหรือสองหลักสูตรนั้นจำเป็นต้องมี IMHO ในทุกหลักสูตร CS อย่างจริงจังพร้อมด้วยคณิตศาสตร์เพิ่มเติม (คณิตศาสตร์ไม่ต่อเนื่อง, ตรรกะ, พีชคณิตเชิงเส้น, การวิเคราะห์เชิงตัวเลข, ...
Chi

3
นี่คือตัวอย่างของวิธีการที่ฉันจำเป็นแคลคูลัสในเครื่องคอมพิวเตอร์กราฟิก: ฟังก์ชั่นการแก้ไขเรียบพื้นทั้งหมดจะอยู่ในรูปแบบf(0) = 0, f(1) = 1, f'(0) = f'(1) = 0และคุณสามารถเพิ่มข้อ จำกัด อื่น ๆ f'(0.5) = 1ที่คุณดูแลเกี่ยวกับการยกตัวอย่างเช่น เมื่อไม่นานมานี้ฉันใช้สิ่งนี้ในการหาชื่อพหุนามการประมาณค่าที่แตกต่างกันเพื่อให้ภาพเรียบขึ้น
porglezomp

3
หุ่นยนต์อาจขยายไปถึงการสร้างแบบจำลองทางฟิสิกส์ทุกชนิด (ซึ่งฉันเดาว่าครอบคลุม CG ในแง่ของแสงดังนั้นเราเรียกมันว่าการสร้างแบบจำลองทางฟิสิกส์จลน์) ซึ่งรวมถึงการเร่งความเร็ว / ความเร็ว, การตีกลับ / สปริง / การเสียรูป, ตัวควบคุม PID, อะคูสติก, ความโน้มถ่วง ...
metao

2
ฉันจะช่วยชี้แนะทางนี้: ดีกว่าชั้นเรียนใด ๆ ก่อนหน้านี้แคลคูลัสสอนนักเรียนว่าพวกเขาไม่สามารถนับจำนวนของปัญหาและประเมินว่างานจะมีส่วนร่วมมากแค่ไหน
candied_orange

20

สิ่งนี้ค่อนข้างคลุมเครือ แต่แคลคูลัสปรากฏขึ้นในประเภทข้อมูลเกี่ยวกับพีชคณิต สำหรับประเภทใดก็ตามประเภทของบริบทหนึ่งหลุมเป็นอนุพันธ์ของประเภทนั้น ดูการพูดคุยที่ยอดเยี่ยมนี้เพื่อดูภาพรวมของหัวเรื่องทั้งหมด นี่เป็นคำศัพท์ทางเทคนิคมากดังนั้นให้อธิบาย

ประเภทข้อมูลพีชคณิต

คุณอาจเจอทูเปิลที่ถูกอ้างถึงว่าเป็นประเภทผลิตภัณฑ์ (ถ้าไม่เป็นเพราะพวกมันเป็นผลิตภัณฑ์คาร์ทีเซียนสองประเภท) เราจะใช้สิ่งนี้อย่างแท้จริงและใช้สัญกรณ์:

ab

เพื่อเป็นตัวแทนของ tuple โดยที่และเป็นทั้งสองประเภท ถัดไปคุณอาจจะเจอประเภทรวมเหล่านี้เป็นชนิดที่สามารถเป็นได้ทั้งประเภทหนึ่งหรืออื่น (ที่รู้จักกันเป็นสหภาพแรงงาน , สายพันธุ์หรือเป็นทั้งสองชนิด (ครับ) ใน Haskell) เราจะใช้อันนี้อย่างแท้จริงและใช้สัญกรณ์:ab

a+b

สิ่งเหล่านี้ถูกตั้งชื่อเนื่องจากเป็นเพราะประเภทมีค่าและ a ประเภทมีค่าดังนั้นประเภทจะมีค่าaNabNba+bNa+Nb

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

ตัวอย่าง

ในภาษาที่ใช้งานได้คำจำกัดความทั่วไปของรายการ (ที่กำหนดใน Haskell ที่นี่) คือ:

data List a = Empty 
            | Cons a List

สิ่งนี้บอกว่ารายการว่างเปล่าหรือ tuple ของค่าและรายการอื่น การแปลงให้เป็นสัญกรณ์พีชคณิตเราได้:

L(a)=1+aL(a)

โดยที่หมายถึงประเภทที่มีหนึ่งค่า (aka ประเภทหน่วย) ด้วยการแทรกซ้ำเราสามารถประเมินสิ่งนี้เพื่อรับนิยามสำหรับ :1L(a)

L(a)=1+aL(a)
L(a)=1+a(1+aL(a))
L(a)=1+a+a2(1+aL(a))
L(a)=1+a+a2+a3(1+aL(a))
L(a)=1+a+a2+a3+a4+a5...

(โดยที่มีความหมายในแง่ของการคูณซ้ำ)xn

คำจำกัดความนี้บอกว่ารายการนั้นเป็นหน่วยหรือทูเปิลของหนึ่งไอเท็มหรือทูเปิลของสองไอเท็มหรืออีกสามอย่างซึ่งก็คือคำจำกัดความของรายการ!

บริบทหนึ่งหลุม

ต่อไปนี้กับบริบทแบบหนึ่งหลุม: บริบทแบบหนึ่งหลุมคือสิ่งที่คุณจะได้รับเมื่อคุณ 'นำมูลค่าออกมา' จากประเภทผลิตภัณฑ์ ลองยกตัวอย่าง:

สำหรับการที่ง่าย 2 tuple ซึ่งเป็นเนื้อเดียวกันถ้าเราใช้ค่าออกเราเพิ่งได้รับ 1 tuple, แต่มีบริบทแบบหนึ่งรูที่แตกต่างกันสองประเภท ได้แก่ ค่าแรกและตัวที่สองของ tuple ดังนั้นเพราะมันเป็นอย่างใดอย่างหนึ่งเหล่านี้เราสามารถเขียนว่ามันเป็นซึ่งเป็นของหลักสูตร2aนี่คือสิ่งที่ทำให้เกิดความแตกต่างในการเล่น ขอยืนยันด้วยตัวอย่างอื่น:a2aa+a2a

การรับค่าจาก 3-tuple จะให้ 2-tuple แต่มีตัวแปรที่แตกต่างกันสามแบบ:

( a , _ , a ) ( _ , a , a )

(a,a,_)
(a,_,a)
(_,a,a)

ขึ้นอยู่กับตำแหน่งที่เราวางหลุม นี้จะช่วยให้เราซึ่งเป็นที่แน่นอนที่มาของ 3 มีหลักฐานการนี้โดยทั่วไปจะอยู่ที่นี่a 33a2a3

สำหรับตัวอย่างสุดท้ายของเราลองใช้รายการ:

ถ้าเราใช้นิพจน์ดั้งเดิมของเราสำหรับรายการ:

L(a)=1+aL(a)

เราสามารถจัดเรียงใหม่เพื่อรับ:

L(a)=11a

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

ตอนนี้ถ้าเราแยกความแตกต่างนี้เราจะได้ผลลัพธ์ที่น่าสนใจ:

L(a)a=(L(a))2

ดังนั้นหนึ่งรายการจึงกลายเป็นคู่ของรายการ ในความเป็นจริงแล้วมันสมเหตุสมผล: รายการทั้งสองที่สร้างนั้นสอดคล้องกับองค์ประกอบด้านบนและด้านล่างของรูในรายการดั้งเดิม!


นี่เป็นสิ่งที่ลึกซึ้งอย่างน่าอัศจรรย์ ขอบคุณ
D. Ben Knoble

12

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


3
ด้วยลักษณะ "รายการ" ของคำถามนี้ทุกคำตอบควรพยายามให้ภาพเต็ม คุณแน่ใจหรือว่าต้องการอ้างว่าวิธีการเชิงตัวเลขเป็นเพียงตัวอย่างเท่านั้น ?
ราฟาเอล

ความคิดเห็นไม่ได้มีไว้สำหรับการอภิปรายเพิ่มเติม การสนทนานี้ได้รับการย้ายไปแชท
กราฟิลส์

12

ระบบอัตโนมัติ - คล้ายกับหุ่นยนต์ระบบอัตโนมัติสามารถกำหนดพฤติกรรมมนุษย์จำนวนมากได้

การคำนวณ - การหาคำตอบสำหรับการพิสูจน์มักต้องใช้แคลคูลัส

การสร้างภาพ - การใช้อัลกอริธึมขั้นสูงต้องการแคลคูลัสเช่น cos, sine, pi และ e โดยเฉพาะอย่างยิ่งเมื่อคุณกำลังคำนวณเวกเตอร์เขตข้อมูลการชนและการประกบกัน

โลจิสติกส์และการวิเคราะห์ความเสี่ยง - การพิจารณาว่างานนั้นเป็นไปได้หรือไม่ความเสี่ยงที่เกี่ยวข้องและอัตราความสำเร็จที่เป็นไปได้

ความปลอดภัย - ความปลอดภัยส่วนใหญ่สามารถทำได้โดยไม่มีแคลคูลัส อย่างไรก็ตามหลายคนที่ต้องการคำอธิบายชอบมันในการแสดงออกทางคณิตศาสตร์

AI - พื้นฐานของ AI สามารถใช้งานได้โดยไม่มีแคลคูลัส อย่างไรก็ตามการคำนวณพฤติกรรมขั้นสูงสติปัญญาจับกลุ่ม / กลุ่มรังผึ้งและค่านิยมที่ซับซ้อนในการตัดสินใจ

การคำนวณทางการแพทย์ - การแสดงข้อมูลด้านสุขภาพส่วนใหญ่ต้องการแคลคูลัสเช่นการอ่าน EKG

วิทยาศาสตร์และวิศวกรรม - เมื่อทำงานกับวินัยทางวิทยาศาสตร์อื่นเกือบทั้งหมดต้องใช้แคลคูลัส: การบินและอวกาศ, โหราศาสตร์, ชีววิทยา, เคมีหรือวิศวกรรม

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


7
cos, sine,และแคลคูลัสเป็นอย่างไร? eπe
David Richerby

3
exp(x)f(x)=f(x)f(0)=1f(x)=g(x)g(x)=f(x)f(0)=0g(0)=1

2
@DavidRicherby: ตัวอย่าง: คุณใช้งานฟังก์ชั่นเหล่านั้นอย่างไรในการพูดไมโครคอนโทรลเลอร์ที่ไม่มี FPU ได้อย่างไร ถ้าคุณรู้แคลคูลัสคุณจะรู้คำตอบที่ดี: ชุดพลังงาน
Nate Eldredge

6

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

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


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

4
คุณสามารถสำเร็จการศึกษาระดับปริญญาโดยไม่ต้องใช้แคลคูลัสได้และฉันคิดว่าสาขาวิชา CS ไม่จำเป็นต้องมากเท่าที่เราได้รับ แต่การทำสิ่งที่ไม่ดีในนั้นจะล็อคคุณออกจากพื้นที่ที่น่าสนใจที่สุดของวิทยาศาสตร์คอมพิวเตอร์ มีเวลาเหลือเฟือที่จะเป็นนักพัฒนาเว็บไซต์เมื่อคุณสำเร็จการศึกษา ในขณะที่อยู่ในโรงเรียนทำไมไม่ลองผลักดันตัวเองเล็กน้อย
tsleyson

3
@tsleyson หากคุณต้องการเป็นนักพัฒนาเว็บให้ประหยัดเงินและเวลาในการแก้ไขเพื่อที่จะได้รับปริญญา CS
กราฟิลส์

8
@ScottB คุณดูเหมือนจะสับสนกับวิทยาการคอมพิวเตอร์ด้วยการเขียนโปรแกรม
David Richerby

3
@ScottB ใครบอกว่า CS = math + programming? ตัวฉันเองได้สนับสนุนการต่อต้านมุมมองที่ จำกัด นี้มานานแล้ว แต่คุณต้องย้อนกลับด้วย: คณิตศาสตร์เป็นส่วนสำคัญของ CS เช่นเดียวกับฟิสิกส์ เราต้องการมันแม้ว่าเราจะไม่ต้องการฝึกก็ตาม (ที่กล่าวว่านี่ไม่ใช่สถานที่สำหรับการสนทนานี้โปรดเข้าร่วมในการแชทวิทยาการคอมพิวเตอร์หากคุณต้องการดำเนินการต่อ)
Raphael

4

มีหลายคนที่ให้แอปพลิเคชันใน CS แต่บางครั้งคุณจะพบแคลคูลัสเมื่อคุณคาดหวังน้อยที่สุด:

ตรวจสอบอนุพันธ์ของการแสดงออกปกติอีกครั้ง

ถ้าคุณรู้ออโตมาตะไฟล์ PDF นี้อาจจะคุ้มค่าที่จะอ่าน


ฉันไม่เห็นแคลคูลัสที่แตกต่างกัน ฉันเห็นคำว่า "อนุพันธ์" แต่ฉันไม่เห็นอะไรเลยที่คล้ายแคลคูลัสเชิงอนุพันธ์แบบดั้งเดิม

2
มันเรียกว่า "อนุพันธ์อย่างเป็นทางการ" และมันเกี่ยวข้องกับแคลคูลัส คุณจะเห็นสิ่งนี้ทำกับฟังก์ชั่นการสร้างสูตรบางอย่างที่เกี่ยวข้องกับโครงสร้างที่ไม่ต่อเนื่องและส่วนอื่น ๆ ที่คุณไม่มี "ฟังก์ชั่นที่ราบรื่น"
Jay

@ เจย์: สิ่งสำคัญไม่ใช่ชื่อ การเข้าใจแคลคูลัสช่วยได้อย่างไร
คริสเตียน

2
มันจะมีการอธิบายในเรื่องนี้หน้าวิกิพีเดีย อนุพันธ์ทางการคือการดำเนินการเกี่ยวกับองค์ประกอบของโครงสร้าง analgebraic ที่ประกอบด้วย polynomials และเป็นทางการ "ค่อนข้าง" ปกติกฎสำหรับการแยกความแตกต่าง polynomials อย่างไรก็ตาม - แตกต่างจากสิ่งที่นักเรียนเห็นในแคลคูลัส - พหุนามไม่เกิน reals; พวกเขาอาจเป็นพหุนามมากกว่า "แหวน" โดยพลการ (โครงสร้างพีชคณิตอื่น) และมีการใช้งานจริงของอนุพันธ์ทางการ - ฉันได้เห็นอย่างน้อยหนึ่ง (การเข้ารหัสพีชคณิตเชิงพีชคณิต - จำรายละเอียดไม่ได้)
Jay

4

ตัวอย่างที่เฉพาะเจาะจงมากขึ้น:

  • แคลคูลัสใช้เพื่อรับกฎเดลต้าซึ่งเป็นสิ่งที่ทำให้เครือข่ายประสาทบางประเภท 'เรียนรู้'
  • แคลคูลัสสามารถใช้ในการคำนวณการแปลงฟูริเยร์ของฟังก์ชันการสั่นซึ่งมีความสำคัญมากในการวิเคราะห์สัญญาณ
  • แคลคูลัสใช้ตลอดเวลาในคอมพิวเตอร์กราฟิกส์ซึ่งเป็นสนามที่มีการเคลื่อนไหวมากเนื่องจากผู้คนค้นพบเทคนิคใหม่ ๆ อย่างต่อเนื่อง สำหรับตัวอย่างพื้นฐานลองดูที่สมการการเรนเดอร์ของ Kajiya
  • แคลคูลัสมีความสำคัญในด้านเรขาคณิตการคำนวณการตรวจสอบเส้นโค้งและการสร้างแบบจำลองพื้นผิว

3

คำตอบที่ดีอื่น ๆ เหล่านี้ฉันจะเพิ่มจุดนี้: ความรุนแรงในการทดสอบ

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

ในขณะที่สถิติถูกกล่าวถึงในคำตอบอื่น ๆ ฉันอยากจะพูดถึงอัลกอริธึม Monte-carloเช่นอัลกอริธึมการปรับให้เหมาะสมและอัลกอริทึมการสตรีมกระเหม็ดกระแหม่ที่ขึ้นอยู่กับหลักการทางคณิตศาสตร์ที่มีแคลคูลัส

อุตสาหกรรมเฉพาะที่ฉันทำงานที่ต้องใช้แคลคูลัสรวมถึง:

  • การเงิน (การสร้างแพลตฟอร์มการซื้อขาย)

  • การประกันภัย (การรวมตัวเลขของนโยบายการประกันในสถานการณ์จำลองเพื่อคำนวณการสูญเสียนโยบายที่คาดหวัง)

  • โลจิสติกส์ (การเพิ่มประสิทธิภาพการรวมเส้นทางการขนส่ง)

  • การประมวลผลสัญญาณ


3

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

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

และสุดท้าย CS มักต้องการอ่านและทำความเข้าใจกับงานของผู้อื่นและแคลคูลัสเป็นสิ่งแรกที่สัมผัสกับคำศัพท์การประชุมและประวัติศาสตร์จำนวนมาก


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