Mengatasi Overthinking dengan Markov Chain (Part 2)
Bulan kemaren gue nulis soal teori Markov Chain buat nyembuhin overthinking. Teorinya bilang kalo probabilitas lu di masa depan itu murni independen dari masa lalu lu, alias memoryless property. Yang penting cuma state lu saat ini. Temen gue yang krisis eksistensial itu beneran nyoba nerapin algoritma ini ke otaknya.
Hasilnya? Lumayan radikal dan agak lucu.
Di minggu pertama, dia bertingkah kayak orang amnesia. Tiap kali dia bikin kesalahan bodoh, misalnya numpahin kopi ke keyboard laptopnya, dia cuma diem lima detik, terus langsung ngelap mejanya tanpa ngeluarin sepatah kata pun. Pas gue tanya kenapa dia ga ngamuk kayak biasanya, dia bilang dengan santai kalo tumpahan kopi itu udah jadi state masa lalu, dan ngamuk sekarang ga bakal ngubah probabilitas laptopnya nyala lagi. Bener juga sih.
Tapi masuk minggu kedua, penerapan algoritma ini mulai keliatan nge-bug.
Karena dia terlalu fanatik sama konsep memoryless, dia mulai ngelupain hal-hal yang sebenernya butuh historical data. Dia nembak cewek yang sama, yang bulan lalu baru aja nolak dia mentah-mentah. Pas gue ingetin kalo dia udah pernah ditolak, dia pake dalih Markov Chain: probabilitas dia diterima hari ini kan ga bergantung sama penolakan bulan lalu.
Gue langsung nempeleng kepalanya.
Ini nih bahayanya kalo lu belajar probabilitas setengah-setengah. Markov Chain itu emang mengasumsikan memoryless property buat ngitung transisi state, tapi matriks transisi-nya itu sendiri dibangun dari probability distribution yang terbentuk dari historical data (empiris) sistem tersebut.
Kalo cewek itu bulan lalu nolak lu karena lu bau ketek dan ga modal, dan hari ini state lu masih bau ketek dan ga modal, ya probabilitas transisi lu buat ditolak lagi tetep 99 persen bro. Memoryless bukan berarti lu lupa ingatan soal feedback dunia nyata. Memoryless itu berarti lu ga usah bawa-bawa emosi masa lalu ke dalam perhitungan objektif hari ini.
Overthinking itu beda sama evaluasi. Overthinking itu pas lu mikirin hal yang ga bisa lu kontrol berulang kali sampe lu paralyze. Sementara evaluasi itu lu ngeliat log masa lalu, nyari variabel apa yang bikin lu error, terus lu update parameter diri lu biar di iterasi selanjutnya lu ga dapet error yang sama.
Kalo lu cuma nge-clear cache tiap hari tanpa pernah nge-fix bug di kodingan lu, ya program idup lu bakal gitu-gitu aja. Lu ga overthinking sih, tapi lu jadi orang bodoh yang ga belajar dari kesalahan.
Akhirnya gue harus nge-reconfigure pola pikir temen gue ini. Gue bilangin, lu boleh nerapin Markov Chain buat hal-hal di luar kendali lu, kayak mood dosen atau cuaca. Tapi buat skill, penampilan, dan kelakuan lu, lu butuh algoritma Reinforcement Learning. Lu harus dapet punishment dari kegagalan masa lalu biar agen lu bisa belajar milih action yang lebih pinter di masa depan.
Sekarang dia udah lumayan normal. Dia masih agak bau ketek, tapi seenggaknya dia ga nembak cewek yang sama tiga kali. Progress is progress.
- Khay