Skip to content
iLab: From Brain to Machine and Back

iLab: From Brain to Machine and Back

iossifidis Lab

  • Home
  • Research Projects
  • Publications
  • Software
  • Press and Media
  • Student’s Zone — Teaching
    • Thesis topics
    • Student Projects
    • Journal Club & Progress Club
    • Lab Course
    • Lectures – Vorlesungen
  • About us
    • The Team
    • Contact
    • Impressum
  • Home
  • Software

Software

CFG to CNF Converter

By jannis on May 13, 2026
Comments Off on CFG to CNF Converter  |  Filed under: teaching  |  Tags: software

Gridworld RL

By jannis on January 23, 2025
Gridworld RL
Value Iteration in Grid World

Value Iteration in Grid World

Bellman-Gleichung für Value Iteration:

V(s) = maxa Σs’ [P(s’|s,a) * (R(s,a,s’) + γ * V(s’))]

Wo:

  • V(s) der Wert des Zustands s ist
  • P(s’|s,a) die Übergangswahrscheinlichkeit ist (hier angenommen als deterministisch, daher = 1)
  • R(s,a,s’) die Belohnung für die Übergangsfunktion von s nach s’ durch Aktion a ist
  • γ (gamma) der Abzinsungsfaktor ist
  • V(s’) der Wert des nächsten Zustands s’ ist

Belohnungswerte:

  • Hindernisse haben eine Belohnung von -10
  • Das Ziel hat eine Belohnung von 0, wenn es erreicht wird
  • Normale Schritte haben eine Belohnung von -1

Optimale Wertfunktion

Optimale Politik

Explizit berechnete Werte

Erklärung des Prozesses:

Der Value-Iteration-Algorithmus wird verwendet, um die optimale Politik und Wertfunktion für eine gegebene Rasterwelt zu finden. Der Algorithmus iteriert über alle Zustände und berechnet die maximale erwartete Belohnung für jeden Zustand basierend auf möglichen Aktionen (gemäß der Bellman-Gleichung). Der Prozess dauert so lange, bis sich die Werteänderungen der Zustände unter einen bestimmten Schwellenwert (Theta) verringern. Hindernisse im Raster führen zu einer negativen Belohnung, während das Ziel eine neutrale Belohnung bietet, wenn es erreicht wird.

Comments Off on Gridworld RL  |  Filed under: teaching  |  Tags: software

Algorithms – Visualisation

By jannis on January 9, 2025
Algorithms – Visualisation

Visualisation-animation of BSTs, B-Trees and Red-Black-Trees. A modified version of David Galles’ visualisation of BSTs, B-Trees and Red-Black-Trees

tree-visualisation

A modification of David Galles’ visualisation

Manual

  • Insert: Enter one or more numbers between 0 and 999. Separate them with your favorite non-digit character sequence. Press Insert.
  • Delete: Enter a number. Press Delete.
  • Find: Enter a number. Press Find.
  • Polulate randomly: Enter a count between 1 and 99. Press Random.
  • In-order deth first search: Press Print.
  • Export to SVG: Press Save.

Visualisations

  • Binary Search Tree
  • B-Tree
  • Red-Black-Tree

Modifications

Functional

General

  • Multiple values can be inserted at once (values can be separated by any non-digit character, causing that…)
  • Only numbers can be added
  • Maximum value is 999.
  • A number of random values between 000 and 999 can be inserted
  • Trees can be exported to SVG.

B-Trees

  • Changed degree notation to be in line with Cormen et al. – Introduction to Algorithms

Visual

  • Color theme changed
  • Canvas font size increased

No Comments »  |  Filed under: software released, teaching  |  Tags: software

ODE: Euler vs RK4

By jannis on January 9, 2025
ODE: Euler vs RK4
Numerische Lösungsmethoden

Numerische Lösungsmethoden für ODEs

Vergleich von Euler- und Runge-Kutta-4-Methoden

  1. Eingabefeld für die DGL:
    • Der Benutzer kann eine beliebige DGL der Form y' = f(t, y) eingeben, z. B. -2 * y, t * y, Math.sin(t) * y, usw.
    • Die eingegebene DGL wird in eine JavaScript-Funktion umgewandelt.
  2. Dynamische Aktualisierung:
    • Wenn der Benutzer die DGL ändert, wird die Funktion f(t, y) neu erstellt, und die numerischen Lösungen werden neu berechnet.

Comments Off on ODE: Euler vs RK4  |  Filed under: software released, teaching  |  Tags: software

Gradientenabstieg

By jannis on January 9, 2025
Gradientenabstieg
Gradient Descent Visualisierung

Gradient Descent Visualisierung

