Package development log
Flowchart for the implementation.
Overview
The core functionalities contain the following steps:
- provide food data
- compute inequality constraints (based on current total contribution from the existing diet)
- algorithm to find the new diet
- result processing and presentation
The existing implementation is fixed: not functionalized. The target implementation should allow flexibility at each step.
Provide food data
Compute inequality constraints
The default inequality constraints are based on the current total contribution:
- current diet (d)
- contrib per unit for each target outcome (e.g. ghge, energy)
- option to scale / standardize
Inequality constraints depend on the above, plus the coefficients to set upper and lower. Probably a good idea to split upper and lower.
Optimization algorithm
This step requires better functional programming: need to wrap the functions to generate multiple inequality formulae.