An open API service indexing awesome lists of open source software.

https://github.com/se2p/sbse2024


https://github.com/se2p/sbse2024

Last synced: about 1 year ago
JSON representation

Awesome Lists containing this project

README

          

# Search-Based Software Engineering Course WS24/25

This repository contains the code examples and content of the lectures. I
will be uploading rendered versions as PDF files to StudIP, and include
rendered Markdown versions in this repository. If you want to run the
notebooks yourself, you will need to install [Jupyter](https://jupyter.org/install).
If you need help with setting up Jupyter, here's a tutorial on [how to install jupyter notebook on your machine](https://www.dataquest.io/blog/jupyter-notebook-tutorial/).

## Chapter 1: Random and Local Search

The first chapter covers the coding examples from the first two weeks, on basic random search and local search algorithms.
[Markdown Export](rendered/Random%20and%20Local%20Search.md)

## Chapter 2: Evolutionary Search (Part 1)

This chapter covers basic evolutionary strategies and genetic algorithms.
[Markdown Export](rendered/Evolutionary%20Search%20-%20Part%201.md)

## Chapter 3: Evolutionary Search (Part 2)

This chapter looks into the various search operators of a genetic algorithm:
Survivor selection, parent selection, crossover, mutation, and the
population itself. We also look at memetic algorithms, which combine
global and local search.

[Markdown Export](rendered/Evolutionary%20Search%20-%20Part%202.md)

## Chapter 4: Multi-Objective Optimisation (Part 1)

This chapter covers the basics of Pareto optimality, NSGA-II, and comparison
of multi-objective search algorithms.
[Markdown Export](rendered/Multi-Objective%20Optimisation%20-%20Part%201.md)

## Chapter 5: Multi-Objective Optimisation (Part 2)

This chapter covers several alternative multi-objective search algorithms:
A random baseline, PAES, SPEA2, TwoArchives, and SMS-EMOA.
[Markdown Export](rendered/Multi-Objective%20Optimisation%20-%20Part%202.md)

## Chapter 6: Search-based Test Generation (Part 1)

This chapter looks at how the problem of test input generation can be cast
as a search problem, and how to automatically instrument programs for
fitness generation.
[Markdown Export](rendered/Search-Based%20Test%20Generation%20-%20Part%201.md)

## Chapter 7: Search-based Test Generation (Part 2)

This chapter continues whole test suite generation, and then moves on to
many objective optimisation for test generation.

[Markdown Export](rendered/Search-Based%20Test%20Generation%20-%20Part%202.md)

## Chapter 8: Parameter Tuning and Parameter Control

This chapter considers how to choose values for the many parameters that we
have introduced in our evolutionary algorithms, how to optimise these
values, and how to adapt them to new problems.

[Markdown Export](rendered/Parameter%20Control%20and%20Adaptation.md)

## Chapter 9: Genetic Programming (Part 1)

This chapter introduces classic genetic programming for scenarios assuming
type closure, and applies this to symbolic regression and spectrum-based
fault localisation.

[Markdown Export](rendered/Genetic%20Programming%20-%20Part%201.md)

## Chapter 13: Neuroevolution

This chapter introduces the field of Neuroevolution in which evolutionary algorithms are used to optimise artificial
neural networks. We start with the definition of neural networks and the pole balancing problem, a popular reinforcement
learning task which is then solved using two different Neuroevolution algorithms: Symbiotic Adaptive
Neuroevolution (SANE) and Cooperative Synapse Neuroevolution (CoSyNE).

[Markdown Export](rendered/Neuroevolution.md)