Buku
Metode Numerik: Dari Analisis Galat hingga Machine Learning, dengan Java dan Python
Dari Analisis Galat hingga Machine Learning, dengan Java dan Python — Spreadsheet sebuah binatu menyatakan bahwa 4,1 kg dengan harga Rp7.500 per kilogram tidak persis Rp30.750. Seorang penjual air menandai tongkat celup untuk tangki yang berbaring miring.
Ringkasan
Bab 1 menjelaskan mengapa jawaban komputer hampir selalu sedikit salah: bagaimana bilangan disimpan dalam floating point, apa itu galat pembulatan dan galat pemotongan, dan bagaimana mengukurnya. Bab ini menyiapkan meja kerja dan ditutup dengan laboratorium kecil berisi percobaan pada aritmetika mesin.
Bab 2 dan 3 mencari akar persamaan. Bab 2 membantu Mas Dimas, seorang pengemudi ojek, menemukan suku bunga sebenarnya yang tersembunyi dalam cicilan sebuah ponsel dengan biseksi dan regula falsi, metode yang tidak akan pernah kehilangan akar setelah akar itu diapit. Bab 3 menandai tongkat celup truk air Pak Harun dengan Newton-Raphson, metode secant, dan iterasi titik tetap, mengukur seberapa cepat masing-masing konvergen, dan menunjukkan kapan metode Newton gagal.
Bab 4 sampai 6 menyelesaikan sistem persamaan linear. Bab 4 menghitung berapa banyak setiap pupuk yang diperlukan pohon-pohon durian Bu Rahma dengan eliminasi Gauss, menunjukkan mengapa pivoting penting, dan menjelaskan mengapa residu yang kecil tidak menjamin galat yang kecil. Bab 5 menemukan suhu tunak di permukaan wajan martabak Pak Joni dengan metode iteratif Jacobi, Gauss-Seidel, dan SOR. Bab 6 memfaktorkan sebuah matriks sekali lalu memakainya berulang kali, dengan dekomposisi LU, Cholesky, dan QR, untuk menjawab pertanyaan pupuk bagi setiap blok sebuah kebun.
Bab 7 dan 8 menarik kurva melalui data. Bab 7 mengubah tabel dari pembuat tangki kios BBM Pak Darto menjadi liter yang akurat pada setiap kedalaman dengan interpolasi Lagrange dan Newton serta spline kubik. Bab 8 mencocokkan model pada buku catatan bensin dan perjalanan Mas Dimas dengan kuadrat terkecil, dan menunjukkan cara memilih model tanpa overfitting.
Bab 9 sampai 11 membahas perubahan. Bab 9 menjelaskan bagaimana aplikasi ojek daring dapat membedakan pengereman keras dari berhenti perlahan, dengan beda hingga yang diturunkan dari teorema Taylor dan ekstrapolasi Richardson. Bab 10 mengukur luas kebun durian yang batasnya berupa sungai berkelok dengan aturan trapesium, aturan Simpson, integrasi Romberg, dan kuadratur Gauss. Bab 11 menentukan kapan pompa kebun harus dimatikan dengan metode Euler dan Runge–Kutta untuk persamaan diferensial biasa, lalu membahas sistem dan kestabilan.
Bab 12 sampai 14 membawa metode-metode itu menuju komputasi modern. Bab 12 mengikuti tiga binatu yang bersaing di satu kampung dengan metode pangkat untuk nilai eigen, dan menunjukkan bagaimana gagasan yang sama memeringkat halaman-halaman web dengan PageRank. Bab 13 menemukan harga paling menguntungkan untuk segelas es teh dengan golden-section search, metode Newton, dan gradient descent. Bab 14 menunjukkan bahwa machine learning pada intinya adalah metode numerik: kuadrat terkecil, gradient descent dengan mini-batch, momentum, dan Adam, serta regresi logistik yang dilatih dengan metode Newton, untuk meramalkan lama sebuah perjalanan ojek dan apakah seorang pelanggan akan membatalkan pesanan.
Bab 15 membuat program-program itu cepat: ke mana waktu habis, vektorisasi, thread paralel beserta batas-batasnya, penjumlahan yang akurat dan dapat diulang hasilnya, serta metode yang lebih cerdas yang memang mengerjakan lebih sedikit. Bab 16, proyek akhir, menyimulasikan musim kemarau sebuah kebun durian dari awal sampai akhir — tangki, pompa, cuaca, pohon, sumur, dan saluran tetes — dengan metode-metode dari seluruh buku, menjalankan ratusan musim, dan membantu Pak Hadi memilih tangki airnya.
Setiap bab menempuh jalan yang sama: masalahnya dan siapa yang dibantu, gagasannya dalam kata-kata sederhana dengan angka yang dihitung dengan tangan, metodenya diturunkan dengan galat dan konvergensinya dianalisis, program-programnya dibangun langkah demi langkah dalam Java dan Python, menjalankannya, memeriksa jawabannya terhadap NumPy dan SciPy, menyempurnakannya, memakainya sungguh-sungguh, metode numerik dalam praktik di Profitina, kesalahan yang sering terjadi, ringkasan, soal latihan dengan penyelesaian lengkap, dan daftar pustaka.
Setiap program dalam buku ini sudah dijalankan sebelum keluarannya dicetak. Program-program itu dikumpulkan, bab demi bab, dalam folder Code yang menyertai buku ini, dari Chapter01 sampai Chapter16, masing-masing dengan folder java dan python, data yang diperlukannya, dan README yang menjelaskan cara menjalankannya di terminal dan di VS Code, pada Windows, macOS, dan Linux.
Isi Buku
- Angka di Dalam Mesin: Galat, Floating Point, dan Meja Kerja Anda
- Mencari Akar I: Biseksi dan Regula Falsi
- Mencari Akar II: Newton-Raphson, Secant, dan Iterasi Titik Tetap
- Sistem Linear I: Eliminasi Gauss dan Pivoting
- Sistem Linear II: Jacobi, Gauss-Seidel, dan SOR
- Dekomposisi Matriks: LU, Cholesky, dan QR
- Interpolasi: Lagrange, Newton, dan Spline
- Pencocokan Kurva: Regresi Kuadrat Terkecil
- Diferensiasi Numerik
- Integrasi Numerik: Trapesium, Simpson, Romberg, dan Gauss
- Persamaan Diferensial Biasa: dari Euler ke Runge-Kutta
- Nilai Eigen: Metode Pangkat dan Kegunaannya
- Optimasi: Golden Section, Newton, dan Gradient Descent
- Metode Numerik untuk Machine Learning
- Komputasi Numerik Cepat dan Paralel
- Proyek Akhir: Menyimulasikan Sistem Nyata dari Awal sampai Akhir
Profitina · profitina.com

