This course describes the use of neural network models in learning and optimization  e.g., pattern recognition, routing, and prediction. This course is divided into two parts. The first part (3 weeks) provides an introduction to neural networks, focusing on the so-called Hopfield model, its statistical mechanics and optimization algorithms. The second part (4 weeks) provides a more detailed introduction to learning, describing models, algorithms, and applications.

Part 1: An introduction to neural networks: neuroscience, statistics and optimization

  • Neuroscience
  • An example of a neural network: the Hopfield model
  • Statistics and Optimisation (Monte-Carlo methods, simulated annealing)

Part 2: Learning: models, algorithms, and applications

  • Supervised learning: simple perceptrons and layered networks
  • Performance of multilayer perceptrons
  • Unsupervised learning
  • Reinforcement learning
  • Recurrent networks and time series analysis


Student portal page:

External course webpage: None that currently is alive




Published in Courses

The aim of this course is to give an understanding of fundamental concepts used to describe complex systems. As examples, chaotic low-dimensional systems, self-organizing systems, and cellular automata are discussed.

The fact that systems composed of a large number of simple components can exhibit complex phenomena is exemplified in, for example, self-organising systems (in the form of chemical reaction-diffusion systems), the second law of thermodynamics (as a statistical result of large physical systems), neural networks, evolution of cooperation, cellular automata (as an example of an abstract computational class of systems), economic systems of interacting trading agents, urban growth and traffic systems.

There is no universal definition of a complex system, but there are several features that are usually brought up when a system is considered complex, typically involving order/disorder and correlations. An important scientific question is whether these and other characteristics of the systems can be quantified in a comprehensive way. This is one of the aims with this course -- to provide a set of tools that can be used to give a quantitative description of a complex system for a variety of different types of systems. All quantities derived can be interpreted in terms of information, referring to the information quantity introduced by Shannon and Weaver.

Information-theoretic concepts can be applied on the macro-level of a system, for example, in order to describe the spatial structure formed in a chemical self-organizing system. The connection between information theory and statistical mechanics makes it possible to relate such an analysis to the thermodynamic properties and limitations of the system. Other examples include complex phenomena in cellular automata, entropy in microscopic physical systems (spin systems), and chaotic behaviour in dynamical systems.

Student portal page:

Course page: 

Published in Courses
  1. News
  2. Course information (overview, literature, teachers)
  3. Schedule and lecture plan
  4. Problem sessions and solutions
  5. Homework
  6. Projects
  7. Exam, grading
  8. Exams with solutions


12 April 2019

Solution sketches for this year's exam 2019-03-22 are available here.

The exams have been corrected, but there will be a delay until they show up in Ladok. Sorry for that!


3 April 2019

Two open PhD student positions in Complex systems are announced (as part of a broader call for applications), see:

Two PhD student positions in Energy, Environment & Complex Systems


13 March 2019

Solutions to exam 2016-03-18 are now included in the zip file with old exams below.

20 February 2019

The following course representatives have accepted: Fanny, Gabriella, Henrik, and Wilhelm. We had a short meeting, and a request that was brought up is that I post PDFs of slides that I use in the lectures. So, as a start, I provide the slides of today's lecture in the following summary.   

In the lecture today, we discussed an Ising dynamics model (microscopically reversible and energy conserving) and how the approach to equilibrium can be understood. The slides are available here, and for further reading you may download the paper "The approach towards equilibrium in an Ising dynamics model".

18 February 2019

The solution to problem 5.8 in the PDF below is updated with a minor addition regarding the criterion for the parameter α.

11 February 2019

