Multi-objective menu search over 405 foods. Pick a user and an algorithm; the real Python code (pymoo) runs entirely in your browser, with no server involved.
Starting…
Population 100, 50 generations: the same settings as the project's main.py. The same seed always gives the same result.
Click or tap a point to see that menu. Axis values are the optimiser's objectives, including the penalty for violated nutrient bounds, as in the project's plots.
src/ code and its SQLite database run in Pyodide (Python compiled to WebAssembly) inside a Web Worker, so this page stays responsive. pymoo 0.6.1.6 runs unmodified apart from two stand-ins: a pure-Python exact hypervolume replacing the compiled moocore, and a stub for a terminal progress bar. Results match the desktop Python run for the same seed (see the parity check in the repository).minimize, exactly as main.py --seed does, so the demo with seed 42 reproduces the results in the README.Team: Saed O S Radi, Kenan Alemam, Ahmed Alsaleh, Abdulrahman Aljabahji, Mamdouh Al Masri. Heuristic Optimization course project, FSMVU.
Dataset: the Turkish food database provided for the Heuristic Optimization course (FSMVU): 405 foods, nutrients, DRI bounds and user ratings; food data from diyetasistan.com. Food names are shown in the original Turkish. Users are anonymous numeric ids.
Built with: pymoo, Pyodide, Plotly.js.
View the source on GitHub →