Modelling approaches to food waste: Discrete event simulation; machine learning; bayesian networks; agent based simulation; and mass balance estimation