Artificial Intelligence Methods for Social Good (Spring 2021)

Basic Information

Course Name: Artificial Intelligence Methods for Social Good
Meeting Days, Times, Location: Tue/Thu 10:40am-12:00pm, Remote Course
Semester: Spring, Year: 2021
Units: 9/12, Section(s): 17-337/17-737

Instructor Information

Name Dr. Fei Fang
Contact Info Email:
Office location GatherTown
Office hours Tue 2:00pm-3:00pm or by appointment

TA Information

Name Ryan Shi
Contact Info Email:
Office location GatherTown
Office hours Thu 4:00pm-5:00pm or by appointment

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:

  • Search, Planning, and Optimization: planning and scheduling, convex optimization, mathematical programming;
  • Multiagent Systems: computational game theory, mechanism design, human behavior modeling;
  • Machine Learning: classification and regression, clustering, probabilistic graphical models, deep learning, 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. The students will work in groups on a project exploring the possibility of using AI to help address a societal problem, with a project report and oral presentation delivered at the end of the semester.

(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.

(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.

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 a report of the course project and present the work through an oral presentation

Course Schedule (Subject to Change)

    Last update: 4/27/21

# Date Topic Slides and References
1 2/2 (Tue) Introduction

Cover: Overview of AI for Social Good, Basics of Optimization

Artificial Intelligence for Social Good: A Survey
2 2/4 (Thu) Mathematical Programming and Conservation Planning

Cover: Mixed Integer Linear Programming (MILP), Wildlife corridor design

Applied Mathematical Programming, Ch. 2, 9

Solving Connected Subgraph Problems in Wildlife Conservation

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

Robust Network Design for Multispecies Conservation

3 2/9 (Tue)


Data-Based Prediction and Detection of Social BotsCover: Linear Regression, Decision Trees, Random Forest, Detecting social bots on Twitter Pattern Recognition and Machine Learning, Ch. 3, 4, 6

Botornot: A system to evaluate social bots

Scalable and generalizable social bot detection through data selection

4 2/11 (Thu) Guest Lecture by Ryan Shi

Title: Building a Recommemder System for Crowdsourcing Food Rescue Platforms

Cover: Neural Network, Food rescue, Recommender system

Improving Efficiency of Volunteer-Based Food Rescue Operations

A Recommender System for Crowdsourcing Food Rescue Platforms

5&6 2/16 (Tue)


2/18 (Thu)

Computational Game Theory for Security

Cover: Equilibrium concepts, Airport Protection, Ferry protection

Multiagent Systems: Algorithmic, Game-Theoretic, and Logical Foundations, Ch. 3-5

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

Optimal Patrol Strategy for Protecting Moving Targets with Multiple Mobile Resources

7 2/25 (Thu) Discussion Session 1

Cover: Discussion on how to identify problems, understand client needs, collect data

AI for Social Impact: Learning and Planning in the Data-to-Deployment Pipeline 
8&9 3/2 (Tue) & 3/4 (Thu) Reinforcement Learning for Resource (Re)Allocation

Cover: Markov Decision Process (MDP), Q-Learning, Policy Gradient, Bike repositioning, Vehicle dispatching

Reinforcement Learning: An Introduction, Chapter 3, 6, 13

Dynamic Bike Reposition: A Spatio-Temporal Reinforcement Learning Approach

Multi-Agent Reinforcement Learning for Order-dispatching via Order-Vehicle Distribution Matching

10&11 3/9 (Tue) & 3/11 (Thu)  Monte-Carlo Planning and Invasive Species Management

Cover: Partially Observable MDP, Monte-Carlo Planning, Ecosystem Management, Invasive species management

Planning and acting in partially observable stochastic domains

Monte-Carlo Planning in Large POMDPs

Bandit based Monte-Carlo Planning

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

PAC Optimal MDP Planning with Application to Invasive Species Management

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

12&13 3/16 (Tue) & 3/18 (Thu) Mechanism Design for Social Good

Cover: Auction, Truthfulness, Price-of-Anarchy, Electronic Agricultural Market, Spectrum Auction, Spatio-Temporal Pricing in Ridesharing Platforms, Auditing mechanism for food bank

Algorithmic Game Theory, Ch. 9, 11

Designing and Evolving an Electronic Agricultural Marketplace in Uganda

Economics and computer science of a radio spectrum reallocation

Allocation for Social Good: Auditing Mechanisms for Utility Maximization

14 3/23 (Tue) Scheduling and Pricing in Ridesharing Spatio-Temporal Pricing for Ridesharing Platforms
15 3/25 (Thu) Discussion Session 2

Cover: Discussion on challenges on the way to deployment, and how to evaluate AI for Social Good projects

16 3/30 (Tue) Guest Lecture by Diyi Yang: Language Technologies for Social Good
17 4/1 (Thu) Optimizing Kidney ExchangeCover: Kidney Exchange Branch-and-price: Column generation for solving huge integer programs

FutureMatch: Combining Human Value Judgments and Machine Learning to Match in Dynamic Environments [Extended version]

Position-Indexed Formulations for Kidney Exchange [Extended version]

18&19 4/6 (Tue) & 4/8 (Thu) Human-Centric Planning in Security Applications

Cover: Human Behavior Modeling, Prospect theory, Quantal response, Gaussian Mixture Models (GMMs), Dynamic Bayesian Networks (DBNs), Markov Random Fields (MRFs), wildlife conservation, preventing overfishing, reducing urban crime

Pattern Recognition and Machine Learning, Ch. 8, 9

Keeping pace with criminals: Designing patrol allocation against adaptive opportunistic criminals

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

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

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

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

Improving Resource Allocation Strategy Against Human Adversaries in Security Games

Predicting human behavior in unrepeated, simultaneous-move games

“A Game of Thrones”: When Human Behavior Models Compete in Repeated Stackelberg Security Games

Robust protection of fisheries with COmPASS

20&21 4/13 (Tue) & 4/20 (Tue) Influence Maximization through Social Network

Cover: Influence propagation models, submodular function optimization, HIV prevention

Maximizing the spread of influence through a social network

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

Information and Influence Propagation in Social Networks

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

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

Uncharted but not Uninfluenced: Influence Maximization with an Uncertain Network

22&23 4/22 (Thu) & 4/27 (Tue) Learning from Sensing Data

Cover: Basics of deep learning, Transfer Learning, Gaussian Process Regression, Poverty and crop yield prediction,

 Deep Learning, Ch. 6, 9

Combining satellite imagery and machine learning to predict poverty

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

Measuring progress towards sustainable development goals with machine learning

Gaussian Processes for Machine Learning, Chp. 2

24 4/29 (Thu) Object Detection

Cover: Object detection, detect human and wildlife from video data

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

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

24 5/4 (Tue) Course Project Presentation Session 1

Discussion: Ethical Factors in AI for Social Good

25 5/6(Thu) Course Project Presentation Session 2

Discussion: Ethical Factors in AI for Social Good

5/14 (Fri) Final Project Report due

Learning Resources

No formal textbook. Slides, references, and additional resources will be provided on Canvas.


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

Assessment Percentage of Final Grade
Class participation 10 points
Paper Reading Assignment 20 points
Online Homework 20 points
Course Project 50 points
  • Class participation. The grading of the class participation will be mostly based on attendance, checked by in-class polls 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 several paper reading assignments individually. In each assignment, the students are required to provide a summary of the paper/article,  questions, and discussion. The summary should cover “target problem”, “why is AI needed”, “intervention overview”, “data used”,  “resource needed”, “deployment status” (check Section 3.4.3 in the survey paper for reference). The discussion can be about potential improvement or future direction, or a brainstorming idea. 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.
  • Online homework. The course will require all students to complete several online homework assignments individually. Each 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 but the students need to submit explanations separately.
  • Course project. The students will work in small groups (1-3 students in each group) on a project exploring the possibility of using AI to help address a social good problem. The students are expected to focus on one or more societal challenges, propose models and AI-based solutions to tackle the challenges and evaluate the solutions. The students are required to submit a project report through Canvas and deliver a oral presentation. The progress of projects will be checked through the Project Proposal, Project Progress Report, Oral 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.
    • For students in the 12-unit section, the final report will get a full score if it is at the same level as accepted papers at AAAI-21 AI for Social Impact track (see evaluation criteria here) or NeurIPS 2019 Joint Workshop on AI for Social Good (see accepted workshop papers for track 1 here).
    • For students in the 9-unit section, the final report will get a full score if it is comparable in quality to the following sample reports: [Sample report 1][Sample report 2]
    • For all the reports, students can use the AAAI format or choose a format with the approval of the instructor.

Students will be assigned final letter grades according to the following table.

Grade Range of Points
A [90,100]
B [80,90)
C [70,80)
D [60,70)
R (F) [0,59)

Grading Policies

  • Late-work policy: All late submissions will be graded with a 0.7 discount.
  • Re-grade policy: To request a re-grade, the student needs to write an email to the instructor titled “Re-grade request from [Student’s Full Name]” within one week of receiving the graded assignment.
  • Attendance and participation policy: Attendance and participation will be a graded component of the course. The grading of the class participation 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.

Course Policies

  • Academic Integrity & Collaboration: For both paper reading assignments and written answer assignments, a student can discuss with other students, but he need to specify the names of the students he discussed with in the submission, and complete the calculations and writing of explanations, summary, and questions on his own. For the course project, the students can discuss and collaborate with others (including students, faculty members, and domain experts), but the students need to give proper credits to whoever involved, and report the contributions of each group member in the final report and presentations, which will be considered in the grading. For assignments and the course project, it is allowed to use publicly available code packages but the source of code package needs to be specified in the submission. Plagiarism is not allowed. The policy is motivated by CMU policy on academic integrity which can be found here.
  • Mobile Devices: Mobile devices are allowed in class. Cellphones should be in silent mode. Students who use tablet in upright position and laptops will be asked to sit in the back rows of the classroom.
  • Accommodations for students with disabilities: If you have a disability and require accommodations, please contact Catherine Getchell, Director of Disability Resources, 412-268-6121, If you have an accommodations letter from the Disability Resources office, I encourage you to discuss your accommodations and needs with me as early in the semester as possible. I will work with you to ensure that accommodations are provided as appropriate.
  • Statement on student wellness: As a student, you may experience a range of challenges that can interfere with learning, such as strained relationships, increased anxiety, substance use, feeling down, difficulty concentrating and/or lack of motivation. These mental health concerns or stressful events may diminish your academic performance and/or reduce your ability to participate in daily activities. CMU services are available, and treatment does work. You can learn more about confidential mental health services available on campus here. Support is always available (24/7) from Counseling and Psychological Services: 412-268-2922.