Agent Training & Control
- Self-Learning: Designed and developed the training process of two models: one that is responsible for imagining what the state of the agent would look like in the next step if it takes a specific action, and another model for determining which action should be taken in the next step to reach the target. Also integrated a curriculum learning process for both models to ensure that the agent starts learning from simple tasks first, before jumping to more difficult tasks.
Operating Systems
- CPU Scheduler with C++: Applied the most commonly used CPU Scheduling algorithms in C++ and explained the processes/threads, scheduling process, and synchronization.
- Virtual Memory with C++: A C++ implementation of a virtual memory management system simulator. This project models various page replacement algorithms, including FIFO, Random, Clock, ESC (Enhanced Second Chance), Aging, and Working Set.