Teaching Activities

My teaching activities include: supervising graduate and undergraduate students, teaching classes at Tsukuba, teaching mini-courses at other institutions and companies, and coaching the ICPC programming contest team.

I am passionate about teaching and helping students develop their potential, and I love the opportunities to talk with and support creative people. I know I could be doing much more when it comes to Scientific Communication, so if you have any ideas of activities that I could help with, I'd be happy to hear them!

Student Supervision

This is the list of the students that I am currently supervising. If you want to join our group, please see this page for important information.

Name Type Topics
Jair Pereira Junior PhD Student Component-oriented Evolutionary Computation
Sara Saori Satake PhD Student Multi Agent Simulation
Felipe Junior PhD Student Procedural Generation of Narratives
Ricardo Carrilo Master Student Artificial Life, Artificial Morphology
Ryota Kamimura Master Student Evolutionary Computation for TSP
Yuuta Kobayashi Master Student Evolutionary Computation for Niche, MO problems
Takahiro Suzuki Master Student Game AI for Baba is You
Richard Alison Master Student Procedural Generation
Zikun Fang Master Student Multi Agent Simulation
Kaneshika Yuki Master Student Applied Evolutionary Computation
Luiz Fernando Master Student Graph Neural Networks
Gwenole Moison Master Student Multi Agent Simulation
Masato Notsu Undergraduate Student Virtual Creature Simulation
Yuya Iwata Undergraduate Student Evolutionary Computation
Wu Zitong Research Student Procedural Generation
Ahmed Mohammed Exchange Student Evolutionary Computation
Nouran Samer Exchange Student Evolutionary Computation
Phan Thanh Tung Exchange Student Procedural Generation

Former students are listed on the Alumni page.


I am teaching the following lectures at the University of Tsukuba. Some of these lectures have open materials: be sure to check their webpage!

  • Experiment Design for Computer Science (0AL0400): This lecture teaches basic concepts of experimentation and analysis of experimental data to novice CS researchers. Webpage
  • Topics in Computational Sciences I (0AL5402): This colloquium style lecture bring speakers from several areas to introduce new ideas for our master students.
  • Programming Challenges (GB20602): This lecture aims to improve the programming skill of our undergraduate students using programming competitions. Webpage.
  • Mathematics for Computer Science (GB13604): This lecture teaches basic mathematical concepts useful for CS majors.
  • Introduction to Information Science: Computation (GA12201): This lecture introduces different areas of CS research to 1st year undergraduate students.
  • Introduction to Programming (GA18112): This lecture teaches the basics of python programming to 1st year undergraduate students.

External Courses

I have participated in several non-regular teaching activities. Here is a short list of recent ones. A more detailed list is on the External Courses page.

  • 2019 - Introduction to Blackbox Optimization course at Jaxa Laboratory, Tsukuba;
  • 2019 - External Advisor at Binus University, Indonesia;
  • 2014 to 2019 - STEMinar project, short course for high schoolers on Game Programming and Artificial Life
  • 2018 to 2019 - "Machine Learning from Zero": extension program on machine learning by the Center for Artificial Intelligence Research, Tsukuba.