---
# System prepended metadata

title: Planning

---

# Planning

## Week 1 (14 - 20 feb)
Iedereen:
- [x] Paper lezen + taken verdelen
- [x] RK4 integrator + first test

## Week 2 (21 - 27 feb)
Kobe:
- [x] Google test implementation
- [x] Gitlab CI
- [x] Makefile
- [x] Data generation: Using the given model structure to generate data. This data can have stationary parameters or parameters that change.
- [x] Finding data online
- [x] preprocessing on online data

Tom:
- [x] Testing Monte Carlo on toy problem (in python notebook)
- [x] Estimating some parameters using bayesian inference in python notebook

Quinten:
- [x] Parameters samplen uit distributies
- [x] Beste manier van random number generatie onderzoeken

## Week 3 (28 feb - 6 maart)

Kobe:
- [x] Data preprocessing on online data
- [x] CDC data plotting to see if preprocessing was correct
- [x] Data generation (zie vorige week)

Tom:
- [x] Implement markov chain monte carlo methods in python and investigate gibbs sampling specifically
- [x] Implement a basic version of the joint posterior (eq 5.1 of main paper) to estimate parameters $\gamma$ and $\beta$
- [x] Sample the conditionals with adaptive-rejection sampling
- [x] Try to sample from the above joint posterior using gibbs sampling in python

Quinten:
- [x] Parameters samplen uit distributies
- [x] Truncated normal distribution implementeren


## Week 4 (7 - 13 maart)
Kobe:
- [x] Data generation (zie vorige week)
- [x] Algoritme 1 implementeren in C++

Tom:
- [x] Vraag: welke mcmc methode gebruiken om posterior te samplen? Wordt een hele reeks $\theta$ in 1 keer gesampled? The paper gebruikt JAGS, wat moeten wij gebruiken? Adaptive-rejection sampling geeft problemen als de parameters niet log-concaaf verdeeld zijn; zijn ze zo verdeeld?
- [x] Implement the correct sampler in python

Quinten:
- [x] Oplossen niet-lineare vergelijking(nog vragen of log=log10 of ln, aanpassen als het om log10 gaat)
- [x] Unit tests om te bewijzen dat de juiste distributies gesampled worden
- [x] Truncated normal distribution implementeren


## Week 5 (14 - 20 maart)
Kobe:
- [x] Algoritme 1 in c++ implementeren
- [x] C++ code opkuisen en leesbaarder maken
- [x] Algoritme 1 in c++ testen

Tom:
- [x] Visualisatie
- [x] Gibbs sampling in python werkende krijgen
- [x] Standaard deviatie van verschillende parameters tunen

Quinten:
- [x] Opzoeken correcte waarden hypothesetesten 
- [x] Onderzoeken en implementeren Dirichlet verdeling
- [x] Uitbreiden unit tests voor nieuwe verdelingen

## Week 6 (21 - 27 maart)

Kobe:
- [x] Implementatie algoritme 2 in c++
- [x] Visualisatie gegenereerde data
- [x] Parallel maken code

Tom:
- [x] Tunen standaard deviatie voor gibbs samplen
- [x] Lage acceptance rate verklaren en proberen te verhogen
- [x] Visualisatie afwerken

Quinten:
- [x] Laatste testen
- [x] Testen finetunen
- [x] Testen voor Truncated Normal Distribution schrijven


## Week 7 (28 - 30 maart)
Iedereen:
- [x] Presentatie

Kobe:
- [x] Readme maken
- [x] Laatste finetuning aan algoritme en parameters

Tom:
- [x] Laatste finetuning aan algoritme en parameters

Quinten:
- [x] Code opkuisen en leesbaarder maken
