Upload
vuongkiet
View
216
Download
0
Embed Size (px)
Citation preview
Optimization of the Production Process of Lallemand
Ibéria SA to Reduce Electric Energy Costs Using a
Genetic Algorithm
Diogo Correia Amado
Thesis to obtain the Master of Science Degree in
Electrical and Computer Engineering
Supervisors: Prof. Paulo José da Costa Branco
Prof. Susana Margarida da Silva Vieira
Examination Comitee
Chairperson: Prof. Rui Manuel Gameiro de Castro
Supervisor: Prof. Susana Margarida da Silva Vieira
Members of the Comitee: Prof. Pedro Manuel Santos de Carvalho
March 2015
II
III
Acknowledgements
First of all, I want to thank my supervisor Professor Paulo Branco for his availability, willingness
to help and especially his friendship demonstrated during the realization of this thesis. Likewise,
I give my thanks to my co-supervisor Professor Susana Vieira for all the transmitted knowledge
and disposition to always help.
A great word of affection goes to my family, especially my mother and father, who are always
there for me and do everything for my happiness.
I thank Galp for the excellent initiative to bring closer university students and the industrial world.
Then I thank Eng. Sandro Ratinho, as Lallemand Iberia SA CEO, for embracing this project and
give me the opportunity to perform a work with such practical applications inserted in the
company.
I want also to thank Eng. Henrique Cabaceira and Eng. Ana Maria Pinto for their support while I
was in the company and for all their interest and concern about my well-being and my activities
developed during the internship.
A special “thank you” to Eng. Vasco Catarino for his friendship and for accompanying and helping
me in every moment of this project.
I must thank all employees in Lallemand who were always kind and ready to assist me in any way
they could.
And a warm thanks I give to all my friends for their companionship and motivation given in the
course of this thesis, plus the great moments they always provide and helped me distract from
work time to time.
To them all, thank you.
IV
V
Abstract Lallemand Ibéria S.A. is a yeast producing company and great part of its expenses come from
electric energy. Therefore it is important search for inefficient energy practices and look for
possible solutions to solve them. The fermentation process of the company is one of the areas
that has the potential to see their energy consumption costs reduced and it will be the focus of
this thesis. Yeast development is guaranteed by adding nutrients, treacle and by pumping air into
the fermenters with the help of air compressors. The fermentations follow weekly plans made
manually by the production manager and, since he does not take into account the different periods
present in the electric tariff, sometimes peak consumption coincides with super peak hours,
greatly increasing the energy costs. Plus, the company has not done any research in what should
be the best tariff to contract. Therefore, given the complexity of the problem, the whole process
was characterized and modelled into a simulation program, which also has a genetic algorithm.
By using this program the company can decrease electric energy expenses, moreover when there
is no investment cost besides the optimization program. Savings are reached if Lallemand
switches from the current contracted tariff (weekly cycle) to the tariff with the optional weekly cycle
and those savings will be even higher if the optimization algorithm is used to optimize the weekly
production plans.
Keywords
Energy efficiency; power consumption; electric energy tariffs; process modelling; genetic
algorithm; problem optimization.
VI
Resumo A Lallemand Ibéria S.A. é uma empresa que produz fermento e grande parte das suas despesas
advém do consumo de energia eléctrica. Por isso é importante procurar por práticas que são
ineficientes do ponto de vista energético e encontrar soluções para as corrigir. O processo de
fermentação presente na empresa é uma das áreas que tem potencial para que os seus custos
com a energia sejam reduzidos e foi precisamente nesta área que se focou esta tese. O
crescimento da levedura neste processo é assegurado pela adição de melaço, nutrientes e pela
bombagem de ar através de compressores aos 5 fermentadores existentes. As fermentações
seguem um plano semanal efectuado manualmente pelo responsável de produção (plano de
fábrica) e uma vez que este não tem em conta os diferentes períodos horários presentes na tarifa
eléctrica, muitas vezes os picos de consumo dão-se nas horas de ponta, aumentando muito os
custos ligados à energia eléctrica. Para além disso, a Lallemand há muito tempo que não
averigua qual é a tarifa que melhor se insere nos gastos da empresa. Por isso, dada a
complexidade do problema, caracterizou-se e modelou-se todo o processo de fermentação para
usar num programa de simulação que também contém um algoritmo genético. Ao adoptar este
programa a empresa pode reduzir os seus gastos com a energia eléctrica. A poupança é
alcançada ao trocar a tarifa actual contratada (ciclo semanal) pela tarifa com o ciclo semanal
opcional e ao aplicar o algoritmo de optimização nos planos semanais de produção.
Palavras-chave
Eficiência energética; consumo de energia; tarifas eléctricas; modelação de processos; algoritmo
genético; optimização de problemas.
VII
Index
LIST OF FIGURES ..................................................................................................................................... IX
LIST OF TABLES ........................................................................................................................................ X
LIST OF SYMBOLS .................................................................................................................................. XII
1 INTRODUCTION ................................................................................................................................ 1
1.1 FRAMEWORK AND MOTIVATION ........................................................................................................ 2
1.2 LALLEMAND IBÉRIA S.A. .................................................................................................................. 3
1.3 OBJECTIVES .................................................................................................................................. 3
1.4 STRUCTURE AND ORGANIZATION ....................................................................................................... 3
2 CHARACTERIZATION OF THE PRODUCTION PROCESS ...................................................................... 5
2.1 FERMENTATION ............................................................................................................................. 6
2.2 AIR CONSUMPTION......................................................................................................................... 8
2.3 POWER CHARACTERIZATION OF THE COMPRESSORS ............................................................................. 11
2.3.1 Aerzen compressors ......................................................................................................... 11
2.3.2 Turbo compressors .......................................................................................................... 12
2.3.3 Holmes compressors ........................................................................................................ 14
2.3.4 Separators ....................................................................................................................... 15
3 PORTUGUESE TARIFF SYSTEM ........................................................................................................ 16
3.1 OVERVIEW ................................................................................................................................. 17
3.2 LALLEMAND CONTRACTED TARIFF .................................................................................................... 18
4 PROBLEM IDENTIFICATION ............................................................................................................ 21
5 MATHEMATICAL FORMULATION OF THE PROBLEM ...................................................................... 24
5.1 DECISION VARIABLES .................................................................................................................... 25
5.2 ENERGY CONSUMPTION MODELLING ................................................................................................ 26
5.2.1 Aerzen Compressors Energy Consumption ....................................................................... 26
5.2.2 Turbo Compressors T1 and T2 Energy Consumption ......................................................... 27
5.2.3 Holmes Compressors Energy Consumption ...................................................................... 29
5.3 ENERGY COSTS MODELLING ............................................................................................................ 30
5.4 OBJECTIVE FUNCTION ................................................................................................................... 33
VIII
5.5 CONSTRAINTS ............................................................................................................................. 33
5.5.1 Resources Constraints ...................................................................................................... 34
5.5.2 Production needs constraint ............................................................................................ 35
5.5.3 Time constraint ............................................................................................................... 36
6 IMPLEMENTATION OF THE GENETIC ALGORITHM.......................................................................... 37
6.1 GENETIC ALGORITHM ................................................................................................................... 38
6.2 MATLAB GLOBAL OPTIMIZATION TOOLBOX – GENETIC ALGORITHM ........................................................ 39
6.3 PARAMETERS OF GENETIC ALGORITHM ............................................................................................. 40
6.3.1 Selection .......................................................................................................................... 40
6.3.2 Elitism ............................................................................................................................. 40
6.3.3 Crossover ......................................................................................................................... 41
6.3.4 Mutation ......................................................................................................................... 41
6.4 IMPLEMENTATION OF THE GENETIC ALGORITHM TO THE OPTIMIZATION PROBLEM ...................................... 42
6.4.1 Encoding and Decoding ................................................................................................... 42
6.4.2 Parameters Values of the Genetic Algorithm ................................................................... 42
7 RESULTS ......................................................................................................................................... 46
7.1 FACTORY PLAN VS OPTIMIZED PLAN WITH WEEKLY CYCLE ....................................................................... 50
7.2 RESULTS WITH THE OPTIONAL WEEKLY CYCLE ...................................................................................... 54
7.3 SIMULATED OPTIMIZED PLANS VS TESTED OPTIMIZED PLANS ................................................................... 57
8 CONCLUSIONS AND PROSPECTIVE WORK ...................................................................................... 61
8.1 CONCLUSIONS ............................................................................................................................. 62
8.2 PROSPECTIVE WORK ..................................................................................................................... 64
REFERENCES ........................................................................................................................................... 65
APPENDIX A ........................................................................................................................................... 66
AERZEN GM 90S CHARACTERISTICS CATALOGUE ............................................................................................ 66
APPENDIX B ........................................................................................................................................... 67
POWER MEASUREMENTS WITH THE FLUKE 1735 POWER ANALYSER .................................................................... 67
APPENDIX C............................................................................................................................................ 68
STRUCTURE OF THE SIMULATION PROGRAM ................................................................................................... 68
GUI ..................................................................................................................................................... 71
IX
List of figures
Figure 1 - Production process ......................................................................................................7
Figure 2 - Fermenters F1, F2, F3, F4 and F5 ...............................................................................8
Figure 3 - Average air consumption profile in F1 ..........................................................................9
Figure 4 - Average air consumption profile in F2 ..........................................................................9
Figure 5 - Average air consumption profile in F3 ..........................................................................9
Figure 6 - Average air consumption profile in F4 ..........................................................................9
Figure 7 - Average air consumption profile in F5 ..........................................................................9
Figure 8 - Fermenters and compressors connection scheme.....................................................10
Figure 9 - Power consumption as a function of air flow volume in each Aerzen compressor .....12
Figure 10 - Power consumption as a function of air flow for T1 ..................................................13
Figure 11 - Power consumption as a function of air flow for T2 ..................................................13
Figure 12 - Turbo 1 .....................................................................................................................14
Figure 13 - Turbo 2 .....................................................................................................................14
Figure 14 - Holmes 1 and Holmes 2 ...........................................................................................15
Figure 15 - Separators ...............................................................................................................15
Figure 16 - Access Tariffs for the liberalised market – adapted from [5] ....................................17
Figure 17 - Resources profile: (a) availability, (b) utilization and (c) feasibility – adapted from [1]
...................................................................................................................................................34
Figure 18 - Genetic algorithm basic cycle – adapted from [3].....................................................39
Figure 19 - Comparison of energy consumption between the factory plan and the optimized plan
with weekly cycle in week 1 ........................................................................................................51
Figure 20 - Comparison of energy consumption between the factory plan and the optimized plan
with weekly cycle in week 2 ........................................................................................................51
Figure 21 - Comparison of energy consumption between the factory plan and the optimized plan
with weekly cycle in week 3 ........................................................................................................52
Figure 22 - Comparison of energy consumption between the factory plan and the optimized plan
with weekly cycle in week 4 ........................................................................................................52
Figure 23 - Comparison of energy consumption between the factory plan and the optimized plan
with weekly cycle in week 5 ........................................................................................................53
Figure 24 - Comparison of energy consumption between the factory plan and the optimized plan
with weekly cycle in week 6 ........................................................................................................53
Figure 25 - Power consumption in week 2: simulation results vs real results for T1...................59
Figure 26 - Power consumption: simulation results vs real results for T2 ...................................59
Figure 27 - T1 power consumption from 24 to 29 of April ...........................................................67
Figure 28 – T2 power consumption from 24 to 29 of April ..........................................................67
Figure 29 - Structure of the program ..........................................................................................68
X
List of tables Table 1 - Fermentation duration and output of each fermenter ....................................................7
Table 2 – Matching points between power consumption and air flow volume in each Aerzen
compressor.................................................................................................................................11
Table 3 - Characteristics of the Turbo compressors ...................................................................12
Table 4 - Weekly cycle hourly periods ........................................................................................19
Table 5 - Optional weekly cycle hourly periods ..........................................................................20
Table 6 - Integer and binary variables for each fermenter ..........................................................25
Table 7 – Approximate mode of turning on and off T1 and T2 depending on the air volume in the
collector ......................................................................................................................................28
Table 8 - Performance of the optimization algorithm for several parameters combinations for test
1 .................................................................................................................................................44
Table 9 - Performance of the optimization algorithm for several parameters combinations for test
2 .................................................................................................................................................44
Table 10 - Performance of the optimization algorithm for several parameters combinations for test
1 .................................................................................................................................................45
Table 11 - Selected values for the parameters of the genetic algorithm .....................................45
Table 12 - Minimum time for the 1st fermentation to start in each fermenter in week 1 ..............47
Table 13 - Factory plan with contracted weekly cycle in week 1 ................................................47
Table 14 - Minimum time for the 1st fermentation to start in each fermenter in week 2 ..............48
Table 15 - Factory plan with contracted weekly cycle in week 2 ................................................48
Table 16 - Minimum time for the 1st fermentation to start in each fermenter in week 3 ..............48
Table 17 - Factory plan with contracted weekly cycle in week 3 ................................................48
Table 18 - Minimum time for the 1st fermentation to start in each fermenter in week 4 ..............49
Table 19 - Factory plan with contracted weekly cycle in week 4 ................................................49
Table 20 - Minimum time for the 1st fermentation to start in each fermenter in week 5 ..............49
Table 21 - Factory plan with contracted weekly cycle in week 5 ................................................49
Table 22 - Minimum time for the 1st fermentation to start in each fermenter in week 6 ..............50
Table 23 - Factory plan with contracted weekly cycle in week 6 ................................................50
Table 24 – Results of the optimized plan compared to the factory plan with weekly cycle in week
1 .................................................................................................................................................51
Table 25 - Results of the optimized plan compared to the factory plan with weekly cycle in week
2 .................................................................................................................................................51
Table 26 - Results of the optimized plan compared to the factory plan with weekly cycle in week
3 .................................................................................................................................................52
Table 27 - Results of the optimized plan compared to the factory plan with weekly cycle in week
4 .................................................................................................................................................52
XI
Table 28 - Results of the optimized plan compared to the factory plan with weekly cycle in week
5 .................................................................................................................................................53
Table 29 - Results of the optimized plan compared to the factory plan with weekly cycle in week
6 .................................................................................................................................................53
Table 30 – Results of the factory and optimized plan with optional weekly cycle compared to the
factory plan with weekly cycle in week 1 ....................................................................................55
Table 31 – Results of the factory and optimized plan with optional weekly cycle compared to the
factory plan with weekly cycle in week 2 ....................................................................................55
Table 32 – Results of the factory and optimized plan with optional weekly cycle compared to the
factory plan with weekly cycle in week 3 ....................................................................................55
Table 33 – Results of the factory and optimized plan with optional weekly cycle compared to the
factory plan with weekly cycle in week 4 ....................................................................................55
Table 34 – Results of the factory and optimized plan with optional weekly cycle compared to the
factory plan with weekly cycle in week 5 ....................................................................................56
Table 35 – Results of the factory and optimized plan with optional weekly cycle compared to the
factory plan with weekly cycle in week 6 ....................................................................................56
Table 36 - Electric energy costs in the first 8 months of 2014 for the two different tariff cycles:
weekly cycle and optional weekly cycle ......................................................................................57
Table 37 - Test and simulation results using the optimized plan in week 2: comparison and
deviation .....................................................................................................................................58
XII
List of symbols EU – European Union
F1 – Fermenter 1
F2 – Fermenter 2
F3 – Fermenter 3
F4 – Fermenter 4
F5 – Fermenter 5
A1.1 and A1.2 – Aerzen compressors pumping air into F1
A2.1 and A2.2 – Aerzen compressors pumping air into F2
T1 – Turbo 1
T2 – Turbo 2
H1 – Holmes 1
H2 – Holmes 2
SEN – National Electric System
ERSE – Regulatory Entity of the Energy System
i – Number of the fermentation
𝑥𝑖 – Integer decision variable
𝑥𝑖+36 – Binary decision variable
𝐸𝑡𝑜𝑡𝑎𝑙 – Total energy consumption in each time interval [kWh]
𝐸𝐴1 – Energy consumption in each Aerzen feeding F1 in each time interval [kWh]
𝐸𝐴2 – Energy consumption in each Aerzen feeding F2 in each time interval [kWh]
𝐸𝑇1 – Energy consumption by Turbo T1 in each time interval [kWh]
𝐸𝑇2 – Energy consumption by Turbo T2 in each time interval [kWh]
𝐸𝐻1 – Energy consumption by Holmes H1 in each time interval [kWh]
𝐸𝐻2 – Energy consumption by Holmes H2 in each time interval [kWh]
𝑎𝑖𝑟𝐴𝑒𝑟𝑧𝑒𝑛 – Air consumed by each Aerzen compressor in each time interval [m3/h]
𝐹𝑎𝑖𝑟𝐴𝑒𝑟𝑧𝑒𝑛 – Air consumption given a scheduled plan in each time interval for each Aerzen
compressor [m3/h]
XIII
𝑥 – Scheduled weekly plan
𝑡 – Discrete time variable
𝑃𝐴𝑒𝑟𝑧𝑒𝑛 – Power consumed by each Aerzen compressor as a function of pumped air volume [kW]
Δ𝑡 – Power integration constant
𝑎𝑖𝑟𝑐𝑜𝑙𝑙𝑒𝑐𝑡𝑜𝑟 – Air injected into the collector in each time interval [m3/h]
𝐹𝑎𝑖𝑟𝑐𝑜𝑙𝑙𝑒𝑐𝑡𝑜𝑟 – Air injected into the collector given a scheduled plan in each time interval [m3/h]
𝑎𝑖𝑟𝑇1 – Air pumped by Turbo T1 in each time interval [m3/h]
𝐹𝑎𝑖𝑟𝑇1 – Air pumped by Turbo T1 given a scheduled plan in each time interval [m3/h]
𝑎𝑖𝑟𝑇2 – Air pumped by Turbo T2 in each time interval [m3/h]
𝐹𝑎𝑖𝑟𝑇2 – Air pumped by Turbo T2 given a scheduled plan in each time interval [m3/h]
𝑃𝑇1 – Power consumed by Turbo T1 as a function of pumped air volume [kW]
𝑃𝑇2 – Power consumed by Turbo T2 as a function of pumped air volume [kW]
T1s – Status of Turbo T1 in each time interval
T2s – Status of Turbo T2 in each time interval
𝐹𝑇1 – Binary function indicative of Turbo T1 status depending on the air consumed by the collector
in each time interval
𝐹𝑇2 – Binary function indicative of Turbo T2 status depending on the air consumed by the collector
in each time interval
𝐻1𝑠 – Status of H1 (on or off)
𝐹𝐹1 – Binary function indicating if F1 is in the fermentation stage given a certain scheduled plan,
in each time interval
𝐻2𝑠 – Status of H2
𝐹𝐹2 – Binary function indicating if F2 is in the fermentation stage given a certain scheduled plan,
in each time interval
𝑃𝐻1 – Nominal power of H1
𝑃𝐻2 – Nominal power of H2
𝐻𝑆𝑝 – Binary function indicating the time intervals corresponding to Super peak hours
𝐻𝑝 – Binary function indicating the time intervals corresponding to peak hours
𝐻𝑆𝑜𝑓𝑓 – Binary function indicating the time intervals corresponding to Super off-peak hours
𝐻𝑜𝑓𝑓 – Binary function indicating the time intervals corresponding to off-peak hours
XIV
𝑐𝑆𝑝𝑎 – Active energy cost in Super peak hours [€/kWh]
𝑐𝑝𝑎 - Active energy cost in peak hours [€/kWh]
𝑐𝑆𝑜𝑓𝑓𝑎 - Active energy cost in Super off-peak hours [€/kWh]
𝑐𝑜𝑓𝑓𝑎 - Active energy cost in off-peak hours [€/kWh]
𝑐𝑆𝑝𝑛 – Energy network access cost in Super peak hours [€/kWh]
𝑐𝑝𝑛 - Energy network access cost in peak hours [€/kWh]
𝑐𝑆𝑜𝑓𝑓𝑛 - Energy network access cost in Super off-peak hours [€/kWh]
𝑐𝑜𝑓𝑓𝑛 - Energy network access cost in off-peak hours [€/kWh]
𝑐𝑐𝑝 – Cost per kW of contracted power day [€/kWday]
𝑐𝑆𝑝𝐻 – Consumed power in super peak hours cost [€/kWday]
𝑁𝑆𝑝𝐻 – Number of super peak hours in one week
𝑐𝑡𝑎𝑥 – Special tax over electricity consumption
𝐸𝑆𝑝𝐻 – Energy consumed in Super peak hours
𝐸𝑝𝐻 – Energy consumed in peak hours
𝐸𝑆𝑜𝑓𝑓𝐻 – Energy consumed in Super off-peak hours
𝐸𝑜𝑓𝑓𝐻 – Energy consumed in off-peak hours
𝐶 – Total electric energy consumption cost for a certain scheduled plan x
Y – Ton of yeast produced for a certain scheduled plan x
𝐹𝑜𝑏𝑗𝑒𝑡𝑖𝑣𝑒 – Objective function
𝑁𝐹𝑘 – Number of scheduled fermentations in fermenter k
𝑈𝑠𝑒𝑝 – Difference between availability and utilization profiles for a given plan
𝑌𝐵 – Quantity of type B yeast produced for a given plan
B – Quantity of type B yeast required
𝑜𝑢𝑡 – Output of each fermenter in each scheduled fermentation
𝑌𝐴 – Quantity of type A yeast produced for a given plan
A – Quantity of type A yeast required
𝑇𝐹𝑘 – Fermentation time in fermenter k
GUI – Graphical User Interface
1 Introduction
2
1.1 Framework and Motivation
The growing concern in increasing equipment efficiency and promoting efficient practices, either
for households or industries, is a reality. In fact, energy efficiency is one of the “20-20-20” targets
of Europe Union, which aims to improve it by 20%, along with a 20% reduction of greenhouse
gas emissions from 1990 levels and a 20% consumption of renewable energy in the total energy
consumption in 2020 [1]. Therefore, it is very important to raise awareness for this matter and
invest and implement efficiency measures in order to help EU meet these targets. Moreover, by
increasing efficiency, households and industries will harvest the inherent benefits and will see
their energetic expenses reduced.
Particularly, in many industries the biggest expenses come from their electric energy
consumption. There, production processes can be complex and improving efficiency is more than
replacing old equipment for new equipment with higher levels of efficiency. It is also important to
characterize those internal production processes in order to evaluate their performance and look
for inefficiencies that can be solved, thus reducing costs and maximizing overall energy efficiency.
The use of optimization algorithms for the modelled production processes is an effective way to
obtain better production solutions in energy and costs terms. However, sometimes the processes
are too complex to represent and optimize via conventional math programming. Instead, different
ways of optimization are needed to better suit these cases, such as heuristic methods [2].
Heuristic method is a procedure to find feasible and good solutions and it fits usually a specific
problem with a specific set of constraints and assumptions rather than a variety of problems [2][3].
Optimality and solution finding is not guaranteed, but it often requires less time than exact
methods [2]. Particularly, algorithms based on natural evolutionary process fit well a wide range
of problems in a multitude of fields, such as engineering. A genetic algorithm belongs to that class
of evolutionary algorithms and it is a search heuristic method that is based on the natural selection
processes present in biologic evolution, thus being a useful weapon to search efficiently in large
spaces [3].
Lallemand S.A. is a yeast producing company that consumes a lot of electric energy and has a
fermentation process requiring weekly scheduling that has a very large solutions space.
Therefore, it fits perfectly in the efficiency problem optimization and given its dimension and
complexity, after modelling the whole process, a genetic algorithm to create optimized weekly
plans will be used and put into test.
3
1.2 Lallemand Ibéria S.A.
Lallemand Ibéria S.A. initiated its industrial activity in 1973. The headquarters are located in
Setúbal, in the zone of Cachofarra, near Sado River. The activity of Lallemand is developed,
mainly, in the area of biotechnology, producing yeast, live microorganisms from the species
Saccharomyces cerevisae. Its commercialization is made under the form of cream yeast, pressed
yeast and dry yeast, which are used in bakery and pastry industries. The company has
approximately 60 employees and works uninterruptedly, 24 hours per day, 7 days per week.
The investment in new technologies and equipment, the continuous improving and research and
development constitute the bases for the success of Lallemand that exports for all over the world
around 70% of its production. The remaining 30% are sold in the Portuguese market.
A complete fermentation cycle is constituted by the fermentation, separation and initialization
processes, and its production plans are made on a weekly basis by the responsible production
manager.
1.3 Objectives
As seen in the two previous sections, Lallemand is a yeast producing company that has a
fermentation process planned in a weekly basis. Those plans depend on the production needs
and are created by the production manager. The main goal of this thesis is to reduce the energy
costs per ton of yeast produced. Hence, it is necessary modelling all the production process first.
Then, within this main goal, several objectives are to be accomplished: creation of a simulation
program with the model of the fermentation process and an optimization algorithm to lessen its
electric energy costs, since the weekly planning performed by the production manager does not
take into account the energy price variation over one day; ascertainment of what electric tariff is
economically better for the company and, finally, identification and searching for solutions for
another inefficiencies present in the process.
1.4 Structure and Organization
After defining the objectives, this master thesis is organized in 8 chapters. The first and the last
represent the introduction and conclusions, respectively. In chapter 2 the whole fermentation
process is going to be described, where air consumption of the fermenters and power
consumption of the machines are going to be characterized. In chapter 3 a general insight about
the Portuguese electric tariff system will be given, with special emphasis on the tariffs that are
possible to contract by Lallemand. In chapter 4 the problems present in the company will be
4
identified, and these are the problems that will be considered for electric costs reduction. In
chapter 5 the fermentation process is going to be mathematically modelled: decision variables for
the optimization problem will be defined, the power characteristics of the machines as a function
of air consumption and the energy costs of the tariff will be represented, the objective function is
going to be formulated and the constraints for the problem will be identified. In chapter 6 the
genetic algorithm used in the program will be fully described and its parameters will be chosen to
appropriately suit this specific scheduling problem of Lallemand. Finally, in chapter 7 the results
will be presented. Results for the factory and optimized plans given different tariffs for the
fermentation process, energy costs in the whole company given different tariffs and practical tests
results.
In short, in chapters 2 and 3 it will be characterized the production process and the Portuguese
electric tariff, then in chapters 4 and 5 it will be identified the problems related to energy costs and
efficiency and it will be modelled all the production process and finally, in chapter 6 the used
genetic algorithm will be explained
5
2 Characterization of
the production
process
6
2.1 Fermentation
To obtain one of the final three products (cream yeast, pressed yeast or dry yeast) there are
several stages yeast needs to go through. Firstly, the company receives pure cultures of the
lineage Saccharomyces cerevisae non-modified genetically. Then a pure culture is inserted in a
fermenter (pure culture fermenter) which contains sterilized treacle and other nutrients such as
ammonia, diammonium phosphate, magnesium sulphate and vitamins. Specific air, pH and
temperature conditions are assured to this culture. When this pure culture reaches a certain level
of development it will be transferred to a main fermenter (fermenter F4), which is again fed in a
regular and continuous manner with treacle, nutrients and air, maintaining temperature and pH
conditions. Air compressors are responsible for keeping the needed air flow and the temperature
is controlled by pumping water from the river into a pipeline that cools down the fermenters
through a heat exchanger. Therefore the water does not contact with the product itself, returning
into the river in conditions similar to the ones before the pumping and according to legislation
parameters.
In the end of this initial stage the resulting yeast (mother yeast) is distributed over another four
fermenters (F1, F2, F3 and F5) similar to the main fermenter to continue the production process.
After yeast gets fermented in each one of the 4 fermenters (commercial yeast) it goes directly to
the separators, where its cells are separated by centrifugation from the must where they grew up,
thus obtaining the first final product: cream yeast. This cream yeast is stored in refrigerated tanks
and it is dispatched in isothermal tank trucks. Pressed yeast is acquired by applying a rotating
vacuum filter to cream yeast. The resulting paste is extruded in order to form blocks which are
packed in carton boxes and stored in refrigerators until their dispatch. Lastly, dry yeast, like
pressed yeast, results from applying a rotating vacuum filter to cream yeast but after is also
submitted to a drying process until approximately 96% of dry matter is achieved. Dry yeast is
stored in silos before being packed through an automated process by vacuum, which is a
necessary condition to maintain the characteristics of this type of yeast.
After finishing the fermentation and separation processes and before initiating the next new
fermentation, every fermenter must be “initialized”, i.e. they go through a cleaning and preparation
process for the next fermentation. These three processes combined (fermentation, separation
and initialization) make the so-called fermentation cycle.
The whole production process is schematized in figure 1.
7
Figure 1 - Production process
As it was previously stated, there are three main stages in the production process: fermentation,
separation and initialization. Each fermenter has a certain duration associated to each one of
those stages, as well as a specific product quantity output. Table 1 shows the duration of the
processes and the output quantities concerning each fermenter. It must be noted that the
presented values are the ones used by the operators and the production manager to create the
weekly schedules, despite being average values that vary a little bit from fermentation to
fermentation.
Fermenter Yeast type Fermentation
[h] Separation
[h] Initialization
[h]
Total duration
[h]
Output [ton]
F1 Commercial 15 3,5 2,5 21 30
F2 Commercial 14 2,5 3,5 20 24
F3 Commercial 14 2,5 3,5 20 20,5
F5 Commercial 14 2,5 3,5 20 20,5
F4 Mother 24 2,5 3,5 30 20,5
Table 1 - Fermentation duration and output of each fermenter
8
Figure 2 - Fermenters F1, F2, F3, F4 and F5
2.2 Air consumption
To control the development of the yeast is necessary to assure specific air flow conditions, which
vary over the time of a fermentation cycle and are different in every fermenter. The air
consumption in each fermenter is registered by the responsible operators every hour, in m3/h,
and it follows a typical profile. However, it may differ from fermentation to fermentation due to
certain factors such as air humidity, air temperature, water temperature, technical problems that
sometimes happen and cannot be foreseen and also the fact that these values are registered
manually by the operators, which is liable to inaccuracies. Therefore it is important to gather all
the data regarding the air consumption in each fermenter over a certain period of time to perform
a statistical analysis to build an average typical profile for each of the 5 fermenters.
With that purpose, around 100 fermentations cycles, randomly picked between the years of 2013
and 2014, were used to obtain an average air consumption profile for each fermenter. As it was
mentioned before, the air consumption profile varies each fermentation. Nonetheless, this
variation is more evident in the absolute values of air consumption each hour rather than in their
relative difference from hour to hour, which is what will matter for the optimization algorithm, as it
will be seen in the upcoming chapters.
9
Figure 3 - Average air consumption profile in F1
Figure 4 - Average air consumption profile in F2
Figure 5 - Average air consumption profile in F3
Figure 6 - Average air consumption profile in F4
Figure 7 - Average air consumption profile in F5
In figures 4 to 7 it is shown the average air consumption profile for each fermenter. Figure 8 shows
that fermenters F1 and F2 are each one fed by two compressors called Aerzen (A1.1 and A1.2
feed F1; A2.1 and A2.2 feed F2), while the other three fermenters are connected to a common
collector fed by two compressors called Turbo 1 (T1) and Turbo 2 (T2). Air is injected into the
collector at a constant pressure of 800 mBar. The decision of turning ON and OFF these turbo
compressors is made manually by the operators respecting, however, a certain pattern related to
the air volume to be injected in the collector, as it will be explained in chapter 5. The overall
schematic for the air injection system is pictured in figure 8.
10
Figure 8 - Fermenters and compressors connection scheme
In figures 3 to 7, contrary to what should be expected, when the fermentation process is finished
in the fermenters, i.e. the process is in either the separation or initialization part, there is still air
being consumed. This air consumption is around 1000 m3/h and its only purpose is to avoid
bacteria and impurities entrance in the fermenters.
In fermenters F1 and F2 there are two small compressors that feed them when there is not any
fermentation happening. These compressors Holmes 1 (H1) and Holmes 2 (H2) are not
represented in figure 7. The air circulation for the other 3 fermenters when they are not having
any fermentation is done by availing the air present in the collector that is being used for other
fermentations. For example, if F3 does not have a fermentation going on but F4 and F5 do, F3
will demand the needed 1000 m3/h for air circulation from the collector by just slight increasing
the air injected by the Turbo compressors connected to the collector, which were already feeding
F4 and F5. If by any chance F3, F4 and F5 are not fermenting, which is a rare situation, both
Holmes can and will then feed the collector to assure air circulation in these 3 fermenters.
11
2.3 Power Characterization of the Compressors
2.3.1 Aerzen compressors
There are four equal Aerzen compressors (A1.1, A1.2, A2.1 and A2.2) that are linked to
fermenters F1 and F2 (two compressors for each of them). Hence, since each pair of compressors
feeds just one fermenter individually and independently, these compressors work almost always
very close to maximum power. Hence, for the program development it will be considered that the
power they consume is constant for each volume of air injected. This assumption is needed to
compare the simulation tests to the experimental ones in chapter 8, once power measurements
in working conditions were not made in the four Aerzen but they were done only in the two turbo
compressors. However, these Aerzen compressors are relatively new and as such it is reasonable
to associate the same certain power to the respective certain volume of air injected. Still it is
important to note this is an approximation. Also, both compressors of the same pair feeding each
fermenter consume the same power.
Each Aerzen compressor is referenced as GM 90S and works with an induction motor with
nominal power of 150 kW. Their power consumption characteristic can be taken directly from the
manufacturer catalogue, in Appendix A. By matching the power curves with the air flow curves
and the pressure curve of 800 mBar the following table is obtained:
Power (kW) Air flow volume (m3/h)
76 2700
84 3000
92 3300
100 3600
108 3900
116 4200
124 4500
132 4800
140 5100
148 5400
Table 2 – Matching points between power consumption and air flow volume in each Aerzen compressor
Now it is necessary to get an expression that represents the power consumption as a function of
air volume to be implemented in the simulation program. Using a simple linear regression the
following curve and consequent expression of power consumption (y) as a function of air flow (x)
come as indicated in figure 9:
12
Figure 9 - Power consumption as a function of air flow volume in each Aerzen compressor
2.3.2 Turbo compressors
Turbo 1 and Turbo 2 are the compressors that pump air into the collector, which it will feed F3,
F4 and F5 fermenters. As it was already written in section 2.2, the collector has always a constant
pressure of 800 mBar. The load seen by these Turbo compressors is established by varying the
angle of vanes at the exit of the compressors, thus changing the air volume that is injected into
the collector, which in turn alters the load torque exerted to the compressor. They also operate at
a constant speed of 2965 rpm.
Turbo 1 and Turbo 2 feed together 3 fermenters (F3, F4 and F5), therefore having a working point
dependent of the fermentations that are in progress and also their state (air consumption in each
fermentation). Since the weekly production plans are never the same, the operation of these
Turbo compressors is very variable and acyclic, contrary to the 4 Aerzen compressors.
In table 3 it is shown the characteristics of the motors of these two compressors, which are
referenced as HV-Turbo.
Motor Reference Type Power (kW)
Turbo 1 Schorch D-4138 Induction 315
Turbo 2 WED 355 AB2 Induction 450
Table 3 - Characteristics of the Turbo compressors
Although there is information regarding the nominal characteristics of these motors, they lack
proper documentation and there is little information about their behaviour under operating
y(x) = 0,027653x
0
20
40
60
80
100
120
140
160
0 1000 2000 3000 4000 5000 6000
Po
we
r co
nsu
mp
tio
n (
kW
)
Air Flow (m3/h)
Power(Air Flow)
13
conditions since they are older than the Aerzen compressors set. To overcome this problem
measurements during several weeks of operation were made with two power analysers
referenced as Fluke 1735 [4]. With these power measurement instruments it was possible to
record average power consumption in each interval of 15 minutes. Then, by matching the air
consumption per hour in each fermenter recorded manually by the operators with the power
registered by the Fluke analysers it was possible to sketch a characteristic curve of power
consumption (y) as a function of air volume (x) injected into the collector using a third order
polynomial regression, which was the one who best simulated the behaviour of the machines, as
it can be seen in figures 10 and 11.
Figure 10 - Power consumption as a function of air flow for T1
Figure 11 - Power consumption as a function of air flow for T2
y(x) = 8,29E-11x3 - 4,30E-06x2 + 6,40E-02x
0
50
100
150
200
250
300
350
0 2000 4000 6000 8000 10000 12000 14000
Po
wer
co
nsu
mp
tio
n (
kW)
Air Flow (m3/h)
T1 - Power(Air Flow)
y(x) = 2E-10x3 - 7E-06x2 + 0,0835x
0
50
100
150
200
250
300
350
400
450
500
10500 11000 11500 12000 12500 13000 13500 14000 14500 15000
Po
wer
co
nsu
mp
tio
n (
kW)
Air Flow (m3/h)
T2 - Power(Air Flow)
14
The data used for the previous figures can be consulted in Appendix B. These data was obtained
from the measurements when only Turbo 1 or Turbo 2 were working alone, because when they
are working simultaneously the air injected into the collector comes from both and it is impossible
to assess exactly how much air each Turbo is pumping. Thereby, the data acquired in the
moments where only one Turbo was working is assuredly more precise. However, although it is
hard to know how much air each Turbo compressor pumps when both are working at the same
time, their way of operating is not random: when both are turned on, T2 is almost at maximum
power while T1 pumps the remaining needed air into the collector. It will be seen in chapter 5 that
T1 is on when required air flow is between 0 to 10500 m3/h, T2 is on from 10500 to 15000 m3/h
and T1 and T2 are both turned on when the air flow is over 15000 m3/h. Obviously there are
fluctuations in this borders and that is the reason why data was obtained in the periods of time
when only either T1 or T2 were pumping air into the collector alone, for a more precise modelling.
Figure 12 - Turbo 1
Figure 13 - Turbo 2
2.3.3 Holmes compressors
There are two Holmes compressors, H1 and H2, which mainly feed F1 and F2 only for air
circulation purposes, respectively. Under rare circumstances such as F3, F4 and F5 being without
any fermentation going on, H1 and H2 will be responsible for pumping air into the collector to
assure air circulation and avoid bacteria and impurities entrance.
These compressors have motors from Brook Crompton with nominal power of 22 kW. Since their
power is much lower than the main compressors and approximately feed always the same air
quantity (1000 m3/h), they will have small impact in the optimization algorithm, as it will be seen
in chapter 7. So it was assumed that they always consume the nominal power of 22 kW as a
simple way to incorporate them in the simulation program.
15
Figure 14 - Holmes 1 and Holmes 2
2.3.4 Separators
There is a set of three separators Westfalia HDA75 with an induction motor of 37kW each.
Depending of what kind of yeast is going to be produced, one or three separators are going to be
used. If it is cream or pressed yeast, the three separators will be used. If it is dry yeast only one
separator will be used because later it will be transferred to another facility intended only to the
drying process, which is outside the scope of this thesis. So it was important to ascertain if the
power consumption of the separators is significant or not. Again, like with T1 and T2, there are
not proper documentation regarding these separators. After weeks of registering daily energy
consumption given by an energy meter linked only to the separators, it was verified that their
consumption is very small comparing to the consumption of the main compressors. Therefore,
the separators were kept out of the program as a source of energy consumption.
Figure 15 - Separators
16
3 Portuguese Tariff
System
17
3.1 Overview
The main goal of the activities of the National Electric System (SEN) is to deliver electric energy
adequate to the needs of the consumers, either quantitatively or qualitatively, taking into account
rationality and efficiency principles regarding the used means in all its activities from the electric
energy production to the supply of the final consumer. Electric energy is an essential good and
as such must fulfil specific requirements, among which stand out the security, regularity and
quality of its provision, guarantee of universality of the service, guarantee of connection to the
grid to all the customers and client protection concerning tariffs and prices. This sector is divided
in four activities: production, transmission, distribution and commercialization. Commercialization
has been an activity associated to distributors, but since the market liberalisation these two
activities are treated separately. With this liberalisation every consumer has the right to choose
its own electric energy retailer, so it will be expected an increase in the competition between
retailers, which will be reflected on the electric energy prices and on an improvement of quality
service, which in turn will elevate the satisfaction of the consumers [5].
The access tariffs and the way they are calculated is defined in the Tariff Regulation of the
Regulation Entity of the Energy Services (ERSE) [B]. This regulation must promote fair tariffs
concerning resources utilisation, economic and financial balance of the regulated companies,
quality of electric energy supplying and stability of tariff evolution. Therefore, the access tariffs
should be determined in an additive way, i.e. each client must pay the costs they cause on each
activity of the energy sector, which will have different tariffs accordingly. Figure 12 exhibits the
access tariffs for the liberalised market [5].
Figure 16 - Access Tariffs for the liberalised market – adapted from [5]
18
As it can be seen in Figure 12, in the liberalised market there are regulated costs paid by all
consumers defined by ERSE concerning network access. Non-regulated energy and retail prices
are negotiated between the selling company and the consumer. Case the consumer is not
inserted yet in the liberalised market, energy and retail prices are therefore fixed by a transient
tariff regulated by ERSE, whose price is higher than the prices practiced in the liberalised market.
This is an incentive for the consumer to adhere to the liberalised market and make an informed
choice of what is the best company to buy energy from [5].
These regulated and non-regulated prices from the access tariffs also vary accordingly to the so-
called “hourly periods”. Hourly periods are differentiated in daily cycle (hourly periods remain the
same during all week) and weekly cycle (hourly periods on Saturday and Sunday are different
from other week days). Each hourly period can be divided into super peak, peak, off-peak and
super off-peak hours. Depending on the type of consumer, i.e. the voltage regime used by the
consumer - extra high voltage, high voltage, medium voltage, low voltage normal or low voltage
special - there may only be a distinction between peak and off-peak hours (bi-hourly) or between
super peak, peak and off-peak hours (tri-hourly), as well as there may only be a certain cycle
available to choose [5].
3.2 Lallemand Contracted Tariff
Lallemand is connected to the medium voltage grid. From ERSE regulations, there are only two
options available to this company: the weekly cycle and the optional weekly cycle, both having 4
hourly periods (super peak, peak, off-peak and super off-peak). At this moment, the company has
contracted the weekly cycle and its retailer is Iberdrola.
For the medium voltage consumers, such as Lallemand, the electric energy invoice discriminates
several costs associated to the activities costs pictured in figure 12, and some of them vary
according to the time periods when the energy is consumed. The electric invoice contemplates:
Active energy invoiced (€/kWh)
Active energy consumed in each time period of the contracted tariff. Its cost is
negotiated between the company and its retailer
Energy network access term (€/kWh)
This term is relative to the usage of transmission and distribution power lines and
also varies according to the hourly periods. Its cost is regulated and fixed by
ERSE, so it is independent from the retailer
19
Power network term
o Contracted power (€/kWday)
Maximum average power registered in any uninterrupted interval of 15
minutes over the last 12 months, including the one concerning the invoice
o Power consumed in peak hours (€/kWday)
Total energy consumed in peak hours, divided by the number of peak
hours existent in the period relative to the invoice
Reactive energy term (€/kVArh)
Total reactive energy consumed
Special tax over electricity consumption (€/kWh)
The weekly cycle and optional weekly cycle hourly periods are depicted in table 3 and table 4.
Weekly cycle for Continental Portugal
Winter time Summer time
Monday to Friday Monday to Friday
Super Peak 09:30 - 12:00
18:30 – 21:00 Super Peak 09:15 – 12:15
Peak
07:00 – 09:30
12:00 – 18:30
21:00 – 24:00
Peak 07:00 – 09:15
12:15 – 24:00
Super Off-Peak 02:00 – 06:00 Super Off-Peak 02:00 – 06:00
Off-Peak 00:00 – 02:00
06:00 - 07:00 Off-Peak
00:00 – 02:00
06:00 – 07:00
Saturday Saturday
Peak 09:30 – 13:00
18:30 – 22:00 Peak
09:00 – 14:00
20:00 – 22:00
Super Off-Peak 02:00 – 06:00 Super Off-Peak 02:00 – 06:00
Off-Peak
00:00 – 02:00
06:00 – 09:30
13:00 – 18:30
22:00 – 24:00
Off-Peak
00:00 – 02:00
06:00 – 09:00
14:00 – 20:00
22:00 – 24:00
Sunday Sunday
Super Off-Peak 02:00 – 06:00 Super Off-Peak 02:00 – 06:00
Off-Peak 00:00 – 02:00
06:00 – 24:00 Off-Peak
00:00 – 02:00
06:00 – 24:00
Table 4 - Weekly cycle hourly periods
20
Optional Weekly cycle for Continental Portugal
Winter time Summer time
Monday to Friday Monday to Friday
Super Peak 17:00 – 22:00 Super Peak 14:00 – 17:00
Peak
00:00 – 00:30
07:30 – 17:00
22:00 – 24:00
Peak
00:00 – 00:30
07:30 – 14:00
17:00 – 24:00
Super Off-Peak 02:00 – 06:00 Super Off-Peak 02:00 – 06:00
Off-Peak 00:30 – 02:00
06:00 - 07:30 Off-Peak
00:30 – 02:00
06:00 – 07:30
Saturday Saturday
Peak 10:30 – 12:30
17:30 – 22:30 Peak
10:00 – 13:30
19:30 – 23:00
Super Off-Peak 03:00 – 07:00 Super Off-Peak 03:30 – 07:30
Off-Peak
00:00 – 03:00
07:00 – 10:30
12:30 – 17:30
22:30 – 24:00
Off-Peak
00:00 – 03:00
07:30 – 10:00
13:30 – 19:30
23:00 – 24:00
Sunday Sunday
Super Off-Peak 04:00 – 08:00 Super Off-Peak 04:00 – 08:00
Off-Peak 00:00 – 04:00
08:00 – 24:00 Off-Peak
00:00 – 02:00
08:00 – 24:00
Table 5 - Optional weekly cycle hourly periods
21
4 Problem Identification
22
To make an appropriate modelling of the whole problem, it is necessary to define correctly the
problem at first. Only by doing this, it will be possible to define the proper decision variables,
identify the existent constraints, and finally create the objective function to be optimized by the
optimization algorithm within the simulation program [6].
The majority of expenses paid by Lallemand comes from electric energy consumption. Thus it
was important to study and analyse all sources of energy consumption and look for inefficient
practices in order to solve them. The great consumers in this company can be divided as follows:
Evaporator
Fermentation process
o Air pumping
o Water pumping for cooling
o Pumping for yeast circulation
o Separation
Drying facility
This thesis focus only in the fermentation process, namely in the air pumping as the energy
consumer, which is in fact the activity where most inefficiencies occur. The main goal is trying to
solve one big problem of the fermentation process: weekly plans done by the production manager
don’t take into account the hourly periods present in the contracted tariff. Therefore, consumption
peaks often occur in the super peak hours, leading to an aggravation in the costs by the end of
each month. This can be treated as a scheduling problem, aiming towards the optimization of
electric energy consumption costs.
The simulation program will also allow to evaluate which tariff is the best one to be contracted,
since the company has not done any investigation regarding this aspect in many years.
However, other problem arises in what concerns the company as a whole. Contracted power is
often exceeded and, as previously explained, the company will have to pay this new higher value
for the next 12 months. Usually it happens after the factory has some maintenance interruption
for several hours, or when some fermenters or other energy consumers have to be stopped for
some reason. Why? Because, as soon as the maintenance/problem is over, everything is turned
back on right away. So all machines start up more or less at the same time and the different
processes are running parallel. Therefore the combined power is enough to exceed the contracted
power. The fermentation process itself is not enough to achieve the company’s usual values of
contracted power, but, together with the evaporator - which is a huge consumer - the drying
facility, the water pumping and also with other smaller consumers, such as lighting and
refrigeration, it can easily climb over to higher values. Given that this situation is not contemplated
in the program, the solution comes by creating awareness to all workers and managers for this
23
problem. After a maintenance break, instead of turning everything back on immediately, operators
must allow an interval between the beginning of each process, which is completely feasible since
a deviation of 2 or 3 hours does not affect at all the production of the company.
Finally, the last problem detected is the stoppage of production due to breakdown of equipment,
lack of feedstock or human mistakes. Hence, this problem is not predictable and such as with the
contracted power problem, the solution passes through raising awareness to all working
personnel. It is very common for a weekly plan to be changed during the course of the week in
consequence of these sudden problems. As it will be seen later, in chapter 7.3, this fact reduces
the efficacy of the obtained optimized plans because the program does not comprise such
stoppages and plan alterations.
24
5 Mathematical
Formulation of the
Problem
25
5.1 Decision Variables
In the production process there are 5 different fermenters, which can operate in parallel. Each
fermentation consists in a cycle with variable duration, divisible in three distinct tasks: initialization,
fermentation and separation. Taking into account only the time constraint of one week (168
hours), it will be considered that fermenters F2, F3 and F5 can have a maximum of 8
fermentations, F1 a maximum of 7 fermentations and F4 a maximum of 5 fermentations,
according to table 1. Given that fermentations are initialized manually by an operator, for
practicability matters of the production plans, fermentations can only be initialized every 30
minutes. Consequently it will be considered for the optimization mathematical model that the time
variable is a discrete variable with intervals of 30 minutes. Then, time can assume integer values
from 1 to 336 (168 hours is equal to 336 half-hours).
The first step in creating the optimization mathematical model is the definition of the decision
variables. Decision variables represent quantifiable decision that can be made in a certain
problem [6]. For this particular scheduling problem, to each task (fermentation cycle) were
associated two decision variables. The first decision variable is a binary one: 1 means the task is
scheduled, 0 means it is not scheduled. The second variable is an integer one, which identifies
the time interval since the end of the last fermentation in a given fermenter until the beginning of
the next one. Mathematically, this set of variables for this optimization problem can be defined as
follows:
Being N the maximum number of tasks (fermentations) that can occur, for each task 𝑖 are defined
two variables 𝑥𝑖 and 𝑥𝑖+𝑁 with 𝑖 ∈ [1,𝑁]:
𝑥𝑖 – Integer variable
𝑥𝑖+𝑁 – Binary variable
For the present optimization problem, 36 fermentations can happen in one week, so 𝑁 = 36,
totalising 72 variables. In table 5 is shown the association between these variables and the
fermentations in each fermenter.
Fermenter Integer variables Binary variables
F1 x1 to x7 x37 to x43
F2 x8 to x15 x44 to x51
F3 x16 to x23 x52 to x59
F5 x24 to x31 x60 to x67
F4 x32 to x36 x68 to x72
Table 6 - Integer and binary variables for each fermenter
26
5.2 Energy Consumption Modelling
The total energy consumption, in each interval of time t, is given by the sum of all the power
consumed in each machine considered for the optimization problem defined in chapter two. So it
is given by the sum of the following parcels:
𝐸𝑡𝑜𝑡𝑎𝑙(𝑡) = 2𝐸𝐴1(𝑡) + 2𝐸𝐴2(𝑡) + 𝐸𝑇1(𝑡) + 𝐸𝑇2(𝑡) + 𝐸𝐻1(𝑡) + 𝐸𝐻2(𝑡) (1)
𝐸𝑡𝑜𝑡𝑎𝑙 – Total energy consumption in each time interval
𝐸𝐴1 – Energy consumption in each Aerzen feeding F1 in each time interval
𝐸𝐴2 – Energy consumption in each Aerzen feeding F2 in each time interval
𝐸𝑇1 – Energy consumption by Turbo T1 in each time interval
𝐸𝑇2 – Energy consumption by Turbo T2 in each time interval
𝐸𝐻1 – Energy consumption by Holmes H1 in each time interval
𝐸𝐻2 – Energy consumption by Holmes H2 in each time interval
As it was explained in chapter 2.3.4, separators are not considered to the optimization problem,
given their low energy consumption compared to the main energy consumers at the process and
their complex behaviour.
5.2.1 Aerzen Compressors Energy Consumption
In chapter 2.2 was made a statistical analysis to get an average air consumption profile over the
time of one fermentation cycle for the Aerzen compressors, and in chapter 2.3.1 was obtained
the relation between power and air consumption. Now, it must be expressed in mathematical
terms these relations in order to insert the power consumption of the Aerzen compressors into
the program.
Air consumption is dependent of the state of the fermentation. Therefore, it is dependent of the
plan scheduling and, consequently, of the time. The function that relates the air consumption in
each time interval given a certain plan 𝑥 can be formulated generically:
𝑎𝑖𝑟𝐴𝑒𝑟𝑧𝑒𝑛[𝑡] = 𝐹𝑎𝑖𝑟𝐴𝑒𝑟𝑧𝑒𝑛(𝑥[𝑡]) (2)
𝑎𝑖𝑟𝐴𝑒𝑟𝑧𝑒𝑛 – Air consumed by each Aerzen compressor in each time interval
𝐹𝑎𝑖𝑟𝐴𝑒𝑟𝑧𝑒𝑛 – Air consumption given a scheduled plan in each time interval for each Aerzen
compressor
𝑥 – Scheduled weekly plan
27
𝑡 – Discrete time: 𝑡 ∈ [1: 336]
On the other hand, power as a function of air consumption, as it was already estimated in chapter
2.2, can be written as follows:
𝑃𝐴𝑒𝑟𝑧𝑒𝑛(𝑎𝑖𝑟𝑎𝑒𝑟𝑧𝑒𝑛[𝑡]) = 0.027653𝑎𝑖𝑟𝐴𝑒𝑟𝑧𝑒𝑛[𝑡] (3)
𝑃𝐴𝑒𝑟𝑧𝑒𝑛 – Power consumed by each Aerzen compressor as a function of pumped air volume
Hence the energy consumed in each interval of time for each Aerzen compressor is:
𝐸𝐴𝑒𝑟𝑧𝑒𝑛[𝑡] = 𝑃𝐴𝑒𝑟𝑧𝑒𝑛(𝑎𝑖𝑟𝐴𝑒𝑟𝑧𝑒𝑛[𝑡]) × Δ𝑡 (4)
∴ 𝐸𝐴𝑒𝑟𝑧𝑒𝑛[𝑡] = 0.027653𝐹𝑎𝑖𝑟𝐴𝑒𝑟𝑧𝑒𝑛(𝑥[𝑡]) × Δ𝑡 (5)
Δ𝑇 – Power integration constant: Δ𝑡 = 0.5h (30 minutes)
5.2.2 Turbo Compressors T1 and T2 Energy
Consumption
Energy consumption in T1 and T2 depends on the instantaneous air consumption in the collector.
In chapter 2.3 was estimated the average air consumption profiles for F3, F4 and F5, which are
the fermenters connected to the collector. Adopting the same approach used with the modelling
of Aerzen compressors consumption, it is again necessary to acquire a function that, given a
certain scheduled plan x, determines the respective air consumption during each time interval in
the collector and by each Turbo individually. Similarly, these functions are formulated in equation
6, equation 7 and equation 8:
𝑎𝑖𝑟𝑐𝑜𝑙𝑙𝑒𝑐𝑡𝑜𝑟[𝑡] = 𝐹𝑐𝑜𝑙𝑙𝑒𝑐𝑡𝑜𝑟(𝑥[𝑡]) (6)
𝑎𝑖𝑟𝑇1[𝑡] = 𝐹𝑎𝑖𝑟𝑇1(𝑥[𝑡]) (7)
𝑎𝑖𝑟𝑇2[𝑡] = 𝐹𝑎𝑖𝑟𝑇2(𝑥[𝑡]) (8)
𝑎𝑖𝑟𝑐𝑜𝑙𝑙𝑒𝑐𝑡𝑜𝑟 – Air injected to the collector in each time interval
𝐹𝑎𝑖𝑟𝑐𝑜𝑙𝑙𝑒𝑐𝑡𝑜𝑟 – Air injected into the collector given a scheduled plan in each time interval
𝑎𝑖𝑟𝑇1 – Air pumped by Turbo T1 in each time interval
𝐹𝑎𝑖𝑟𝑇1 – Air pumped by Turbo T1 given a scheduled plan in each time interval
𝑎𝑖𝑟𝑇2 – Air pumped by Turbo T2 in each time interval
28
𝐹𝑎𝑖𝑟𝑇2 – Air pumped by Turbo T2 given a scheduled plan in each time interval
From the total air consumption during each time interval in the collector, the associated energy
consumption is going to be calculated. Since each pair of Aerzen compressors feeds only one
fermenter, it is easy to know when they are operating: they are turned on if a fermentation is
occurring, or they are turned off if there is none. Now for T1 and T2 the situation is more
complicated. Since they both are connected to a common collector, the way they are turned on
and off depends on the air to be injected to the collector. Therefore, a way of operating depending
on the air consumption in the collector must be defined. Modelling the way of functioning of these
Turbo compressors has an added difficulty, due to the fact that the decision of turning them on
and off is made manually by the shift operators. However, shift operators comply with an
approximate mode of operation, which is summarized in table 7 and will be used in the program.
Aircollector[t] (m3/h) Turbo compressors
Aircollector <= 10500 T1 ON
T2 OFF
10500 < Aircollector <= 15000 T1 OFF
T2 ON
Aircollector > 15000 T1 ON
T2 ON
Table 7 – Approximate mode of turning on and off T1 and T2 depending on the air volume in the collector
When both Turbo compressors are on, it will be considered that T2 is at its maximum power (i.e.
it is injecting 15000 m3/h), while T1 is pumping the remaining air needed for the collector. After
defining for each quantity of air in the collector which of the machines were working (T1, T2 or T1
and T2), it will be determined the power consumed by each Turbo, using the curves that relate
power with air consumption estimated in chapter 2.2. These curves represent two functions
expressed in equation 9 and equation 10, for Turbo 1 and Turbo 2, respectively.
𝑃𝑇1(𝑎𝑖𝑟𝑇1[𝑡]) = 8,29 × 10−11𝑎𝑖𝑟𝑇1
3 [𝑡] − 4,30 × 10−6𝑎𝑖𝑟𝑇12 [𝑡] + 6,40
× 10−2𝑎𝑖𝑟𝑇1[𝑡], 𝑎𝑖𝑟𝑇1[𝑡] ≤ 10500 𝑚3/ℎ
(9)
𝑃𝑇2(𝑎𝑖𝑟𝑇2[𝑡]) = 2 × 10−10𝑎𝑖𝑟𝑇2
3 [𝑡] − 7 × 10−6𝑎𝑖𝑟𝑇22 [𝑡] + 0.0835𝑎𝑖𝑟𝑇2[𝑡],
10500 < 𝑎𝑖𝑟𝑇2[𝑡] ≤ 15000 𝑚3/ℎ
(10)
𝑃𝑇1 – Power consumed by Turbo T1 as a function of pumped air volume
𝑃𝑇2 – Power consumed by Turbo T2 as a function of pumped air volume
29
Now a binary function should be created in order to define if each Turbo is on or off.
Mathematically this function can be expressed generically in equation 11 and in equation 12 for
each Turbo:
𝑇1𝑠[𝑡] = 𝐹𝑇1(𝑎𝑖𝑟𝑐𝑜𝑙𝑙𝑒𝑐𝑡𝑜𝑟[𝑡]) (11)
𝑇2𝑠[𝑡] = 𝐹𝑇2(𝑎𝑖𝑟𝑐𝑜𝑙𝑙𝑒𝑐𝑡𝑜𝑟[𝑡]) (12)
T1s – Status of Turbo T1 in each time interval (on or off)
T2s – Status of Turbo T2 in each time interval
𝐹𝑇1 – Binary function indicative of Turbo T1 status depending on the air consumed by the collector
in each time interval
𝐹𝑇2 – Binary function indicative of Turbo T2 status depending on the air consumed by the collector
in each time interval
Hence the energy consumption of each turbo in each time interval is formulated in the next two
expressions:
𝐸𝑇1[𝑡] = [𝐹𝑇1(𝑎𝑖𝑟𝑐𝑜𝑙𝑙𝑒𝑐𝑡𝑜𝑟[𝑡]) × 𝑃𝑇1(𝑎𝑖𝑟𝑇1[𝑡])] × Δ𝑇 (13)
𝐸𝑇2[𝑡] = [𝐹𝑇2(𝑎𝑖𝑟𝑐𝑜𝑙𝑙𝑒𝑐𝑡𝑜𝑟[𝑡]) × 𝑃𝑇2(𝑎𝑖𝑟𝑇2[𝑡])] × Δ𝑇 (14)
The last two expressions can be re-written as a function of the scheduled plan x:
𝐸𝑇1[𝑡] = [𝐹𝑇1(𝐹𝑐𝑜𝑙𝑙𝑒𝑐𝑡𝑜𝑟(𝑥[𝑡])) × 𝑃𝑇1(𝐹𝑎𝑖𝑟𝑇1(𝑥[𝑡]))] × Δ𝑇 (15)
𝐸𝑇2[𝑡] = [𝐹𝑇2(𝐹𝑐𝑜𝑙𝑙𝑒𝑐𝑡𝑜𝑟(𝑥[𝑡])) × 𝑃𝑇2(𝐹𝑎𝑖𝑟𝑇2(𝑥[𝑡]))] × Δ𝑇 (16)
5.2.3 Holmes Compressors Energy Consumption
Each Holmes compressor works only when there is no fermentation stage going on F1 and F2,
respectively. For example, if F1 is in the initialization stage, separation stage or simply without
any process occurring, then H1 is turned on to assure air circulation. The same goes for F2 and
H2. Thus two binary functions can be generically defined to indicate the status of both fermenters
(1 means the fermenter has the fermentation stage in progress, 0 means otherwise).
𝐻1𝑠[𝑡] = 𝐹𝐹1(𝑥[𝑡]) (17)
𝐻2𝑠[𝑡] = 𝐹𝐹2(𝑥[𝑡]) (18)
30
𝐻1𝑠 – Status of H1 (on or off)
𝐹𝐹1 – Binary function indicating if F1 is in the fermentation stage given a certain scheduled plan,
in each time interval
𝐻2𝑠 – Status of H2
𝐹𝐹2 – Binary function indicating if F2 is in the fermentation stage given a certain scheduled plan,
in each time interval
As explained in chapter 2.3, Holmes consume a very small amount of energy compared to the
Aerzen or Turbo compressors. Therefore, it will be assumed they spend their nominal power every
time they are operating. Hence, the following expressions represent their energy consumption:
𝐸𝐻1[𝑡] = 𝐻1[𝑡] × 𝑃𝐻1 × Δ𝑇 (19)
𝐸𝐻2[𝑡] = 𝐻2[𝑡] × 𝑃𝐻2 × Δ𝑇 (20)
𝑃𝐻1 – Nominal power of H1 (22 kW)
𝑃𝐻2 – Nominal power of H2 (22 kW)
As it was previously done with the other compressors, the energy expressions can be re-written
as a function of the scheduled plan:
𝐸𝐻1[𝑡] = 𝐹𝐹1(𝑥[𝑡]) × 𝑃𝐻1 × Δ𝑇 (21)
𝐸𝐻2[𝑡] = 𝐹𝐹2(𝑥[𝑡]) × 𝑃𝐻2 × Δ𝑇 (22)
5.3 Energy costs modelling
In chapter 3 it was explained what is present in the monthly energy invoice. Accordingly, variables
for each term to be paid are going to be created in order to express, in the end, the sum of all
costs. Firstly, it should be defined four non-linear binary functions representing, respectively,
Super peak, peak, Super off-peak and off-peak hours depending on the contracted tariff and also
on the season (winter or summer hour).
{
𝐻𝑆𝑝[𝑡] = [0 1]
𝐻𝑝[𝑡] = [0 1]
𝐻𝑆𝑜𝑓𝑓[𝑡] = [0 1]
𝐻𝑜𝑓𝑓[𝑡] = [0 1]
(23)
31
𝐻𝑆𝑝 – Binary function indicating the time intervals corresponding to Super peak hours
𝐻𝑝 – Binary function indicating the time intervals corresponding to peak hours
𝐻𝑆𝑜𝑓𝑓 – Binary function indicating the time intervals corresponding to Super off-peak hours
𝐻𝑜𝑓𝑓 – Binary function indicating the time intervals corresponding to off-peak hours
Active energy invoiced
𝑎𝑐𝑡𝑖𝑣𝑒 𝑒𝑛𝑒𝑟𝑔𝑦 𝑐𝑜𝑠𝑡𝑠 →
{
𝑆𝑢𝑝𝑒𝑟 𝑝𝑒𝑎𝑘 ℎ𝑜𝑢𝑟 − 𝑐𝑆𝑝𝑎
𝑝𝑒𝑎𝑘 ℎ𝑜𝑢𝑟 − 𝑐𝑝𝑎
𝑆𝑢𝑝𝑒𝑟 𝑜𝑓𝑓 𝑝𝑒𝑎𝑘 ℎ𝑜𝑢𝑟 − 𝑐𝑆𝑜𝑓𝑓𝑎
𝑜𝑓𝑓 𝑝𝑒𝑎𝑘 ℎ𝑜𝑢𝑟 − 𝑐𝑜𝑓𝑓𝑎
(€/𝑘𝑊ℎ) (24)
Energy network access term
𝑒𝑛𝑒𝑟𝑔𝑦 𝑛𝑒𝑡𝑤𝑜𝑟𝑘 𝑎𝑐𝑐𝑒𝑠𝑠 𝑡𝑒𝑟𝑚 𝑐𝑜𝑠𝑡𝑠 →
{
𝑆𝑢𝑝𝑒𝑟 𝑝𝑒𝑎𝑘 ℎ𝑜𝑢𝑟 − 𝑐𝑆𝑝𝑛
𝑝𝑒𝑎𝑘 ℎ𝑜𝑢𝑟 − 𝑐𝑝𝑛
𝑆𝑢𝑝𝑒𝑟 𝑜𝑓𝑓 𝑝𝑒𝑎𝑘 ℎ𝑜𝑢𝑟 − 𝑐𝑆𝑜𝑓𝑓𝑛
𝑜𝑓𝑓 𝑝𝑒𝑎𝑘 ℎ𝑜𝑢𝑟 − 𝑐𝑜𝑓𝑓𝑛
(€/𝑘𝑊ℎ) (25)
Power network term
o Cost per kW of contracted power day - 𝑐𝑐𝑝 (€/𝑘𝑊𝑑𝑎𝑦)
Contracted power will not be considered in the program since its value remains almost the same
every month. When that value is exceeded, it is not only because of the fermentation process but
the sum of all the activities in the company.
o Consumed power in super peak hours cost - 𝑐𝑆𝑝𝐻 (€/𝑘𝑊𝑑𝑎𝑦)
To calculate the consumed power in super peak hours is necessary to establish a variable that
counts the number of super peak hours in one week. One must remember that the time variable
represents intervals of 30 minutes, therefore in the next expression one must multiply by this
integration constant, so the correct number of super peak hours is obtained.
𝑁𝑆𝑝𝐻 = ∑𝐻𝑆𝑝[𝑡]
336
𝑡=1
× Δ𝑇 (26)
𝑁𝑆𝑝𝐻 – Number of super peak hours in one week
32
Reactive energy term
This term is not going to be taken into account because Lallemand has a capacitor bank
connected to the grid. Therefore its value is very small or even zero sometimes.
Special tax over electricity consumption - 𝑐𝑡𝑎𝑥 (€/𝑘𝑊ℎ)
The energy consumption in each time period is now possible to represent:
𝐸𝑆𝑝𝐻(𝑥) = ∑𝐻𝑆𝑝[𝑡] × 𝐸𝑡𝑜𝑡𝑎𝑙[𝑡]
336
𝑡=1
(27)
𝐸𝑝𝐻(𝑥) = ∑𝐻𝑝[𝑡] × 𝐸𝑡𝑜𝑡𝑎𝑙[𝑡]
336
𝑡=1
(28)
𝐸𝑆𝑜𝑓𝑓𝐻(𝑥) = ∑𝐻𝑆𝑜𝑓𝑓[𝑡] × 𝐸𝑡𝑜𝑡𝑎𝑙[𝑡]
336
𝑡=1
(28)
𝐸𝑜𝑓𝑓𝐻(𝑥) = ∑𝐻𝑜𝑓𝑓[𝑡] × 𝐸𝑡𝑜𝑡𝑎𝑙[𝑡]
336
𝑡=1
(29)
𝐸𝑆𝑝𝐻 – Energy consumed in Super peak hours
𝐸𝑝𝐻 – Energy consumed in peak hours
𝐸𝑆𝑜𝑓𝑓𝐻 – Energy consumed in Super off-peak hours
𝐸𝑜𝑓𝑓𝐻 – Energy consumed in off-peak hours
Having the total energy consumed in each time period and the respective associated costs, it is
possible to assess the energy consumption total cost for a given plan 𝑥.
𝐶(𝑥) = (𝑐𝑆𝑝
𝑎 + 𝑐𝑆𝑝𝑛 + 7 ×
1
𝑁𝑆𝑝𝐻𝑐𝑆𝑝𝐻) × 𝐸𝑆𝑝𝐻(𝑥) + (𝑐𝑝
𝑎 + 𝑐𝑝𝑛) × 𝐸𝑝𝐻(𝑥)
+ (𝑐𝑆𝑜𝑓𝑓𝑎 + 𝑐𝑆𝑜𝑓𝑓
𝑛 ) × 𝐸𝑆𝑜𝑓𝑓𝐻(𝑥) + (𝑐𝑜𝑓𝑓𝑎 + 𝑐𝑜𝑓𝑓
𝑛 ) × 𝐸𝑜𝑓𝑓𝐻(𝑥) + 𝑐𝑡𝑎𝑥
×∑𝐸𝑡𝑜𝑡𝑎𝑙[𝑡]
336
𝑡=1
(30)
33
𝐶 – Total electric energy consumption cost for a certain scheduled plan 𝑥
5.4 Objective Function
The objective function measures the performance of the problem as a function of the decision
variables defined in 5.1 [6]. As mentioned in the objectives in section 1.2, the objective function
is created in order to minimize the costs of electric energy consumption per ton of produced
product. Therefore, it can be defined:
𝐹𝑜𝑏𝑗𝑒𝑡𝑖𝑣𝑒(𝑥) =
𝐶(𝑥)
𝑌(𝑥)
(31)
𝑌 – Tons of yeast produced in a given scheduled plan 𝑥
The total amount of produced yeast is calculated using the values of table 1.
𝑌(𝑥) = 30 × 𝑁𝐹1(𝑥) + 24 × 𝑁𝐹2(𝑥) + 20.5 × (𝑁𝐹3(𝑥) + 𝑁𝐹4(𝑥) + 𝑁𝐹5(𝑥)) (32)
𝑁𝐹𝑘 – Number of fermentations in fermenter k, in one week, for a given plan
The optimization problem goal is the minimization of the objective function formulated above.
Hence, it comes:
𝑀𝐼𝑁 (𝐹𝑜𝑏𝑗𝑒𝑡𝑖𝑣𝑒(𝑥)) = 𝑀𝐼𝑁 (
𝐶(𝑥)
𝑌(𝑥))
(33)
5.5 Constraints
Any restrictions the values that those decision variables defined in 5.1 can take represent the
problem constraints [6]. A set of constraints is associated to the problem of energy costs
minimization that will delimit the space of solutions of that same problem between feasible and
non-feasible ones. In this particular optimization problem, constraints are allied to resources
limitation, quantity of yeast produced requirements and the time limit of one week (168 hours).
34
5.5.1 Resources Constraints
In the fermentation process, the limitations of existent resources correspond to the usage of the
fermenters and separators. With the chosen decision variables (time interval between
fermentations), there will not be solutions that superpose the utilization of fermenters. So the only
resources constraint is the utilization of the separators.
The considered structure for modelling the resources constraint presupposes the usage of two
resources profiles: availability and utilization. This methodology is illustrated in figure 17 and it
comprises time and yeast quantity requirements constraints [2].
Profile (a), depicted in figure 17, represents the availability of a certain resource over time. Profile
(b) represents the requirements of utilization of that same resource, i.e. the necessity of using
that resource over time. On the other hand, profile (c) represents the difference between the
available and needed quantity. As such, profile (c) results from subtracting profile (a) for profile
(b). The existence of negative segments, in red, shows that the plan is not feasible once the
resources needed are higher than the ones available.
Figure 17 - Resources profile: (a) availability, (b) utilization and (c) feasibility – adapted from [1]
35
This method can be applied to the only constraint related to resources of this particular
optimization problem, the separators. There is only one set of separators, therefore their
availability profile over time is unitary. From a given scheduled plan x, the utilization of the
separators is determined over the whole timespan of one week, creating the so-called “utilization
profile”. The difference between these two described profiles will state if a plan x is feasible or not
feasible in what concerns this resources constraint. Thus, since the availability of the separators
is unitary, only one separation can occur at a time. If there are two fermentation processes in two
different fermenters that require a separation, or just part of it, at the same time then the plan is
not feasible. Mathematically one can translate this constraint as a non-linear function representing
the difference between availability and utilization profiles for a plan x. Hence this function should
be always greater or equal than zero in order to assess the scheduled plan x as feasible.
𝑈𝑠𝑒𝑝(𝑥) ≥ 0 (34)
𝑈𝑠𝑒𝑝 – Difference between availability and utilization profiles for a plan 𝑥
5.5.2 Production needs constraint
Every week there is a pre-specified goal of production, which takes into account stock necessities
and the orders received from clients, therefore being a variable objective.
It is possible to split the produced yeast into two types: type A and type B. Type B yeast can be
only fermented in fermenter F4 while type A yeast is produced in the remaining fermenters.
Mathematically the condition aforementioned is formulated in equation X and equation X:
𝑌𝐴(𝑥) = [𝑥𝑖=37:67]. [𝑜𝑢𝑡[1:31]]𝑇≥ 𝐴 → 𝑌𝐴 − 𝐴 ≥ 0 (35)
𝑌𝐵(𝑥) = [𝑥𝑖=68:72]. [𝑜𝑢𝑡[32:36]]𝑇≥ 𝐵 → 𝑌𝐵 − 𝐵 ≥ 0 (36)
𝑌𝐵 – Quantity of type B yeast produced for a given plan
B – Quantity of type B yeast required
𝑜𝑢𝑡 – Output of each fermenter in each scheduled fermentation
𝑌𝐴 – Quantity of type A yeast produced for a given plan
A – Quantity of type A yeast required
36
5.5.3 Time constraint
The last constraint to be considered for this optimization problem is the time constraint. As already
mentioned, each plan is made by the production manager on a weekly basis. Therefore, the sum
of all fermentation times in each fermenter and the intervals between them cannot overtake the
weekly 168 hours. This condition can be expressed mathematically in the next equations, for each
fermenter:
{
∑(𝑇𝐹1 + 𝑥𝑖) × 𝑥𝑖+36 ≤ 168
7
𝑖=1
∑(𝑇𝐹2 + 𝑥𝑖) × 𝑥𝑖+36
15
𝑖=8
≤ 168
∑(𝑇𝐹3 + 𝑥𝑖) × 𝑥𝑖+36
23
𝑖=16
≤ 168
∑(𝑇𝐹5 + 𝑥𝑖) × 𝑥𝑖+36
31
𝑖=24
≤ 168
∑(𝑇𝐹4 + 𝑥𝑖) × 𝑥𝑖+36
36
𝑖=32
≤ 168
(37)
𝑇𝐹𝑘 – Fermentation time in fermenter k, according to table 1
37
6 Implementation of the
Genetic Algorithm
38
6.1 Genetic Algorithm
Genetic algorithms are randomized search heuristic algorithms based on the natural selection
process present in biological evolution used to find solutions in optimization problems [7]. Genetic
algorithms were introduced by John Holland in 1975 [8] and they apply the principle of “survival
of the fittest”. Instead of searching just one solution at a time, this type of algorithm works with a
population of individuals (solutions). Each individual is encoded and represented by certain
characteristics that define their genetic material, called chromosomes. Genes are part of
chromosomes that represent a variable characterizing part of the solution. Moving from one
population of chromosomes to another happens with the so-called “natural selection”, where on
average the fitter chromosomes generate more offspring than the less fit ones. How does this
occur? The population is updated iteratively, where each iteration is called generation, and in
each generation genetic material exchange will happen between individuals through genetic
processes based on real ones such as crossover and mutation. Multiple solutions are evaluated
in parallel and the fittest individuals will be selected to breed a new generation through specific
selection process. Sometimes the best individuals can come across one generation to another
unaltered. This process is denominated elitism. The fitness of the solutions is evaluated
accordingly to a fitness function developed for the respective optimization problem. When the
stopping criteria is met, for example number of generations or the goodness of solution, the
search is finished. For very complex problems the optimal solution is very hard to achieve,
however a good solution is still important to obtain [3][9][10].
Complex problems with constraints and a wide range of solutions are difficult or even impossible
to represent using conventional math programming techniques [2]. For such problems, a method
that is based on parallel search for solutions and a smart way of creating and picking the best
ones, typical of evolutionary algorithms, is more suitable [9]. Genetic algorithms search efficiently
in large spaces and are robust in view of the complexity of the search problem [3]. Therefore,
given the complexity of the problem of this thesis due to the large space of solutions and a set of
constraints that must be simultaneously fulfilled, a genetic algorithm will prove to be an efficient
method of finding feasible solutions in a reasonable interval of time, not to mention it keeps the
whole modelling process very straightforward.
39
Figure 18 - Genetic algorithm basic cycle – adapted from [3]
6.2 Matlab Global Optimization Toolbox – Genetic Algorithm
The genetic algorithm applied to the current optimization problem of this thesis will be the
one present in Matlab Global Optimization Toolbox. Since this problem is coded with integer
variables and constraints, a mixed integer optimization will be required from Matlab. In fact, this
toolbox provides the regular genetic algorithm with an option to work solely with integer variables.
However, since it was not applied any alterations to this Toolbox, this integer genetic algorithm
solver presents some restrictions concerning its parameters and problems it can solve when
working with integer variables and constraints:
No linear or non-linear equality constraints. In each respective field should be
placed “[ ]”;
It is not possible to customize mutation, crossover and population creation
functions
Selection function is set to binary tournament only
No hybrid functions
To obtain integer variables, genetic algorithm uses special functions of mutation, crossover and
population creation [7].
40
It should also be noted that instead of a fitness function, this integer genetic algorithm uses a
penalty function. This penalty function includes a term for infeasibility, which will sum to the fitness
function due to constraints violations. If an individual represents a feasible solution, then the
penalty function is in fact the fitness function [11].
6.3 Parameters of Genetic Algorithm
As already seen in sub-chapter 6.2, Matlab Global Optimization Toolbox provides a genetic
algorithm that is suitable for problems with integer variables and constraints with some restrictions
to some functions. However, it is still possible to tune some parameters of some important
functions, such as crossover, mutation, selection and elitism. Next those functions will be
explained in a general manner and then the tuneable parameters relative to this algorithm will be
presented.
6.3.1 Selection
Selection is the process where parents are chosen to generate offspring for the next generation
through crossover and mutation. The point of selection is to choose fitter individuals hoping that
they will breed new individuals even with higher fitness [9]. Thus, to each individual is assessed
its fitness value and the way selection occurs depends on the selection implementation method:
stochastic uniform, roulette-wheel or tournament selection are just some examples.
The integer genetic algorithm uses the tournament selection. Each parent is chosen by randomly
picking Tournament Size players and then choosing the fittest individual between the contestants.
The winner of each tournament is selected for crossover and mutation to generate offspring.
Tournament Size is customizable and its value must be at least 2 (2 players per tournament). The
choice between contestants is made in a deterministic way: the fittest individual always beat the
less fit individual.
6.3.2 Elitism
Carrying over the best individuals from one generation to another is called elitism. These
individuals can be lost if by any chance they are not selected for reproducing or are altered by
crossover and mutation. Maintaining the best individuals causes the algorithm to converge more
quickly [2] and it has been proven by several researchers that elitism greatly improves the
performance of genetic algorithm [9].
41
For the integer genetic algorithm used in Matlab it is possible to customize the elitism property
adapted to integer problems (Elite Count) by choosing the number of best individuals that pass
from generation to generation unaltered.
6.3.3 Crossover
Crossover is a genetic operator responsible for exchanging genes between chromosomes, i.e.
exchange data between parents to form a crossover child. Crossover searches the solution
space, therefore enabling local search (exploitation) [3]. Crossover allows genetic variation and
innovation in a population [9].
The integer genetic algorithm uses a non-customizable special crossover function. Still it is
possible to customize the fraction of individuals subject to crossover (Crossover Fraction).
Crossover Fraction of 1 means all children are resultant from crossover between parents and
Crossover Fraction of 0 means all children are mutated ones, apart from elite children.
6.3.4 Mutation
Mutation is another genetic operator and it is responsible for randomly changing genes in
chromosomes, i.e. for randomly changing data in a parent to originate a mutated child. Since
mutation can create new solutions non-related genetically to their parents (contrary to crossover),
its solutions searching is considered to be global (exploration). Due to this global searching nature
of mutation, it ensures that the population does not get stuck in a permanent local solution [9].
Mutation function in the integer genetic algorithm is a special function, non-customizable. The
only way of customizing it is indirectly by changing the Crossover Fraction, as it was explained
above. Let’s imagine that there is a population of 100 individuals. If Crossover Fraction is 0.8, and
there are 5 elite individuals, then the offspring will be 95*0.8 = 76 crossover children and the
remaining 19 will be mutated children.
42
6.4 Implementation of the Genetic Algorithm to the
Optimization Problem
6.4.1 Encoding and Decoding
As it has been already seen in previous chapters, a genetic algorithm is constituted by individuals,
which by analogy with biologic terms can be denominated chromosomes. Chromosomes should
be the encoded representation of solutions for a problem, and they must be decoded in order to
evaluate their fitness. This process of encoding is crucial to the success of genetic algorithm [3].
The encoded process has already been made under the name of “decision variables”, as it is
shown in chapter 5.1. There are 72 variables: 36 are integer and 36 are binary. Each one of those
variables represent a gene. The group of all 72 variables represent a chromosome. The collection
of all pair of genes (xi, xi+36), each stating if a fermentation is or not scheduled and the respective
time interval passed since the last fermentation, characterizes the solution. Therefore there is an
integer encoding represented by a string of 72 integer variables. Its decoding is made by running
the simulation program that contains all the information about power consumption by the different
sources and energy prices in each time interval (modelling effectuated in chapter 5) with the given
solution, thus obtaining the fitness value of that solution. One should remember that the whole
purpose of this thesis is to minimize the energy costs per ton of yeast produced using a genetic
algorithm. This is the fitness function no less, as it was formulated in equation 31, used to assess
how fit an individual is.
6.4.2 Parameters Values of the Genetic Algorithm
It was explained in chapters 6.2 and 6.3 the integer genetic algorithm provided by Matlab Global
Optimization Toolbox and some of its customizable parameters. Now it is time to customize these
parameters and a few more taking into account the optimization problem of this thesis. In this
chapter it will be talked only about parameters that will be fixed and will not be subject of
alterations never again. In appendix C all parameters that can be altered by the user will be
explained along with the GUI.
Population size, crossover fraction, elite count and tournament size are the parameters to be
adjusted. All of these parameters are correlated in a non-linear way, and their arrangement
interferes greatly with the performance of the program. A suitable configuration for this
optimization problem may be completely misadjusted for a different problem. The average
performance of a population of individuals is expected to decrease generation after generation
[11]. However one does not want the convergence to be too fast, otherwise one might be stuck
in a local optimum since there are not enough variety between individuals of a population. On the
43
other hand, one does not want the convergence to be too slow, otherwise the program may never
find solutions since the individuals are too different genetically to form useful offspring. In
conclusion, it is needed to find a good balance between exploitation and exploration [2]. Given
the complexity of this particular optimization problem, the user will always be required to insert a
feasible initial solution, typically done by the production manager, or there might be the problem
of the program never finding any feasible solution at all. Therefore one should aim to invest more
in exploitation rather than in exploration because the weekly plans are usually close to their full
capacity, not leaving too much margin for big alterations.
The binary tournament is deterministic, which puts maximum selective pressure by selecting
always the best individuals for mating. Consequently, it contributes already a lot to the exploitation
of the solutions space. Therefore, the population size is expected to be significant in order to bring
diversity of solutions and explore more globally the searching space. Mutation also contributes to
exploration, which is inversely related to the crossover fraction. Finally, there is the tournament
size: the bigger it is, the more exploitation of the solutions space will happen. To find a good
balance between these parameters, several tests were made in the program, which contains the
whole modelled process and the genetic algorithm, and are presented in table 8, table 9 and table
10.
In each test, the program was run 10 times for each configuration and it was registered the worst
solution, the best solution and the average of all solutions of those 10 runs. The program had
already inserted a feasible initial population. Deviation for each configuration was made in relation
to the best solution and best average of all configurations. It was calculated using not the absolute
values of fitness of each compared solution but the difference of fitness between each compared
solution and the fitness of the initial population. During the tests it was observed that the program
would stagnate before 500 generations, reason why a limit of 500 generations was chosen as a
stoppage criterion.
44
Test 1: Weekly plan with a typical average goal of production – YB = 82ton; YA = 602.5ton;
Fitness value C(x) = 20.1488 €/ton
# Pop.
Size
Crossover
Fraction
Elite
Count
Tourn.
Size
Worst
(€/ton)
Average
(€/ton)
Best
(€/ton)
Deviation (%)
Average Best
1 50 0,8 5 2 19,7456 19,6972 19,6600 7,83 8,29
2 100 0,8 5 2 20,1488 20,0624 19,9088 82,36 54,97
3 50 0,8 5 3 20,1216 20,0945 20,0711 88,92 85,42
4 100 0,8 5 3 19,7355 19,7165 19,7022 11,77 16,21
5 200 0,8 5 3 19,8846 19,8013 19,7297 29,08 21,37
6 50 0,8 15 2 20,0229 19,9522 19,8257 59,88 39,38
7 100 0,8 15 2 19,7111 19,6852 19,6462 5,38 5,70
8 200 0,8 15 3 19,7610 19,6936 19,6643 7,08 9,10
9 200 0,8 15 2 19,7074 19,6683 19,6450 1,91 5,48
10 50 0,7 5 2 19,9492 19,7832 19,6416 25,37 4,84
11 100 0,7 5 2 20,1488 20,0725 20,0052 84,43 73,06
12 100 0,7 15 2 19,6655 19,6589 19,6158 - -
13 200 0,7 15 2 19,7843 19,7024 19,6570 8,88 7,73
Table 8 - Performance of the optimization algorithm for several parameters combinations for test 1
In green it is presented the most suitable configurations for this typical plan. Therefore, for the
following tests only these 5 configurations will be tested. If the other ones already have a poor
performance in this typical scenario, then there is no point in using them for further tests. In red it
is indicated the best value of all configurations concerning the average of all 10 runs and the best
run. Deviation is calculated in relation to these values.
Test 2: Weekly plan with a high goal of production – YB = 102.5ton; YA = 644.5ton; Fitness
value C(x) = 21.1698 €/ton
# Pop.
Size
Crossover
Fraction
Elite
Count
Tourn.
Size
Worst
(€/ton)
Average
(€/ton)
Best
(€/ton)
Deviation (%)
Average Best
1 50 0,8 5 2 20,7109 20,3769 20,1114 9,19 8,22
7 100 0,8 15 2 20,5136 20,3471 20,0166 5,77 -
9 200 0,8 15 2 20,5830 20,5094 20,4055 24,37 33,72
12 100 0,7 15 2 20,5480 20,2966 20,0688 - 4,53
13 200 0,7 15 2 20,6121 20,3169 20,0380 2,32 1,86
Table 9 - Performance of the optimization algorithm for several parameters combinations for test 2
45
Test 3: Weekly plan with a low goal of production – YB = 61.5ton; YA = 529ton; Fitness
value C(x) = 23.2065 €/ton
# Pop.
Size
Crossover
Fraction
Elite
Count
Tourn.
Size
Worst
(€/ton)
Average
(€/ton)
Best
(€/ton)
Deviation (%)
Average Best
1 50 0,8 5 2 22,5070 22,4352 22,3770 21,90 37,33
7 100 0,8 15 2 22,4584 22,4355 22,4081 21,93 39,68
9 200 0,8 15 2 22,4483 22,4252 22,3705 20,89 36,84
12 100 0,7 15 2 22,4718 22,4476 22,4254 23,15 40,99
13 200 0,7 15 2 22,3785 22,2189 21,8829 - -
Table 10 - Performance of the optimization algorithm for several parameters combinations for test 1
Analysing the three tests there is not any configuration of parameters that could be easily chosen
immediately. However, configuration #13 will be the one used for the genetic algorithm because
in the first two tests its results are very close to the best ones obtained with other configurations
and in the last test it was by far the best configuration. In fact, the last test had a low production
goal and that has not been happening often, but as already explained test #13 performed well in
other situations. Therefore, to cover a wider range of possibilities, test #13 is the one selected.
The following table summarizes the parameters that will be implemented in the genetic algorithm
of Matlab Global Optimization Toolbox:
Population Size Crossover Fraction Elite Count Tournament Size
200 0.7 15 2
Table 11 - Selected values for the parameters of the genetic algorithm
46
7 Results
47
In the previous chapters it has been built the so-called simulation program. It is constituted by the
production process model, the energy tariffs and finally by the genetic algorithm. Disregarding the
genetic algorithm, using solely the production process model and the energy tariffs in the program,
it is possible to estimate the energy costs and energy consumption of the factory plan, for the
weekly cycle tariff (current contracted tariff) or for the optional weekly cycle. The factory plan is
the plan that would be implemented by the production manager in a regular week, like it always
has been, without optimizing it. To optimize this plan, then it will be necessary to use the genetic
algorithm. Recalling what was explained in 6.4.2, it is needed to insert an already feasible plan in
the initial population of the algorithm. That initial plan will be precisely that factory plan.
There were 6 test weeks chosen in June and July. All the relative results (cost per ton of yeast
produced and total energy consumption) are presented in comparison to the values of the factory
plan with the current tariff (weekly cycle) of the respective week represented in tables 13, 15, 17,
19, 21 and 23. Also it is defined in tables 12, 14, 16, 18, 20 and 22 a minimum starting hour for
the first fermentation in each fermenter in each week due to unfinished fermentations that are still
in progress from the previous week.
Week 1: from 9th of June until 15th of June
o Production goal – Type A yeast = 644.5 ton; Type B yeast = 102.5 ton
o Minimum time for the 1st fermentation to start:
Fermenter Minimum starting hour
F1 Mon 00:00
F2 Mon 10:30
F3 Mon 12:30
F4 Mon 05:30
F5 Mon 07:30
Table 12 - Minimum time for the 1st fermentation to start in each fermenter in week 1
Week 1 Price (€/ton) Energy (kWh)
Factory plan 20.2877 148 090
Table 13 - Factory plan with contracted weekly cycle in week 1
Week 2: from 16th of June until 22nd of June
o Production goal – Type A yeast = 624 ton; Type B yeast = 82 ton
o Minimum time for the 1st fermentation to start:
48
Fermenter Minimum starting hour
F1 Mon 00:00
F2 Mon 07:30
F3 Mon 10:30
F4 Mon 03:30
F5 Mon 17:30
Table 14 - Minimum time for the 1st fermentation to start in each fermenter in week 2
Week 2 Price (€/ton) Energy (kWh)
Factory plan 20.1571 143 200
Table 15 - Factory plan with contracted weekly cycle in week 2
Week 3: from 30th of June until 6th of July
o Production goal – Type A yeast = 641 ton; Type B yeast = 102.5 ton
o Minimum time for the 1st fermentation to start:
Fermenter Minimum starting hour
F1 Mon 11:30
F2 Mon 15:30
F3 Mon 07:30
F4 Mon 00:00
F5 Mon 17:30
Table 16 - Minimum time for the 1st fermentation to start in each fermenter in week 3
Week 3 Price (€/ton) Energy (kWh)
Factory plan 18.8577 142 770
Table 17 - Factory plan with contracted weekly cycle in week 3
Week 4: from 7th of July until 13th of July
o Production goal – Type A yeast = 620.5 ton; Type B yeast = 82 ton
o Minimum time for the 1st fermentation to start:
49
Fermenter Minimum starting hour
F1 Mon 15:30
F2 Mon 19:30
F3 Mon 06:30
F4 Mon 00:00
F5 Mon 13:30
Table 18 - Minimum time for the 1st fermentation to start in each fermenter in week 4
Week 4 Price (€/ton) Energy (kWh)
Factory plan 19.0021 139 700
Table 19 - Factory plan with contracted weekly cycle in week 4
Week 5: from 14th of July until 20th of July
o Production goal – Type A yeast = 665 ton; Type B yeast = 61.5 ton
o Minimum time for the 1st fermentation to start:
Fermenter Minimum starting hour
F1 Mon 15:30
F2 Mon 09:30
F3 Mon 07:00
F4 Mon 22:30
F5 Mon 18:30
Table 20 - Minimum time for the 1st fermentation to start in each fermenter in week 5
Week 5 Price (€/ton) Energy (kWh)
Factory plan 19.7584 144 410
Table 21 - Factory plan with contracted weekly cycle in week 5
Week 6: from 21st of July until 27th of July
o Production goal – Type A yeast = 685.5 ton; Type B yeast = 82 ton
o Minimum time for the 1st fermentation to start:
50
Fermenter Minimum starting hour
F1 Mon 15:30
F2 Mon 05:30
F3 Mon 00:00
F4 Mon 00:00
F5 Mon 18:30
Table 22 - Minimum time for the 1st fermentation to start in each fermenter in week 6
Week 6 Price (€/ton) Energy (kWh)
Factory plan 19.3019 148 480
Table 23 - Factory plan with contracted weekly cycle in week 6
In section 7.1 the factory plan will be compared with the optimized plan for the current contracted
tariff (weekly cycle) already characterized in the tables above. In section 7.2 the factory plan with
the current tariff will be compared with the factory plan and the optimized plan with the other tariff
(optional weekly cycle). Finally, in section 7.3 the optimized plan given by the program will be
compared to the real results measured in the company during test weeks. Note that, for the
optimized plans, the results presented here are the best ones obtained after running the program
several times.
7.1 Factory plan vs Optimized plan with weekly cycle
The results for the optimization of the factory plan with the weekly cycle are showed in tables 24
to 29. The variation column is relative to the factory plan in the respective week already shown in
the previous section, as already explained. The power consumption profiles for the factory plan
and for the optimized plan are going to be compared taken into account the hourly periods present
in one week in figures 19 to 24. In those figures, red corresponds to Super peak hours, yellow to
peak hours, blue to off-peak hours and green to Super off-peak hours. One should remember that
the timespan goes until 336 because the time variable intervals are equal to half-hours.
51
Week 1 Price (€/ton) Energy (kWh) Variation (%) Weekly
savings (€) Price Energy
Optimized plan 19.4528 146 480 -4.12 -1.09 623.67
Table 24 – Results of the optimized plan compared to the factory plan with weekly cycle in week 1
Figure 19 - Comparison of energy consumption between the factory plan and the optimized plan with weekly cycle in week 1
Week 2 Price (€/ton) Energy (kWh) Variation (%) Weekly
savings (€) Price Energy
Optimized plan 19.8087 142 420 -1.73 -0.54 245.97
Table 25 - Results of the optimized plan compared to the factory plan with weekly cycle in week 2
Figure 20 - Comparison of energy consumption between the factory plan and the optimized plan with weekly cycle in week 2
52
Week 3 Price (€/ton) Energy (kWh) Variation (%) Weekly
savings (€) Price Energy
Optimized plan 18.4582 142 100 -2.12 -0.47 297.03
Table 26 - Results of the optimized plan compared to the factory plan with weekly cycle in week 3
Figure 21 - Comparison of energy consumption between the factory plan and the optimized plan with weekly cycle in week 3
Week 4 Price (€/ton) Energy (kWh) Variation (%) Weekly
savings (€) Price Energy
Optimized plan 18.4189 137 670 -3.07 -1.45 409.70
Table 27 - Results of the optimized plan compared to the factory plan with weekly cycle in week 4
Figure 22 - Comparison of energy consumption between the factory plan and the optimized plan with weekly cycle in week 4
53
Week 5 Price (€/ton) Energy (kWh) Variation (%) Weekly
savings (€) Price Energy
Optimized plan 19.3172 143 070 -2.23 -0.93 320.53
Table 28 - Results of the optimized plan compared to the factory plan with weekly cycle in week 5
Figure 23 - Comparison of energy consumption between the factory plan and the optimized plan with weekly cycle in week 5
Week 6 Price (€/ton) Energy (kWh) Variation (%) Weekly
savings (€) Price Energy
Optimized plan 19.0333 148 440 -1.39 -0.03 206.15
Table 29 - Results of the optimized plan compared to the factory plan with weekly cycle in week 6
Figure 24 - Comparison of energy consumption between the factory plan and the optimized plan with weekly cycle in week 6
54
From the previous results it can be stated, generally, that the more filled the plan is, i.e. the higher
the production goal is, the greater is the difficulty in decreasing the energy costs per ton of yeast
produced. However, for some situations that does not happen. For example, in week 1, which
has a goal production of 747 ton, there is a costs reduction of 4.12% in relation to the factory plan
while in week 2, which has a goal production of only 706 ton, there is only a decreasing of 1.73%
of energy costs of the factory plan. This implies that the easiness of how the program can reduce
the energy costs is not only dependent on the production goal, but also on the minimum starting
times and on how the fermentations are arranged in the factory plan (which is the initial plan
inserted into the initial population of the genetic algorithm).
Looking at the figures comparing the power consumption between factory and optimized plan, it
is clear in all weeks that the program shifts higher consumption intervals into non Super peak
hours (marked in red), leading to a decrease in the final energy costs since these hourly periods
are the more penalising ones. Peak energy consumption intervals usually happen in off-peak (in
blue) or Super off-peak hours (in green).
Regarding energy consumption, although it is not the objective of the program reducing energy
consumption, there is a very small decrease verified in each tested week by optimizing the factory
plan.
7.2 Results with the optional weekly cycle
The results for the factory plan with the optional weekly cycle are going to be shown next. They
will be compared to the factory plan results with the weekly cycle (already presented in the tables
of section 7). Also, for each week the factory plan with the optional weekly cycle is going to be
optimized and then it will be subjected to comparison with the factory plan with the current tariff
too. These results are shown in tables 30 to 35. Furthermore, Lallemand has access to its private
page in Iberdrola website where it can be consulted the energy consumption every 15 minutes in
any desired period of time. With that, it is going to be compared the energy consumption in the
whole company, not only in the fermentation process, from January to August between the weekly
cycle and the optional weekly cycle in order to assess if it is profitable to switch the contracted
tariff.
With the optional weekly cycle the number of hours of each hourly period in one week remains
the same, differing only its disposition over the week, as it can be checked in tables 4 and 5 in
section 3.2.
55
Week 1 Price (€/ton) Energy (kWh) Variation (%) Weekly
savings (€) Price Energy
Factory plan w/ optional
weekly cycle 19.8001 148 090 -2.40 - 364.23
Optimized plan w/
optional weekly cycle 18.8464 146 980 -7.10 -0.75 1 076.65
Table 30 – Results of the factory and optimized plan with optional weekly cycle compared to the factory plan with weekly cycle in week 1
Week 2 Price (€/ton) Energy (kWh) Variation (%) Weekly
savings (€) Price Energy
Factory plan w/ optional
weekly cycle 19.3256 143 200 -4.13 - 587.04
Optimized plan w/
optional weekly cycle 18.6663 142 420 -7.40 -0.54 1 052.50
Table 31 – Results of the factory and optimized plan with optional weekly cycle compared to the factory plan with weekly cycle in week 2
Week 3 Price (€/ton) Energy (kWh) Variation (%) Weekly
savings (€) Price Energy
Factory plan w/ optional
weekly cycle 18.7265 142 770 -0.70 - 97.55
Optimized plan w/
optional weekly cycle 17.9306 142 440 -4.92 -0.23 689.30
Table 32 – Results of the factory and optimized plan with optional weekly cycle compared to the factory plan with weekly cycle in week 3
Week 4 Price (€/ton) Energy (kWh) Variation (%) Weekly
savings (€) Price Energy
Factory plan w/ optional
weekly cycle 18.8433 139 700 -0.84 - 111.56
Optimized plan w/
optional weekly cycle 17.7218 137 490 -6.74 -1.58 899.41
Table 33 – Results of the factory and optimized plan with optional weekly cycle compared to the factory plan with weekly cycle in week 4
56
Week 5 Price (€/ton) Energy (kWh) Variation (%) Weekly
savings (€) Price Energy
Factory plan w/ optional
weekly cycle 19.5949 144 410 -0.83 - 118.78
Optimized plan w/
optional weekly cycle 18.9809 142 850 -3.94 -1.08 564.85
Table 34 – Results of the factory and optimized plan with optional weekly cycle compared to the factory plan with weekly cycle in week 5
Week 6 Price (€/ton) Energy (kWh) Variation (%) Weekly
savings (€) Price Energy
Factory plan w/ optional
weekly cycle 18.8717 148 480 -2.23 - 330.18
Optimized plan w/
optional weekly cycle 18.4714 148 240 -4.30 -0.16 637.41
Table 35 – Results of the factory and optimized plan with optional weekly cycle compared to the factory plan with weekly cycle in week 6
Looking at the tables above, one can assess that for the fermentation process the optional weekly
cycle is undoubtedly more suitable than the weekly cycle. Moreover, the proportion of costs
reduction in relation to the factory plan with the respective tariff is bigger in the optional weekly
cycle than in the weekly cycle. For example, in week 1, the optimized plan (table 24) reduced
0.8349 €/ton from the factory plan with the weekly cycle (table 13), while the optimized plan in
that same week but with the optional weekly cycle (table 30) was able to reduce 0.9537 €/ton
from the factory plan with that same optional weekly cycle (table 30). The same was true for the
other 5 tests. Therefore, the disposition of the hourly periods during one week in the optional
weekly cycle seems to be more adequate to the optimization algorithm in terms of finding better
solutions than the weekly cycle.
However, since the fermentation process is not the only responsible for the company expenses,
it is important to verify if globally the company profits by changing from weekly cycle to optional
weekly cycle. In its private page on Iberdrola website, it is possible to download the energy
consumption discriminated in intervals of 15 minutes during any period of time. So, since the
beginning of this year, all months are going to be analysed in terms of electricity costs with both
tariffs. Table 36 shows the results for each month, indicating how much it would be paid in the
monthly invoice having the tariff with the weekly cycle and having the tariff with the optional weekly
cycle. Note that the costs do not cover the reactive energy consumption and the contracted power
term because they are independent of the contracted cycle.
57
Month Electric energy costs (€)
Weekly cycle
Electric energy costs (€)
Optional weekly cycle
Difference
(€)
January 151 611 151 547 -64
February 153 652 154 157 +505
March 163 878 163 906 +28
April 158 090 158 161 +71
May 166 519 167 028 +509
June 177 224 176 741 -483
July 179 054 179 491 +437
August 155 140 155 165 +25
Table 36 - Electric energy costs in the first 8 months of 2014 for the two different tariff cycles: weekly cycle and optional weekly cycle
Table 36 is inconclusive whether changing in to the optional weekly cycle is advantageous for the
company. The difference between the two cycles is far inferior to 1% in all these months, which
is not very significant. Nonetheless, if one observes again tables 30 to 35 it can be stated that
optimising the factory plan with the optional weekly cycle, in comparison to that same plan, allows
savings up to 712.42€ per week in the best case, which happens in week 1. The worst case from
all the tested weeks occurs in week 6, still the savings reach 307.23€ per week. If one takes the
worst case and convert its savings to the extent of one whole month, then it will be saved
1351.81€. So if one takes also the worst month to have the optional weekly cycle contracted,
which was May with a loss of 509€, and assuming the optimized plan allowed cost savings around
1351.81€, then the profit would still be 846.81€. So would the company have some advantage in
changing tariffs? Would not the optimized plan for the weekly cycle have a better profit margin?
Faced with these questions, one should now analyse the savings acquired in optimizing the
factory plan with the weekly cycle present in tables 24 to 29. The best week in terms of costs
reduction happen in week 1, where savings reach 623.67€, which is still less than the worst case
if the company had changed to optional weekly tariff and had optimized the factory plan!
Therefore, it seems appropriate for the company to change the contracted tariff.
7.3 Simulated optimized plans vs Tested optimized plans
In all the 6 tested weeks, one tried to implement the optimized plans acquired in chapter 7.1.
However, only in week 2 the weekly optimized plan was completely fulfilled. In the other weeks
either the plan was not implemented at all due to last hour problems in the factory or the plan was
totally altered in the middle of the week, again due to unforeseeable factory problems. Hence, the
58
comparison between the expected results given by the simulation program and the real ones are
going to be presented next.
One should remember that it was considered 3 sources of power consumption: Turbo
compressors, Aerzen compressors and Holmes compressors. For the two Turbo compressors it
was directly measured and registered their power consumption with two power analysers over
that week. For the Aerzen compressors, one took the air volume consumed by fermenters F1 and
F2 registered manually by the shift operators in that week and then used the expression relating
power consumption and air volume obtained in section 2.3.1 to get the consequent energy spent
by the four Aerzen compressors. For the Holmes compressors, it was assumed they worked at a
constant power of 22 kW when F1 and/ or F2 were not having any fermentation. Therefore, only
the energy consumed by the Turbo compressors corresponds exactly to the reality, while power
consumption in Aerzen and Holmes compressors was estimated. Now the comparison between
the approximate real energy consumption and respective costs and the energy consumption and
costs given by the optimized plan for week 2 is presented in table 37.
Week 2 T1
(kWh)
T2
(kWh)
4 x
Aerzen
(kWh)
2 x
Holmes
(kWh)
Total
energy
(kWh)
Total cost
(€)
Test 26 861 46 801 96 923 2 123 172 708 16 149
Simulation 17 548 37 675 84 274 2 926 142 423 13 372
Dev. (%) -34.67 -19.50 -13.05 +37.82 -17.54 -17.20
Table 37 - Test and simulation results using the optimized plan in week 2: comparison and deviation
Analysing table 37, the optimized plan simulated in the program gives energy consumption values
and consequent costs below the real ones. However, the factory plan used to obtain the optimized
plan has also its power consumption and associated costs calculated in this same program,
meaning that the relative difference between factory and optimized plans is more important than
their energy consumption and costs absolute values, which in this case are undervalued. In other
words, the way air profiles in the fermenters evolve over time and the power consumption curve
grows as the pumped air also increases is more important than having higher or lesser values in
comparison to the real ones. Why? Looking into the distribution of the different hourly periods in
the contracted tariff, as depicted in figures 19 to 24, the program will try to shift higher
consumptions from peak or Super peak hours to off-peak and Super off-peak hours. Thus, it is
not critical if a peak occurs at 700 kW or at 500 kW, for example, as long as the adjacent power
consumptions are below that value. Being itself a peak, the program will always try to move it
away from peak or Super peak hours.
59
Nonetheless, it is true that there are some big deviations from the real values. For T1 and T2 the
decision of turning them on and off is manual, which makes the boundaries of table 7, in section
5.2.2, variable. Also, Turbo 1 power characteristic was made only when Turbo 1 was working by
the reasons explained in 2.3.2, therefore having very little information about power consumption
with small values of air volume, situation which can occur when both Turbo are working. For that
reason, the slope of the curve obtained in figure 10, for power consumption values under 4000
m3/h, may not be very adequate. Both reasons mentioned before can explain why the deviation
of energy consumed in T1 given by the program is -34.67%. Figure 38 and figure 39 depict the
difference between power consumption over the test week 2 given by the simulation program and
the real values measured directly from the T1 and T2, respectively, with the Fluke power
analysers, where the difference between both is significant.
Figure 25 - Power consumption in week 2: simulation results vs real results for T1
Figure 26 - Power consumption: simulation results vs real results for T2
If one overlaps both figures, the main differences rest in those areas where the simulation
program assumed one machine would be working but in reality it was another. Also, clearly it is
60
seen that T1 is under characterized in terms of power consumption for the reasons previously
stated. Albeit power consumed given by the program in T2 is a little bit below the real values,
globally it represents relatively well this compressor, since it is always near the maximum power.
The Aerzen compressors have the smallest deviation from all the machines involved in this test
(-13.05%). They are relatively new and have proper documentation. Yet, their power consumption
in this week was not measured directly from the Aerzen compressors, but it was indirectly
obtained through the hourly manual register of air fed into F1 and F2. Moreover, the air profile
used in the program is an average one, which obviously will always differ from fermentation to
fermentation.
As it can be assessed in table 37, Holmes compressors consume very little energy. Both for the
program and for the real test, it was considered they would work at their nominal power of 22 kW,
which is an approximation. Hence, the deviation is mostly due to the time when these
compressors are operating. Since there is a bigger consumption in the program than in the real
test, one can verify that the air profiles of F1 and F2 were longer in reality than their average
profiles built for the program, meaning that Holmes compressors would work less time in that
week and, on the other hand, Aerzen compressors would consume more energy -and that is
precisely verified in table 37.
Regarding the total electric energy cost over week 2 for the fermentation process, the deviation
comes as a direct consequence from all the causes mentioned before for each source of energy
consumption.
61
8 Conclusions and
prospective work
62
8.1 Conclusions
In this thesis it was studied and characterized the production process of Lallemand Iberia SA in
order to search for energy inefficiencies and come up with solutions. Namely, it was fully
characterized the fermentation process and an optimization approach was made to reduce its
costs per ton of yeast produced. To do so, first, the air consumption profiles for each fermenter
were statistically estimated and the power consumption characteristic of the machines
responsible for pumping air into those fermenters was obtained. Then, the whole process was
modelled, inserting in the program those air and power consumption characteristics of the
fermenters and machines, respectively, and the energy tariffs. The decision variables that directly
represent the weekly plan and inherent scheduling constraints were also defined. In the end, it
was created the genetic algorithm as a means to search for better plans, in terms of energy costs,
than the factory plan originally made by the production manager.
By testing and choosing the parameters of the genetic algorithm that would better suit this
particular problem, a good solution is almost always obtained immediately in the first run of the
program with the algorithm without spending too much time. However, the space of solution is
very big and the algorithm itself cannot even find a feasible solution if it starts without an initial
feasible solution inserted in the initial population. Therefore, the factory plan made by the
production manager should always be given to the program. Despite providing the program with
leverage to now find good solutions more easily, the fact that the starting point is the factory plan
will make the genetic algorithm return an optimized plan not very distinct from that initial factory
plan, especially if the plan is very full. This is good in what concerns the normal behaviour of the
company and the type of plans the shift operators are used to deal with. If the optimized plan is
somewhat similar to the factory plan, then each worker will already be familiar with it, facilitating
their usual work.
Theoretically, the optimization algorithm applied to the modelling program allows the company to
significantly reduce costs, if one considerers that there is no investment needed besides the
optimization program. Moreover, given that the production manager does not take into account
the variable hourly periods of the tariff over each day, any effort in trying to incorporate this factor
in the weekly plan will produce positive results. With the current contracted tariff (weekly cycle)
the factory plans of the 6 tested weeks were improved and in the best tested week (week 1)
savings could stretch to values of 623.67€ per week. If one takes that value as base, monthly the
savings would be approximately around 2745€, which by looking at the electric energy expenses
in the month on June (presented in table 36) represents a decrease in costs of about 1.55%. It
may not seem much, but again the cost of investment lies only in the optimization program.
Furthermore, it is visible in the power consumption comparison over one week between the
factory and the optimized plan that in Super peak hours (red areas) the power consumed in the
optimized plan is almost always under the power consumed by the factory plan in those hours.
63
This is the main reason why it is possible to decrease the weekly costs with electric energy, since
consumption in Super peak hours is very high-priced in comparison to other periods of time.
After confirming the usefulness of optimizing the factory plan for the current contracted tariff, one
other issue arose: would the electric costs of production of the factory plan be decreased if the
company changed to the electric tariff with the optional weekly cycle, and by further applying the
optimization algorithm? If so, would the company in its whole benefit from that tariff changing?
Results in section 7.2 evidently present that by only changing the contracted tariff to the optional
weekly cycle the factory plan for the fermentation process has already smaller electric expenses.
If one optimize it, then the savings will be even higher than with the optimization of the factory
plan with the weekly cycle. However, the sum of all the company electric energy consumers, not
only the fermentation process, does not clearly tell if a change in tariff is advantageous or not per
se. It can provide savings in one month as it can provide losses in another. Nonetheless, savings
obtained from changing to the optional weekly cycle and from optimizing the factory plan with
such tariff subtracted of the monthly losses (or added to the monthly savings) of the whole
company from that same tariff alteration are still higher than the ones resultant from the
optimization of the factory plan with the weekly cycle contracted. Therefore, it is advisable for the
company to change its contracted tariff and take advantage of the simulation program created in
this thesis.
Inherently connected to an electric energy costs reduction, it is a reduction in the energy
consumption of the factory, although very small.
Finally, it was tested, in practice, the optimized plan during week 2. Power consumption in T1 and
T2 was directly measured using the Fluke power analysers, while Aerzen compressors power
consumption was indirectly taken from the air consumption in F1 and F2 registered manually by
the shift operators. Power consumption was assumed constant in the Holmes compressors, and
each of them only worked when F1 or F2 were not having any fermentation occurring,
respectively. Results show that there is a significant deviation from real values to the ones
obtained in the simulated program regarding power consumption in each machine. Consequently,
the total cost of consuming electric energy given by the optimized plan also has a discrepancy in
relation to the real cost. The main causes for that are: air volume is registered manually by shift
operators, for each fermenter an average air profile was drawn, power consumption curve in T1
lack of measurements for low air injection, T1 and T2 switching mode is made manually and the
power consumed by the Holmes compressors was assumed constant. This, however, does not
invalidate the process modelling in the program and respective optimization because, more
important than the absolute values, is the relative difference between factory and optimized plan.
The difference between simulated and real values are as true to the optimized plan as to the
factory plan. Hence, albeit absolute values of power consumption given by the program vary from
the real ones, the way that consume progresses over time is the same to both plans and for that
64
reason the program will be able to shift high power consumptions from Super peak hours to other
periods of time.
Regarding the problem of exceeding the contracted power, it is advised for all working personnel
to avoid putting several processes starting at the same time. With that in mind, turning on a certain
part of the factory with a delay of one or two hours later is perfectly feasible and acceptable and
this good practice will be reflected in the monthly invoice.
Only one practical test was made due to the fact that in all other weeks problems occurred that
forced unpredicted stoppages, thus changing the optimized plan that should be implemented.
Stoppages like this often happen, either due to equipment breakdown - about which very little can
be done, besides the common maintenance procedures - or due to lack of resources. Concerning
the latter, the respective responsible personnel should better coordinate the storage of resources
depending on their needs to avoid situations like this.
Overall, the study of the fermentation process and its translation into a program that could
optimize it, as well as the energy consumption analysis in the company as a whole, allowed to
identify and propose possible solutions to decrease the costs related to electric energy
consumption. The factory will certainly benefit from implementing these measures, moreover
when the cost of investment is solely related to the optimization program.
8.2 Prospective work
The work developed in this thesis present a starting point for several possible studies in order to
improve even more energy efficiency and costs reduction and more faithfully represent the
production system of Lallemand. The most important topics that could be taken in consideration
for future works are:
Creation of random air profiles in the program based in a probabilistic distribution for each
fermenter;
Characterization of Holmes compressors;
Incorporation of the separators and water and yeast pumping systems in the fermentation
process;
Modelling the fermentation process using a different set of decision variables;
Customization of crossover, mutation and selection functions of the genetic algorithm
provided by Matlab to better fit this specific problem.
65
References
1. European Commission. “The 2020 climate and energy package”.
http://ec.europa.eu/clima/policies/package/index_en.htm [20/08/2014].
2. M. B. Wall. “A Genetic Algorithm for Resource-Constrained Scheduling”, PhD Thesis,
Massachusetts Institute of Technology, June 1996.
3. J. M. Sousa. OSE, Class Lecture, “Derivative-free optimization” [PowerPoint slides].
Instituto Superior Técnico, 2014.
4. FLUKE. “FLUKE 1735 Power Logger Manual”.
http://assets.fluke.com/manuals/1735____umeng0100.pdf [10/04/2014]
5. ERSE. http://www.erse.pt [20/04/2014].
6. F. S. Hillier, G. J. Lieberman. “Introduction to Operations Research”. 7th edition, McGraw-
Hill, January 2000, pp. 7-27.
7. The MathWorks Inc. Global Optimization Toolbox.
http://www.mathworks.com/products/global-optimization [12/05/2014].
8. J. Holland. “Adaptation in Natural and Artificial Systems”. MIT Press, 1992.
9. M. Mitchell. “An Introduction to Genetic Algorithms”, 5th edition, A Bradford Book The MIT
Press, 1999.
10. M. L. Pinedo, “Scheduling – Theory, Algorithms and Systems”, 3rd Edition, Springer,
2008, pp. 385-387.
11. O. de Weck. OCW, Lecture Notes, “An introduction to genetic algorithms” [PowerPoint
slides]. Massachusetts Institute of Technology, 2010.
66
Appendix A
Aerzen GM 90S characteristics catalogue
67
Appendix B
Power measurements with the Fluke 1735 power
analyser
The next figures represent the data acquired with the Fluke power analysers to characterize the
power consumption of T1 and T2, as it was done in chapter 2.3.2.
Figure 27 - T1 power consumption from 24 to 29 of April
Figure 28 – T2 power consumption from 24 to 29 of April
68
Appendix C
Structure of the simulation program
The simulation program contains the modelled fermentation process, the electric tariffs and the
genetic algorithm. Figure 29 depicts how the program is structured.
Figure 29 - Structure of the program
69
GUI.m
Main function where the variables changed by the user in the interface are received. They are the
initial plan (factory plan), lower bounds for that plan (minimum time for each fermentation in each
fermenter), the production goal, in tons, of mother and commercial yeast, the contracted tariff and
the tariff prices. The interface is programmed in this function, and all the subsequent functions
are called from here.
converter.m
The user inputs a plan in the interface by choosing the day of the week and respective starting
hour for each fermenter, as well as the minimum starting time for the first fermentation.
Converter.m converts the format “day_of_the_week hh:mm” into an integer from 0 to 336. For
non-scheduled fermentations, a default value is assigned to recognize that.
Error checking (includes verify.m and constraints.m)
After converting the user input time format into a treatable one, errors are checked. An error
message appears and the program abort when: fermentations of the inserted plan are not put in
the correct order; the minimum fermentation time is not respected; the production goal is not met;
the user filled the blanks for the production goal or for the tariff prices with incorrect digits (for
example by inserting characters where should be only numbers); the timespan is exceeded; the
constraints are not fulfilled.
variables.m
It transforms the integer numbers representing the fermentation into the decision variables (36
integer and 36 binary variables) formulated in chapter 5.1, so the simulation program can use
them.
Genetic algorithm
Here the inserted initial plan will be optimized. During this process, several functions are called:
fitness_func.m
It calculates the cost of electric energy consumption per ton of yeast produced.
get_price.m
It calculates the total energy cost in one week for a given plan, taking into account the contracted
tariff.
get_power.m
It gives the power consumed by each of the considered compressors in the simulation program
in each time interval using the power characteristics acquired in chapter 2.
70
get_air.m
It returns the air circulating in the collector (pumped by T1 and T2) and the air pumped by the
Aerzen compressors in each time interval.
startstop.m
It returns the starting and ending times of each fermentation in each fermenter.
get_out.m
It calculates the total yeast (mother and commercial) produced in a given plan.
constraints.m
The constraints should be matched for the plan to be considered feasible. Production goal should
be met, timespan should not be exceeded and only one separation can occur at a time.
get_sep.m
Returns the number of separations happening in each time interval. If it is bigger than 1, then the
constraints will not be fulfilled.
get_len.m
It calculates the time that all fermentations in each fermenter and intervals between them take. It
cannot exceed the timespan (336), otherwise constraints will not be met.
End of genetic algorithm
convert_back.m
After the optimization algorithm finishes (it reaches 500 generations), the optimized plan is
obtained. Since it is coded with decision variables, it will be converted back to a user friendly
format (“day_of_the_week hh:mm”).
71
GUI
The interface for the program in this thesis was made in order to make it easy for the production
manager to create optimized plans. The production manager must always perform the factory
plan first, then insert it in the GUI as an initial plan, so the program can find feasible and better
solutions. The GUI can be seen in figure 30.
Figure 30 - GUI
Panels F1 to F5
Here the starting time for each fermentation must be selected. All fermentations must respect
constraints and they must be selected chronologically, from top to bottom. Otherwise an error
message will be presented. The minimum time of the first fermentation must also be selected. In
each panel, in the right column one chooses the day of the week and in the left column one
chooses the starting hour.
Panel “Produto (toneladas)”
The objective of production of the week must be inserted and must match the quantity possible
to obtain with the factory plan. Values are in tons. In the top blank must be inserted the quantity
of commercial yeast and in the top blank must filled with the quantity of mother yeast. Other
characters than digits will trigger an error message.
72
Panel “Tarifa”
Whether the season is in the winter hour or in the summer hour, the option should be selected
accordingly in the top pop-up menu.
The tariff contracted by Lallemand should also be selected in the bottom pop-up menu.
Panel “Preços Tarifa”
Whenever prices are updated, they must be changed in the respective blanks.
“Nome do documentos a ser criado”
The name of the document to be created with the optimized plan should be written in that blank,
right next to the button “Optimizar” than runs the program.
After the program runs, a message box summarizing the result will appear (Figure 31), indicating
the cost per ton of yeast produced of the factory and optimized plans and the savings achieved
in that week. It will also mention that a document with the name wrote in the blank for that purpose
in the interface. The document summarizes the results too, and it will present the starting times
of each fermentation in this new optimized plan, as seen in figure 32, so the production manager
can easily draw it.
Figure 31 - Summarizing pop-up message
73
Figure 32 - Document created with the new optimized plan and with the summary of the results