Komputasi ilmiah vs analisis numerik


9

Saya jurusan ganda dalam ilmu komputer dan matematika. Saya suka kedua subjek. Saya sedang berpikir untuk menempuh karir lulusan, mungkin dalam komputasi ilmiah. Apa perbedaan nyata antara komputasi ilmiah dan analisis numerik? Apakah mereka belajar sebagai karier?

Jawaban:


18

Wikipedia memberikan definisi yang baik

Analisis numerik adalah studi tentang algoritma yang menggunakan pendekatan numerik (berlawanan dengan manipulasi simbolik umum) untuk masalah analisis matematika (yang dibedakan dari matematika diskrit).

Analis numerik biasanya tertarik untuk membuktikan hasil matematika tentang algoritme mereka, termasuk batas kesalahan (seberapa besar kesalahan dalam perkiraan), konvergensi skema iteratif (apakah pendekatan mendekati batas yang benar), urutan dan laju konvergensi (seberapa cepat melakukan algoritma konvergen), dan kompleksitas komputasi (membatasi jumlah operasi yang dibutuhkan oleh suatu algoritma.) Adalah mungkin untuk melakukan penelitian di bidang-bidang ini tanpa pernah menggunakan komputer, dan beberapa hasil penting bahkan mendahului perkembangan komputer digital pada 1950-an.

Wikipedia juga memiliki definisi untuk "Scientific Computing"

Ilmu komputer (juga komputasi ilmiah atau komputasi ilmiah) adalah bidang multidisiplin yang berkembang pesat yang menggunakan kemampuan komputasi canggih untuk memahami dan memecahkan masalah yang kompleks. Ilmu komputer menggabungkan tiga elemen berbeda: [1] Algoritma (numerik dan non-numerik) dan perangkat lunak pemodelan dan simulasi dikembangkan untuk menyelesaikan sains (misalnya, biologi, fisik, dan sosial), masalah teknik, dan humaniora Ilmu komputer dan informasi yang berkembang dan mengoptimalkan komponen sistem perangkat keras, perangkat lunak, jaringan, dan manajemen data yang canggih yang diperlukan untuk menyelesaikan masalah yang menuntut komputasi Infrastruktur komputasi yang mendukung pemecahan masalah sains dan teknik serta pengembangan komputer dan sains informasi.

Komputasi ilmiah lebih banyak tentang aspek praktis untuk mendapatkan solusi yang akurat dari komputer. Ini jelas didasarkan pada hasil analisis numerik, tetapi juga sangat bergantung pada arsitektur komputer dan rekayasa perangkat lunak. Meskipun penelitian dalam komputasi ilmiah sering dilakukan untuk kepentingannya sendiri dan untuk mengembangkan perangkat keras dan perangkat lunak yang akan digunakan dalam banyak aplikasi, ada juga banyak penelitian komputasi ilmiah yang didorong oleh kebutuhan untuk memecahkan masalah ilmu pengetahuan dan teknik tertentu. Sebagai contoh, pengembangan model iklim global untuk mempelajari perubahan iklim juga telah memajukan komputasi ilmiah.

Analisis numerik paling umum ditemukan dalam matematika dan departemen matematika terapan, sedangkan komputasi ilmiah adalah bidang interdisipliner yang dapat ditemukan di departemen ilmu komputer, departemen matematika, dan di berbagai disiplin ilmu teknik dan sains.


1
Di masa lalu yang baik, ada banyak analisis numerik (fakultas, siswa, kelas, penelitian) yang terjadi di beberapa departemen ilmu komputer. Banyak dari pekerjaan ini dikhususkan untuk mengembangkan algoritma dan perangkat lunak yang bekerja dengan baik untuk memecahkan masalah aktual dalam sains, teknik, statistik (komputasi statistik), manajemen / Riset Operasi, dll. Itu bukan semua tentang pembuktian teorema untuk kepentingan mereka sendiri.
Mark L. Stone

Apakah matematika terapan menjadi titik awal yang baik untuk mereka?
blade

