Agen rasional adalah program komputer yang mampu membuat keputusan otonom untuk mencapai tujuan yang diinginkan. Program tersebut dapat mengumpulkan informasi tentang lingkungan mereka untuk mengumpulkan data sebanyak mungkin untuk mendukung keputusan mereka. Mereka juga dapat mengevaluasi hasil untuk menentukan apakah pilihan terakhir adalah pilihan yang baik, dan bagaimana mereka dapat meningkatkan hasil di masa depan. Merancang agen rasional membutuhkan pengetahuan tentang pemrograman komputer dan kemampuan untuk mengembangkan model dan preferensi dalam suatu program.
Tingkat kerumitan yang terlibat dapat bergantung pada jenis tugas yang perlu diselesaikan oleh program. Beberapa agen rasional sederhana dan dapat sangat bergantung pada model yang sangat mendasar. Misalnya, agen rasional mungkin bertanggung jawab untuk memeriksa surat keluar untuk memastikan informasi surat lengkap, untuk mengurangi risiko barang dikembalikan ke pengirim. Itu dapat menggunakan model seperti apa alamat yang seharusnya terlihat untuk memeriksa pemindaian optik dan menerima atau menolak item untuk pengiriman.
Agen yang lebih kompleks mungkin perlu membuat banyak keputusan untuk bertindak di lingkungan mereka, atau mungkin memerlukan model yang kompleks untuk membantu mereka mengidentifikasi masalah spesifik dalam situasi tertentu. Tujuan dari agen rasional adalah untuk memilih hasil yang paling optimal, diberikan serangkaian pilihan dan situasi tertentu. Itu dapat mengukur keberhasilan dengan respons, dan mungkin dapat belajar dari ini untuk menyesuaikan perilaku di masa depan. Agen rasional di pembangkit nuklir yang bertanggung jawab untuk mengendalikan suhu di dalam reaktor, misalnya, tahu apa yang mempengaruhi suhu inti dan bagaimana hal itu dapat menyesuaikannya jika suhu naik atau turun di luar kisaran yang ditetapkan.
Sukses tidak selalu mungkin, karena agen rasional tidak mahatahu. Mereka tidak dapat memprediksi setiap hasil yang mungkin, dan mungkin tidak dapat mengkompensasi kejadian di luar kendali mereka. Ketika suatu masalah muncul, agen dapat mengevaluasinya untuk mengetahui apa yang terjadi dan apakah hal itu dapat diprediksi. Jika instrumen pada balon cuaca terkena meteor, misalnya, program otomatis yang memilih lokasi peluncuran dan meluncurkan balon tidak mungkin memperhitungkan hal ini dalam perhitungannya. Peluncuran mungkin gagal, tetapi bukan karena apa pun yang dilakukan agen rasional.
Kursus pemrograman komputer terkadang mencakup diskusi tentang agen rasional, bersama dengan tugas pemrograman sederhana untuk memungkinkan siswa membuat sendiri. Program yang lebih kompleks dapat dikembangkan dalam teknologi informasi, sains, kedokteran, dan bidang lain di mana aktor otomatis mungkin diperlukan. Semakin kompleks, semakin besar fungsionalitasnya.