Jumat, 25 Desember 2020

Kecepatan Relatif

Definisi

Sebuah gerak dalam 2 atau 3 dimensi sebetulnya tidak bergerak sendiri. Ketika kita berjalan ke arah utara misalnya , kita memiliki pergerakan relatif terhadap bumi. Sama ketika kita berjalan ke depan di dalam sebuah kereta api, kita akan memiliki pergerakan relatif terhadap kereta api (yang sedang berjalan) dan juga terhadap bumi. Umumnya untuk mempermudah perhitungan, pergerakan terhadap bumi ini diabaikan karena kecil sekali pengaruhnya. Namun dalam beberapa kasus pergerakan relatif bumi tidak dapat diabaikan dan berpengaruh seperti ketika menentukan posisi satelit dan bumi. 

Titik Acuan (Frame Of Reference)

Yang perlu diperhatikan pada kecepatan relatif adalah kecepatan A yang bergerak terhadap B, Kecepatan B yang bergerak terhadap A, juga yang menjadi titik acuan (mengacu pada A atau B atau benda lain yang sedang bergerak atau diam). Contohnya 2 orang di atas bak terbuka dalam truk yang sedang berjalan. Orang ke 1 diam dan orang ke 2 berjalan mundur.  Yang dapat menjadi titik acuan adalah orang ke 1, ke 2, truk atau orang yang sedang diam dan berada di jalan (luar truk). Jika titik acuan adalah orang yang sedang diam di luar truk, maka orang ke 1 dan 2 bergerak relatif terhadap titik acuan. Jika yang menjadi acuan adalah truk, orang ke 2 yang berjalan mundur.

Soal dengan kecepatan relatif dapat diselesaikan dengan vektor. Yang perlu diperhatikan adalah apa yang menjadi titik acuan (Frame of reference), di mana posisinya dan kemana arah vektor itu (atau benda itu) bekerja atau bergerak.

Contoh kasus

Beberapa contoh kecepatan relatif yang dapat ditemukan dalam kehidupan sehari hari adalah:

  • Perahu menyebrang dan arah kecepatan laut
  • Hujan
  • Kendaraan berpapasan membentuk sudut tertentu
    Buku Fisika Giancoli


  • Berjalan dalam kendaraan
    Buku Fisika Giancoli

  • Anak melempar bola dalam kereta 
  • Pesawat terbang bergerak dan ada angin yang bergerak dari arah tertenty

Contoh soal

Beberapa cara menyelesaikan soal dan kecepatan relatif dapat dilihat di sini:

  • https://www.youtube.com/watch?v=pygnrS75HLs
  • https://www.youtube.com/watch?v=WvwlffB0LmM


Kamis, 24 Desember 2020

Backtracking From A Novice Point Of View

Ini hasil saya mengintip buku bacaan si anak anak yang sedang belajar komputer... Backtracking. di sana langsung terpampang kasus 2 Queen Problems.. intinya si queen di papan catur harus dipasang  di tempat yang nggak saling 'mematikan' alisa check mate. Naaah utnuk bisa begitu bagaimana caranya? terus si buku langsung mengeluarkan tahap tahapan program dan bahasa coding C yang (menurut saya) njelimet itu.. Gimana enggak.. penulisnya memang terkenal sebagai juara dalam urusan Competitive Programming, jadi maklum saja bahasanya bahasa planet.

Ok, karena masih penasaran dan biar bisa agak nyambung sama anak anak yang lagi beljar topik ini,  akhirnya saya Google tentang Backtracking. Ok, saya menemukan yang agak mudah dicerna di sini: https://www.geeksforgeeks.org/backtracking-introduction/. Menurut saya ini cocok sekali untuk pemula karena memang dari dasar sampai ke Coding, dikupas satu persatu tanpa loncat loncat. Kita juga bisa melihat N Queen Problem ini di Youtube, lebih tuntas lagi. 

  • https://www.geeksforgeeks.org/n-queen-problem-backtracking-3/
  • https://www.youtube.com/watch?v=0DeznFqrgAI

Jadi intinya Backtracking itu adalah mencari kemungkinan satu persatu secara sistematis dan berulang ulang untuk mendapatkan hasil yang benar, kalau dalam step yang sedang dijalankan ternyata salah, harus kembali ke step yang masih benar dan lanjutkan dengan pilihan berikutnya. 

Penjelasan lengkapnya dilihat di: https://medium.com/@viveksonani22/4-queens-problem-using-backtracking-632b9f3d6620

Gambar dari Geeks For Geeks

Misalnya  kalau ternyata posisi Queen yang kita pilih ternyata ada yang 'mematikan' (atau pilihan salah). kita harus kembali ke step berikutnya sampai pilihan itu benar dan melanjutkan ke alternatif lainnya. 

Nah Back tracking ini konon lebih cepat dibandingkan algoritma biasa karena kalau algoritma bisasa harus memeriksa satu persatu sampai selesai dan memasukkannya ke dalam list kalau solusinya benar. Backtracking, memeriksa pilihan yang benar dan jika ternyata salah tidak harus mengulang dari awal tapi hanya mundur satu step ke belakang dan memilih alternatif berikutnya lalu memasukkannya ke dalam list.

Menjalankan Backtracking bisa menggunakan Fungsi Rekursif atau cara lainnya.