1
Ya, latar belakang dalam matematika terapan akan membantu di kedua arah. Pertanyaan sebenarnya adalah apa yang ingin Anda tambahkan ke apa yang sudah Anda miliki. Luasnya (ilmu komputer dan beberapa bidang ilmu atau teknik di mana ilmu komputasi digunakan) sangat membantu dalam bidang interdisipliner seperti ilmu komputasi.
Brian Borchers

6

Sebagai seseorang yang pindah dari Teknik ke Komputasi Ilmiah selama sekolah Grad sebagai kebutuhan tak terduga dari jenis pekerjaan yang saya lakukan di sini adalah dua sen saya:

  • Analisis numerik akan fokus pada sisi matematika dan algoritma. Mencari tahu teknik apa yang digunakan untuk memecahkan masalah matematika tertentu yang tidak memiliki solusi analitis misalnya ODE's Matriks Manipulasi Optimalisasi Manipulasi dll.
  • Analisis Numerik akhir-akhir ini sering melibatkan sejumlah besar pemrograman tetapi masih cukup banyak menerjemahkan ide-ide matematika dari algoritma yang efisien ke dalam kode komputer.
  • FORTRAN tradisional adalah andalan. Tetapi Anda juga bisa berharap untuk bekerja dengan C / C ++ dan hari ini Python. Beberapa hal mungkin juga melibatkan paket seperti Mathematica atau MATLAB
  • Datang ke Scientific Computing yang lebih merupakan area terapan di mana seseorang mencoba menggunakan sumber daya komputasi untuk menyelesaikan beberapa masalah ilmiah. Ini mungkin melibatkan banyak mur dan baut bekerja. mis. Mengkompilasi kode, menginstal sistem operasi dan perpustakaan, mengatur opsi untuk membuat kode ilmiah bekerja dll.
  • Karena sedikit komputasi ilmiah dewasa ini melibatkan komputasi paralel, Anda kemungkinan besar akan memiliki beberapa paparan komputasi cluster, superkomputer, komputasi awan dll
  • Dalam komputasi ilmiah sementara Anda dapat bekerja dengan bahasa pemrograman seperti C / FORTRAN dll. Berharap banyak bekerja dengan bahasa "gluing" / scripting seperti bash / perl dll.
  • Anda mungkin akan banyak bekerja dengan sistem Linux-ey dan akhirnya cukup mahir bekerja di baris perintah & dengan alat-alat seperti sed / awk dll. Beberapa orang akhirnya menjadi admin sistem.
  • Banyak komputasi ilmiah melibatkan visualisasi dan penyimpanan data / pengambilan data. Banyak orang akhirnya menjadi ahli di Big Data / Hadoop / Peta Reduce dll.
  • Analisis Numerik pada dasarnya adalah pekerjaan spesialis. Anda pandai matematika dan coding dan memecahkan masalah tertentu dengan sangat efisien. Terkadang menemukan satu atau dua algoritma di sepanjang jalan. Computing Ilmiah, dalam beberapa hal, adalah pekerjaan generalis. Berbicara relatif. Anda sering menggunakan beragam alat secara bersamaan untuk menyelesaikan masalah terapan tertentu.
  • Banyak komputasi ilmiah dapat melibatkan bekerja di antarmuka. misalnya Antarmuka antara dua program. Di mana Anda menyalurkan data dari satu alat ke alat lainnya untuk diproses. Dengan beberapa manipulasi format di sepanjang jalan. yaitu Anda mencoba mendapatkan beragam alat untuk berbicara satu sama lain di mana alat itu tidak benar-benar dirancang untuk saling berbicara.
  • Seorang pria komputasi ilmiah sering harus menguasai berbagai format data. Banyak instrumen akan memiliki format sendiri dan seseorang harus men-decode data ke dalam format yang disukai oleh algoritma numerik.
  • Beberapa orang Scientific Computing akhirnya membuat "helpdesks" dengan sifat yang sangat khusus (membayar juga) di mana orang pada dasarnya membantu seorang peneliti / mahasiswa / Prof. generik menggunakan sumber daya komputasi di suatu lembaga untuk memecahkan masalah apa pun yang mungkin muncul. yaitu orang komputasi ilmiah adalah orang yang akrab dengan berbagai kode dan paket dan dapat memberi saran kepada pengguna tentang alat apa yang digunakan untuk memecahkan masalah komputer secara terbaik.
  • Anda dapat mengakhiri kode porting ke perangkat keras lain. Atau memparalelkan kode lama yang ditulis dalam mode serial. Atau mengoptimalkan kode untuk berjalan lebih cepat. Beberapa orang akan mengonversi kode untuk dijalankan dalam GPU / CUDA dll. Untuk membuatnya berjalan lebih cepat.
  • Sedikit komputasi ilmiah melibatkan pemecahan masalah. Seringkali kode yang ditulis orang lain. Untuk mencari tahu mengapa mereka menabrak perangkat keras tertentu dll.
  • Seringkali Anda adalah tengkulak di antara para spesialis. mis. Saya harus bekerja dalam tim dengan programmer yang keras, ahli biologi yang membutuhkan perhitungan tetapi tidak dapat membuat kode sendiri, administrator sistem, pakar jaringan, teknisi yang mengelola pusat data dll.
  • Kawan-kawan Computing Ilmiah dapat diminta untuk memberikan input signifikan ketika perangkat keras baru dibeli atau arsitektur sistem komputasi diputuskan. Pada tugas-tugas itu Anda akhirnya bekerja sangat dekat dengan insinyur penjualan dan teknologi dari Dell / Cray / IBM / Infiniband / Cisco dll.

