This document provides an overview of an evolutionary algorithm approach for heat exchanger network design using Lindenmayer systems (L-systems). Specifically:
- It defines an L-system called GHEN that uses symbols and rewrite rules to represent possible heat exchanger network structures.
- The algorithm initializes a population based on the problem definition and applies random rewrite rules over generations to evolve potential solutions.
- Phenotypes are instantiated by linking exchangers in genotypes and optimizing exchanger sizing and stream splits. The best solution found is returned.
Lindenmayer System for Heat Exchanger Network Design
1. .
A Lindenmayer system for heat exchanger
network design with stream splitting
Eric S Fraga
Centre for Process Systems Engineering
Department of Chemical Engineering
UCL (University College London)
29 April – 1 May 2008
c 2008, All rights reserved.
Eric S Fraga (CPSE/UCL) Heat exchanger network design ACDM 2008 1 / 30
3. Heat exchanger networks.
Heat exchanger networks
Energy consumption is often the largest cost of a process.
One means of reducing
energy use is through process
integration:
Identify matches for
transfer of excess heat in
one part of the process to
another part.
Problem is highly combinatorial, discontinuous and non-convex.
Eric S Fraga (CPSE/UCL) Heat exchanger network design ACDM 2008 3 / 30
4. Heat exchanger networks.
Problem definition and costing
Example problem† Exchangers are costed using
˙
Stream Tin Tout Q
Ccapital = α + βAγ
(K) (K) (kW)
2
typically with γ ≈ 3 and the area,
H1 443 333 30
A, is a function of the log-mean
H2 423 303 15 temperature difference (LMTD):
C1 293 408 20 ∆Tin − ∆Tout
LMTD =
log ∆Tin − log ∆Tout
C2 353 413 40
†
Pariyani et al. (2006). Computers & Chemical Engineering 30:1046.
Eric S Fraga (CPSE/UCL) Heat exchanger network design ACDM 2008 4 / 30
5. Heat exchanger networks.
Combinatorial aspects
H1
Many possible
alternative matches ... H2
... with alternative
order of placement.
C1
Streams may be split
as well. Split
C2 Mix
Result is highly
combinatorial.
Eric S Fraga (CPSE/UCL) Heat exchanger network design ACDM 2008 5 / 30
6. Heat exchanger networks.
Combinatorial aspects
H1
Many possible
alternative matches ... H2
... with alternative
order of placement.
C1
Streams may be split
as well. Split
C2 Mix
Result is highly
combinatorial.
Eric S Fraga (CPSE/UCL) Heat exchanger network design ACDM 2008 5 / 30
7. Heat exchanger networks.
Combinatorial aspects
H1
Many possible
alternative matches ... H2
... with alternative
order of placement.
C1
Streams may be split
as well. Split
C2 Mix
Result is highly
combinatorial.
Eric S Fraga (CPSE/UCL) Heat exchanger network design ACDM 2008 5 / 30
8. An evolutionary strategy.
Outline
Heat exchanger networks
1
An evolutionary strategy
2
Implementation
3
Results
4
Conclusions
5
Eric S Fraga (CPSE/UCL) Heat exchanger network design ACDM 2008 6 / 30
9. An evolutionary strategy.
Evolving a HEN structure
Biological analogue† :
Genotype: the plan
Phenotype: the instance
For HEN, the aim is to use a genotype to represent overall
structure: possible matches and stream splits.
The phenotype is an instantiation of the genotype with specific
matches.
Question becomes one of representation for the genotype and how
this can be manipulated in an evolutionary manner.
†
De Jong (2006). Proc. ACDM 2006, I C Parmee (ed.), 23-25.
Eric S Fraga (CPSE/UCL) Heat exchanger network design ACDM 2008 7 / 30
10. An evolutionary strategy.
Lindenmayer Systems
Prusinkiewicz & Lindenmayer† presented a Lindenmayer system, often
known as an L-system:
The central concept of
L-systems is that of rewriting.
In general, rewriting is a
technique for defining complex
objects by successively replacing
parts of a simple initial object
using a set of rewriting rules or
Image courtesy Solkoll @ wikipedia.
productions.
We wish to apply this concept of rewriting to streams in heat
exchanger network synthesis problems to create potential integration
structures.
†
Prusinkiewicz & Lindenmayer (1990). “The algorithmic beauty of plants,” Springer-Verlag.
Eric S Fraga (CPSE/UCL) Heat exchanger network design ACDM 2008 8 / 30
11. An evolutionary strategy.
L-system definition
An L-system is defined by a tuple,
G = V , ω, P
where
V the alphabet or set of symbols which can be
replaced in a string by specific combinations
symbols from the same set.
ω the initial configuration (set of strings).
P (⊂ V × V ∗ ) is the set of replacement rules.
For the heat exchanger network synthesis problem, we define an
L-system, GHEN .
Eric S Fraga (CPSE/UCL) Heat exchanger network design ACDM 2008 9 / 30
12. An evolutionary strategy.
GHEN – 1. Symbols V
The alphabet includes:
+, - denote the heating and cooling requirements of each
stream;
S, E the start and end of each stream;
x indication of exchange;
s, m split and mix; and,
[, ] start and end of split stream segments.
The full alphabet, therefore, is
V ≡ {−, +, S, E, s, m, [, ]}
Eric S Fraga (CPSE/UCL) Heat exchanger network design ACDM 2008 10 / 30
13. An evolutionary strategy.
GHEN – 2. Starting representation, ω
The starting set of symbols is a set of strings, one for each
stream in the network problem definition.
Each cold stream is represented initially by the string S-E.
Each hot stream by E+S.
The hot and cold streams are written in opposite order to
indicate the use of counter-current heat exchangers.
Eric S Fraga (CPSE/UCL) Heat exchanger network design ACDM 2008 11 / 30
14. An evolutionary strategy.
GHEN – 2. Starting representation, ω
The starting set of symbols is a set of strings, one for each
stream in the network problem definition.
Each cold stream is represented initially by the string S-E.
Each hot stream by E+S.
The hot and cold streams are written in opposite order to
indicate the use of counter-current heat exchangers.
H1:E+S,
H2:E+S,
For our example, ω = .
C1:S-E,
C2:S-E;
Eric S Fraga (CPSE/UCL) Heat exchanger network design ACDM 2008 11 / 30
15. An evolutionary strategy.
GHEN – 3. Rule set, P
Target → Replacement
Rule Description
- → x-
R1 Add an exchanger to a cold stream
- → s[x-][x-]m-
R2 Split a cold stream
+ → x+
R3 Add an exchanger to a hot stream
+ → m]x+[]x+[s+
R4 Split a hot stream
S→S
R5 A do-nothing rule
Note: the rule for splitting a hot stream creates a structure that is
the reverse of that created by a cold stream split rule.
Eric S Fraga (CPSE/UCL) Heat exchanger network design ACDM 2008 12 / 30
16. An evolutionary strategy.
GHEN summary
The L-system for HEN design is context free.
It is non-deterministic, perfect for an evolutionary algorithm.
The majority of strings (words generated from V ∗ starting with
ω) represent a valid genotype for the HEN design problem.
The genotype describes a configuration with
locations of splits and
locations for integrated exchangers.
Eric S Fraga (CPSE/UCL) Heat exchanger network design ACDM 2008 13 / 30
17. Implementation.
Outline
Heat exchanger networks
1
An evolutionary strategy
2
Implementation
3
Results
4
Conclusions
5
Eric S Fraga (CPSE/UCL) Heat exchanger network design ACDM 2008 14 / 30
19. Implementation.
The evolutionary algorithm
Given: population size, np ; number of generations, ng ; the L-system,
GHEN = V , ω, P .
Outputs: Best solution found.
p ← ω {Initialise population}
1:
return best solution in p
9:
Eric S Fraga (CPSE/UCL) Heat exchanger network design ACDM 2008 15 / 30
20. Implementation.
The evolutionary algorithm
Given: population size, np ; number of generations, ng ; the L-system,
GHEN = V , ω, P .
Outputs: Best solution found.
p ← ω {Initialise population}
1:
for i = 1, . . . , ng do
2:
return best solution in p
9:
Eric S Fraga (CPSE/UCL) Heat exchanger network design ACDM 2008 15 / 30
21. Implementation.
The evolutionary algorithm
Given: population size, np ; number of generations, ng ; the L-system,
GHEN = V , ω, P .
Outputs: Best solution found.
p ← ω {Initialise population}
1:
for i = 1, . . . , ng do
2:
Select g from population p {Random or fitness based}
3:
Choose rule, r ∈ P {Random}
4:
return best solution in p
9:
Eric S Fraga (CPSE/UCL) Heat exchanger network design ACDM 2008 15 / 30
22. Implementation.
The evolutionary algorithm
Given: population size, np ; number of generations, ng ; the L-system,
GHEN = V , ω, P .
Outputs: Best solution found.
p ← ω {Initialise population}
1:
for i = 1, . . . , ng do
2:
Select g from population p {Random or fitness based}
3:
Choose rule, r ∈ P {Random}
4:
r
g → g {Apply rule}
5:
return best solution in p
9:
Eric S Fraga (CPSE/UCL) Heat exchanger network design ACDM 2008 15 / 30
23. Implementation.
The evolutionary algorithm
Given: population size, np ; number of generations, ng ; the L-system,
GHEN = V , ω, P .
Outputs: Best solution found.
p ← ω {Initialise population}
1:
for i = 1, . . . , ng do
2:
Select g from population p {Random or fitness based}
3:
Choose rule, r ∈ P {Random}
4:
r
g → g {Apply rule}
5:
Evaluate g {Instantiate phenotype from g }
6:
return best solution in p
9:
Eric S Fraga (CPSE/UCL) Heat exchanger network design ACDM 2008 15 / 30
24. Implementation.
The evolutionary algorithm
Given: population size, np ; number of generations, ng ; the L-system,
GHEN = V , ω, P .
Outputs: Best solution found.
p ← ω {Initialise population}
1:
for i = 1, . . . , ng do
2:
Select g from population p {Random or fitness based}
3:
Choose rule, r ∈ P {Random}
4:
r
g → g {Apply rule}
5:
Evaluate g {Instantiate phenotype from g }
6:
Insert g into population subject to diversity constraint
7:
Shrink p if necessary {so that |p| ≤ np }
8:
9: return best solution in p
Eric S Fraga (CPSE/UCL) Heat exchanger network design ACDM 2008 15 / 30
25. Implementation.
Phenotype instantiation
A genotype describes the overall structure of a HEN.
To instantiate a phenotype from a genotype:
link the integrated exchangers and
1
define the appropriate optimisation problem to size exchangers
2
and determine split factors.
Linking exchangers is non-deterministic so a single genotype may
lead to different phenotypes.
The do-nothing rule, R5, allows for multiple instances of the
same genotype in a population.
Eric S Fraga (CPSE/UCL) Heat exchanger network design ACDM 2008 16 / 30
27. Implementation.
Exchanger matching for phenotype instantiation
Given: g, the genotype to instantiate.
Outputs: ϕ, a phenotype instantiation of the genotype
Eric S Fraga (CPSE/UCL) Heat exchanger network design ACDM 2008 17 / 30
28. Implementation.
Exchanger matching for phenotype instantiation
Given: g, the genotype to instantiate.
Outputs: ϕ, a phenotype instantiation of the genotype
1: ϕ ← g {Phenotype is initially the genotype.}
return ϕ
10:
Eric S Fraga (CPSE/UCL) Heat exchanger network design ACDM 2008 17 / 30
29. Implementation.
Exchanger matching for phenotype instantiation
Given: g, the genotype to instantiate.
Outputs: ϕ, a phenotype instantiation of the genotype
1: ϕ ← g {Phenotype is initially the genotype.}
2: while ∃ unassigned exchange term in ϕ do
return ϕ
10:
Eric S Fraga (CPSE/UCL) Heat exchanger network design ACDM 2008 17 / 30
30. Implementation.
Exchanger matching for phenotype instantiation
Given: g, the genotype to instantiate.
Outputs: ϕ, a phenotype instantiation of the genotype
1: ϕ ← g {Phenotype is initially the genotype.}
2: while ∃ unassigned exchange term in ϕ do
x1 ← random unassigned exchange term in ϕ
3:
x2 ← complementary random unassigned exchange in ϕ
4:
return ϕ
10:
Eric S Fraga (CPSE/UCL) Heat exchanger network design ACDM 2008 17 / 30
31. Implementation.
Exchanger matching for phenotype instantiation
Given: g, the genotype to instantiate.
Outputs: ϕ, a phenotype instantiation of the genotype
1: ϕ ← g {Phenotype is initially the genotype.}
2: while ∃ unassigned exchange term in ϕ do
x1 ← random unassigned exchange term in ϕ
3:
x2 ← complementary random unassigned exchange in ϕ
4:
if x2 then
5:
return ϕ
10:
Eric S Fraga (CPSE/UCL) Heat exchanger network design ACDM 2008 17 / 30
32. Implementation.
Exchanger matching for phenotype instantiation
Given: g, the genotype to instantiate.
Outputs: ϕ, a phenotype instantiation of the genotype
1: ϕ ← g {Phenotype is initially the genotype.}
2: while ∃ unassigned exchange term in ϕ do
x1 ← random unassigned exchange term in ϕ
3:
x2 ← complementary random unassigned exchange in ϕ
4:
if x2 then
5:
x2 ← new random complementary exchange term
6:
return ϕ
10:
Eric S Fraga (CPSE/UCL) Heat exchanger network design ACDM 2008 17 / 30
33. Implementation.
Exchanger matching for phenotype instantiation
Given: g, the genotype to instantiate.
Outputs: ϕ, a phenotype instantiation of the genotype
1: ϕ ← g {Phenotype is initially the genotype.}
2: while ∃ unassigned exchange term in ϕ do
x1 ← random unassigned exchange term in ϕ
3:
x2 ← complementary random unassigned exchange in ϕ
4:
if x2 then
5:
x2 ← new random complementary exchange term
6:
if x2 then {Match might not be possible}
7:
return φ {Infeasible instantiation}
8:
return ϕ
10:
Eric S Fraga (CPSE/UCL) Heat exchanger network design ACDM 2008 17 / 30
34. Implementation.
Exchanger matching for phenotype instantiation
Given: g, the genotype to instantiate.
Outputs: ϕ, a phenotype instantiation of the genotype
1: ϕ ← g {Phenotype is initially the genotype.}
2: while ∃ unassigned exchange term in ϕ do
x1 ← random unassigned exchange term in ϕ
3:
x2 ← complementary random unassigned exchange in ϕ
4:
if x2 then
5:
x2 ← new random complementary exchange term
6:
if x2 then {Match might not be possible}
7:
return φ {Infeasible instantiation}
8:
create heat exchange link between x1 and x2
9:
10: return ϕ
Eric S Fraga (CPSE/UCL) Heat exchanger network design ACDM 2008 17 / 30
35. Implementation.
Example evolution with phenotype instantiation
Initial: { H1:E+S, H2:E+S, C1:S-E, C2:S-E; }
Eric S Fraga (CPSE/UCL) Heat exchanger network design ACDM 2008 18 / 30
36. Implementation.
Example evolution with phenotype instantiation
Initial: { H1:E+S, H2:E+S, C1:S-E, C2:S-E; }
H1
H2
C1
C2
Eric S Fraga (CPSE/UCL) Heat exchanger network design ACDM 2008 18 / 30
37. Implementation.
Example evolution with phenotype instantiation
Initial: { H1:E+S, H2:E+S, C1:S-E, C2:S-E; }
+R1: { H1:E+S, H2:E+S, C1:Sx-E, C2:S-E; }
H1
H2
C1
C2
Eric S Fraga (CPSE/UCL) Heat exchanger network design ACDM 2008 18 / 30
43. Implementation.
Embedded optimisation problem
A network structure is
created from the
phenotype.
The structure defines a
nonlinear programme
(NLP).
The decision variables are
xi ∈ [0, 1], the fraction
to exchange, so that
Qi = xi Qi,max , and
xj ∈ [0, 1], the split
fraction.
Eric S Fraga (CPSE/UCL) Heat exchanger network design ACDM 2008 19 / 30
44. Implementation.
Embedded optimisation problem
A network structure is H1
created from the
phenotype. H2
The structure defines a
nonlinear programme x1
(NLP). x2 x3
The decision variables are C1
xi ∈ [0, 1], the fraction
to exchange, so that x4
C2 Mix
Qi = xi Qi,max , and
xj ∈ [0, 1], the split
fraction.
Eric S Fraga (CPSE/UCL) Heat exchanger network design ACDM 2008 19 / 30
45. Implementation.
Embedded optimisation problem
A network structure is H1
created from the
phenotype. H2
The structure defines a
nonlinear programme x1
(NLP). x2 x3
The decision variables are C1
xi ∈ [0, 1], the fraction
to exchange, so that x4
C2 Mix
Qi = xi Qi,max , and
xj ∈ [0, 1], the split
fraction.
The NLP represents a superstructure and is solved using a hybrid
stochastic & direct search procedure† .
† ˘
ESF (2006). In “Computer Aided Methods for Optimal Design and Operations”, Zilinskas & Bogle (ed.), 1-14.
Eric S Fraga (CPSE/UCL) Heat exchanger network design ACDM 2008 19 / 30
46. Results.
Outline
Heat exchanger networks
1
An evolutionary strategy
2
Implementation
3
Results
4
Conclusions
5
Eric S Fraga (CPSE/UCL) Heat exchanger network design ACDM 2008 20 / 30
47. Results.
Summary of performance
A wide range of case studies has been considered:
Objective function value (×103 $ y −1 )
Case study
Best Mean Worst σ
1. 4SP 83.5 84.5 89.1 1.07
2. 10SP1 44.9 45.1 45.4 0.171
3. Morton 1620. 1680. 1720. 35.
4. Lewin A 573. 575. 594. 6.61
5. Aromatics 2940. 2960. 2980. 13.
Best known solution obtained or bettered in all cases.
Eric S Fraga (CPSE/UCL) Heat exchanger network design ACDM 2008 21 / 30
55. Conclusions.
Outline
Heat exchanger networks
1
An evolutionary strategy
2
Implementation
3
Results
4
Conclusions
5
Eric S Fraga (CPSE/UCL) Heat exchanger network design ACDM 2008 29 / 30
56. Conclusions.
Summary
The challenging optimisation
problem of HEN design with Network viewer
genotype:[R3(1), R4(1), R2(1), R3(4), R1(4), R1(1), R3(3)]
stream splitting has been H2
addressed through a simple H1
two-level algorithm with a
Lindenmayer system for C1
evolving designs.
C2
The result is a robust and 8.35E4
effective tool for heat
exchanger network design.
http://www.homepages.ucl.ac.uk/~ucecesf/research/
Eric S Fraga (CPSE/UCL) Heat exchanger network design ACDM 2008 30 / 30