Artificial Intelligence Methods for Social Good (Spring 2019)


Some lectures will be recorded and can be accessed through Panopto with an Andrew ID.

Basic Information

Meeting Days, Times, Location: Tue/Thu 10:30am-11:50am, GHC 4307
Semester: Spring, Year: 2019
Units: 9/12, Section(s): 17-737/17-537

Instructor information

Name Dr. Fei Fang
Contact Info Email:
Office location Wean Hall 4126
Office hours Tue 1pm-2pm

TA Information

TA name Shurui Zhou
TA Contact Info Email:
Office location Wean Hall 3130
Office hours  Thu 3pm-4pm

Course Description

The rapid advance in artificial intelligence (AI) has opened up new possibilities of using AI to tackle the most challenging societal problems today. This course brings together a set of advanced AI methods that allow us to address such challenges and promote social good. We will cover a wide range of topics in AI, including:

  • Optimization [OPT]: convex optimization, mathematical programming
  • Game theory and mechanism design [GT]: computational game theory, mechanism design with and without money, human behavior modeling
  • Machine Learning [ML]: classification, clustering, probabilistic graphical models, deep learning
  • Sequential Decision Making [RL]: Markov Decision Processes (MDPs), partially observable MDPs, online planning, reinforcement learning

In addition to providing a deep understanding of these methods, the course will introduce which societal challenges they can tackle and how, in the areas of (i) healthcare, (ii) social welfare, (iii) security and privacy, (iv) environmental sustainability. The course will also cover special topics such as AI and Ethics.

The course content is designed to not have too much overlap with other AI courses offered at CMU. Although the course is listed within SCS, it should be of interest to students in several other departments, including ECE, EPP and SDS.

(9 Unit) The students in this 9-unit course are expected to have taken at least three mathematics courses covering linear algebra, calculus, and probability. The students will work in groups on a systematic literature review or a project exploring the possibility of applying existing AI tools to a societal problem, with a survey paper or technical report and presentation delivered at the end of the semester.

(12 Unit) This 12-unit course is only open to graduate students (master and Ph.D. students) with previous programming experience and background knowledge in artificial intelligence. The students will work in groups on a research project with a research-style paper and an oral presentation delivered at the end of the semester. Please see the instructor if you are unsure whether your background is suitable for the course.

Learning Objectives

At the end of the course, the students should be able to

  • Identify societal challenges that can potentially be tackled by AI methods, and determine which AI methods can be applied
  • Describe the AI methods covered in the course, including the basic concepts, the key algorithms, and the commonly-used implementation of the methods
  • Model the societal challenges as mathematical problems that AI techniques can be applied and propose how to adjust and modify the AI techniques to fit the problems
  • Describe the evaluation criteria and methodologies of applying AI methods for social good
  • Deliver written and oral presentation on research projects or research survey

Course Schedule (Blue Lines Subject to change)

Date Theme/Topic HW Due Class Material and Reference
1/15 (Tue) Lecture 0: Introduction, Logistics, Course Project
1/17 (Thu) Lecture 1 [OPT1]: Optimization Problems

Cover: Convex optimization, Linear Programming (LP) and Mixed Integer Linear Programming (MILP)

Convex Optimization, Chapters 1-4

Stephen Boyd and Lieven Vandenberghe (Cambridge University Press)

Applied Mathematical Programming, Chapters 2, 9

Bradley, Hax, and Magnanti (Addison-Wesley, 1977)

1/22 (Tue) Lecture 2 [OPT2]: Conservation Planning

Cover: Wildlife corridor design

(PRA1) Solving Connected Subgraph Problems in Wildlife Conservation

Bistra Dilkina & Carla P. Gomes

Trade-offs and efficiencies in optimal budget-constrained multispecies corridor networks

Bistra Dilkina, Rachel Houtman, Carla P. Gomes, Claire A. Montgomery, Kevin S. McKelvey, Katherine Kendall, Tabitha A. Graves, Richard Bernstein, Michael K. Schwartz

Robust Network Design for Multispecies Conservation

Ronan Le Bras, Bistra Dilkina, Yexiang Xue, Carla P. Gomes, Kevin S. McKelvey, Michael K. Schwartz, Claire A. Montgomery

1/24 (Thu) Lecture 3 [ML1]: Deep Learning

Cover: Neural Networks, Convolutional NN (CNN), Faster RCNN, Detecting human and wildlife from UAV videos

Deep Learning, Chapter 6, 9

Ian Goodfellow and Yoshua Bengio and Aaron Courville

Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks

Shaoqing Ren, Kaiming He, Ross Girshick, Jian Sun

