AI and Society Project Proposal

As part of the honors version of CS343, you will complete a final project that applies artificial intelligence techniques to a societal problem that you identify. The goals of this project are to (1) give you a chance to perform research into AI techniques beyond what has been discussed in class, (2) to get hands-on experience applying AI to a real problem, and (3) to encourage thought about the intersection of society, ethics, and technology.

You project can either be based on techniques that we have discussed in class, or that you have researched on your own from books and published papers (Google Scholar is a great resource for this). It is mandatory that you work in groups of 2-4.

When choosing a problem to work on, the goal is to find a problem that you care about, that AI is well suited to solve, and that is the right scope; in other words, some piece of it should be reasonably solvable (or should at least yield a prototype of a solution) by the end of the class. Choose something that has a fairly clear path to a solution. It is great if you can find a real dataset to work with, but it is also fine to create a simple simulated toy version of a problem to experiment with. For example, if you were trying to make a better elevator scheduler (this is *not* an interesting societal problem, just an example!), you could create a simulator that generates random people, floors, and destinations.

An example of a well-scoped project might be something like the following. N food banks in Austin want to get donations from M different restaurants. However, they want to allocate the donations in a manner that is most likely to reduce spoilage (e.g. make sure the food is getting where it will be eaten the most quickly) and to also optimize for variety (based on specific features of the food items) at each food bank. This problem could be cast as a planning problem if we had a model of when/what donations come in, as well as consumption patterns, but we don't. Thus, it seems reasonable to cast it as a reinforcement learning problem. Furthermore, since humans have decent intuition for this kind of allocation problem, it might also make sense to jump-start the reinforcement learning process by first learning from some human-provided demonstrations.

Most importantly, get creative and have fun with this project! Remember that you will be presenting your final project to the class during the last 2 days of class, so choose a topic that you'll be excited to share. I wouldn't at all be surprised if a few projects turn into something real outside of class, such as an app, an idea for a startup, etc. So think big (but tractable)!

  • Submit a 1-2 page PDF (12pt font, single spaced, 1 inch margins) that addresses the following questions :
    • What societal problem do you plan to address? Why is it important?
    • What piece of this problem will you solve?
    • What kind of problem is this (supervised, reinforcement, unsupervised, etc.)?
    • What AI technique(s) will you use to solve this and why are they appropriate?
    • Where will the data come from (a real dataset, a simulator, etc.)?
    • What is the criteria for success?
    • What problems do you anticipate you might run into and how will you address them?
    • Who are all the members of your group and what will be the division of labor?
  • Grading will be based on:
    • Is the idea reasonably substantial, but also tractable?
    • Is the problem formulated in a mathematically correct manner and are the suggested techniques reasonable?
    • Was proper thought given to success criteria and possible obstacles?
    • Writing quality.
    • Length. Give some detail, but be consise, and do not go beyond two pages. Closer to one page is even better!