CSC 630 - Topological Analysis in Visualization (Fall 2017)
M/W 2:00-3:15pm, 737 Gould-Simpson
Course Syllabus
- Course Description
- Course Content
- Course Policies
- Department and University Policies
- Department of Computer Science Code of Conduct
- Classroom Behavior Policy
- Threatening Behavior Policy
- Content Warning
- Elective Name and Pronoun Usage
- Accessibility and Accommodations
- Code of Academic Integrity
- UA Nondiscrimination and Anti-harassment Policy
- Additional Resources for Students
- Confidentiality of Student Records
- Subject to Change Statement
Course Description
This course focuses on the use of topological analysis in the field of visualization. Topological analysis approaches the investigation of scientific data through the lens of features that are invariant to continuous deformation. This course focuses both on the algorithmic aspects, drawing from research in computational topology, as well as the implementation aspects of these algorithm in effective visualization interfaces. As such, we will focus on both the mathematical underpinnings of these techniques, stemming from algebraic topology, as well as their recent use in visualization research.
Such techniques offer numerous advantages over simply “making a picture” of data, since they offer ways to describe, classify, and rank features of interest within data. Their use has become of increasing importance to numerous application domains, including combustion, materials science, chemistry, and astrophysics. This course aims to prepare a student to utilize such tools as well as develop new techniques for analyzing data based on them.
Course Prerequisites or Co-requisites
Students are expected to have advanced programming skills in C++ and introductory knowledge of linear algebra and calculus. An ideal student will have completed CSC 544 or equivalent. An ideal student will also be comfortable working with mathematical abstractions and proofs, and perhaps have taken a point set topology course. Completed material in computer graphics topics (e.g. CSC 433/533 or equivalent) as well as undergraduate visualization (e.g. CSC 444) are helpful but not required. While students majoring in areas other than CSC are encouraged to enroll, certain topics may prove challenging. Please contact the instructor if you are unsure if you satisfy the prerequisites.
Instructor and Contact Information
- Instructor: Joshua A. Levine
- Office: 754 Gould-Simpson
- Phone: +1-520-621-3153
- Email (preferred mode of communication): [username]@arizona.edu, my username is josh.
- Office Hours: TBA and by appointment
- Open Door Policy: if my office door is open, please feel free to stop by and inquire if I have available time. If my door is completely closed, it typically indicates I am in an (uninterruptible, except for emergencies) meeting or phone call. Please use your best discretion.
- Course Page: https://jalevine.bitbucket.io/csc630/
- Instructor Homepage: http://www.cs.arizona.edu/~josh
- D2L: https://d2l.arizona.edu/d2l/home/621715
- Piazza: http://piazza.com/arizona/fall2017/csc630/home
Course Format and Teaching Methods
Primarily, the course format is small group, in-class discussion; we will most often function as a reading group. Students will rotate and take turns as discussion leader, and in the latter half of the course will be responsible for completing a full paper presentation. Out-of-class activities include readings in relevant textbook and research papers, programming assignments, written assignments, and completing a final project.
Course Objectives and Expected Learning Outcomes
This course will provide both a theoretical understanding of computational topology algorithms as well as practical experience implementing such algorithms for the purpose of data visualization. Students will be expected to:
- understand the fundamental concepts of algebraic topology structures;
- understand the properties of algorithms that can compute such structures;
- implement these algorithms as well as variations that optimize over standard implementations;
- derive relationships between the theoretical and practical that lead to concepts useful for data visualization;
- become knowledgeable with cutting edge research in the field of visualization associated with topological analysis; and
- undertake creative work and perform new research leveraging the body of existing research on this topic in visualization.
Course Content
Location
- Lecture meeting time: M/W 2:00-3:15pm
- Lecture meeting location: 737 Gould-Simpson
Lecture Topics
Week | Date | Monday | Date | Wednesday |
1 | Aug 21 | Introduction | Aug 23 | Graphs 1 |
2 | Aug 28 | Graphs 2 | Aug 30 | Surfaces 1 |
3 | Sep 04 | -- Labor Day -- | Sep 06 | Surfaces 2 |
4 | Sep 11 | Complexes 1 | Sep 13 | Complexes 2 |
5 | Sep 18 | Complexes 3 | Sep 20 | Homology 1 |
6 | Sep 25 | Homology 2 | Sep 27 | Homology 3 |
7 | Oct 02 | Morse Functions 1 | Oct 04 | -- IEEE Vis -- |
8 | Oct 09 | Morse Functions 2 | Oct 11 | Morse Functions 3 |
9 | Oct 16 | Persistence 1 | Oct 18 | Persistence 2 |
10 | Oct 23 | Stability 1 | Oct 25 | Stability 2 |
11 | Oct 30 | Applications 1 | Nov 01 | Applications 2 |
12 | Nov 06 | Jixian | Nov 08 | Kairong |
13 | Nov 13 | Josh | Nov 15 | -- Supercomputing -- |
14 | Nov 20 | Katy | Nov 22 | Andrea |
15 | Nov 27 | David | Nov 29 | Sam |
16 | Dec 04 | Research Papers | Dec 06 | Research Papers |
Required Texts and Readings
- Edelsbrunner and Harer, Computational Topology: An Introduction, 2009, ISBN 978-0821849255.
- Other handouts, research papers, and materials linked to on the course webpage
Assignments and Examinations
Programming Assignments
This course will involved 4 programming assignments, each spanning approximately three weeks from posting date to due date. All programming assignments will be completed in C++, built with CMake, and rely on a library called the Topology ToolKit that employs both VTK and ParaView.
Most assignments also will require a written assignment report that answers specific questions regarding implementation details.
Name | Topic | Post Date | Due Date | Graded Date | Percent |
Assignment 01 | TTK Install | Sep 11 | Sep 24 | Oct 01 | 7 |
Assignment 02 | V-R Complexes | Sep 25 | Oct 15 | Oct 22 | 11 |
Assignment 03 | Critical Points | Oct 16 | Oct 29 | Nov 05 | 11 |
Assignment 04 | Morse Complex | Oct 30 | Nov 12 | Nov 19 | 11 |
Total Assignment Percentage: | 40 | ||||
Written Homework
While covering the initial nine modules of the course, students will be asked to complete exercises that demonstrate their knowledge. There will be five such homeworks. Homeworks will be two part; a portion of the homework will be completed and then discussed, as a group, within class. The second part will be completed individually by the student outside of class. Both portions will be turned in electronically, and must be typeset using a word processor (preferably, LaTeX).
Paper Presentations
The latter half of the course will involve reading, discussing, and presenting current research papers in the area of topological analysis and visualization. Each student will be expected to give a presentation of one paper throughout the course.
Class Participation
In addition to leading a research paper presentation, students will be expected to participate in class discussions. This class participation grade is the instructor’s subjective judgement of the student’s contribution to a lively classroom atmosphere. He will consider mainly active, informed participation in classroom discussions, and homework reviews. Obviously, students not attending class are not contributing in this way.
Final Project
The final project will be comprehensive. Projects will be proposed by the student and agreed upon with discussion from the instructor. Projects have two portions: an implementation portion where the student will implement an algorithm in topological analysis of their choice and/or experiment with real data. The second portion will involve a presentation of the results and experience during the final exam time slot.
Final Project Presentations Date/Time/Location: Wed., Dec 13, 1-3pm, 737 Gould-Simpson
See also,
- UA Final Exam Regulations: https://www.registrar.arizona.edu/courses/final-examination-regulations-and-information, and
- UA Final Exam Schedule: http://www.registrar.arizona.edu/schedules/finals.htm.
Submission, Lateness, and Revision Policy
All programming assignments and written assignments have a fixed due date. Revisions and resubmissions after grading will not be accepted.
Submission for programming assignments and written assignments will be due on 11:59:59PM of the due date unless otherwise noted. A late submission will receive a penalty of 10% per day for each work day it is late, up to a maximum of 5 days late. Grades for assignment submitted late may not be posted within the same time frame as assignments submitted on time, but the instructor will make their best effort to expedite the grading of late submissions.
Course Policies
Absence and Class Participation Policy
The UA’s policy concerning Class Attendance, Participation, and Administrative Drops is available at http://catalog.arizona.edu/policy/class-attendance-participation-and-administrative-drop
The UA policy regarding absences for any sincerely held religious belief, observance or practice will be accommodated where reasonable: http://policy.arizona.edu/human-resources/religious-accommodation-policy.
Absences preapproved by the UA Dean of Students (or dean’s designee) will be honored. See https://deanofstudents.arizona.edu/absences.
Participating in the course and attending lectures and other course events are vital to the learning process. That said, attendance is not required for lectures. Students who miss class due to illness or emergency are not required to bring documentation from their health-care provider or other relevant, professional third parties. Nevertheless, class participation is an important part of your grade in this course, and it is impossible for a student to participate and the instructor to gauge participation if a student does not attend.
Late Instructor
Your instructor will make every effort to be in class on time, or to inform you of any delay or cancellation. In the unusual event that he should not arrive in class or send word by 15 minutes from the class start time, the class is officially cancelled.
Makeup Policy for Students Who Register Late
Students who register after the first class meeting may make up missed assignments/quizzes at a deadline set in consultation with the instructor.
Course Communications
We will use official UA email and Piazza as the primary mode of contact. D2L will be used only for the instructor to securely distribute grades to students.
Grading Scale and Grading Policies
Grades will be assigned based on the following scale:
- A >= 90%
- 80% <= B < 90%
- 70% <= C < 80%
- 60% <= D < 70%
- E < 60%
Grading will be based on performance on the set of programming assignments, written assignments, a final project, paper presentation, and class participation:
- Programming Assignments: 40%
- Written Assignments: 20%
- Final Project: 20%
- Paper Presentation: 10%
- Class Participation: 10%
Each assignment will include a specific rubric for how it is graded, typically out of a score between 0 and 10. Scores on such assignments will be weighted according to the relative point value of each assignment as highlighted above.
Department of Computer Science Grading Policy
- Instructors will explicitly promise when every assignment and exam will be graded and returned to students. These promised dates will appear in the syllabus, associated with the corresponding due dates and exam dates.
- Graded homework will be returned before the next homework is due.
- Exams will be returned “promptly”, as defined by the instructor (and as promised in the syllabus).
- Grading delays beyond promised return-by dates will be announced as soon as possible with an explanation for the delay.
Requests for incomplete (I) or withdrawal (W)
Request must be made in accordance with University policies, which are available at http://catalog.arizona.edu/policy/grades-and-grading-system#incomplete and http://catalog.arizona.edu/policy/grades-and-grading-system#Withdrawal, respectively.
Dispute of Grade Policy
After receiving any grade for any submission, a student has 24 hours to respond to the instructor with any disputes in an email with the subject “Grade Dispute”. Such a response must enumerate a specific set of disputed items for the submission and provide evidence that each item was improperly graded. The instructor will then completely regrade the entire submission, including both the disputed items as well as non-disputed items, with the potential for all aspects of the grade to change.
Department and University Policies
Department of Computer Science Code of Conduct
The Department of Computer Science is committed to providing and maintaining a supportive educational environment for all. We strive to be welcoming and inclusive, respect privacy and confidentiality, behave respectfully and courteously, and practice intellectual honesty. Disruptive behaviors (such as physical or emotional harassment, dismissive attitudes, and abuse of department resources) will not be tolerated. The complete Code of Conduct is available on our department web site. We expect that you will adhere to this code, as well as the UA Student Code of Conduct, while you are a member of this class.
Classroom Behavior Policy
To foster a positive learning environment, students and instructors have a shared responsibility. We want a safe, welcoming, and inclusive environment where all of us feel comfortable with each other and where we can challenge ourselves to succeed. To that end, our focus is on the tasks at hand and not on extraneous activities (e.g., texting, chatting, reading a newspaper, making phone calls, web surfing, etc.).
Inclusive Excellence is a fundamental part of the University of Arizona’s strategic plan and culture. As part of this initiative, the institution embraces and practices diversity and inclusiveness. These values are expected, respected and welcomed in this course.
Students are asked to refrain from disruptive conversations with people sitting around them during lecture.
Some learning styles are best served by using personal electronics, such as laptops and iPads. Nevertheless, these devices can be distracting to other learners. While all students are welcome to use personal electronics in class, they must be used in a way that does not disrupt either the instructor or other students’ experience.
Students observed engaging in disruptive activity will be asked to cease this behavior. Those who continue to disrupt the class will be asked to leave lecture or discussion and may be reported to the Dean of Students.
Threatening Behavior Policy
The UA Threatening Behavior by Students Policy prohibits threats of physical harm to any member of the University community, including to oneself. See http://policy.arizona.edu/education-and-student-affairs/threatening-behavior-students.
Content Warning
While the instructor does not intend to include topics and/or course material includes content that are explicit or offensive in any way. The instructor will make every effort to provide advance notice when such materials may potentially be or potentially violate this intent. Please contact the instructor to discuss any content-related concerns, as alternative materials may be available.
Elective Name and Pronoun Usage
It is already UA policy that class rosters are provided to instructors with a student’s preferred name. Students may share their preferred name and pronoun with members of the teaching staff and fellow students, as desired, and these gender identities and gender expressions will be honored in this course. As the course includes group work and in-class discussion, it is critical to create an educational environment of inclusion and mutual respect. In this class, to be inclusive of all gender identities and expressions, students will be referred to by their first or last names, the pronoun of their choice, or by default, the pronoun “they”.
Accessibility and Accommodations
Our goal in this classroom is that learning experiences be as accessible as possible. If you anticipate or experience physical or academic barriers based on disability, please let me know immediately so that we can discuss options. You are also welcome to contact the Disability Resource Center (520-621-3268) to establish reasonable accommodations. For additional information on the Disability Resource Center and reasonable accommodations, please visit http://drc.arizona.edu.
If you have reasonable accommodations, please plan to meet with me by appointment or during office hours to discuss accommodations and how my course requirements and activities may impact your ability to fully participate.
Please be aware that the accessible table and chairs in this room should remain available for students who find that standard classroom seating is not usable.
Code of Academic Integrity
Students are encouraged to share intellectual views and discuss freely the principles and applications of course materials. However, graded work/exercises must be the product of independent effort unless otherwise instructed. Students are expected to adhere to the UA Code of Academic Integrity as described in the UA General Catalog. See http://deanofstudents.arizona.edu/academic-integrity/students/academic-integrity.
The University Libraries have some excellent tips for avoiding plagiarism, available at http://www.library.arizona.edu/help/tutorials/plagiarism/index.html. Publicly available sources for code or other material, in small amounts, may be freely used if appropriately attributed. A good rule of thumb: when in doubt about whether the use of small snippets of code not your own in a programming assignment is allowed, first ask the instructor.
Selling class notes and/or other course materials to other students or to a third party for resale is not permitted without the instructor’s express written consent. Violations to this and other course rules are subject to the Code of Academic Integrity and may result in course sanctions. Additionally, students who use D2L or UA e-mail to sell or buy these copyrighted materials are subject to Code of Conduct Violations for misuse of student e-mail addresses. This conduct may also constitute copyright infringement.
UA Nondiscrimination and Anti-harassment Policy
The University is committed to creating and maintaining an environment free of discrimination; see http://policy.arizona.edu/human-resources/nondiscrimination-and-anti-harassment-policy
Our classroom is a place where everyone is encouraged to express well-formed opinions and their reasons for those opinions. We also want to create a tolerant and open environment where such opinions can be expressed without resorting to bullying or discrimination of others.
Additional Resources for Students
UA Academic policies and procedures are available at http://catalog.arizona.edu/policies
Student Assistance and Advocacy information is available at http://deanofstudents.arizona.edu/student-assistance/students/student-assistance
Office of Diversity information is available at http://diversity.arizona.edu/
Campus Health information may be found here: http://www.health.arizona.edu/counseling-and-psych-services
OASIS Sexual Assault and Trauma Services: http://oasis.health.arizona.edu/hpps_oasis_program.htm
Confidentiality of Student Records
Subject to Change Statement
Information contained in the course syllabus, other than the grade and absence policy, may be subject to change with advance notice, as deemed appropriate by the instructor.