Skip to content

Latest commit

 

History

History
35 lines (22 loc) · 1.39 KB

readme.md

File metadata and controls

35 lines (22 loc) · 1.39 KB

Master Thesis | Optimizer Framework

This repository holds the optimizer framework as proposed in my Master Thesis. It contains a generic optimizer class that can be used to implement various optimization algorithms for various use cases. One of these use cases is the Game Optimizer, which can be used to optimize the accompanying game made for this thesis.

Table of Contents

Installation

The in-game optimizer uses NLopt, so it is advised to install this in a virtual environment. To do this, run the following commands:

    python3 -m venv venv
    source venv/bin/activate
    pip install -r ./code/requirements.txt

Usage

Running the example code can be done by running the following command:

    python main.py

Adapting the parameters for the Game optimizer should be done inside the Parameters.py file. This allows you to set minimum and maximum values for the parameters, as well as the type. The optimization code itself is located in the GameOptimizer.py file. There you can set the NLopt optimization algorithm (currently using COBYLA) as well as the stopping criterion and objective function (by changing how the score_game(...) method calculates it).

License