SPOT Poachers in Action: Augmenting Conservation Drones with Automatic Detection in Near Real Time

Elizabeth Bondi, Fei Fang, Mark Hamilton, Debarun Kar, Donnabell Dmello, Jongmoo Choi, Robert Hannaford, Arvind Iyer, Lucas Joppa, Milind Tambe, Ram Nevatia


1/29 (Tue) Lecture 4 [ML2]: Applications of Deep Learning

Cover: Deep learning for developing countries

HW0 due (PRA2) Combining satellite imagery and machine learning to predict poverty

Neal Jean, Marshall Burke, Michael Xie, Matthew Davis, David B. Lobell, Stefano Ermon

Deep Gaussian Process for Crop Yield Prediction Based on Remote Sensing Data

Jiaxuan You, Xiaocheng Li, Melvin Low, David Lobell, Stefano Ermon

1/31 (Thu) Lecture 5 [GT1]: Basics of Game Theory

Cover: Minimax theory, Nash Equilibrium, Stackelberg Equilibrium

HW1 due Algorithmic Game Theory, Chapters 1-3

Editors: Noam Nisan,‎ Tim Roughgarden, Eva Tardos,‎ Vijay V. Vazirani (Cambridge University Press)


2/5 (Tue) Lecture 6 [GT2]: Security Games

Cover: Ferry protection, ranger patrol planning

(PRA3) Deployed ARMOR Protection: The Application of a Game Theoretic Model for Security at the Los Angeles International Airport

James Pita, Manish Jain, Janusz Marecki, Fernando Ordóñez, Christopher Portway, Milind Tambe, Craig Western, Praveen Paruchuri, Sarit Kraus

Optimal Patrol Strategy for Protecting Moving Targets with Multiple Mobile Resources

Fei Fang, Albert Xin Jiang, Milind Tambe

Deploying PAWS: Field Optimization of the Protection Assistant for Wildlife Security

Fei Fang, Thanh H. Nguyen, Rob Pickles, Wai Y. Lam, Gopalasamy R. Clements, Bo An, Amandeep Singh, Milind Tambe, Andrew Lemieux

2/7 (Thu) Lecture 7 [Ethics]: Guest Lecture by Prof. David Danks

Cover: AI and Ethics

2/12 (Tue) Lecture 8 [RL1] Markov Decision Process (MDP)

Cover: Policy iteration, Value iteration



Reinforcement Learning: An Introduction, Chapter 3

Richard S. Sutton and Andrew G. Barto


2/14 (Thu) Lecture 9 [RL2] Policy Gradient

Cover: Policy Gradient Theorem, Fictitious Play, Policy learning in games, Forest protection

Project Proposal due Policy Learning for Continuous Space Security Games using Neural Networks

Nitin Kamra, Umang Gupta, Fei Fang, Yan Liu, Milind Tambe

2/19 (Tue) Lecture 10 [RL3]: Partially Observable MDPs

Cover: Online Planning, Monte-Carlo Tree Search (MCTS)

Planning and acting in partially observable stochastic domains

Leslie Pack Kaelbling, Michael L. Littman, Anthony R. Cassandra

Monte-Carlo Planning in Large POMDPs

David Silver, Joel Veness

Bandit based Monte-Carlo Planning

Levente Kocsis and Csaba Szepesvari

2/21 (Thu) Lecture 11 [ML3]: Regression

Cover: Linear Regression, Regularization, Kernel Regression



Pattern Recognition and Machine Learning, Chapters 3, 6

Christopher Bishop



2/26 (Tue) Lecture 12 [OPT3]: Guest Lecture by Prof. Tuomas Sandholm

Cover: Kidney exchange

HW3 due FutureMatch: Combining Human Value Judgments and Machine Learning to Match in Dynamic Environments.

Dickerson, J. and Sandholm, T.

In Proceedings of the AAAI Conference on Artificial IntelligenceExtended version with appendix.

Position-Indexed Formulations for Kidney Exchange.

Dickerson, J., Manlove, D., Plaut, B., Sandholm, T., and Trimble J.

In Proceedings of the ACM Conference on Economics and Computation (EC)Extended version.

2/28 (Thu)  

Lecture 13 [OPT4]: Influence Maximization

Cover: Influence propagation models, submodular function optimization

Maximizing the spread of influence through a social network

David Kempe, Jon Kleinberg, Éva Tardos

Submodular Functions: Extensions, Distributions, and Algorithms. A Survey

Shaddin Dughmi

Information and Influence Propagation in Social Networks

Wei Chen, Laks V.S. Lakshmanan, Carlos Castillo

3/5 (Tue)  


Lecture 14 [ML4]: Classification, Clustering, Probabilistic Graphical Models

