Reinforcement Learning (RL) is a Machine Learning (ML) paradigm that focuses on goal-directed learning from interactions. In particular, it is learning how to map situations to actions by maximizing a scalar reward signal. RL is studied in other disciplines such as game theory, robotics, operations research, and multi-agent systems. It has roots in psychology and the advancements in psychology contributed to the advancements of RL and vise versa. It has been existing for some years, has been highlighted, and gained again the attention of ML researchers in recent years, especially in terms of Deep Reinforcement Learning (DRL). In this course, we will cover the difference between RL and other ML paradigms such as supervised learning and unsupervised learning, exploration and exploitation dilemma, main elements of RL systems, model-free, and model-based methods, planning, control and how to design RL algorithms to RL problems.