These "hardcore" problems like AI and pathfinding are definitely tough problems. The issue is that there's an infinite supply of such problems and there's no way a 4 year degree can cover them all. In fact, even if they did, most lessons would be forgotten before they could be proven useful in the real world.
Why not just learn these areas when needed? Taking an Advanced AI course in just a 2-3 month semester is how many hours? Just spend a week or two hitting the books and you'll be good to go, and you're knowledge will be bleeding edge and up to date. Plus, you'll have been paid to learn it!
Surprisingly many problems are similar, so in the end you can often apply the methods from one domain to another. If you use your study time well you will remember the general principles even though you might forget the exact implementations and most of the details.
Most importantly, you have a much greater chance of knowing when a solution exists and where to look for it, and more importantly know when no solutions are known.
E.g., the computer scientist recognizes the travelling salesman problem even when it doesn't involves salesmen, travelling or cities. She knows that it's NP-hard so she doesn't spend a few months trying to find an efficient exact solution for her millions of nodes, but she knows where to look to find "good enough" solutions for the problems she is trying to solve.
The autodidakt might not even recognise his problem as a TSP and thus doesn't even know that her problem is hard and which books she needs to start reading.
While it's true that there is an "infinite supply of these problems", a good CS program it's supposed to teach you how to think, hence teaching you how to learn.
If you have a very solid understanding of the fundamentals, you should be able to go and solve problems you've never seen before. If you don't, you could be stuck using other people's solutions to your problems, hence not being able to solve new ones that you might encounter.
What I value most about my degree is understanding the full technological stack of the computer. You never know where your next improvement might come from, and knowing CS broadens your possible angles of approach so you can tackle a problem from any part of the stack from a high level to a low level, not just within a framework.
Why not just learn these areas when needed? Taking an Advanced AI course in just a 2-3 month semester is how many hours? Just spend a week or two hitting the books and you'll be good to go, and you're knowledge will be bleeding edge and up to date. Plus, you'll have been paid to learn it!