Skip to main content
replaced http://mathoverflow.net/ with https://mathoverflow.net/
Source Link

Applied Algebraic Topology has been around in various forms for many years. I first learned about it in my training in computer science from Rob Ghrist's work. In fact, I wrote an MO answer back in 2011MO answer back in 2011 about his work. The point seems to be efficiently computing sheaf cohomology, with applications in electrical engineering. Why sheaves? I'll illustrate with an example. All over the country a bunch of moving cell phones are trying to connect to a bunch of cell towers. The regions those towers can reach form a cover of your space. If a cell phone is in a place not covered by any tower, it's bad news, and you want to be able to detect that. Homology helps, since it finds holes. More importantly, if a cell phone is in an intersection, then it has many towers to talk to, and that can cause interference. Sheaf cohomology comes into play here, and can help you design better systems, detect interference issues, and even create coding schemes to fix the confusion interference can cause.

Applied Algebraic Topology has been around in various forms for many years. I first learned about it in my training in computer science from Rob Ghrist's work. In fact, I wrote an MO answer back in 2011 about his work. The point seems to be efficiently computing sheaf cohomology, with applications in electrical engineering. Why sheaves? I'll illustrate with an example. All over the country a bunch of moving cell phones are trying to connect to a bunch of cell towers. The regions those towers can reach form a cover of your space. If a cell phone is in a place not covered by any tower, it's bad news, and you want to be able to detect that. Homology helps, since it finds holes. More importantly, if a cell phone is in an intersection, then it has many towers to talk to, and that can cause interference. Sheaf cohomology comes into play here, and can help you design better systems, detect interference issues, and even create coding schemes to fix the confusion interference can cause.

Applied Algebraic Topology has been around in various forms for many years. I first learned about it in my training in computer science from Rob Ghrist's work. In fact, I wrote an MO answer back in 2011 about his work. The point seems to be efficiently computing sheaf cohomology, with applications in electrical engineering. Why sheaves? I'll illustrate with an example. All over the country a bunch of moving cell phones are trying to connect to a bunch of cell towers. The regions those towers can reach form a cover of your space. If a cell phone is in a place not covered by any tower, it's bad news, and you want to be able to detect that. Homology helps, since it finds holes. More importantly, if a cell phone is in an intersection, then it has many towers to talk to, and that can cause interference. Sheaf cohomology comes into play here, and can help you design better systems, detect interference issues, and even create coding schemes to fix the confusion interference can cause.

Added another application
Source Link
David White
  • 30.3k
  • 9
  • 154
  • 250

In a similar vein, there was an AMS Special Session at the 2012 Joint Math Meetings entitled Generalized Cohomology Theories in Engineering Practice. I only got to one talk in that session (about K-theory as an invariant of some engineering system), but perhaps googling the speakers would lead to more useful applications.

Incidentally, there are also algebraic topologists working in graph theory, to use algebraic topology to make new graph algorithms. Certainly computing $H_1$ is a way of detecting cycles. From what I understand, the algorithms produced so far don't do much that is new and interesting, and are much less efficient than existing algorithms. There are also people studying random simplicial complexes in the way that random graphs have been well studied. For an example, see this paper on arxiv and follow the references. Finally, there are people writing down effective algorithms to compute in simplicial sets, e.g. here. All of this may bear fruit, as we learn better how to model the world using simplicial complexes and simplicial sets, and as we find ways to wrangle data into forms where our tools can be used to attack it.

Incidentally, there are also algebraic topologists working in graph theory, to use algebraic topology to make new graph algorithms. Certainly computing $H_1$ is a way of detecting cycles. From what I understand, the algorithms produced so far don't do much that is new and interesting, and are much less efficient than existing algorithms. There are also people studying random simplicial complexes in the way that random graphs have been well studied. For an example, see this paper on arxiv and follow the references. Finally, there are people writing down effective algorithms to compute in simplicial sets, e.g. here. All of this may bear fruit, as we learn better how to model the world using simplicial complexes and simplicial sets, and as we find ways to wrangle data into forms where our tools can be used to attack it.

In a similar vein, there was an AMS Special Session at the 2012 Joint Math Meetings entitled Generalized Cohomology Theories in Engineering Practice. I only got to one talk in that session (about K-theory as an invariant of some engineering system), but perhaps googling the speakers would lead to more useful applications.

Incidentally, there are also algebraic topologists working in graph theory, to use algebraic topology to make new graph algorithms. Certainly computing $H_1$ is a way of detecting cycles. From what I understand, the algorithms produced so far don't do much that is new and interesting, and are much less efficient than existing algorithms. There are also people studying random simplicial complexes in the way that random graphs have been well studied. For an example, see this paper on arxiv and follow the references. Finally, there are people writing down effective algorithms to compute in simplicial sets, e.g. here. All of this may bear fruit, as we learn better how to model the world using simplicial complexes and simplicial sets, and as we find ways to wrangle data into forms where our tools can be used to attack it.

Added a whole paragraph about machine learning
Source Link
David White
  • 30.3k
  • 9
  • 154
  • 250

In response to Ryan Budney's comment, let me try to say something about topological data analysis, and other recent applications of algebraic topology outside of traditional mathematics. In my previous answer, I interpreted "modern" to mean "abstract", but Ryan is absolutely right that this is a modern form of algebraic topology that is gaining huge amounts of steam. Disclaimer: I don't do research in this area (yet), and what I know is mostly from talks I've seen over the years, workshops I've attended, and my own random thoughts on the field.

