background icons
background icons 2
Mengenal dan Memahami Formula Matematika Di Javascript
Fitri Hy Fitri Hy
Tutorial 16-09-2024

Mengenal dan Memahami Formula Matematika Di Javascript

Dalam pengembangan aplikasi berbasis web, sering kali kita memerlukan kalkulasi matematika untuk berbagai keperluan, mulai dari perhitungan jarak geografis hingga analisis data. Artikel ini akan membahas cara mengimplementasikan beberapa Formula matematika penting menggunakan JavaScript, termasuk:

  • Haversine: John Conway (1891-1967)
  • Distance: Euclid (sekitar 300 SM)
  • Manhattan Distance: Tidak ada pencipta tunggal, nama diambil dari gaya perencanaan kota Manhattan.
  • Midpoint: Tidak ada pencipta tunggal, konsep dasar dalam geometri.
  • Barycentric Coordinates: Joseph B. Fourier (1768-1830)
  • Linear Regression: Francis Galton dan Karl Pearson (akhir abad ke-19)
  • Binomial Coefficient: Isaac Newton dan Blaise Pascal (abad ke-17)
  • Pythagorean Theorem: Pythagoras (sekitar 570–495 SM)

1. Formula Haversine

Formula ini dikembangkan oleh ahli astronomi dan matematikawan Inggris, John Conway (1891-1967), dan dikenal juga sebagai Haversine dalam referensi ilmiah. Namun, perlu dicatat bahwa kontribusi awal untuk konsep ini juga datang dari berbagai astronom yang menggunakan fungsi trigonometri untuk navigasi.

Formula Haversine digunakan untuk menghitung jarak antara dua titik di permukaan bumi yang diproyeksikan sebagai bola. Formula ini berguna untuk aplikasi yang memerlukan perhitungan jarak geografis, seperti aplikasi pemetaan.

function haversine(lat1, lon1, lat2, lon2) {
    const R = 6371; // Radius bumi dalam kilometer
    const dLat = (lat2 - lat1) * (Math.PI / 180);
    const dLon = (lon2 - lon1) * (Math.PI / 180);
    const a = Math.sin(dLat / 2) * Math.sin(dLat / 2) +
              Math.cos(lat1 * (Math.PI / 180)) * Math.cos(lat2 * (Math.PI / 180)) *
              Math.sin(dLon / 2) * Math.sin(dLon / 2);
    const c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1 - a));
    return R * c;
}

2. Formula Euclidean Distance

Formula ini berasal dari Euclid, seorang matematikawan Yunani kuno yang dikenal karena karyanya "Elements" (sekitar 300 SM), di mana konsep-konsep dasar geometri seperti jarak Euclidean pertama kali diperkenalkan.

Formula Euclidean Distance digunakan untuk menghitung jarak langsung antara dua titik dalam ruang n-dimensi. Ini sering digunakan dalam algoritma pembelajaran mesin dan pengolahan citra.

function euclideanDistance(x1, y1, x2, y2) {
    return Math.sqrt(Math.pow(x2 - x1, 2) + Math.pow(y2 - y1, 2));
}

3. Formula Manhattan Distance

Jarak Manhattan dikenal dalam konteks matematika dan ilmu komputer, dan namanya diambil dari gaya perencanaan kota Manhattan di New York City. Tidak ada satu individu tertentu yang dapat dikreditkan dengan Formula ini, tetapi konsepnya telah digunakan secara luas dalam teori graf dan algoritma sejak awal abad ke-20.

Formula Manhattan Distance, juga dikenal sebagai jarak kota blok, mengukur jarak antara dua titik dengan hanya bergerak secara horizontal dan vertikal. Ini berguna dalam perhitungan yang melibatkan grid atau lattice.

function manhattanDistance(x1, y1, x2, y2) {
    return Math.abs(x2 - x1) + Math.abs(y2 - y1);
}

4. Formula Midpoint

Formula titik tengah adalah konsep dasar dalam geometri yang telah digunakan sejak zaman kuno. Tidak ada satu pencipta tunggal, tetapi Formula ini adalah bagian dari dasar geometri yang dikembangkan oleh matematikawan kuno seperti Euclid.

Formula Midpoint digunakan untuk menentukan titik tengah antara dua titik dalam ruang dua dimensi. Ini berguna dalam grafik komputer dan perancangan geometris.

