At least based on some of the things he's written in some of the anthologies, it seems like a lot of that disillusionment was not just because of age, but rather because of his battles with the publishers and what not that were pushing him to make changes that he felt would compromise the integrity of the strip. A lot of the comics include subtle jabs about corporate greed, artistic integrity, etc. because he was actively fighting with the corporations that distributed his strip over such matters...
Still, 100% agreed that he stopped at the right time, both because of the creeping cynicism, but also simply because he was running out of fresh ideas...
Genuinely interested in being educated here: If Gurobi's integer programming solver didn't find a solution better than 218, is that a guarantee that there exists no solution better than 218? Is it equivalent to a mathematical proof?
(Let's assume, for the sake of argument, that there's no bugs in Gurobi's solver and no bugs in the author's implementation of the problem for Gurobi to solve.)
I guess I'm basically asking whether it's possible that Gurobi got trapped in a local maximum, or whether this can be considered a definitive universal solution.
Yes, if Gurobi and my code run as intended and I did not mess up any thinking while simplifying my chess model, then what I did is proof that the maximum number of legal moves available in a chess position reachable by a sequence of legal moves from the starting position is 218 (upper and lower bound). Gurobi proved the entire search space as "at most as good" using bounds, basically.
In addition to the value of the best integer solution found so far, Gurobi also provides a bound on the value of the best possible solution, computed using the linear relaxation of the problem, cutting planes and other techniques. So, assuming there are no bugs in the solver, this is truly the optimal solution.
Unless I missed something, though, the highest bound the author reported for the relaxation was 271 2/3 moves, which is obviously significantly higher than 218...
I think that was an intermediate model. The author updated it, then Gurobi solved the new model to optimality (i.e., the bound became equal to the value of the best solution found).
> With this improved model, I tried again and after ~23 000 seconds, Gurobi solved it to optimality!
> Gurobi solved the new model to optimality (i.e., the bound became equal to the value of the best solution found).
Ah, I was not aware that that's what this language indicated. Thanks for helping me understand more!
I've used Gurobi (and other solvers) in the past, but always in situations where we just needed to find a solution that was way better than what we were going to find with, say, a heuristic... I've never needed to find a provably optimal solution...
I'm not sure about Gurobi or how the author used it in this case. But in general, yes: these combinatorial solvers construct proof trees showing that, no matter how you assign the variables, you can't find a better solution. In simpler cases you can literally inspect the proof tree and check how it's reached a contradiction. I imagine the proof tree from this article would be an obscenely large object, but in principle you could inspect it here too.
Well, if the solver isn't wrong and there were no bugs in impl, yes, the approach is rigorous. Allow strictly more "powerful" configurations yet still prove that the maximum is X, then achieve X through a construction, is standard math
By the way, I just wanted to also say I love big chunks of this whole comments section; so much pure positivity and human beauty in one place, so soothing, uplifting, and inspiring to me. Thanks hereby to everyone sharing around here how they're consciously recognizing and acting in various amazing ways on the good they received.
If you find this interesting, definitely consider checking out contraction hierarchies. One of the early algorithms used by mapping software to enable calculating fastest routes between any pair of places. It's exact, and it's orders of magnitude faster than graph search algorithms like Dijkstra.
(I had the joy of implementing this in Python with OSM data a few years ago. Planning a three hour car trip with software I wrote and having it come back with the same path recommended by Google Maps in a matter of milliseconds was a very rewarding feeling.)
To be fair, this is a mistake that started with the Google paper, and everyone else just copies the mistake.
The paper calls them Macaroons as a play on (browser) Cookies with layers (of caveats) - so clearly they meant macarons as well, since a macaroon doesn't have layers. Or at least, that's always been my interpretation of the name. It's possible it was just an arbitrary play on hMAC cookies and not the layers?
I had that thought, although according to another comment the definitions have crossover. Probably because people so frequently confuse the two, but here we are.
Used to use some of this data for analyzing cellular service coverage. The info on cellular data (e.g., LTE) availability is provided by the cell providers and is usually... very optimistic.
I'd assume the terrestrial fiber/cable/DSL data is more accurate, though?
Not really, up until the past year or so, the cable ISPs would count an area serviced if they could get one house per zip code. I think this is stricter now, but these maps will help keep them accountable if we update and flag incorrect listings.
Google still does this! They seem to use some sort of generative neural net to produce fake names, descriptions, and even reviews for the trap locations.
You can report the location to Google as "bad data" and they'll delete it, but then a totally different fake location will re-appear in its place a few days later.
I worked once with a contractor who did not have a physical location for their business. They simply worked out of a minivan which they drove to wherever they were needed. But they pretended, to google, yelp, and probably others, to have a business location.
It's worth pointing out that the conventional bombing raid of Tokyo on March 9, 1945 was deadlier than either Hiroshima or Nagasaki, depending on whose counts you use...
The objection I've usually heard is less about farm land being used for pasture instead of growing crops, and more about the amount of crops that have to be grown to feed the cattle... Growing corn to feed cows to feed humans is massively less efficient than growing corn to feed humans, or at least that's how the story goes.
Is there not an efficiency problem there that we could improve on?
Not expert either but from forums, I think its a bit of both. People treat pasture country like it would be good for cropping in theoretical climate discussions, and the more correct growing corn/grain/hay etc to feed cattle to feed humans.
Another factor is cattle feed is often poor quality human food, so the reject stuff. That wheat that was harvested a bit early to avoid storms and no good for the flour is great for cattle.
Also, to the main topic of this thread, I wonder if its good for food security we grow extra crops to feed livestock. If there is a food supply shortage, cattle can go to slaughter and there is plenty of extra corn or other about for humans. We eat less meat for a few years while we fix the supply chains type thing.
The way we see supply shortages from COVID, Id hope we never become too efficient in the food supply chain. The consequence of something creating lower food production is far worse than limited computer chips. Its not a system we want to be over optimised for the good times.
Sure, but go back to pasture based systems. Cows are a fantastic way to turn grass into human edible nutrients. That will probably reduce the amount of meat on the market, but no where near the drastic levels some people talk about.
All land is not fungible, we need to use the best tools for the job, and that will be a mix of a bit of everything, including animal meat.
Lemur Pro owner here. I personally have super-mixed feelings about the machine.
Pros: Battery life is excellent. Used it for 12 hours while walking around a factory doing an IT system install, never had to charge it. Slim form factor is nice. With an upgrade to an i7, additional RAM, SSD, etc., performance is good for any task not requiring a GPU. It would easily be the best laptop I've ever owned, except for...
Cons: WiFi chipset died within months of purchase and had to be replaced. Battery swelled by year 2 to the point that the mouse was unusable, so battery had to be replaced as well. The machine shipped with Ubuntu 20.04 LTS, which had a Linux kernel bug that caused the machine to freeze when trying to throttle up/down the i7 CPU for power management purposes. I contacted System76 about the problem, and they didn't know anything about it... I ended up having to troubleshoot it myself, at which point I told them the issue, and they sent out an email about the fix to (what I assume was) all Lemur Pro owners. I thought buying a Linux laptop from a company that specializes in making Linux laptops would let me avoid these kinds of nagging issues around things like drivers and power management bugs, but alas it did not. More startlingly, I would have expected a company that specializes in Linux laptops to at least be AWARE of such an issue on their machines, but it seems they had no idea... I feel like I would have been just as well off going with a Thinkpad.
Related final pro: It was frustrating to have to replace multiple parts in this machine (especially so early in its life), but I have to give credit to System76's self-install policy. They sent me the parts and detailed instructions for doing the repairs myself. Saved so much headache.
Overall, I really want to love my System76, but I'd have to think really hard before buying another one.
Still, 100% agreed that he stopped at the right time, both because of the creeping cynicism, but also simply because he was running out of fresh ideas...