Cover: Decision trees, k-means, Gaussian Mixture Models (GMMs), Dynamic Bayesian Networks (DBNs), Markov Random Fields (MRFs)

Pattern Recognition and Machine Learning, Chapters 4, 8, 9

Christopher Bishop


3/7 (Thu) Lecture 15 [ML5]: Guest Lecture by Prof. Norman Sadeh

Cover: Livehoods: understand city using social media

The Livehoods Project: Utilizing Social Media to Understand the Dynamics of a City

Justin Cranshaw Raz Schwartz Jason I. Hong Norman Sadeh

3/12 (Tue) Spring Break, no class  HW4 due
3/14 (Thu) Spring Break, no class
3/19 (Tue)  


Lecture 16 [OPT5]: Guest Lecture by Amulya Yadav

Cover: AI and Social Work; HIV prevention among homeless youth


Using Social Networks to Aid Homeless Shelters: Dynamic Influence Maximization under Uncertainty

Amulya Yadav, Hau Chan, Albert Jiang, Haifeng Xu, Eric Rice, Milind Tambe

Influence Maximization in the Field: The Arduous Journey From Emerging to Deployed Application

Amulya Yadav, Bryan Wilder, Eric Rice, Robin Petering, Jaih Craddock, Amanda Yoshioka-Maxwell, Mary Hemler, Laura Onasch-Vera, Milind Tambe, Darlene Woo

Uncharted but not Uninfluenced: Influence Maximization with an Uncertain Network

Bryan Wilder, Amulya Yadav, Nicole Immorlica, Eric Rice, Milind Tambe

3/21 (Thu) Lecture 17 [GT3]: Human Behavior Modeling

Cover: Prospect theory, Quantal response


HW5 due

Project Progress Report due


Comparing Human Behavior Models in Repeated Stackelberg Security Games: An Extended Study

Debarun Kar, Fei Fang, Francesco M. Delle Fave, Nicole Sintov, Milind Tambe, Arnaud Lyet

Improving Resource Allocation Strategy Against Human Adversaries in Security Games

Rong Yang, Christopher Kiekintveld, Fernando Ordonez, Milind Tambe, Richard John

Predicting human behavior in unrepeated, simultaneous-move games

James R. Wright, Kevin Leyton-Brown


3/26 (Tue)  



Lecture 18 [OPT6]: Combinatorial Optimization and Robust Optimization

Cover: Duality, branch and price, maximin model, minimax regret, prevent illegal fishing





Combinatorial Optimization: Algorithms and Complexity, Chapters 3

Christos H. Papadimitriou,‎ Kenneth Steiglitz

Branch-and-price: Column generation for solving huge integer programs

Cynthia Barnhart, Ellis L. Johnson, George L. Nemhauser, Martin W. P. Savelsbergh, Pamela H. Vance

Robust protection of fisheries with COmPASS

William Haskell, Debarun Kar, Fei Fang, Milind Tambe, Sam Cheung, Elizabeth Denicola

3/28 (Thu) Lecture 19 [OPT7]: Guest Lecture by Prof. Jun Zhuang

Cover: Fire Management

Project Progress Report due (TBD)

Analysis of fire protection efficiency in the United States: a two-stage DEA-based approach

Feng Li, Qingyuan Zhu, Jun Zhuang

4/2 (Tue)  

Lecture 20 [ML6]: Predict Illegal Activities

Cover: Predict poaching threat, predict urban crime

Keeping Pace with Criminals: An Extended Study of Designing Patrol Allocation against Adaptive Opportunistic Criminals

Chao Zhang, Shahrzad Gholami, Debarun Kar, Arunesh Sinha, Manish Jain, Ripple Goyal, Milind Tambe

Taking it for a Test Drive: A Hybrid Spatio-temporal Model for Wildlife Poaching Prediction Evaluated through a Controlled Field Test

Shahrzad Gholami, Benjamin Ford, Fei Fang, Andrew Plumptre, Milind Tambe, Margaret Driciru, Fred Wanyama, Aggrey Rwetsiba, Mustapha Nsubaga, Joshua Mabonga

Cloudy with a Chance of Poaching: Adversary Behavior Modeling and Forecasting with Real-World Poaching Data

Debarun Kar, Benjamin Ford, Shahrzad Gholami, Fei Fang, Andrew Plumptre, Milind Tambe, Margaret Driciru, Fred Wanyama, Aggrey Rwetsiba

CAPTURE: A New Predictive Anti-Poaching Tool for Wildlife Protection

