Saya mengalami kesulitan memahami kapan harus memperkirakan dan kapan harus melakukan interpolasi. Dalam gaffer tentang permainan, ia mengatakan untuk melakukan interpolasi tetapi kemudian dalam artikel lain itu merekomendasikan ekstrapolasi pemain. Jadi pertanyaan saya adalah kapan lebih baik melakukan ekstrapolasi dan kapan lebih baik melakukan interpolasi?
interpolation
extrapolation
J leong
sumber
sumber
Jawaban:
Anda melakukan interpolasi ketika Anda mengetahui nilai 'sebelum' dan 'setelah'.
Anda memperkirakan ketika Anda menebak apa yang akan menjadi nilai masa depan, berdasarkan apa yang sudah Anda ketahui.
Ekstrapolasi digunakan terutama untuk prediksi pergerakan. Ini tidak diperlukan oleh server game , tetapi klien game membutuhkannya untuk menampilkan visi yang agak realistis dan terkini tentang kondisi permainan untuk memberikan pengalaman visual yang halus kepada para pemain.
sumber
Interpolasi dilakukan ketika Anda memiliki nilai awal dan akhir, dan Anda ingin memperkirakan apa yang terjadi antara nilai awal dan akhir ini. Contohnya adalah untuk memindahkan pemain dari Posisi A ke Posisi B dalam gerakan lancar.
Ekstrapolasi, dilakukan ketika Anda memiliki nilai awal, tetapi belum memiliki data untuk akhirnya. Anda kemudian dapat memperkirakan berdasarkan data apa yang Anda miliki. Misalnya, berdasarkan pergerakan pemain sebelumnya, Anda dapat menentukan di mana dia akan berada di frame berikutnya.
sumber
Selalu interpolasi saat Anda bisa.
Ketika Anda tidak memiliki informasi yang cukup untuk diinterpolasi maka Anda perlu memperkirakan.
Sesederhana itu, jangan terlalu dipikirkan :)
Untuk menjelaskan lebih banyak:
Secara umum interpolasi lebih baik karena interpolasi selalu benar. Untuk memperkirakan, Anda harus menebak. Maka Anda harus berurusan dengan apa yang terjadi ketika Anda menebak salah, yang mengarah ke karet banding atau muncul dan semua jenis sistem untuk menangani semua penanganan itu dan menyamarkannya.
Apa yang terjadi jika Anda memperkirakan posisi kelelawar dan menunjukkannya ke tempat yang tepat dan memantulkan bola, kemudian menyadari setelah itu bahwa Anda salah dan tidak memantulkan bola? Tidak ada cara yang baik untuk menangani skenario itu.
sumber
Anda melakukan interpolasi untuk menemukan status di antara nilai yang diketahui, dan Anda memperkirakan untuk menemukan kondisi di masa mendatang.
Pikirkan masalah dalam hal variabel keadaan, seperti posisi dan kecepatan. Dalam semua skenario terbaik, setiap komputer yang perlu bekerja dengan state memiliki akses ke data state untuk waktu yang mereka inginkan. Sebagai contoh, algoritma tabrakan untuk melihat apakah laser-rifle shot kepala pemain intereset A, yang terbaik dari semua kasus adalah ketika algoritma mengetahui posisi pasti dari setiap objek pada saat laser ditembakkan.
Di dunia nyata, kita tidak selalu seberuntung itu. Terkadang informasi kebenaran yang kami terima lebih jarang. Misalnya, jika pemain A adalah pemain jarak jauh di komputer lain, Anda mungkin tidak tahu persis ke mana mereka pergi ketika Anda menembakkan laser dan perlu menghitung tembakan. Dalam hal ini, Anda perlu membuat penduga untuk posisi A, biasanya dengan interpolasi atau ekstrapolasi.
Perbedaan antara keduanya adalah apakah Anda memiliki data yang terikat di kedua sisi, atau hanya satu sisi. Katakanlah Player A telah mengumumkan posisi kebenarannya untuk t = 0 dan t = 1. Pemain B menembakkan laser pada t = 0,5. Dalam banyak situasi, pengumuman pemain A tentang posisi mereka di t = 1 dapat terjadi sebelum pemain B menarik pelatuknya. Mengapa? Dalam banyak permainan, responsif dari kontrol kurang instan sempurna. Dalam simulasi balap, banyak posisi pemain dibatasi oleh fisika kendaraan yang bergerak. Anda dapat memilih untuk mengumumkan "posisi masa depan" karena Anda tahu Anda benar-benar tidak dapat mengarahkan semua itu dalam waktu singkat. Jika Anda memiliki informasi di masa mendatang, Anda dapat menginterpolasi antara kedua nilai tersebut.
Bagaimana jika Anda tidak cukup beruntung untuk memiliki nilai = 1? Bagaimana jika Pemain A tidak dalam posisi untuk mengumumkan lokasi mereka di masa depan, dan Anda buntu memutuskan apakah Anda mengenai atau melewatkan hanya dengan informasi dari t = 0? Dalam hal ini Anda harus memperkirakan. Dalam ekstrapolasi, Anda menggunakan apa yang Anda ketahui tentang gerakan untuk melampaui semua data yang Anda miliki. Anda mungkin tahu bahwa Player A memiliki kecepatan tertentu, jadi anggaplah bahwa jika Anda mengalikannya dengan waktu, Anda bisa mendapatkan posisi di setiap waktu.
Perbedaannya terletak pada perilaku. Interpolasi mengharuskan Anda untuk memiliki batas atas dan bawah, yang tidak selalu Anda miliki. Namun, dalam hampir semua situasi ini memiliki hasil yang jauh lebih baik daripada ekstrapolasi. Ekstrapolasi dapat dengan mudah menyebabkan gerakan yang tidak realistis. Pertimbangkan kasus pemain yang menghindar ke kiri dan kanan untuk menghindari tembakan saat maju. Pada titik tertentu, kecepatan mereka sepanjang diagonal, jadi jika Anda memperkirakan, pemain mungkin tampak lari ke samping ketika, pada kenyataannya, mereka tidak pernah melakukannya. Jika Anda hanya melakukan interpolasi, nilainya cenderung tidak menyimpang dari nilai realistis.
Interpolasi dan ekstrapolasi adalah dua ekstrem di dunia penyaringan. Ada banyak banyak banyak banyak banyak filter di luar sana untuk menangani data seperti ini yang mencampur dan mencocokkan properti antara interpolasi dan ekstrapolasi. Dengan demikian, jangan heran jika Anda melihat algoritma yang tidak jelas interpolasi atau ekstrapolasi. Keduanya hanyalah ujung dari es.
sumber
Interpolasi menggunakan data yang diketahui untuk menghitung datum dalam batas-batas kumpulan data (menjadi awalan 'bagian dalam'). Extrapolasi menghitung datum di luar batas data yang ada (tambahan awalan 'luar'). Keduanya digunakan untuk mensintesis data tambahan, dengan metode perhitungan yang tepat mendefinisikan keandalan yang diharapkan dari data yang dihasilkan.
Atau untuk memasukkannya ke dalam diagram yang sangat sederhana:
Diberikan poin data
A
danC
Anda dapat menginterpolasiB
dan memperkirakanD
.Keakuratan interpolasi atau ekstrapolasi sepenuhnya tergantung pada seberapa baik Anda dapat menjelaskan setiap variabel dalam perhitungan. Jika Anda mengetahui semua variabel dan memiliki persamaan yang memperhitungkan semuanya, maka Anda dapat menginterpolasi atau memperkirakan dengan mudah.
Untuk mekanik permainan faktor pembatas akan menjadi titik di mana variabel dipengaruhi dengan cara yang tidak dapat diprediksi, baik oleh pemain atau elemen acak atau pseudo-acak.
Misalnya, pergerakan bola di Breakout (dalam bentuknya yang paling sederhana) dapat diekstrapolasi sampai ke titik di mana ia berpotensi berinteraksi dengan dayung pemain. Semua variabel dapat dipertanggungjawabkan hingga saat itu sehingga Anda dapat dengan tepat memodelkan tindakan bola. Ketika mencapai titik di mana interaksi pemain dimungkinkan maka ada sejumlah hasil yang mungkin dan tidak ada cara untuk secara akurat memodelkan mana yang akan menjadi kasus sampai itu benar-benar terjadi. Ini adalah batas prediksi dari model fisika game.
Interpolasi lebih mudah dalam permainan karena Anda bekerja dengan poin yang diketahui dan tidak perlu bertanya-tanya apakah kondisinya akan berubah. Selanjutnya Anda memiliki kontrol penuh atas variabel yang terlibat dan dapat menggunakan aturan apa pun yang Anda tetapkan untuk menentukan jalur suatu objek. Semakin kompleks aturan semakin sulit untuk diinterpolasi.
Untuk pergerakan objek dengan tabrakan sederhana dalam ruang bermain bebas gravitasi (seperti Breakout atau Pong) mekanisme interpolasi sepanjang garis pada jalur adalah interpolasi linier sederhana dari titik-titik, dan perhitungan yang sama dapat digunakan untuk mengekstrapolasi garis ke menguji tabrakan di masa depan. Setelah tabrakan terdeteksi, Anda dapat memperkirakan efek dari tabrakan itu pada objek yang terlibat.
sumber
Jawaban singkatnya: Anda melakukan interpolasi ketika Anda harus memperkirakan nilai antara dua nilai yang diketahui (yaitu: dalam satu jam nilainya 1, dalam 3 jam nilainya tiga, untuk menginterpolasi nilai pada 2 pada nilai yang paling mungkin nilai 2, dengan nilai yang diberikan nilai). Ekstrapolasi adalah ketika yang tidak diketahui berada di luar apa yang Anda ketahui, jadi ketika 1 dan 2 diketahui Anda bisa membuat tebakan yang berpendidikan 3.
Interpolasi: di antara Extrapolate: di luar
Jawaban panjang di sini kemungkinan besar jauh lebih akurat dan benar secara ilmiah, tetapi saya harap penjelasan sederhana saya dapat masuk akal bagi sebagian orang
sumber