Persistent homology works by considering all possible covers of your dataset by balls of radius r drawn around the data points, as r varies. It's best to imagine 2 dimensional data where you roughly see the shape of a circle. When r is very small, the cover is entirely disconnected. When r is very large, you're probably looking at a bunch of intersecting balls, with way too many overlaps to tell you much. But for some value of r in the middle, you get a connected shape that looks roughly like $S^1$. The balls form a simplicial complex, and that's how the computations are done. When the balls form many disconnected components, $H_0$ has large dimension. Once they coalesce into a connected component, $H_0$ is $\mathbb{Z}$ and (in the circle example) $H_1$ is also $\mathbb{Z}$. It remains $\mathbb{Z}$ as $r$ gets larger and larger, till r becomes so large that the union of the covering balls forms a disc rather than a circle (up to homotopy). The word "till" in the last paragraph is why it's called "persistent" homology. One way to visualize how the homology groups change with r is to write them as barcodes, where the left-to-right axis is r and the number of bars is the dimension. When you see a long barcode, that's telling you a feature of your data that is persistent even as r varies, e.g. a hole.

There are also applications of topological data analysis (TDA) to Machine Learning, Clustering, and Classification. A simple example is barycentric clustering, which is something like a souped-up, topological version of k-means clustering. Gunnar's group has more complicated examples that have been useful in identifying previously unknown associations, that were later backed up with theory. A common problem is dividing a dataset into distinct pieces, e.g. via Support Vector Machines. Basically: if your dataset can be separated by a hyperplane then you do so. If not, you transform to a higher dimensional space where it can be and then separate it there (equivalently, you find a separating sheet or surface). I am hopeful that the methods of TDA can be used to provide improved separation algorithms.

In response to Ryan Budney's comment, let me try to say something about topological data analysis, and other recent applications of algebraic topology outside of traditional mathematics. In my previous answer, I interpreted "modern" to mean "abstract", but Ryan is absolutely right that this is a modern form of algebraic topology that is gaining huge amounts of steam. Disclaimer: I don't do research in this area (yet), and what I know is mostly from talks I've seen over the years, workshops I've attended, and my own random thoughts on the field.

Persistent homology works by considering all possible covers of your dataset by balls of radius r drawn around the data points, as r varies. It's best to imagine 2 dimensional data where you roughly see the shape of a circle. When r is very small, the cover is entirely disconnected. When r is very large, you're probably looking at a bunch of intersecting balls, with way too many overlaps to tell you much. But for some value of r in the middle, you get a connected shape that looks roughly like $S^1$. The balls form a simplicial complex, and that's how the computations are done. When the balls form many disconnected components, $H_0$ has large dimension. Once they coalesce into a connected component, $H_0$ is $\mathbb{Z}$ and (in the circle example) $H_1$ is also $\mathbb{Z}$. It remains $\mathbb{Z}$ as $r$ gets larger and larger, till r becomes so large that the union of the covering balls forms a disc rather than a circle (up to homotopy). The word "till" in the last paragraph is why it's called "persistent" homology. One way to visualize how the homology groups change with r is to write them as barcodes, where the left-to-right axis is r and the number of bars is the dimension. When you see a long barcode, that's telling you a feature of your data that is persistent even as r varies, e.g. a hole.

In response to Ryan Budney's comment, let me try to say something about topological data analysis, and other recent applications of algebraic topology outside of traditional mathematics.

Persistent homology works by considering all possible covers of your dataset by balls of radius r drawn around the data points, as r varies. It's best to imagine 2 dimensional data where you roughly see the shape of a circle. When r is very small, the cover is entirely disconnected. When r is very large, you're probably looking at a bunch of intersecting balls, with way too many overlaps to tell you much. But for some value of r in the middle, you get a connected shape that looks roughly like $S^1$. The balls form a simplicial complex, and that's how the computations are done. When the balls form many disconnected components, $H_0$ has large dimension. Once they coalesce into a connected component, $H_0$ is $\mathbb{Z}$ and (in the circle example) $H_1$ is also $\mathbb{Z}$. It remains $\mathbb{Z}$ as $r$ gets larger and larger, till r becomes so large that the union of the covering balls forms a disc rather than a circle (up to homotopy). The word "till" in the last paragraph is why it's called "persistent" homology. One way to visualize how the homology groups change with r is to write them as barcodes, where the left-to-right axis is r and the number of bars is the dimension. When you see a long barcode, that's telling you a feature of your data that is persistent even as r varies, e.g. a hole.

There are also applications of topological data analysis (TDA) to Machine Learning, Clustering, and Classification. A simple example is barycentric clustering, which is something like a souped-up, topological version of k-means clustering. Gunnar's group has more complicated examples that have been useful in identifying previously unknown associations, that were later backed up with theory. A common problem is dividing a dataset into distinct pieces, e.g. via Support Vector Machines. Basically: if your dataset can be separated by a hyperplane then you do so. If not, you transform to a higher dimensional space where it can be and then separate it there (equivalently, you find a separating sheet or surface). I am hopeful that the methods of TDA can be used to provide improved separation algorithms.

Source Link
David White
  • 30.3k
  • 9
  • 154
  • 250
Loading
Post Made Community Wiki by David White