Thanh H. Nguyen, Arunesh Sinha, Shahrzad Gholami, Andrew Plumptre, Lucas Joppa, Milind Tambe, Margaret Driciru, Fred Wanyama, Aggrey Rwetsiba, Rob Critchlow, Colin Beale

4/4 (Thu) Lecture 21 [RL4]: Ecosystem Management

Cover: Invasive species management

Simulator-Defined Markov Decision Processes: A Case Study in Managing Bio-invasions

HJ Albers, TG Dietterich, KM Hall, KD Lee, and MA Taleghan

PAC Optimal MDP Planning with Application to Invasive Species Management

Majid Alkaee Taleghan, Thomas G. Dietterich, Mark Crowley, Kim Hall, H. Jo Albers

PAC Optimal Planning for Invasive Species Management: Improved Exploration for Reinforcement Learning from Simulator-Defined MDPs

Thomas G. Dietterich, Majid Alkaee Taleghan, Mark Crowley

4/9 (Tue) Lecture 22 [OPT8] Key Challenges in Applications

Cover: Housing for homeless youth

Robust Multiclass Queuing Theory for Wait Time Estimation in Resource Allocation Systems

Chaithanya Bandi, Nikolaos Trichakis, Phebe Vayanos

4/11 (Thu) No class
4/16 (Tue) Lecture 23 [GT4]: Mechanism Design with Money

Cover: Auction, Truthfulness, Price-of-Anarchy

Slides (pdf)

Algorithmic Game Theory, Chapters 9, 11

Editors: Noam Nisan,‎ Tim Roughgarden, Eva Tardos,‎ Vijay V. Vazirani (Cambridge University Press)

4/18 (Thu) Lecture 24 [GT5]: Spatio-Temporal Pricing in Ridesharing Platforms

Cover: scheduling and pricing, competitive equilibrium

Spatio-Temporal Pricing for Ridesharing Platforms

Hongyao Ma, Fei Fang, David C. Parkes

4/23 (Tue) Lecture 25 [GT6]: Guest Lecture by Prof. Kevin Leyton-Brown

Cover: Mechanism design for social good

4/25 (Thu) Lecture 26 [ML7]: Guest Lecture by Prof. Alexander Hauptmann

Cover: Multimedia analysis for Human Rights and Public Safety

 HW7 due TBD
4/30 (Tue) Course Project Presentation (Poster) 4405 GHC and the 4404 lobby area
5/2 (Thu) Course Project Presentation (Oral)  
5/10 (Fri) Final Project Report due  


The final course grade will be calculated using the following categories:

Assessment Percentage of Final Grade
Class participation 10 points
Paper Summaries 20 points
Written Answers Assignment 20 points
Final Project 50 points
  • Class participation. The grading of the class participantion will be mostly based on attendance, checked by in-class quizzes and asking and answering questions in class. Other factors include asking and answering questions on Canvas.
  • Paper reading assignment. The course will require all students to complete weekly paper reading assignments individually. In each assignment, the students are required to provide a summary of the paper/article, a list of questions, and a few brainstorming ideas. The assignments will be submitted through Canvas and will be peer-reviewed, but the final score will be provided by the instructor and the TA. For each student, the lowest scored assignment will be dropped.
  • Written answers assignment. The course will require all students to complete biweekly written answers assignment individually. Each written answers assignment will involve checking the understanding of basic concepts and working through the algorithms presented in class on example problems. Most questions are multiple-choice questions or numerical answer questions. In addition to providing the answers, the students are required to provide explanations to the answers. The answers will be submitted and auto-graded through Canvas. The explanations will be checked through peer review. For each student, the lowest scored assignment will be dropped.
  • Final project. The students will work in small groups (1-3 students in each group). The students are expected to focus on one or more societal challenges, summarize or propose models and AI-based solutions to tackle the challenges and evaluate the solutions. The students are required to submit the project report through Canvas and deliver an oral presentation. The instructor will provide suggested project topics. The students can also propose their own projects topics related to AI and Social Good but they will need consent from the instructor. The progress of projects will be checked through the Project Proposal, Project Progress Report, Project Presentation, and Final Project Report. The proposal and progress report will be peer-reviewed. The presentation and the final report will be evaluated by the instructor and TA directly.
  • The students who choose the 12-unit section will work on a research project, with a research-style paper and an oral presentation delivered at the end of the semester. Ph.D. students may choose a paper format with the guidance of their advisors. For master students, a sample research-style paper can be found here:
  • The students who choose the 9-unit section will work on a systematic literature review or a project exploring the possibility of applying existing AI tools to a social good problem, with a survey paper or technical report and presentation delivered at the end of the semester.

Students will be assigned the following final letter grades, based on calculations coming from the course assessment section.