The reward function of a Partially Observable Markov Decision Process is Markovian under classical settings, relying only on the previous state of the system. This project investigates both modeling and algorithmic issues associated with different methods of encoding rewards in POMDPs.
Developed a POMDP model as part of a communicative, intelligent system that guides a person in a picture description task. The project used symbolicPerseus by Pascal Poupart as the primary POMDP-solver.
A network visualizer that provides a graphical interface for users to play with various graph algorithms (network-flow, graph-traversal, Hamiltonian paths, etc.). Uses vis.js framework for graph visualization.
A simple neural network module for the Julia programming language. Implements single-layer perceptron, multi-layer perceptron, LTSM network.
Assisted in the teaching of a third-year course covering topics on the principles of programming languages. Course materials covered programming in Racket and Haskell. Held weekly lab tutorials where students can work on lab assignments and ask questions related to the course material.
Assisted in the teaching of a first-year intro course to programming as an inverted-classroom TA. Course materials covered programming in Python. Elementary data types, lists, maps. Program structure: control flow, functions, classes, objects, methods. Algorithms and problem solving. Searching, sorting, and complexity. Unit testing.
I can be reached by email at oscar[at]cs[dot]toronto[dot]edu