Semoga ini memberi Anda beberapa ide tentang ladang!

Satu saran terakhir (bawa dengan sedikit garam!): Jika Anda pandai matematika, seperti ketepatan dan detail dan membaca makalah dan mencari tahu detail setelah upaya yang signifikan dan terfokus di mana kecerdasan individu penting dan melibatkan jangka waktu lama yang berkelanjutan upaya kemudian pergi untuk Analisis Numerik.

Di sisi lain, jika Anda suka menjadi seorang generalis, berganti area, mengimbangi kejeniusan dengan kerja keras, jadilah penarik dari semua perdagangan, bersedia bekerja dengan rekomendasi yang kabur dan sering bertentangan, suka bekerja dengan tim dan menangani konflik , tenggat waktu yang ketat, berurusan dengan MBA, dll. kemudian menjadi pria Komputer Ilmiah.

Sekali lagi ambil ini dengan sedikit garam. Keadaan setiap orang adalah istimewa. Dan kebanyakan dari kita mendarat di tempat yang kita lakukan hanya karena kebetulan belaka dan bukan karena kita merencanakannya seperti itu. :)


0

Anda ingin menjadi ahli matematika terapan. Ini adalah jurusan yang tersedia di banyak universitas di sekolah teknik mereka juga sebagai PhD. Meskipun dalam pengalaman saya, matematika adalah keterampilan yang lebih penting, beberapa latar belakang teknis dalam ilmu komputer formal dapat membantu dan Anda mungkin tidak mendapatkannya di tempat lain. Hanya berhati-hatilah untuk tidak pergi jauh ke lubang kelinci CS atau Anda mungkin akhirnya melakukan penelitian CS yang cenderung menarik Anda jauh dari aplikasi praktis.

Untuk menjawab pertanyaan spesifik Anda, ahli matematika terapan akan melakukan penelitian dalam metode numerik dan analisis dan kemungkinan bermitra dengan peneliti ilmiah untuk melakukan komputasi ilmiah di beberapa bidang. Jika Anda ingin mengejar komputasi ilmiah secara khusus, Anda mungkin ingin memasukkan disiplin penelitian ilmiah seperti kimia komputasi, biofisika, iklim, bioinformatika, dll.


Jika Anda membaca pertanyaan saya, Anda akan melihat bahwa saya seorang jurusan ganda. Saya sebenarnya mendedikasikan lebih banyak waktu untuk jurusan matematika daripada jurusan cs saya. Saya sama sekali tidak khawatir tentang pergi jauh ke dalam cs
blade

Saya memang membaca pertanyaan Anda itu sebabnya saya katakan "dan sebagai PhD". Jawabannya dimaksudkan untuk membantu orang lain juga yang mungkin tidak memilih jurusan. Semoga berhasil dalam pencarian Anda. PhD cenderung sangat fleksibel sehingga temukan kelompok melakukan sesuatu yang Anda sukai dan jangan terlalu khawatir terkunci di satu area.
user21387
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.