2021 Discrete Optimization

Font size  SML

Register update notification mail Add to favorite lecture list
Academic unit or major
Graduate major in Mathematical and Computing Science
Sumita Hanna  Yamashita Makoto 
Course component(s)
Lecture    (ZOOM)
Day/Period(Room No.)
Mon3-4()  Thr3-4()  
Course number
Academic year
Offered quarter
Syllabus updated
Lecture notes updated
Language used
Access Index

Course description and aims

This course introduces a mathematical structure called matroids. To solve discrete optimization problems efficiently, we need to investigate structure of problems. A matroid, which is an abstraction of the notion of linear independence in vector spaces, is a fundamental structure in discrete optimization theory. This course begins with the definition and characterizations of matroids, and then shows properties of matroids and algorithms to solve discrete optimization problems with a matroid structure. The course also explains related topics and concepts such as the polyhedral aspects of matroids and submodular functions.

The aim of this course is to let students recognize that the matroid structure is essential for solving discrete optimization problem. It is often said that matroids appear in most of efficiently solvable discrete optimization problems. Knowledge on structures behind efficiently solvable problems will help you to solve your problem efficiently as much as possible.

Student learning outcomes

The goals of this course are the following.
1. Students explain basic properties of matroids and the importance in discrete optimization theory
2. Students recognize basic discrete optimization problems having matroid structures
3. Students explain algorithms for basic discrete optimization problems having matroid strictures


discrete optimization, combinatorial optimization, matroid, submodular function, graph algorithm, polyhedron

Competencies that will be developed

Specialist skills Intercultural skills Communication skills Critical thinking skills Practical and/or problem-solving skills

Class flow

In each class we focus on one topic. Students review the topic by taking quizzes during the class.

Course schedule/Required learning

  Course schedule Required learning
Class 1 Introduction, graph theory basics Grasp overview of this course
Class 2 Axiom and characterizations of matroids
Class 3 Graphs and matroids
Class 4 Operations for matroids
Class 5 Maximum weight independent set problem
Class 6 Matroid intersection
Class 7 Matroid intersection theorem
Class 8 Matroid union
Class 9 Applications of matroids (1)
Class 10 Applications of matroids (2)
Class 11 Integer polyhedra
Class 12 Independent set polytope
Class 13 Polymatroids
Class 14 Submodular functions Final report

Out-of-Class Study Time (Preparation and Review)

To enhance effective learning, students are encouraged to spend approximately 100 minutes preparing for class and another 100 minutes reviewing class content afterwards (including assignments) for each class.
They should do so by referring to textbooks and other course material.


We do not assign textbooks. We will use course materials that are based on the following books.

Reference books, course materials, etc.

Alexander Schrijver: Combinatorial Optimization - Polyhedra and Efficiency, Springer, 2003.
伊理正夫,藤重 悟,大山達夫:グラフ・ネットワーク・マトロイド,産業図書,1986年.(in Japanese)

Assessment criteria and methods

Students will be assessed by reports and quizzes.

Related courses

  • MCS.T322 : Combinatorial Algorithms

Prerequisites (i.e., required knowledge, skills, courses, etc.)

Undergraduate level of linear algebra and linear programming is required. Basic knowledge on graph theory is desirable.

Page Top