Note that the exam is on Friday, March 22, in the afternoon. (Previously, the last year's date was posted.)

2 February 2019

In the third week we will bring up the 100 Floors Egg Dropping Puzzle. Thinking about coding may guide you to a solution of this problem.

1 February 2019

We have posted a preliminary list of problems to be solved in the problem sessions below.

27 January 2019

The second week we will introduce information theory for symbol sequences, which will serve as a key theoretical basis for several applications throughout the course.

An interesting problem will be discussed on Wednesday: The Monks Spots Puzzle. Try to solve that. Consider also the situation in an information perspective (which is indeed very tricky).

21 January 2019

The course starts with an introductory lecture on Monday 21 January at 15.15 in MC.

All necessary information about the course is available below, including link to TimeEdit that contains the schedule, the lecture plan, the lecture nores in pdf, etc.

You may think about the balance problem puzzle that will be discussed in the first week.


General course information (overview, literature, teachers)


The course provides an understanding of fundamental concepts used to describe complex systems, in particular dynamical systems such as chaotic low-dimensional systems, self-organizing systems, and simple spatially extended systems such as cellular automata. Many of the concepts are based in information theory.

  • Basic concepts of information theory: Shannon entropy, complexity measures.
  • Information theory and statistical mechanics.
  • Geometric information theory -- randomness and complexity in spatially extended systems.
  • Information flow. The relation between microscopic and macroscopic levels.
  • Statistical models, in particular hidden Markov models.
  • Cellular automata.
  • Applications in nonlinear dynamics, computational biology, chemical self-organizing systems, and statistical mechanics.


The lectures will follow the presentation in:
K. Lindgren, Information theory for complex systems — An information perspective on complexity in dynamical systems, physics, and chemistry. (Chalmers, 2014.)

If you want to learn more: T. M. Cover and J. A. Thomas, Elements of information theory (Wiley, 1991).

See also: David MacKay, Information theory, Inference, and Learning (2003).


Kristian Lindgren (lecturer, examiner). Email: kristian.lindgren [at]

Susanne Pettersson (examples classes, projects) Email: susannep [at]

Rasmus Einarsson (examples classes, projects) Email: rasmus.einarsson [at]

Schedule and lecture plan

The schedule is in TimeEdit.

Further details are given the lecture plan (pdf).

Problem sessions and solutions

Preliminary list of problems to be solved in the problem sessions

  • 25 January: 2.2, 2.4, 2.6, 2.8, 2.9, 2.16
  • 1 February: 3.2, 3.3, 3.5, 3.7, 3.8 (possibly leaving one or two for the next session)
  • 13 and 15 February: 4.1, 4.2, 4.4, 4.5, 4.6, 4.7, 4.8, 4.9
  • 22 February: 5.1, 5.2, 5.3, 5.4, 5.6, 5.8
  • 6 March: 8.1, 8.2, 8.7
  • 13 March: solving an old exam (which one to be determined)



Five optional homework problems are given below. Each one gives up to two (2) extra points for the exam. Late submissions will normally not be graded. Hand-written solutions are fine, but please take care to make them legible.

Hand in your solutions in one of these ways:

  • on paper at the lecture
  • by email as a PDF file named yourcid.pdf (e.g., rasmuse.pdf) to Rasmus (address: rasmus.einarsson [at]

The deadlines are:

  • Homework 1: Friday 1 February 2019, 13.15
  • Homework 2: Friday 15 February 2019, 13.15
  • Homework 3: Friday 22 February 2019, 13.15
  • Homework 4: Wednesday 6 March 2019 10.00
  • Homework 5: Wednesday 13 March 2019 10.00



Optional project work can be done in groups of 1-3 students. The project work is awarded up to 10 extra points for the exam. Further instructions are given in this file:

Project ideas and instructions for projects (pdf)

Exam, grading

The exam is given on March 22, afternoon. A sheet with relevant equations etc is attached to the exam problems.

The course is graded based on the exam score including extra points from homework (max 10 points) and projects (max 10 points). The exam gives up to 50p. Grade limits (Chalmers/ECTS): 25p for 3/E, 28p for 3/D, 34p for 4/C, 38p for 4/B, 42p for 5/A. To pass, a minimum of 20p on the written exam is required, regardless of additional points.

Exams and solutions

Old exams, some of them with solutions (zip file with pdfs, about 19 MB) [updated 13 March 2010]

Exam 2018-03-16 problems (pdf) and solutions (pdf)

Published in Course page

The course gives an introduction to the theory and description of nonlinear dynamical systems. How is chaos measured and characterized? How can one control and predict chaotic systems?

By using very simple mathematical models, it is possible to obtain chaotic behavior. Through the understanding of such systems, the students will get a feeling for how real systems can behave, learn how to characterize them and in certain special cases how to predict their behavior.

Student portal page:

External course webpage:

Published in Courses

The second course in this field aims at giving a basic understanding of computational biology and theoretical models in molecular biology. This will include models of the origin of life, molecular evolution, and molecular genetics.

As a consequence of new measurement techniques, our knowledge of structure and function of biological macromolecules has increased significantly in recent years. The amount of data is now so large that it has become necessary to use computational and statistical methods of analysis. The new empirical data now allow statistically significant testing of models for genetic evolution. This has led to a renewed interest in evolution models on the genetic and molecular level. New numerical algorithms and mathematical models have been developed describing population genetics. It is the aim of this course to introduce the mathematical models and computational methods used in the analysis and modelling of genetical data and their evolution.

Student portal page:

External course webpage:

Published in Courses
Page 3 of 4