MTG 7396/MAT 4930, Computational Applied Topology course, Fall 24

Instructor: Hubert Wagner, hwagner[…]ufl.edu

Time and Location:

MTG 7396/MAT 4930, sections 0222 and 806E | M,W,F | Period 6 (12:50 PM – 1:40 PM), Location: LIT 0205

Office HoursM,W,F | Period 8 (3:00 PM – 3:50 PM), Location: my office LIT 428 (or zoom on request).


Course Description: 

This course focuses on computational aspects of computational topology and geometry. It covers foundational algorithms which are the basis for topological data analysis (TDA). It is meant to complement the related courses taught at the department (Elements of Topology, Topological Data Analysis and Machine Learning).


 

Course Goals and Objectives: A student who successfully completes this course will be able to:

  • Have a deepened understanding of the computational methods behind standard geometric-topological methods (especially the ones used in topological data analysis)
  • Make informed decisions regarding the choice of the algorithm depending on the problem (e.g. type and dimensionality of the data)
  • Design, write, debug, test, profile, tune, refactor and comment implementations of nontrivial algorithms

Schedule overview:

  • Week 1-2: Problems related to connected components, basic graph algorithms, amortized analysis, union-find, MST, Betti curves and persistent homology in degree 0
  • Week 3-4: Basic computational geometry: algorithms for convex hulls, Voronoi decompositions, Delaunay triangulations
  • Week 5: Basics of algebraic topology: simplicial complexes, homology groups, homotopy type, nerve theorem, etc.
  • Week 6-7 Alpha complexes and persistent homology, boundary matrix reduction algorithms, representatives of persistent homology generators, shape reconstruction
  • Week 8-9: Image data, cubical complexes, discrete Morse theory, topological sorting, Euler characteristic curves
  • Week 10-11: High dimensional data, Rips and Cech constructions, Bregman divergences
  • Week 12-13: Image and kernel persistence and related topics
  • Week 15: Summary

Logistics:

Prerequisites:  Strong preparation in mathematics, some experience with programming (ideally C++ and/or python).

If you have a laptop, please bring it to each class. (If you don’t we’ll find you a partner with a laptop.)

Participation: This is a synchronous, face-to-face class.


Work and grading:

The grade will depend on:

  • exercises: 30%
  • tests: 20%
  • research project: 40%
  • activity : 10%

Exercises.  This part of the score will be based on in-class exercises (with a short homework component, if necessary)

Research project. One larger project.

Tests: There will be two tests in total. The format will most likely be a multiple choice test with a short justification. The exam tasks will check your understanding of details and of the theoretical foundations of the used methods. They will not require programming.

Activity and participation: Discussions will be encouraged during class. Good questions and answers will be rewarded. We will have a discord server for online discussion, constructive activity there will also be rewarded.

Grading. The grade ranges for the total scores will be no tougher than: 93-100% A; 90-92% A-; 88-89% B+; 83-87% B; 80-82% B-; 78-79% C+; 73-77% C; 70-72% C-; 60-69% D; <60% F.


The outlined arrangements may change based on University guidelines and student needs. We will discuss and finalize them during the first weeks of classes.

Additional information:

Resources: The course will be based on lecture notes and programming notebooks on colab. The following resources may be useful as additional references, but are not required:

  • “Introduction to computational topology”, Herbert Edelsbrunner, John Harer
  • “Algorithms in Combinatorial Geometry”, Herbert Edelsbrunner
  • “Algebraic topology”, Allen Hatcher
  • “Algorithms”, Jeff Erickson
  • “Programming Pearls”, Jon Bentley

Honor Code and Collaboration: In this course authorized aid on projects and hw consists of talking to me, other students, reading the documentation for your computational platform, and looking at the notes for this course. This means that you are not allowed to look on-line, in other books specifically for solutions to the hw or projects, or at the written solutions of other students. Looking up general stuff like definitions, usage of Python libraries is of course fine. You can collaborate with fellow students but must write up and code individually.

Excused Absences: In certain circumstances a student will be able to make up a missed exam. These circumstances could include medical situations, family emergencies, travel for University activities (eg. band, debating club, etc), and religious observances. In these cases the student must inform me before or within one week after the missed work and provide written documentation.


Additional Information:

Grades: Grading will be in accord with the UF policy stated at https://catalog.ufl.edu/ugrad/current/regulations/info/grades.aspx.

Honor Code: “UF students are bound by The Honor Pledge which states, “We, the members of the University of Florida community, pledge to hold ourselves and our peers to the highest standards of honor and integrity by abiding by the Honor Code. On all work submitted for credit by students at the University of Florida, the following pledge is either required or implied: “On my honor, I have neither given nor received unauthorized aid in doing this assignment.” The Honor Code specifies a number of behaviors that are in violation of this code and the possible sanctions. Furthermore, you are obligated to report any condition that facilitates academic misconduct to appropriate personnel. If you have any questions or concerns, please consult with the instructor or TAs in this class.”

Class Attendance: “Requirements for class attendance and make-up exams, assignments, and other work in this course are consistent with university policies that can be found at: https://catalog.ufl.edu/ugrad/current/regulations/info/attendance.aspx.

Grading Disputes: Any issues or questions about the grading of homework or exams must be brought to my attention within one week after the exams or homework are returned to the class.

Diversity Statement: I am committed to diversity and inclusion of all students in this course. I acknowledge, respect, and value the diverse nature, background and perspective of students and believe that it furthers academic achievements. It is my intent to present materials and activities that are respectful of diversity: race, color, creed, gender, gender identity, sexual orientation, age, religious status, national origin, ethnicity, disability, socioeconomic status, and any other distinguishing qualities.

Accommodations for Students with Disabilities: “Students with disabilities who experience learning barriers and would like to request academic accommodations should connect with the disability Resource Center by visiting https://disability.ufl.edu/students/get-started/. It is important for students to share their accommodation letter with their instructor and discuss their access needs, as early as possible in the semester.”

Online Evaluations: “Students are expected to provide professional and respectful feedback on the quality of instruction in this course by completing course evaluations online via GatorEvals. Guidance on how to give feedback in a professional and respectful manner is available at https://gatorevals.aa.ufl.edu/students/. Students will be notified when the evaluation period opens, and can complete evaluations through the email they receive from GatorEvals, in their Canvas course menu under GatorEvals, or via https://ufl.bluera.com/ufl/. Summaries of course evaluation results are available to students at https://gatorevals.aa.ufl.edu/public-results/.”

Contact information for the Counseling and Wellness Center: https://counseling.ufl.edu/, 392-1575; and the University Police Department: 392-1111 or 9-1-1 for emergencies.

U Matter, We Care: If you or someone you know is in distress, please contact umatter@ufl.edu, 352-392-1575, or visit umatter.ufl.edu/ to refer or report a concern and a team member will reach out to the student in distress.