the atomic simulation environment and genetic algorithms

Post on 05-Feb-2022

4 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

The Atomic Simulation Environment and genetic algorithms

Steen Lysgaard

Department of energy conversion and storageTechnical University of Denmark

2

Outline

● Genetic algorithms (GA) in materials science

● The GA in the Atomic Simulation Environment (ASE)– Alloy nanoparticles (Cu-Ni, Cu-Au)– Combining machine learning with GA– More examples at ASE website (bulk systems for

ammonia storage, small particles on support)

● Quick intro to ASE

● Introduction to the following tutorial

3

GA intro

● Very simple principle based on natural selection

● Random initial population

● Define fitness function (stability, storage capacity, band gap, mechanical property)

● Selection of fittest candidates

● Procreation operators

● Population evolves

4

GA advanced

Jennings, Lysgaard, Hummelshøj, Vegge, Bligaard (in preparation)

5

GA in materials science

• Two major areas where GAs have been employed in materials science

Deaven and Ho, Phys Rev Lett. 75, 288 (1995)Johnston, Ferrando, Fortunelli ...

● Prediction of crystal structure from composition [1, 2, 3]

[1] Glass, Oganov and Hansen, Comput. Phys. Commun., 2006, 175, 713–720.[2] Abraham and Probert, Phys. Rev. B, 2006, 73, 1–6.[3] Trimarchi and Zunger, Phys. Rev. B, 2007, 75, 104113.

Nanoparticles / nanoalloys Crystal structure predictionNanoparticles / nanoalloysNanoparticles / nanoalloys

6

When to use genetic algorithms?

When a complete sampling is not possible…– Massive materials combinations (multiple mixing elements) – Structural prediction

– Corrugated energy landscapes

– Geometrical relaxation possible– Any parameter can be optimized

– …

7

Genetic algorithms for nanoparticle alloys

Initial Population

Operators

Generation

Crossover

Mutate/Permutate

Population

1.

2.

3.

...

Ranked according to fitness

com2surf poor2rich

Evaluation

Lysgaard, Landis, Bligaard, Vegge, Topics in Catalysis 57, 33 (2014)

8

Optimizing a 309 atom Cu-Ni nanoparticle – fixed composition

Lysgaard, Landis, Bligaard, Vegge, Topics in Catalysis 57, 33 (2014)

● Tailored operators needed when search space is large

● The GA shows the development of an icosahedral structure with a Cu skin for a 50:50 composition

● Dynamic operators are more efficient

9

Optimizing a 309 atom Cu-Ni nanoparticle – fixed composition

Lysgaard, Landis, Bligaard, Vegge, Topics in Catalysis 57, 33 (2014)

● Tailored operators needed when search space is large

● The GA shows the development of an icosahedral structure with a Cu skin for a 50:50 composition

● Dynamic operators are more efficient

10

Cu-Au nanoparticles – variable composition

Lysgaard, Hansen, Myrdal, Vegge, Phys. Chem. Chem. Phys. 17, 28270 (2015)

Emix=E (Cu x Au y)−E (Cu309) x

N−E (Au309) y

N

Cu

Au

11

Cu-Au nanoparticles – variable composition

Lysgaard, Hansen, Myrdal, Vegge, Phys. Chem. Chem. Phys. 17, 28270 (2015)

12

Cu-Au nanoparticles – variable composition

Lysgaard, Hansen, Myrdal, Vegge, Phys. Chem. Chem. Phys. 17, 28270 (2015)

13

Cu-Au nanoparticles – variable composition

● Unfortunately the Au-Cu clusters tend to retain the scaling relation for steps

Lysgaard, Hansen, Myrdal, Vegge, Phys. Chem. Chem. Phys. 17, 28270 (2015)

20

Combining Machine Learning and GA

Serial GA

Niching GA

Veto GA

MLGA

MLaGA

# E

ner

gy

eval

uat

ions

104

103

102

101

100

Pt Au

Jennings, Lysgaard, Hummelshøj, Vegge, Bligaard (in preparation)

• Five repetitions to check the robustness

21

Combining Machine Learning and GA

Jennings, Lysgaard, Hummelshøj, Vegge, Bligaard (in preparation)

• Identification of the convex hull with the different approaches • MLaGA: ~250 x speed-up

Em

ix

Pt Au

22

Atomic simulation environmentA Python library for working with atoms

23

Atomic simulation environment● An object-oriented scripting interface to a legacy electronic

structure code, Sune R. Bahn and Karsten W. Jacobsen, Comput. Sci. Eng., Vol. 4, 56-66, 2002

● The Atomic Simulation Environment — A Python library for working with atoms, Ask Hjorth Larsen, Jens Jørgen Mortensen, Jakob Blomqvist, Ivano E. Castelli, Rune Christensen, Marcin Dulak, Jesper Friis, Michael N. Groves, Bjørk Hammer, Cory Hargus, Eric D. Hermes, Paul C. Jennings, Peter Bjerre Jensen, Kristen Kaasbjerg, James Kermode, John R. Kitchin, Esben Leonhard Kolsbjerg, Joseph Kubal, Steen Lysgaard, Jón Bergmann Maronsson, Tristan Maxson, Thomas Olsen, Lars Pastewka, Andrew Peterson, Carsten Rostgaard, Jakob Schiøtz, Ole Schütt, Mikkel Strange, Kristian Thygesen, Tejs Vegge, Lasse Vilhelmsen, Michael Walter, Zhenhua Zeng, and Karsten Wedel Jacobsen, Journal of Physics: Condensed Matter, 29 (2017) 273002

24

A small example

25

Calculators in ASE

26

Tutorial on ASE GA

● Goal: Determine the convex hull of a binary alloy slab– Real use: looking for

catalysts to break the scaling relations

27

Tutorial on ASE GA

● Goal: Determine the convex hull of a binary alloy slab

● Number of combinations– N = 24– 16,777,216 candidates

(symmetry not accounted for)

– Brute force search not relevant, intelligent search is necessary

∑i=0

NN !

i !⋅(N−i)!

28

Tutorial on ASE GA

● Goal: Determine the convex hull of a binary alloy slab

● Number of combinations

● Population type– Rank based across

composition– All compositions equally

likely to evolve– Constructive interplay

due to similar chemical ordering

29

Tutorial on ASE GA

● Goal: Determine the convex hull of a binary alloy slab

● Number of combinations

● Population type– Rank based across

composition– All compositions equally

likely to evolve– Constructive interplay

due to similar chemical ordering

30

Tutorial on ASE GA

● Goal: Determine the convex hull of a binary alloy slab

● Number of combinations

● Population type

● Operators– Cut-splice crossover– Permutation– Substitution

31

Tutorial on ASE GA

● Goal: Determine the convex hull of a binary alloy slab

● Number of combinations

● Population type

● Operators

● Duplicate detection– Avoid superfluous

calculations– Keep population diverse

32

Tutorial on ASE GA

● Goal: Determine the convex hull of a binary alloy slab

● Number of combinations

● Population type

● Operators

● Duplicate detection

● Convex hull

33

Tutorial on ASE GA

● Goal: Determine the convex hull of a binary alloy slab

● Number of combinations

● Population type

● Operators

● Duplicate detection

● Convex hull

To get started with the tutorial go to:nomad-handson.github.io

Thanks for the attention Good luck!

34

top related