Advanced Algorithms for Undergraduate Computer Science Students; AI-Waste: Analyzing Environmental Impacts of AI Technologies in Developing Countries

Lue, Edward, School of Engineering and Applied Science, University of Virginia
Wayland, Kent, EN-Engineering and Society, University of Virginia
Vrugtman, Rosanne, EN-Comp Science Dept, University of Virginia
Fox, Alice, EN-Engineering and Society, University of Virginia

The rapid proliferation of computers in society has disrupted many aspects of life. Humanity has adapted to several of these changes, but there always are areas where we still suffer significant consequences due to the side-effects of computing. My portfolio addresses two of these areas in which we are currently struggling. In my technical project, I address the evolving requirements for coding interviews for software development jobs. The current University of Virginia (UVA) Data Structure and Algorithms courses are insufficient for the increasing rigor of coding interviews. In my project, I propose an algorithms course that expands upon the existing classes at UVA. In my STS project, I address the increasing environmental impact of artificial intelligence (AI) and the potential environmental impacts of the spread of AI to developing countries. Regulation of AI is still in its infancy while proliferation of AI technology is at its peak. My STS project analyzes the attitudes of AI companies and countries towards the environment to identify potential holes in awareness that would allow poor environmental decisions around AI.
Companies’ expectations of students’ algorithmic knowledge grows every year. To keep up with this demand, in my technical project, I propose an Advanced Algorithms course that expands upon the currently existing Algorithms class taught at UVA, which is now called Data Structures and Algorithms 2 (DSA2). My proposed course focuses on 3 topics that are important in coding interviews and are currently not taught in the Algorithms course: range query data structures, randomized techniques, and string algorithms. These topics are chosen for their ability to portray general algorithmic motifs that can be expanded to cover a broad range of algorithmic problems. The success of the class can be evaluated by examining the performance of students in mock or actual algorithmic coding interviews. We would expect that students in the class would be more likely to succeed in these interviews. After the class is created, it is important that the class is kept up to date. The algorithms taught in the class should be updated with the evolving needs of the students and demands of employers.
AI algorithms allow computers to perform tasks they otherwise would not be able to perform. However, the training and use of AI uses tremendous amounts of power. As AI spreads to developing countries, it is important that the environmental consequences of its use are taken into account. My STS research aims to answer the question of: How will AI technologies in developing countries affect the environment and how does this impact the way developed countries support these developing countries? In my STS project, I analyze countries’ and AI companies’ environmental awareness by reviewing their policies on online websites. I found that companies’ environmental awareness was lower than the countries in which they were based. This indicates a failure somewhere in the production of policy. A better alignment of incentives between AI companies and the government would lead to better environmental outcomes.
My technical project would require many more details in order to become a full-fledged class. In addition, a more rigorous process can be used to select the units for the course. My current proposal is based primarily on personal experience of coding interviews and practice websites as well as my own algorithmic background knowledge. However, a more systematic method such as a statistical analysis on the frequency of algorithm types could be more fitting. In addition, rigorous evaluation of student learning outcomes would be important for the actual class. My proposal only gives vague guidelines for course evaluation. Overall, my proposal is a good starting point for course design and helps build awareness of the lack of algorithmic courses at UVA relative to other universities. My STS project identifies potential weaknesses in environmental policymaking that allow for misaligned incentives in the field of AI. It also provides a framework to identify policymaking weaknesses. My work can be expanded to rigorously evaluate the weaknesses I hypothesize to identify which areas require the most improvement. In addition, future work could recommend empirically-backed, concrete reform for policies and the policymaking process. Lastly, the evolving nature of technology and technology policy would require constant reevaluation of my work as new policies and technologies are released.

BS (Bachelor of Science)
Education, Algorithms, Sustainability, AI

School of Engineering and Applied Science

Bachelor of Science in Computer Science

Technical Advisor: Rosanne Vrugtman

STS Advisor: Kent Wayland

Technical Team Members: Edward Lue

All rights reserved (no additional license for public reuse)
Issued Date: