# Exam summary: Dynamic Programming and Optimal Control

In the autumn semester of 2018 I took the course Dynamic Programming and Optimal Control. The summary I took with me to the exam is available here in PDF format as well as in LaTeX format. Here’s an overview of the topics the course covered: Introduction to Dynamic Programming Problem statement Open-loop and Closed-loop control

# LaTex template: exam summary

At ETH, many courses offer the possibility of taking a summary with you to the exam. This is usually restricted in size and some times must even be handwritten. I have always preferred writing them in digital format, mainly because it gives me the flexibility to rewrite, add or remove parts if I realise I’m

# The Hough transform

In image analysis, we often may want to detect lines in an image. This is useful for many things, including segmentation, tracking, etc. The Hough transform goes a step beyond a traditional edge detector, giving us mathematical expressions for lines in the image.

# Analytical vs. Geometric Jacobians

When learning about robotics, and specifically kinematics or dynamics of robots, Jacobians are a very common concept. However, I was always confused as to the difference between analytical and geometric Jacobian. When I finally figured it out, it helped to put it in words.

# Working with the Euler high-performance cluster

As an ETH student you get access to the Euler supercomputing cluster. Inaugurated in 2014 and hosted at CSCS in Lugano, Euler is a computer cluster dedicated for use by researchers and students alike. Courses like High-Performance Computing for Science and Engineering use it to allow students to practice the principles of working with a

# C++: the Named Parameter Idiom

Some times you will have a large C++ class with many parameters that need initializing. That can lead to some ugly constructor calls: auto popsim = PopulationSim(1000, 100000, 1000, 1000, 1500, 0.17, 0.05, 32, 3, 1, 7, 1); This makes the code very hard to maintain and debug, as there is no easy way to

# Lecture summary: Programming Techniques for Scientific Simulations

During the autumn semester of 2017 I took the course “Programming Techniques for Scientific Simulations” as part of my BSc course in Computational Science and engineering at ETH Zürich. This is a summary of the course’s contents I wrote and used during the actual exam. Some things are missing, as it was an open-book exam

# Compiling C++ libraries

If you use C++, you’ve almost certainly already used a library of some kind. Even the classic “Hello world” program requires one: #include <iostream> // include the iostream library int main() { std::cout << “Hello world!”; return 0; } But what if we wanted to write our own? This has several advantages. First off, if

# Creating a 2D multiplayer game in Python

I have begun work on the creation of a simple 2D LAN-based multiplayer game with Python. I decided to log my progress as I go in a series of articles, partly for my own future reference, and partly for anyone else who is taking on a similar endeavour for the first time and is looking