Avatar

Chadi Salmi

Software Engineer
Passionate MSc graduate in the field of autnonomous driving / cognitive robotics.

Self Introduction

Hello, my name is Chadi Salmi born and raised in Rotterdam the Netherlands. I enjoy building things, especially using computers! I’m also fascinated by AI and MachineLearning. I’ve been lucky to have the opportunity to work on both these passions in my MSc and other projects.

Curriculum Vitea

Education

MSc Cognitive Robotics

Technical University Delft · The Netherlands
2017 - 2021

Relevant Courses: Robot Motion Planning, Deep Learning, Machine Learning, Robitcs Practicals, 3D Robot Vision, Artificial Intelligence Techniques, Vehicles Dynamics, Object Oriented Programming in C++, Intelligent Vehicles, Computer Vision, Control System Design

Thesis

  • Title: Learning pedestrian prediction models from online observations.
  • Supervisors: Dr. Javier Alonso-Mora, Phd. Bruno de Brito
  • Paper: Thesis

BSc Mechanical Engineering

Technical University Delft · The Netherlands
2014 - 2017

Minor

  • Topic: Electrical engineering for autonomous exploration robots
  • Summary: Implementation of an autonomous track following robot by programming in hardware description language (VHDL) on an FPGA programmable microprocessor. Design of a power circuit that charges the battery of the robot using a solar panel.

Thesis

  • Title: Active control of magnetorheological fluid journal bearings, to achieve a constant friction model.
  • Suverpisor:

Experience

Coginitive Robotics Lab Assistant

Technical University Delft · The Netherlands
2021 - Present
Worked on a complex mobile robot platform, including Lidar and five camera setup providing 360° coverage. My work consisted of helping with the development and implementation of thing like: A robust MPC-based motion planning algorithm, Localization and map building, and a Pedestrian Detection and Tracking Algorithm.

Chief Mechatronics

2018 - 2019
Led the efforts to convert the award-winning 2018 Formula Student Delft electric racecar to driverless. This includes tasks like: Incorporating multiple Cameras, a Lidar, an Embedded compute unit, Steering actuation, Emergency braking, and a Battery re-design.

Motion planning engineer

2018 - 2019
Research and implementation of state-of-the-art motion planning algorithm to control a driverless racecar. Test algorithms within a gazebo simulator with ROS. Implement algorithms on an embedded compute unit to control a full-size formula student driverless racecar.

Pages

Formula student driverless

What is formula student? Studying at the Mechanical Engineering building at the TU Delft, formula student is a well known term. In Delft, every year a group of highly motivated students put their studies on hold to build a race car completely from scratch! They don’t just build it for the heck of it, but the goal is to make a better car than competing univserities throughout the world and win first place in multiple student engineering competitions.
2021-01-01
2 min read

Generalized Linear Models

In my previous posts I have talked about linear and logistic regression. Today I will talk about the broader family of models to which both methods belong Generalized Linear Models. To work our way up to GLMs, we will begin by defining the exponential family. The exponential family: A class of distributions is in the exponential family if it can be written in the form: $$ p(y;\eta) = b(y) \text{exp}(\eta^T T(y) - \alpha(\eta)) $$ More information can be found here
2020-02-17
4 min read

Logistic Regression

Logistic regression Logistic regression unlike linear regression is well suited for classification type problems. The difference lies in the way data is fitted, instead of a linear (hyper)plane it is fitted using the following exponential function (also known as the sigmoid function): \[\begin{aligned} h_{\theta}(x) = \dfrac{1}{1 + \exp{(-\theta^Tx)}} \end{aligned}\] This function has the nice property that, its output is bound between zero and one. This is a usefull property when trying to model the (posterior) probability of something.
2020-01-15
3 min read

Linear Regression

The linear regression algorithm works by trying to predict the class label directly given an object. It tries to fit a (hyper)plane as good as possible through all the training examples, so that the output of the hyperplane $y$ predicts the class label. As you may have noticed the label $y$ will be predicted as a continuous value on the hyper plane. This makes it a pretty horrible fit for a (binary) classification problem, where the class label is discrete.
2020-01-12
4 min read

Naive Bayes

Naive Bayes All generative algorithms mentioned above try to model the multivariate class conditional distribution over all features. However when the shear amount of features becomes to large, the number of parameters needed to model the distribution will become infeasible in practice. A Gaussian function for example scales $O(n + n^2) \simeq O(n^2)$ with amount of features. The Naive Bayes classifier will therefore make a very strong assumption. All $x_i’s$ are considered conditionally independent given $y$.
2019-12-25
1 min read