11 karma · joined September 7, 2023
It's as if a group of monks wanted to keep the quadrivium and trivium but their clock stopped at the 16th century. One of their faculty proudly said they study analysis by reading Descartes! Which I thought was a highbrow joke but nope, dead serious.
There's a reason that 'standing on the shoulders of giants' is a thing. Dive into the classics after you have gained the maturity from modern texts.
Take one of the easier problems from Rudin. Prove that a continuous function from the unit interval [0,1] to itself has a fixed point. I wonder how a student immersed in the 'classics' would even begin to tackle this.
The Kochen-Specker theorem is interesting (if not useful). The proofs have a similar flavour to Sylvester. One tries to make a set of projections 'compatible' and it turns out to be impossible. Maybe there's a deeper connection.
The thrust of your remarks is correct IMO. We are forced to support a large number of granular constraints, too large for my comfort.
But no solver will deal with large 'global events'. That's just not its job. Different levels of decision making altogether.
My email is in my profile. Would be happy to hear more.
Hexaly claims to go far beyond MIP. Amazon uses it for packing VMs into servers. This video by one of their research scientists was widely circulated at the time [1].
I work on combinatorial optimization too but a specific problem so we write the heuristics from scratch. Seems exact solvers are doing a lot more these days?
I am drowning in gating propagating semantic mismatches...
Which of these - warp, numba, cp, is the best bet for a beginner?
People generally compare "speed of execution" to "speed of coding".
I'll add "speed of troubleshooting". When something goes wrong and the clock is ticking, you need tools to identify quickly if the data is inconsistent, a config set wrongly or the algorithm stuck at a local optimum. And then decide if things can be mitigated with a patch or we should we grovel and buy time from the client... All of this is much easier in Python (bar the grovelling).
LLMs are changing things though. I recently ported a complex part of the kernel to C++. 90% of it was creating the scaffolding before the actual algorithms were ported. Very tedious work but Claude can just chug through. Wouldn't like to maintain it just yet.
I still don't see idiomatic markers of AI so that's scary if your claim is correct.
That said, I am puzzled at the algorithms that Claude & GPT "get" and ones that they do not.
(former physicist here. would love to know the kind of things you're working on. email on my profile)
I used a poor man's version to solve a puzzle where one arranges polymino pieces on a grid spelling out the date [1]. No pointers, just keeping track of deleted rows and columns in the recursion.
It is not at all obvious that all 366 days can be solved. To my dismay all of them can be solved in multiple ways - as a human I find some days quite tricky.
[1] https://metterklume.github.io/puzzle/2024/12/24/calendar-puz...
Spent 4 years in Germany but never took a course out of sheer laziness. I can read children's books but every native speaker sounds like they are zipping along at 2x speed.
I wrote my own solver in Python+Numba. You've probably seen Robot Reboot https://www.robotreboot.com/challenge. I had a parser that could take a screenshot of the daily puzzles and feed them into my engine. Your post might just give me the kick in the pants to put it up online.
Curious if think this made you better at RR. I started out absolutely terrible, and actually got to the point where I could occasionally match the best scores on Reboot (but not their times of course!).