Lutton et al. show how to address some of the challenges related to optimization in the food science domain, by presenting ways to better integrate the role of the user in the optimization process. As stated in the book (preface, xxiii):

“The user plays a key role in the optimization process: quality depends on the knowledge put into the design of the optimization task, and into the interpretation of the results.”

The emphasis is on improving the quality of the solution, rather than just the speed or quantity, and if this leads to irresolution, this is deemed part of the process.

This outlook is embodied in the two main aims of the book. Firstly, to show that adapting and customizing the evolutionary optimization algorithms to the specifics of the problem is a good strategy for improving quality. For example, Lutton et al. recommend using a cooperative co-evolutionary algorithm in which the fitness of an individual depends on its relationship to other members of the population. Secondly, to provide new ways to better integrate human expertise with evolutionary computation tools as certain quantities are very difficult to express using equations, e.g. taste and flavour. They proceed in making a convincing case that I agree with, that interactive evolutionary schemes are a rich ground for developing interactive modelling and decision-making in this domain.

Evolutionary Algorithms for Food Science and Technology is well organized. The authors begin with a wonderful philosophical discussion in the preface, questioning the purpose of optimization and whether the right tools are used for addressing the right issues. It give a good motivation for the main aims in the book: why humans play an important role in the optimization process of real-world applications in food science, and that optimization algorithms should not be treated as “black boxes”. Instead we should allow for customization and fluid user interactions. E.g. by providing visualizations to aid interaction and by embedding assessments/judgements such as taste, flavour, perceptions, etc.

The first chapter gives a good overview of the key features that make evolutionary computation challenging in food science. It also gives a panorama of the current uses of evolutionary optimization methods in this domain. This is particularly useful for readers that are new to the field of food science.

The second chapter gives a clear and easy to understand introduction to evolutionary algorithms with lots of references to explore for a deeper understanding.

The next three chapters describe three examples from the authors’ experience for some new usages of EA’s in food science. All successfully address one or the other of their two main aims (see above). Chapters 3, 4 and 5 can be read independently.

Chapter three presents a methodology that combines EAs with visualisation to help food science experts explore in silico food models for enhancing their understanding. The structure of these models are intricate as they mirror the complex phenomena involved in these real-world processes. When exploring the models, one of the things that experts find hard is to find meaningful correlations between variables. The approach was tested on a specific model of milk gel structures. (The formation of milk gels is the first step in both cheese and yoghurt manufacture). One of the main research lines on milk gel is devoted to the development of models with the ability to replicate the dynamics of gel formation at relevant scales, linking the structure to macroscopic properties. As a non-expert in food sciences I found this model difficult to understand, but the authors provide a useful glossary of variables for reference, plenty of citations and lots of insights into the process that are useful to understand how to use this approach to explore other models. The exploration of the model is done by visualizing the data collected during the execution of an EA using a multidimensional visualization tool called GraphDice. A reader would find the description of how to use GraphDice in this way useful for replicating the process. The exploration resulted in experts finding a correlation between two parameters, previously considered independent.

A Bayesian network is a probabilistic directed acyclic graph whereby the nodes represent variables and the edges represent conditional dependencies between the variables. Learning the optimal structure of a Bayesian network is an NP-hard problem and even finding good approximations is extremely hard. This is because a balance between the complexity and representiveness of the model must be found. In chapter four, a preliminary study was conducted to explore what is the best trade off between automatic evolution and user interaction for finding possible solutions for the problem of learning Bayesian network structures. The authors developed a prototype tool with a graphical-user interface that allows a domain expert user to guide the evolution of a network by alternating between automatic and fully interactive steps. Their approach was tested with two experts: one analyzing a dataset on cheese ripening and another a dataset on biscuit baking. The feedback given by the experts helped Lutton et al. to compile a list of features that would improve the efficiency of the structure learning experience. This list is noteworthy for any readers that want to adopt this approach.

Chapter five is the longest and presents in great technical depth two approaches for dealing with modelling issues based on cooperative co-evolution schemes. The experiments focused on the modelling of a Camembert cheese ripening process. The first approach explores how genetic programming (GP) and cooperative-co-evolution algorithms can be used to learn expert knowledge. While the second addresses the problem of learning the structure of a Bayesian network, with an approach based on independent models.

In all three technical chapters, the authors articulate well key issues and insights for each approach. Such knowledge only comes from experience. There are also plenty of useful tables and figures illustrating results. Some of the figures in the book are difficult to read because they are in grayscale rather than colour. The authors have provided URLs to colour versions of the figures, however, these are broken and do not resolve to content.

The final chapter is short but effective. This works well because the main technical chapters have detailed discussions in their conclusions.

In summary, Evolutionary Algorithms for Food Science and Technology would be invaluable to anyone considering using EAs in food science. The authors have made a convincing case for integrating human expertise with evolutionary computation tools and have shown several new ways to do this.