function midpoint(x1, y1, x2, y2) {
    return {
        x: (x1 + x2) / 2,
        y: (y1 + y2) / 2
    };
}

5. Formula Barycentric Coordinates

Sistem koordinat ini dikembangkan oleh matematikawan Prancis Joseph B. Fourier (1768-1830) dan dikenal dalam konteks geometri analitik dan teori poligon. Konsep ini telah diterapkan dalam berbagai cabang matematika dan grafis komputer.

Formula Barycentric Coordinates digunakan dalam geometri untuk menentukan posisi relatif suatu titik dalam segitiga. Ini sering digunakan dalam pemrograman grafis.

function barycentricCoordinates(px, py, ax, ay, bx, by, cx, cy) {
    const detT = (bx - ax) * (cy - ay) - (by - ay) * (cx - ax);
    const alpha = ((bx - px) * (cy - py) - (by - py) * (cx - px)) / detT;
    const beta = ((px - ax) * (by - py) - (py - ay) * (bx - ax)) / detT;
    const gamma = 1 - alpha - beta;
    return { alpha, beta, gamma };
}

6. Formula Linear Regression

Konsep regresi linier dikembangkan secara independen oleh Francis Galton dan Karl Pearson pada akhir abad ke-19. Mereka mengembangkan metode statistik untuk menganalisis hubungan antara variabel dan membuat prediksi berdasarkan data.

Formula Linear Regression digunakan untuk menemukan garis terbaik yang cocok dengan sekelompok data. Ini berguna dalam analisis data dan prediksi.

function linearRegression(x, y) {
    const n = x.length;
    const xMean = x.reduce((a, b) => a + b) / n;
    const yMean = y.reduce((a, b) => a + b) / n;

    const numerator = x.reduce((sum, xi, i) => sum + (xi - xMean) * (y[i] - yMean), 0);
    const denominator = x.reduce((sum, xi) => sum + Math.pow(xi - xMean, 2), 0);

    const slope = numerator / denominator;
    const intercept = yMean - slope * xMean;

    return { slope, intercept };
}

7. Formula Binomial Coefficient

Koefisien binomial dan teori terkait dikembangkan oleh matematikawan Isaac Newton dan Blaise Pascal pada abad ke-17. Pascal mengembangkan segitiga yang dikenal sebagai "Segitiga Pascal" yang berkaitan dengan koefisien binomial.

Formula Binomial Coefficient digunakan untuk menghitung jumlah kombinasi dari n elemen yang diambil r pada suatu waktu. Ini berguna dalam probabilitas dan statistik.

function binomialCoefficient(n, k) {
    if (k > n) return 0;
    if (k === 0 || k === n) return 1;

    let res = 1;
    for (let i = 0; i < k; i++) {
        res *= (n - i);
        res /= (i + 1);
    }
    return res;
}

8. Formula Pythagorean Theorem

Teorema Pythagoras dinamai menurut matematikawan Yunani kuno Pythagoras (sekitar 570–495 SM), yang terkenal dengan kontribusinya pada teori geometri, termasuk teorema yang menyatakan hubungan antara sisi-sisi segitiga siku-siku.

Formula Pythagorean Theorem digunakan untuk menghitung panjang sisi segitiga siku-siku berdasarkan panjang sisi-sisi lainnya. Ini adalah Formula dasar dalam trigonometri.

function pythagoreanTheorem(a, b) {
    return Math.sqrt(Math.pow(a, 2) + Math.pow(b, 2));
}

Kesimpulan

Meskipun banyak dari Formula ini adalah hasil dari kolaborasi dan pengembangan berkelanjutan oleh berbagai ilmuwan sepanjang sejarah, para individu di atas dikenal karena kontribusi mereka dalam mengembangkan atau mempopulerkan konsep-konsep ini.

Dalam artikel ini, kita telah membahas berbagai Formula matematika yang umum digunakan dan bagaimana cara mengimplementasikannya dalam JavaScript. Pengetahuan tentang Formula-Formula ini dan bagaimana cara kerjanya sangat berharga dalam berbagai aplikasi pengembangan web dan analisis data. Dengan menggunakan JavaScript, Anda dapat mengaplikasikan Formula-Formula ini untuk menyelesaikan berbagai masalah matematika secara efisien dalam proyek Anda.