Tamás Takács, Zoltán Barta
13 min read
Collective Intelligence
2024/25/2
I have compiled all the practice materials for the Collective Intelligence course, which I teach alongside my PhD colleague, Zoltán Barta, at Eötvös Loránd University. The course materials for practical work are still in development and relatively minimal at this stage. However, I would like to make these resources publicly available so that students can easily access them during the course and afterward.
Please note that the materials may contain small mistakes, typos, or even implementation bugs. I would appreciate any notifications about these issues sent to my email.
Practice Content
A PDF version of each HTML document is also available; however, we recommend utilizing the HTML practice material, as it is interactive, unlike the static nature of PDFs. For the first assignment defense, every student will be required to submit their complete implementation in .nlogo format and prepare a concise presentation on their work. For the second assignment, all students will collaborate on a GitHub project hosted on CI GitHub Organization. The same rules apply to the second assignment regarding presentation requirements.
1. Practice
Course introduction, course technical and administrative details.
2. Practice
Introduction to NetLogo and the Logo programming language.
3. Practice
Introduction to NetLogo Models Library and simulations.
4. Practice
Designing NetLogo models from scratch. Design principles.
5. Practice
Assignment defense and presentations.
6. Practice
Introduction to Games and Models for Multi-Agent Interactions.
10. Practice
Introduction to the Centralized Training Decentralized Execution (CTDE) Framework.
Assignments
The course is structured around two core assignments. The first is an open-ended project focused on ideation and the development of an agent-based model. The second is a small enterprise-level group project in which students collaboratively design and implement a solution for a multi-agent reinforcement learning environment of their choice.
2. Assignment
Development of various MARL projects utilizing TorchRL. Deadline: May 14th 11:59 PM
Exams
The grade is determined by the results of two assignments, which together create a composite grade. Additionally, to receive this grade, students must pass an exam based on the lecture material. These exams are administered by the Course Owner, László Gulyás. Here are some examples of the exams:
Course Syllabus
Schedule
- Practice: Thursdays, 10:00 AM - 12:00 PM
- Location: North Building, Room 7.89 (Bosch Lab)
Note:
- Hungarian: Északi Tömb 7.89 (Bosch Labor)
- Card access is required, please contact us when you arrive
Description
This course is designed to provide students with an in-depth exploration of topics related to Collective Intelligence. Students will learn about agents, agent-based systems, and Multi-Agent Systems, along with their relevance to real-life dynamics and systems.
Participants will gain a comprehensive understanding of the Logo programming language and the NetLogo software, which will enable them to create simulations using agent-based modeling. Additionally, the course covers Game Theory, Algorithmic Game Theory, and foundational algorithms such as Minimax Q-Learning, Nash Q-Learning, Fictitious Play, and Neural Replicator Dynamics.
This course is designed to provide students with an in-depth exploration of Deep Learning, particularly focusing on Neural Network architectures. Throughout the semester, students will gain a comprehensive understanding of how Deep Neural Networks work, from the fundamental theory behind their design to practical implementation skills. The course primarily covers Supervised Deep Learning techniques and equips students with hands-on experience using PyTorch, a popular Deep Learning framework. By working through practices and assignments in PyTorch, students will learn to build, train, and optimize neural networks effectively.
Moreover, students will delve into Multi-Agent Reinforcement Learning using the TorchRL framework. They will create simple systems utilizing the IPPO and IDQN algorithms to tackle toy and benchmark problems. Throughout the course, students will learn how to tune reward systems, debug multi-agent reinforcement learning (MARL) systems, perform environment transformations, and implement feature extractor networks.
Grading
Your final grade is calculated using the formula below:
Final Score = Assignment 1 (30 points) + Assignment 2 (70 points)
Final Score Range | Grade |
---|---|
> 85 | 5 |
75 - 85 | 4 |
65 - 74 | 3 |
40 - 64 | 2 |
< 40 | Fail |
- Pass required on a final written exam from the lecture material (Pass/Fail Exam)
Prerequisites
- Python
- Linear Algebra
- Reinforcement Learning Concepts
- Deep Learning Concepts
Tools and Frameworks
- Programming Language: Python, Logo
- Frameworks: PyTorch, TorchRL
- Libraries: NumPy, Gymnasium, TorchRL
- Additional Tools: Goole Colab, NetLogo
Learning Objectives
- Understand the basics of Multi-Agent Systems
- Understand the Logo programming language and the utilization of the NetLogo software
- Understand how Game Theory is connected to Collective Intelligence
- Be able to implement a MARL solution for a toy problem
Recommended Reading
- Wooldridge, M. (2009). An Introduction to Multi-Agent Systems. Wiley.
- Axelrod, R. (1984). The Evolution of Cooperation. Basic Books.
- Osborne, M. J. & Rubinstein, A. (1994). A Course in Game Theory. MIT Press.
- Russell, S. & Norvig, P. (2020). Artificial Intelligence: A Modern Approach.
- Sutton, R. S., & Barto, A. G. (2018). Reinforcement Learning: An Introduction.
- NetLogo Documentation: Center for Connected Learning and Computer-Based Modeling.
- Nisan, N., Roughgarden, T., Tardos, É., & Vazirani, V. V. (2007). Algorithmic Game Theory. Cambridge University Press.
2481 Words
01/20/2025 (Last updated: 2025-05-02 17:00:01 +0200)
f4442e5 @ 2025-05-02 17:00:01 +0200
← Back to teachings