Interaktive Visualisierung des Gradientenabstiegsverfahrens

Beispiel:

  • Geben Sie w ** 2 als Kostenfunktion ein, um das ursprüngliche Beispiel zu reproduzieren.
  • Ändern Sie die Kostenfunktion zu Math.sin(w), um eine andere Funktion zu testen.
  • Passen Sie die Lernrate, die Anzahl der Iterationen und den Startwert an, um den Gradientenabstieg zu optimieren.
Comments Off on Gradientenabstieg  |  Filed under: software released, teaching  |  Tags: software

DH-Paramter Simulator

By jannis on November 8, 2020
DH-Paramter Simulator

Interactive simulation of the Dennavit Hardenberg convention for open chain manipulators (robot arms)

DH – Simulator Download

No Comments »  |  Filed under: software released, teaching  |  Tags: software

Matlab Robot Simulator

By jannis on December 26, 2017

Matlab simulator implementing the closed form solution for the inverse kinematics problem for multi redundant open chain manipulators.

Download-Link:

Download MRobot

Comments Off on Matlab Robot Simulator  |  Filed under: software released  |  Tags: software

Dynamical System Simulator

By jannis on November 16, 2013

Dynamical System Simulator

The DynSys-Simulator implement a numerical solution for dynamical systems used in the attractor dynamics approach to robotics. Position, range and number of attractors and repellors can be changed interactively while the phase plot is updated in an closed loop. The simulator visualizes the behavior of the dynamical systems and can give an intuition how it is utilized for the generation of trajectories for mobile robots and redundant manipulators.

Download-Link:

Download DynSys-Simulator

Comments Off on Dynamical System Simulator  |  Filed under: software released  |  Tags: software

Copyright © Ioannis Iossifidis 2020 iLab: From Brain to Machine and Back.

Theme: Oceanly by ScriptsTown

We use cookies on our website to give you the most relevant experience by remembering your preferences and repeat visits. By clicking “Accept All”, you consent to the use of ALL the cookies. However, you may visit "Cookie Settings" to provide a controlled consent.
Cookie SettingsAccept All
Manage consent

Privacy Overview

This website uses cookies to improve your experience while you navigate through the website. Out of these, the cookies that are categorized as necessary are stored on your browser as they are essential for the working of basic functionalities of the website. We also use third-party cookies that help us analyze and understand how you use this website. These cookies will be stored in your browser only with your consent. You also have the option to opt-out of these cookies. But opting out of some of these cookies may affect your browsing experience.
Necessary
Always Enabled
Necessary cookies are absolutely essential for the website to function properly. These cookies ensure basic functionalities and security features of the website, anonymously.
CookieDurationDescription
cookielawinfo-checkbox-analytics11 monthsThis cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Analytics".
cookielawinfo-checkbox-functional11 monthsThe cookie is set by GDPR cookie consent to record the user consent for the cookies in the category "Functional".
cookielawinfo-checkbox-functional11 monthsThe cookie is set by GDPR cookie consent to record the user consent for the cookies in the category "Functional".
cookielawinfo-checkbox-necessary11 monthsThis cookie is set by GDPR Cookie Consent plugin. The cookies is used to store the user consent for the cookies in the category "Necessary".
cookielawinfo-checkbox-necessary11 monthsThis cookie is set by GDPR Cookie Consent plugin. The cookies is used to store the user consent for the cookies in the category "Necessary".
cookielawinfo-checkbox-others11 monthsThis cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Other.
cookielawinfo-checkbox-performance11 monthsThis cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Performance".
cookielawinfo-checkbox-performance11 monthsThis cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Performance".
viewed_cookie_policy11 monthsThe cookie is set by the GDPR Cookie Consent plugin and is used to store whether or not user has consented to the use of cookies. It does not store any personal data.
viewed_cookie_policy11 monthsThe cookie is set by the GDPR Cookie Consent plugin and is used to store whether or not user has consented to the use of cookies. It does not store any personal data.
Functional
Functional cookies help to perform certain functionalities like sharing the content of the website on social media platforms, collect feedbacks, and other third-party features.
Performance
Performance cookies are used to understand and analyze the key performance indexes of the website which helps in delivering a better user experience for the visitors.
Analytics
Analytical cookies are used to understand how visitors interact with the website. These cookies help provide information on metrics the number of visitors, bounce rate, traffic source, etc.
Advertisement
Advertisement cookies are used to provide visitors with relevant ads and marketing campaigns. These cookies track visitors across websites and collect information to provide customized ads.
Others
Other uncategorized cookies are those that are being analyzed and have not been classified into a category as yet.
SAVE & ACCEPT