Sistem Rekomendasi Menu Makanan Berbasis Content-Based Filtering dan XGBoost untuk Optimasi Kebutuhan Nutrisi Personal

Authors

  • Erpiana Erpiana ID Universitas Negeri Padang
  • Syafrijon Syafrijon ID Universitas Negeri Padang
  • Yeka Hendriyani ID Universitas Negeri Padang
  • Vera Irma Delianti ID Universitas Negeri Padang

DOI:

https://doi.org/10.36312/r3ne6g79

Keywords:

Content-Based Filtering; kebutuhan nutrisi; rekomendasi menu makanan; sistem rekomendasi; XGBoost

Abstract

Pemilihan menu makanan yang sesuai dengan kebutuhan nutrisi personal masih menjadi persoalan praktis, terutama ketika pengguna harus menyeimbangkan preferensi rasa, jenis bahan, metode memasak, dan target makronutrisi. Penelitian ini bertujuan merancang dan mengevaluasi sistem rekomendasi menu makanan berbasis aplikasi Android yang mengintegrasikan Content-Based Filtering dan XGBoost untuk optimasi kebutuhan nutrisi. Sistem menghitung kebutuhan energi pengguna menggunakan rumus Revised Harris-Benedict berdasarkan usia, jenis kelamin, berat badan, tinggi badan, dan tingkat aktivitas fisik. Content-Based Filtering digunakan untuk menyaring kandidat lauk berdasarkan jenis bahan utama, cita rasa, dan metode memasak menggunakan cosine similarity berbobot, sedangkan XGBoost Regressor digunakan untuk menilai kesesuaian nutrisi setiap kombinasi menu nasi, lauk, sayur, dan buah. Model dilatih menggunakan 500 profil pengguna simulasi dan 1.000 kombinasi menu sehingga terbentuk 500.000 data pelatihan. Hasil pengujian menunjukkan akurasi perhitungan nutrisi sebesar 99,96% terhadap perhitungan manual dengan rata-rata selisih 0,24 kkal. Model XGBoost menghasilkan MAE 0,0285, RMSE 0,0360, R² 0,9465, Spearman Rank Correlation 0,9654, Top-3 Accuracy 1,0000, dan NDCG@3 0,9922. Pengujian Black Box mencapai keberhasilan 98,6%, sedangkan pengujian pengguna memperoleh skor 4,47 dari skala 5. Temuan ini menunjukkan bahwa integrasi penyaringan berbasis preferensi dan penilaian nutrisi berbasis machine learning mampu menghasilkan rekomendasi menu yang adaptif, terukur, dan relevan bagi pengguna dewasa sehat.

Selecting meals that match personal nutritional needs remains a practical challenge because users must balance food preference, ingredient type, cooking method, and macronutrient targets simultaneously. This study aims to design and evaluate an Android-based food menu recommendation system that integrates Content-Based Filtering and XGBoost for nutritional needs optimization. The system calculates users' energy requirements using the Revised Harris-Benedict equation based on age, sex, body weight, height, and physical activity level. Content-Based Filtering filters side-dish candidates using weighted cosine similarity based on main ingredient type, taste, and cooking method, while XGBoost Regressor evaluates the nutritional suitability of each complete menu combination consisting of rice, side dish, vegetables, and fruit. The model was trained using 500 simulated user profiles and 1,000 menu combinations, resulting in 500,000 training records. The test results show that the nutritional calculation achieved 99.96% accuracy compared with manual calculation, with an average difference of 0.24 kcal. The XGBoost model obtained an MAE of 0.0285, RMSE of 0.0360, R² of 0.9465, Spearman Rank Correlation of 0.9654, Top-3 Accuracy of 1.0000, and NDCG@3 of 0.9922. Black Box testing reached a 98.6% success rate, while user testing achieved an average score of 4.47 out of 5. These findings indicate that integrating preference-based filtering and machine learning-based nutritional scoring can produce adaptive, measurable, and relevant menu recommendations for healthy adult users.

 

Downloads

Published

2026-06-04

Issue

Section

Articles

How to Cite

Erpiana, E., Syafrijon, S., Hendriyani, Y. ., & Delianti, V. I. . (2026). Sistem Rekomendasi Menu Makanan Berbasis Content-Based Filtering dan XGBoost untuk Optimasi Kebutuhan Nutrisi Personal. Journal of Authentic Research, 5(2), 3412-3424. https://doi.org/10.36312/r3ne6g79