COMP 112-01 30183 |
Introduction to Data Science |
Days: T R
|
Time: 01:20 pm-02:50 pm
|
Room: THEATR 205
|
Instructor: Alicia Johnson
|
|
*First day attendance required; cross-listed with STAT 112-01; ACTC students may register on November 17 with permission of instructor*
Details
This course provides an introduction to the handling, analysis, and interpretation of the big datasets now routinely being collected in science, commerce, and government. Students achieve facility with a sophisticated, technical computing environment. The course aligns with techniques being used in several courses in the natural and social sciences, statistics, and mathematics. The course is intended to be accessible to all students, regardless of background.
General Education Requirements:
Quantitative Thinking Q2
Distribution Requirements:
Natural science and mathematics
Course Materials
|
COMP 112-02 30185 |
Introduction to Data Science |
Days: T R
|
Time: 09:40 am-11:10 am
|
Room: THEATR 205
|
Instructor: Daniel O'Loughlin
|
|
*First day attendance required; cross-listed with STAT 112-02; ACTC students may register on November 17 with permission of instructor; registration limit has been adjusted to save 6 seats for SRs, 6 seats for JRs, 6 seats for SOs, 6 seats for FYs*
Details
This course provides an introduction to the handling, analysis, and interpretation of the big datasets now routinely being collected in science, commerce, and government. Students achieve facility with a sophisticated, technical computing environment. The course aligns with techniques being used in several courses in the natural and social sciences, statistics, and mathematics. The course is intended to be accessible to all students, regardless of background.
General Education Requirements:
Quantitative Thinking Q2
Distribution Requirements:
Natural science and mathematics
Course Materials
|
COMP 112-03 30187 |
Introduction to Data Science |
Days: T R
|
Time: 03:00 pm-04:30 pm
|
Room: THEATR 202
|
Instructor: Daniel O'Loughlin
|
|
*First day attendance required; cross-listed with STAT 112-03; ACTC students may register on November 17 with permission of instructor*
Details
This course provides an introduction to the handling, analysis, and interpretation of the big datasets now routinely being collected in science, commerce, and government. Students achieve facility with a sophisticated, technical computing environment. The course aligns with techniques being used in several courses in the natural and social sciences, statistics, and mathematics. The course is intended to be accessible to all students, regardless of background.
General Education Requirements:
Quantitative Thinking Q2
Distribution Requirements:
Natural science and mathematics
Course Materials
|
COMP 123-01 30188 |
Core Concepts in Computer Science |
Days: M W F
|
Time: 09:40 am-10:40 am
|
Room: OLRI 258
|
Instructor: Lauren Milne
|
|
*First day attendance required; ACTC students may register on November 17 with permission of instructor*
Details
This course introduces the field of computer science, including central concepts such as the design and implementation of algorithms and programs, testing and analyzing programs, the representation of information within the computer, and the role of abstraction and metaphor in computer science. The exploration of these central ideas will draw examples from a range of application areas including multimedia processing, turtle graphics, and text processing. Course work will use the Python programming language.
General Education Requirements:
Distribution Requirements:
Natural science and mathematics
Course Materials
|
COMP 123-02 30189 |
Core Concepts in Computer Science |
Days: M W F
|
Time: 10:50 am-11:50 am
|
Room: OLRI 258
|
Instructor: Lauren Milne
|
|
*First day attendance required; ACTC students may register on November 17 with permission of instructor*
Details
This course introduces the field of computer science, including central concepts such as the design and implementation of algorithms and programs, testing and analyzing programs, the representation of information within the computer, and the role of abstraction and metaphor in computer science. The exploration of these central ideas will draw examples from a range of application areas including multimedia processing, turtle graphics, and text processing. Course work will use the Python programming language.
General Education Requirements:
Distribution Requirements:
Natural science and mathematics
Course Materials
|
COMP 123-03 30190 |
Core Concepts in Computer Science |
Days: M W F
|
Time: 01:10 pm-02:10 pm
|
Room: OLRI 258
|
Instructor: Amin Alhashim
|
|
*First day attendance required; ACTC students may register on November 17 with permission of instructor*
Details
This course introduces the field of computer science, including central concepts such as the design and implementation of algorithms and programs, testing and analyzing programs, the representation of information within the computer, and the role of abstraction and metaphor in computer science. The exploration of these central ideas will draw examples from a range of application areas including multimedia processing, turtle graphics, and text processing. Course work will use the Python programming language.
General Education Requirements:
Distribution Requirements:
Natural science and mathematics
Course Materials
|
COMP 123-04 30191 |
Core Concepts in Computer Science |
Days: T R
|
Time: 09:40 am-11:10 am
|
Room: OLRI 258
|
Instructor: Lian Duan
|
|
*First day attendance required; ACTC students may register on November 17 with permission of instructor*
Details
This course introduces the field of computer science, including central concepts such as the design and implementation of algorithms and programs, testing and analyzing programs, the representation of information within the computer, and the role of abstraction and metaphor in computer science. The exploration of these central ideas will draw examples from a range of application areas including multimedia processing, turtle graphics, and text processing. Course work will use the Python programming language.
General Education Requirements:
Distribution Requirements:
Natural science and mathematics
Course Materials
|
COMP 123-05 30192 |
Core Concepts in Computer Science |
Days: T R
|
Time: 01:20 pm-02:50 pm
|
Room: OLRI 258
|
Instructor: Lian Duan
|
|
*First day attendance required; ACTC students may register on November 17 with permission of instructor*
Details
This course introduces the field of computer science, including central concepts such as the design and implementation of algorithms and programs, testing and analyzing programs, the representation of information within the computer, and the role of abstraction and metaphor in computer science. The exploration of these central ideas will draw examples from a range of application areas including multimedia processing, turtle graphics, and text processing. Course work will use the Python programming language.
General Education Requirements:
Distribution Requirements:
Natural science and mathematics
Course Materials
|
COMP 127-01 30193 |
Object-Oriented Programming and Abstraction |
Days: M W F
|
Time: 09:40 am-10:40 am
|
Room: OLRI 256
|
Instructor: Amin Alhashim
|
|
*First day attendance required; requires registration in COMP 127-L1 only; ACTC students may register on November 17 with permission of instructor;*
Details
What happens as software grows in complexity? How do we break a program into manageable pieces? How do we write readable, maintainable code? This course is an introduction to the building blocks of software design: abstraction, decomposition, and encapsulation. Using object-oriented programming in Java, we will create graphics, games, and simulations, and explore natural language processing. Topics may include: classes, objects, polymorphism, inheritance, testing, refactoring, events, closures, streams, immutability, parallel programming, and version control. The course culminates in a student-designed project. There is a required 1.5 hour laboratory section associated with this course. Prerequisite(s): COMP 123 or permission of instructor.
General Education Requirements:
Distribution Requirements:
Natural science and mathematics
Course Materials
|
COMP 127-02 30194 |
Object-Oriented Programming and Abstraction |
Days: M W F
|
Time: 10:50 am-11:50 am
|
Room: OLRI 256
|
Instructor: Amin Alhashim
|
|
*First day attendance required; requires registration in COMP 127-L2 only; ACTC students may register on November 17 with permission of instructor*
Details
What happens as software grows in complexity? How do we break a program into manageable pieces? How do we write readable, maintainable code? This course is an introduction to the building blocks of software design: abstraction, decomposition, and encapsulation. Using object-oriented programming in Java, we will create graphics, games, and simulations, and explore natural language processing. Topics may include: classes, objects, polymorphism, inheritance, testing, refactoring, events, closures, streams, immutability, parallel programming, and version control. The course culminates in a student-designed project. There is a required 1.5 hour laboratory section associated with this course. Prerequisite(s): COMP 123 or permission of instructor.
General Education Requirements:
Distribution Requirements:
Natural science and mathematics
Course Materials
|
COMP 127-03 30195 |
Object-Oriented Programming and Abstraction |
Days: M W F
|
Time: 01:10 pm-02:10 pm
|
Room: OLRI 256
|
Instructor: Abby Marsh
|
|
*First day attendance required; requires registration in COMP 127-L3 only; ACTC students may register on November 17 with permission of instructor*
Details
What happens as software grows in complexity? How do we break a program into manageable pieces? How do we write readable, maintainable code? This course is an introduction to the building blocks of software design: abstraction, decomposition, and encapsulation. Using object-oriented programming in Java, we will create graphics, games, and simulations, and explore natural language processing. Topics may include: classes, objects, polymorphism, inheritance, testing, refactoring, events, closures, streams, immutability, parallel programming, and version control. The course culminates in a student-designed project. There is a required 1.5 hour laboratory section associated with this course. Prerequisite(s): COMP 123 or permission of instructor.
General Education Requirements:
Distribution Requirements:
Natural science and mathematics
Course Materials
|
COMP 127-04 30196 |
Object-Oriented Programming and Abstraction |
Days: M W F
|
Time: 02:20 pm-03:20 pm
|
Room: OLRI 256
|
Instructor: Abby Marsh
|
|
*First day attendance required; requires registration in COMP 127-L4 only; ACTC students may register on November 17 with permission of instructor*
Details
What happens as software grows in complexity? How do we break a program into manageable pieces? How do we write readable, maintainable code? This course is an introduction to the building blocks of software design: abstraction, decomposition, and encapsulation. Using object-oriented programming in Java, we will create graphics, games, and simulations, and explore natural language processing. Topics may include: classes, objects, polymorphism, inheritance, testing, refactoring, events, closures, streams, immutability, parallel programming, and version control. The course culminates in a student-designed project. There is a required 1.5 hour laboratory section associated with this course. Prerequisite(s): COMP 123 or permission of instructor.
General Education Requirements:
Distribution Requirements:
Natural science and mathematics
Course Materials
|
COMP 127-L1 30197 |
Object-Oriented Prog/Abstr Lab |
Days: R
|
Time: 08:00 am-09:30 am
|
Room: OLRI 256
|
Instructor: Amin Alhashim
|
|
*Requires registration in COMP 127-01 only; ACTC students may register on November 17 with permission of instructor*
Details
What happens as software grows in complexity? How do we break a program into manageable pieces? How do we write readable, maintainable code? This course is an introduction to the building blocks of software design: abstraction, decomposition, and encapsulation. Using object-oriented programming in Java, we will create graphics, games, and simulations, and explore natural language processing. Topics may include: classes, objects, polymorphism, inheritance, testing, refactoring, events, closures, streams, immutability, parallel programming, and version control. The course culminates in a student-designed project. There is a required 1.5 hour laboratory section associated with this course. Prerequisite(s): COMP 123 or permission of instructor.
General Education Requirements:
Distribution Requirements:
Natural science and mathematics
Course Materials
|
COMP 127-L2 30198 |
Object-Oriented Prog/Abstr Lab |
Days: R
|
Time: 09:40 am-11:10 am
|
Room: OLRI 256
|
Instructor: Amin Alhashim
|
|
*Requires registration in COMP 127-02 only; ACTC students may register on November 17 with permission of instructor*
Details
What happens as software grows in complexity? How do we break a program into manageable pieces? How do we write readable, maintainable code? This course is an introduction to the building blocks of software design: abstraction, decomposition, and encapsulation. Using object-oriented programming in Java, we will create graphics, games, and simulations, and explore natural language processing. Topics may include: classes, objects, polymorphism, inheritance, testing, refactoring, events, closures, streams, immutability, parallel programming, and version control. The course culminates in a student-designed project. There is a required 1.5 hour laboratory section associated with this course. Prerequisite(s): COMP 123 or permission of instructor.
General Education Requirements:
Distribution Requirements:
Natural science and mathematics
Course Materials
|
COMP 127-L3 30199 |
Object-Oriented Prog/Abstr Lab |
Days: R
|
Time: 01:20 pm-02:50 pm
|
Room: OLRI 256
|
Instructor: Abby Marsh
|
|
*Requires registration in COMP 127-03 only; ACTC students may register on November 17 with permission of instructor*
Details
What happens as software grows in complexity? How do we break a program into manageable pieces? How do we write readable, maintainable code? This course is an introduction to the building blocks of software design: abstraction, decomposition, and encapsulation. Using object-oriented programming in Java, we will create graphics, games, and simulations, and explore natural language processing. Topics may include: classes, objects, polymorphism, inheritance, testing, refactoring, events, closures, streams, immutability, parallel programming, and version control. The course culminates in a student-designed project. There is a required 1.5 hour laboratory section associated with this course. Prerequisite(s): COMP 123 or permission of instructor.
General Education Requirements:
Distribution Requirements:
Natural science and mathematics
Course Materials
|
COMP 127-L4 30200 |
Object-Oriented Prog/Abstr Lab |
Days: R
|
Time: 03:00 pm-04:30 pm
|
Room: OLRI 256
|
Instructor: Abby Marsh
|
|
*Requires registration in COMP 127-04 only; ACTC students may register on November 17 with permission of instructor*
Details
What happens as software grows in complexity? How do we break a program into manageable pieces? How do we write readable, maintainable code? This course is an introduction to the building blocks of software design: abstraction, decomposition, and encapsulation. Using object-oriented programming in Java, we will create graphics, games, and simulations, and explore natural language processing. Topics may include: classes, objects, polymorphism, inheritance, testing, refactoring, events, closures, streams, immutability, parallel programming, and version control. The course culminates in a student-designed project. There is a required 1.5 hour laboratory section associated with this course. Prerequisite(s): COMP 123 or permission of instructor.
General Education Requirements:
Distribution Requirements:
Natural science and mathematics
Course Materials
|
COMP 128-01 30201 |
Data Structures |
Days: M W F
|
Time: 09:40 am-10:40 am
|
Room: OLRI 241
|
Instructor: Bret Jackson
|
|
*First day attendance required; ACTC students may register on November 17 with permission of instructor*
Details
This course familiarizes students with the fundamental data structures in computer science. Using the Java programming language, students will study existing data structure implementations, implement their own data structures, and develop data-intensive applications. The course covers stacks, queues, lists, trees, heaps, hash tables, graphs, and the common algorithms that use these data structures. Students will also receive an introduction to basic complexity analysis (Big-O), learn the time complexity of different data structure operations, and gain experience in calculating the time complexity of programs that use data structures. Prerequisite(s): COMP 127 or permission of instructor.
General Education Requirements:
Distribution Requirements:
Natural science and mathematics
Course Materials
|
COMP 128-02 30202 |
Data Structures |
Days: M W F
|
Time: 10:50 am-11:50 am
|
Room: OLRI 241
|
Instructor: Bret Jackson
|
|
*First day attendance required; ACTC students may register on November 17 with permission of instructor*
Details
This course familiarizes students with the fundamental data structures in computer science. Using the Java programming language, students will study existing data structure implementations, implement their own data structures, and develop data-intensive applications. The course covers stacks, queues, lists, trees, heaps, hash tables, graphs, and the common algorithms that use these data structures. Students will also receive an introduction to basic complexity analysis (Big-O), learn the time complexity of different data structure operations, and gain experience in calculating the time complexity of programs that use data structures. Prerequisite(s): COMP 127 or permission of instructor.
General Education Requirements:
Distribution Requirements:
Natural science and mathematics
Course Materials
|
COMP 212-01 30203 |
Intermediate Data Science |
Days: T R
|
Time: 09:40 am-11:10 am
|
Room: OLRI 241
|
Instructor: Leslie Myint
|
|
*First day attendance required; cross-listed with STAT 212-01; ACTC students may register on November 17 with permission of instructor*
Details
This second course in the data science curriculum emphasizes advanced data wrangling and manipulation, interactive visualization, writing functions, working with data in databases, version control, and data ethics. Through open-ended and interdisciplinary projects, students practice the constant feedback loop of asking questions of the data, manipulating the data to help answer the question, and then returning to more questions. Prerequisite(s): STAT 112 and COMP 123 and STAT 155; STAT 253 recommended but not required.
General Education Requirements:
Distribution Requirements:
Natural science and mathematics
Course Materials
|
COMP 221-01 30207 |
Algorithm Design and Analysis |
Days: M W F
|
Time: 01:10 pm-02:10 pm
|
Room: OLRI 301
|
Instructor: Suhas Arehalli
|
|
*First day attendance required; ACTC students may register on November 17 with permission of instructor*
Details
This course offers an in-depth introduction to the design and analysis of algorithms. Students will work with algorithms in pseudocode, and will learn formal and informal methods for analyzing algorithm efficiency and correctness. Topics may include recursion, divide and conquer, dynamic programming, greedy methods, branch and bound, randomized, probabilistic, and parallel algorithms. Application areas include string processing, graphs, geometric problems, and optimization. This course will introduce computability topics including regular expressions, grammars and parsing, automata, nondeterminism, and NP completeness. Prerequisite(s): COMP 128 (or COMP 124, if previously taken) and MATH 279, or permission of instructor.
General Education Requirements:
Distribution Requirements:
Natural science and mathematics
Course Materials
|
COMP 221-02 30208 |
Algorithm Design and Analysis |
Days: M W F
|
Time: 02:20 pm-03:20 pm
|
Room: OLRI 301
|
Instructor: Suhas Arehalli
|
|
*First day attendance required; ACTC students may register on November 17 with permission of instructor*
Details
This course offers an in-depth introduction to the design and analysis of algorithms. Students will work with algorithms in pseudocode, and will learn formal and informal methods for analyzing algorithm efficiency and correctness. Topics may include recursion, divide and conquer, dynamic programming, greedy methods, branch and bound, randomized, probabilistic, and parallel algorithms. Application areas include string processing, graphs, geometric problems, and optimization. This course will introduce computability topics including regular expressions, grammars and parsing, automata, nondeterminism, and NP completeness. Prerequisite(s): COMP 128 (or COMP 124, if previously taken) and MATH 279, or permission of instructor.
General Education Requirements:
Distribution Requirements:
Natural science and mathematics
Course Materials
|
COMP 225-01 30209 |
Software Design and Development |
Days: M W F
|
Time: 02:20 pm-03:20 pm
|
Room: OLRI 245
|
Instructor: Paul Cantrell
|
|
*First day attendance required; ACTC students may register on November 17 with permission of instructor*
Details
This course is an introduction to the problem of building software with humans and for humans. Students work in teams to design and implement a semester-long user-facing software project of their own invention. There are no limitations on topic or technology; on the contrary, students are responsible for imagining possibilities, articulating goals, and researching and selecting suitable technologies. The format resembles a studio art class, with in-class discussion guided by sharing and critiquing classmates' ongoing work. Topics include communication, division of labor, user-centered design, human-computer interaction, product management, project management, iterative development, engineering tradeoffs, separation of concerns, code readability and maintainability, refactoring, testing, and version control. Teams give a public demonstration of their working projects at the end of the semester. Prerequisite(s): COMP 127 (COMP 128 recommended), or COMP 124 if previously taken, or permission of instructor.
General Education Requirements:
Distribution Requirements:
Natural science and mathematics
Course Materials
|
COMP 225-02 30210 |
Software Design and Development |
Days: M W F
|
Time: 01:10 pm-02:10 pm
|
Room: OLRI 245
|
Instructor: Paul Cantrell
|
|
*First day attendance required; ACTC students may register on November 17 with permission of instructor*
Details
This course is an introduction to the problem of building software with humans and for humans. Students work in teams to design and implement a semester-long user-facing software project of their own invention. There are no limitations on topic or technology; on the contrary, students are responsible for imagining possibilities, articulating goals, and researching and selecting suitable technologies. The format resembles a studio art class, with in-class discussion guided by sharing and critiquing classmates' ongoing work. Topics include communication, division of labor, user-centered design, human-computer interaction, product management, project management, iterative development, engineering tradeoffs, separation of concerns, code readability and maintainability, refactoring, testing, and version control. Teams give a public demonstration of their working projects at the end of the semester. Prerequisite(s): COMP 127 (COMP 128 recommended), or COMP 124 if previously taken, or permission of instructor.
General Education Requirements:
Distribution Requirements:
Natural science and mathematics
Course Materials
|
COMP 225-03 30211 |
Software Design and Development |
Days: M W F
|
Time: 03:30 pm-04:30 pm
|
Room: OLRI 245
|
Instructor: Aaron Laursen
|
|
*First day attendance required; ACTC students may register on November 17 with permission of instructor*
Details
This course is an introduction to the problem of building software with humans and for humans. Students work in teams to design and implement a semester-long user-facing software project of their own invention. There are no limitations on topic or technology; on the contrary, students are responsible for imagining possibilities, articulating goals, and researching and selecting suitable technologies. The format resembles a studio art class, with in-class discussion guided by sharing and critiquing classmates' ongoing work. Topics include communication, division of labor, user-centered design, human-computer interaction, product management, project management, iterative development, engineering tradeoffs, separation of concerns, code readability and maintainability, refactoring, testing, and version control. Teams give a public demonstration of their working projects at the end of the semester. Prerequisite(s): COMP 127 (COMP 128 recommended), or COMP 124 if previously taken, or permission of instructor.
General Education Requirements:
Distribution Requirements:
Natural science and mathematics
Course Materials
|
COMP 240-01 30212 |
Computer Systems |
Days: M W F
|
Time: 10:50 am-11:50 am
|
Room: OLRI 245
|
Instructor: Abby Marsh
|
|
*First day attendance required; ACTC students may register on November 17 with permission of instructor*
Details
This course is an introduction to how computer systems work, including how a computer represents data, how code is compiled into instructions for the CPU, and how memory is organized. Students will learn to use the C programming language and assembly language. Prerequisite(s): COMP 127 or permission of instructor.
General Education Requirements:
Distribution Requirements:
Natural science and mathematics
Course Materials
|
COMP 302-01 30213 |
Introduction to Database Management Systems |
Days: T R
|
Time: 01:20 pm-02:50 pm
|
Room: OLRI 245
|
Instructor: Joslenne Peña
|
|
*Permission of instructor required; first day attendance required*
Details
This course will introduce students to the design, implementation, and analysis of databases stored in database management systems (DBMS). Topics include implementation-neutral data modeling, database design, database implementation, and data analysis using relational algebra and SQL. Students will generate data models based on real-world problems, and implement a database in a state-of-the-art DBMS. Students will master complex data analysis by learning to first design database queries and then implement them in a database query language such as SQL. Advanced topics include objects in databases, indexing for improved performance, distributed databases, and data warehouses. Prerequisite(s): COMP 112 or COMP 123, or permission of instructor
General Education Requirements:
Distribution Requirements:
Natural science and mathematics
Course Materials
|
COMP 302-02 30214 |
Introduction to Database Management Systems |
Days: T R
|
Time: 03:00 pm-04:30 pm
|
Room: OLRI 245
|
Instructor: Joslenne Peña
|
|
*Permission of instructor required; first day attendance required*
Details
This course will introduce students to the design, implementation, and analysis of databases stored in database management systems (DBMS). Topics include implementation-neutral data modeling, database design, database implementation, and data analysis using relational algebra and SQL. Students will generate data models based on real-world problems, and implement a database in a state-of-the-art DBMS. Students will master complex data analysis by learning to first design database queries and then implement them in a database query language such as SQL. Advanced topics include objects in databases, indexing for improved performance, distributed databases, and data warehouses. Prerequisite(s): COMP 112 or COMP 123, or permission of instructor
General Education Requirements:
Distribution Requirements:
Natural science and mathematics
Course Materials
|
COMP 325-01 30215 |
Video Games: Coding and Narrative |
Days: T R
|
Time: 09:40 am-11:10 am
|
Room: THEATR 213
|
Instructor: Dawes, Jackson
|
|
*To request permission to register, complete the COMP 325 / ENGL 224 signature request form: https://forms.gle/QM3A6m5iNMc8L7677. Permissions will start being given out prior to the start of registration. Complete the form as soon as possible for full consideration; first day attendance required; cross-listed with ENGL 224-01*
Details
Videogames dominate entertainment culture. But like all popular forms of entertainment, they are often looked down upon as aesthetically superficial, intellectually uncomplicated, and somehow bad for you. They are "just pop culture." Like Shakespeare was in his time. Like the novel was when it was invented. And like film and television shows were when they were invented. This course takes seriously the deep intellectual and aesthetic value of videogames and of videogame making. Videogames are expanding the possibilities and the borders of storytelling and narrative design. They are pushing the limits of coding wizardry. They have also become one of the most creative popular-cultural sites for experimenting with and understanding other minds and identities. In this class, students will work in interdisciplinary teams to bring world-building narrative techniques to an immersive visual setting while exploring technical challenges involved in programming and game development through hands-on projects. Prerequisite(s): COMP 127 only if course is taken as the Computer Science cross-list.
General Education Requirements:
Distribution Requirements:
Course Materials
|
COMP 365-01 30501 |
Computational Linear Algebra |
Days: T R
|
Time: 01:20 pm-02:50 pm
|
Room: THEATR 213
|
Instructor: Lori Ziegelmeier
|
|
*Cross-listed with MATH 365-01*
Details
A mix of applied linear algebra and numerical analysis, this course covers a central point of contact between mathematics and computer science. Many of the computational techniques important in science, commerce, and statistics are based on concepts from linear algebra, such as subspaces, projections, and matrix decompositions. The course reviews these concepts, adopts them to large scales, and applies them in the core techniques of scientific computing. These include solving systems of linear and nonlinear equations, approximation and statistical function estimation, optimization, interpolation, eigenvalue and singular value decompositions, and compression. Applications throughout the natural sciences, social sciences, statistics, and computer science. Prerequisite(s): COMP 120 or COMP 123, and MATH 236
General Education Requirements:
Distribution Requirements:
Natural science and mathematics
Course Materials
|
COMP 365-02 30503 |
Computational Linear Algebra |
Days: T R
|
Time: 03:00 pm-04:30 pm
|
Room: THEATR 213
|
Instructor: Lori Ziegelmeier
|
|
*Cross-listed with MATH 365-02*
Details
A mix of applied linear algebra and numerical analysis, this course covers a central point of contact between mathematics and computer science. Many of the computational techniques important in science, commerce, and statistics are based on concepts from linear algebra, such as subspaces, projections, and matrix decompositions. The course reviews these concepts, adopts them to large scales, and applies them in the core techniques of scientific computing. These include solving systems of linear and nonlinear equations, approximation and statistical function estimation, optimization, interpolation, eigenvalue and singular value decompositions, and compression. Applications throughout the natural sciences, social sciences, statistics, and computer science. Prerequisite(s): COMP 120 or COMP 123, and MATH 236
General Education Requirements:
Distribution Requirements:
Natural science and mathematics
Course Materials
|
COMP 394-01 30217 |
Computer Science and Social Justice |
Days: M W F
|
Time: 10:50 am-11:50 am
|
Room: OLRI 254
|
Instructor: Joslenne Peña
|
|
*Permission of instructor required; first day attendance required*
Details
Through the decades, value has been placed on the importance of education. More specifically, those who pursue technology-based education like Computer Science learn a multitude of technical practices, techniques, logic, and languages to build and design future technologies. These technologies are solutions to world problems or may be hobbyist in nature. Regardless, artifacts produced by Computer Scientists, Engineers, Programmers, and other similar stakeholders have suffered immeasurably through lack of training and awareness on social issues. As a result, we observe in society the numerous technologies that currently exist (intentionally or unintentionally) to perpetuate racism, oppressive power structures, and injustices on vulnerable and minority populations. Should these technologies be redesigned or thrown out all together? How can we connect the design and development of technologies to the behaviors of minoritized identities? This course will introduce students both to critical thinking and practice in understanding how software and tools, their processes and practices can become instruments that reinforce and exacerbate inequality in society. Once we confront the ways in which technologies contribute to systems of inequality, we will begin to identify relevant problems and solutions to contribute to a more equal, just society. This course will be reading and discussion-oriented. COMP 123 is recommended.
General Education Requirements:
Distribution Requirements:
Course Materials
|
COMP 440-01 30827 |
Collective Intelligence |
Days: T R
|
Time: 01:20 pm-02:50 pm
|
Room: THEATR 001
|
Instructor: Shilad Sen
|
|
Details
This course introduces the theory and practice of data science applied to online communities such as Wikipedia, Facebook, and Twitter. Students will read and discuss recent academic research papers that analyze behavior on these websites and use computational simulation, machine learning, and data-mining techniques to analyze massive behavioral datasets in areas such as recommender systems, natural language processing, and tagging systems. This course counts as the capstone. Prerequisite(s): COMP 221 or permission of instructor.
General Education Requirements:
Quantitative Thinking Q3
Distribution Requirements:
Natural science and mathematics
Course Materials
|
COMP 479-01 30508 |
Network Science |
Days: M W F
|
Time: 09:40 am-10:40 am
|
Room: OLRI 254
|
Instructor: Andrew Beveridge
|
|
*Permission of instructor required; cross-listed with MATH 479-01*
Details
The modern Information Age has produced a wealth of data about the complex networks that tie us together. In response, the field of Network Science has arisen, bringing together mathematics, computer science, sociology, biology, economics and other fields. This course will explore the fundamental questions and the mathematical tools of Network Science. This includes: the structure of complex networks, including connectedness, centrality and "long tails"; community detection; random/strategic models for network formation; diffusion/contagion and "tipping points" on networks; and algorithms for analyzing complex networks. Prerequisite(s): COMP 123, MATH 236 and one of COMP 221, MATH 354, or MATH 479.
General Education Requirements:
Writing WP
Quantitative Thinking Q2
Distribution Requirements:
Natural science and mathematics
Course Materials
|
COMP 480-01 30219 |
Bodies and Minds: AI Robotics |
Days: T R
|
Time: 03:00 pm-04:30 pm
|
Room: OLRI 258
|
Instructor: Susan Fox
|
|
*Permission of instructor required; first day attendance required*
Details
This course examines two distinct aspects of work in robotics: the physical construction of the robot's "body" and the creation of robot control programs that form the robot's "mind." It will study the strengths and weaknesses of a variety of robot sensors, including sonar, infrared, touch, GPS, and computer vision. It will also examine both reactive and deliberative approaches to robot control programs. The course will include hands-on work with multiple robots, and a semester-long course project in robotics. This course involves programming in Python; students should have a basic familiarity with Python or be prepared to learn Python during the course. This course counts as the capstone. Prerequisite(s): COMP 221 or permission of instructor.
General Education Requirements:
Distribution Requirements:
Natural science and mathematics
Course Materials
|