Alg4Opt covers more topics, providing the motivation behind the algorithm, sometimes a basic derivation, and a concrete implementation. It has citations in the margin for more info.
Nocedal and Wright will go more in-depth on derivation, proving theorems, etc. Implementations are pseudocode, and fewer topics are covered.
Rust has a method for enforcing better memory safety. That is great for deployed applications, but can be annoying when you’re still exploring / mutating your code to figure out the right shape of things.
The article says it: “We determined that due to the persistent orientation mismatch of the towed pickup truck and tow truck combination, the Waymo AV incorrectly predicted the future motion of the towed vehicle.”
It was detected, but it predicted the truck would move in a way that it didn’t end up moving.
My mom was hit by a driver when she was biking and fell with her arm in front of the wheel. The driver then decided to pull forward and drove over her arm. So humans don’t really solve that problem.
I highly recommend the course “Computer, Enhance!” by Casey Muratori on substack for those interested in how CPUs / assembly work. You get to decode byte code, simulate instructions, learn how the stack works, etc. It is really well-paced, gives you plenty of space to figure things out your own way (with reference material if you need it), and helped me get several “aha!” moments that solidified how things work.
Alg4Opt covers more topics, providing the motivation behind the algorithm, sometimes a basic derivation, and a concrete implementation. It has citations in the margin for more info.
Nocedal and Wright will go more in-depth on derivation, proving theorems, etc. Implementations are pseudocode, and fewer topics are covered.