I get questions like this a lot from undergraduates at my university. My background is in algebraic topology, but I also do applied statistics work that's totally unrelated. I teach both pure math (like point-set topology) and applied math (like statistics, differential equations, mathematical modeling), and students interested in applied math often ask me how much pure math they should learn. For those bound for grad school, **the usual advice is to learn as much pure math as possible**, since applied math grew out of pure math (at least, this is how my colleagues view it) and hence the ideas of pure math underlie the tools and techniques in the applied world.

Abstract algebra teaches you about groups, rings, and fields. Subsequent abstract algebra courses teach you about modules over a ring, exact sequences, and (co)homology.

Broadly speaking, it's very useful to know what a group is, and **groups pop up all over applied math**, e.g., symmetry groups. When you are doing research in complex dynamics, you might find there are symmetries you can exploit, and group theory would be useful. We generally model networks as graphs, and there's a beautiful connection between graphs and groups, so knowing about groups could deepen your understanding of graph theory and hence network theory.

One recent and very exciting approach to complex systems and dynamics is **topological data analysis (TDA)**. This is a collection of techniques that allow you to learn the "shape" of a data set, even one that is evolving over time. This field relies on homology in a fundamental way, as that's what we can compute from the data, to say something meaningful about its shape. Hence, abstract algebra helps a lot here. We had Chad Topaz as a guest speaker last month and he gave a wonderful talk applying TDA to data about bird flocking, swarms of ants, etc. On his CV you can see many such publications. He's also created a nice TDA tutorial aimed at applied mathematicians, and a tutorial on homology.

Here are a few other publications in this new area:

https://arxiv.org/abs/1904.07403

https://d.lib.msu.edu/etd/50394

I regularly attend the TDA seminar at Ohio State, and many talks involve filtered chain complexes and lots of algebra. **Undergrad is a good time to explore broadly** and pick up such topics. In grad school, coursework is often more constrained, and focused on passing the qualifying exams then learning what you need to know in order to write your PhD thesis. One of the reasons you haven't seen so much about abstract algebra in complex systems and dynamics is that the majority of researchers in that area don't use abstract algebra (but some do, and if you know the subject then you have an advantage). As a corollary, this means it's possible to do great research in this area without abstract algebra.

All that said, if you have a limited number of credits you can take, it's likely that other courses might be more essential than abstract algebra. I would hate to have to choose between abstract algebra and courses like operations research, computational math, and prob/stats, but there's no denying that the latter courses are an important aspect of a lot of research in network theory and complex systems. Similarly, even though combinatorics can be useful in statistics, if a student is very limited in the number of courses they can take, I encourage them to put it as a lower priority than core stats courses.

In the end of the day, you should be guided by a combination of "what are you most interested in?" and "what courses will best prepare you?" If you find TDA super interesting then definitely take abstract algebra. If you're more interested in operations research models then take operations research. Have a look at what PhD programs are expecting from applicants and in terms of coursework and try to take those. If you can free up more credits, do take abstract algebra, but I think it's ok to make it a lower priority than the other courses you listed, given the constraint on credit numbers you have available.