Mario Meets Pareto
Posted by theanonymousone 17 hours ago
Comments
Comment by jerf 16 hours ago
One aspect for developers that I see quite often is the assertion that "We can't have X without giving up more Y", most commonly "we can't have more security without giving up on user experience". With the Pareto idea in mind, we can see that that statement is true, if and only if you are in fact on the Pareto frontier of security and user experience already.
However, many times these confident pronouncements are being made when the system under question is quite evidently not on the Pareto frontier in the first place and indeed you can get more of one without giving up the other.
Making it more tricky is that in business, you can never discard "money" as a dimension, so unless you're taking "money" as one of the dimensions in the original comparison you want to do, it sneaks its way in. Or, a composite time/money, or "cost to business", or some other similar concept, time & money aren't orthogonal and don't need to be treated as two separate dimensions in general, though you can if you want. Which puts you into the 3D case, and as the page says, that grows the frontier quite a lot, which is good in some ways and bad in others. Nevertheless, in my opinion it is still often the case that even in that space we are often making "tradeoffs" without checking that we're on the Pareto frontier in the first place.
Comment by munchbunny 13 hours ago
Comment by efavdb 12 hours ago
Comment by miki123211 5 hours ago
Any technological and societal progress is going to have negative consequences. To give just one example, completely curing cancer will put many doctors (and other healthcare professionals who aren't paid as well as doctors are) out of a job. It will definitely cause at least a few children to go hungry. It will probably cause a few suicides when some oncologists start to "feel useless." This does not mean we shouldn't cure cancer if the opportunity arises.
Our society, driven by clickbait, rage and social media hot takes, tends to overweight the dimensions at which new technology makes things worse. There are many news stories about social-media-fueled teen suicides or AI datacenter water use, very few about how talking to family abroad no longer requires astronomical long-distance bills.
Comment by jerf 12 hours ago
Comment by whateveracct 11 hours ago
you know how japanese oni would roll human souls into soba noodles? [1]
that's what modern corporate software company management does :)
[1] i learned about this from the very funny gintama funeral episode
Comment by circusss 7 hours ago
Comment by voidhorse 15 hours ago
One should keep in mind though that not all problems have a neat solution. Many spaces have multiple efficient points that still need to be chosen from, and many pareto optimization problems actually become NP hard computationally when the problem is large enough.
Comment by _davide_ 12 hours ago
Comment by dzonga 13 hours ago
Comment by uzerfcwn 10 hours ago
I ended up using a divide-and-conquer style approach, where I 1) pruned items that weren't on the Pareto frontier individually for each slot, 2) took the two slots X and Y that had the least items after pruning and grouped them by calculating Z:={x+y|x∈X,y∈Y}, 3) pruned items that weren't on the Pareto frontier in Z, and 4) repeated steps 2-3 until there was only one group remaining, comprised of the full Pareto-optimal item builds.
This ran in a couple of seconds, as opposed to the other solutions I tried that took somewhere between minutes and years. The downside was that including set bonuses into the model took extra work.
Comment by r3trohack3r 9 hours ago
Comment by uzerfcwn 8 hours ago
Comment by a3w 16 hours ago
Comment by prvc 15 hours ago
Comment by pavel_lishin 12 hours ago
Comment by woodrowbarlow 15 hours ago
Comment by kelvinjps10 13 hours ago
Comment by dxdm 11 hours ago
A "Pareto front represents the set of solutions where no solution outperforms any other solution in the set at every objective, and every solution not in the set is outperformed by at least one solution in the Pareto front in every objective"
Comment by Maxatar 10 hours ago
In general Wikipedia isn't a great way to learn new concepts; it's a good reference when you're already familiar with something and need to brush up on it.
Comment by caxco93 16 hours ago
Comment by darkwater 15 hours ago
Comment by fl4regun 14 hours ago
Comment by applfanboysbgon 15 hours ago
Comment by __s 15 hours ago
for super mario kart speedruns go with bowser/dk: https://www.speedrun.com/smk/runs/zp68nr8m
That seemed to hold up for Mario Kart 8 too going with Bowser at the edge of their pareto frontier, https://www.speedrun.com/mk8
needing acceleration is a skill issue
Comment by nightpool 11 hours ago
(Mario Kart World, which isn't covered in this article, has a more standard speed vs acceleration trade off but in that game high-max-speed (heavy) combos have even worse problems due to the way the rail grind mechanic was implemented and what seems to be an unforeseen interaction with the coin curve see e.g. https://www.youtube.com/shorts/sPyur6BkiOs)
Comment by rtkwe 13 hours ago
Comment by frantathefranta 15 hours ago
Comment by _superposition_ 14 hours ago
Comment by kommunicate 12 hours ago
Also, miniturbo is the single most important stat in the game, not top speed
Comment by paytonjjones 15 hours ago
If you're playing normally (with other people and items), even the most skilled player can't avoid getting hit by some universal items and will benefit from acceleration.
Hence, as the author notes, the balanced build with Peach being favored among competitive players.
Comment by drdexebtjl 11 hours ago
Comment by crtasm 15 hours ago
People do speedrun the individual tracks solo in other categories.
Comment by bspammer 13 hours ago
Comment by __s 13 hours ago
Comment by dmonitor 13 hours ago
Comment by ChrisGreenHeur 15 hours ago
Comment by moomin 14 hours ago
Comment by jedberg 13 hours ago
Comment by hamburglar 12 hours ago
Comment by jedberg 11 hours ago
Comment by SaltyBackendGuy 12 hours ago
Comment by aselimov3 12 hours ago
Comment by 8n4vidtmkvmk 12 hours ago
Comment by kridsdale1 12 hours ago
Comment by sudobash1 12 hours ago
When my oldest was first trying Mario Kart, his uncle came over and played against him blindfolded (and still won). It was very entertaining to watch.
Comment by cortesoft 12 hours ago
One, that more of something is always better, e.g. it is always better to have more speed.
Maybe, but what if having too much speed causes you to run off the track and perform worse? It could be that there is actually a peak in the utility of speed that declines as it increases.
There could also be important relations between attributes that make determining a Pareto frontier impossible or at least more difficult. For example, some pairs of attributes work best when they are a specific ratio, and increasing one or the other will actually decrease utility unless the other is increased at the same time.
Comment by cfiggers 4 hours ago
Eventually, almost every attribute we can practically and objectively measure is at best a proxy measure for the thing we actually want to know, which is, in this case, "Most likely to win races." The thing we actually want to measure is often hard, impossible, or impractical to objectively measure, which is why we resort to proxies in the first place. By "proxy measure" we mean, not a perfect 1:1 to the thing we want to measure, but containing some amount of signal about it.
So yes, sometimes there's a peak in the utility of speed. But perhaps that trade-off can be modeled by another attribute called "Proneness to fly off the track" which increases as speed does, and is weighted such that the peak and then taper-off of benefit in speed is captured between the combination of the two of them.
But then, any vehicle that has the same speed but lower "Proneness to fly off the track" would be objectively preferable to any equally-fast vehicle with greater "Proneness to fly off the track." And so it continues.
Comment by Barbing 11 hours ago
I'm reminded of two things that in a way support your premise with the second example being more relevant. Both are outside what’s being discussed exactly, more about knock-on effects maybe, anyway:
The first is that Angry Birds found the speed of launching birds into structures was important for engagement: it cannot be too fast.
The second is from a commenter somewhere who said they had or worked on software that took ten minutes to boot in the morning, which is when employees made coffee and talked and brainstormed. Everyone was disappointed when after refactoring, the software booted immediately.
Comment by dfdydx 11 hours ago
Comment by CobrastanJorji 11 hours ago
Comment by Retr0id 16 hours ago
Comment by Velocifyer 8 hours ago
[0] A redshell wall break is when you point your vehicle near a wall to break a redshell without using a defense item. [1] Drifting style is either inward or outward. Inward drift has more intuitive controlls and is way better for intermidiate players, but pro players dislike it because is removes various difficult tricks.
I recommend yoshi on the yoshi bike with azure rollers and the paper glider.
Comment by hspeiser 12 hours ago
Comment by charv 14 hours ago
Comment by chriswarbo 12 hours ago
Yes, trivially. Just look at the opposite end of each metric. Pareto optimality doesn't know/care what each metrics means, since it keeps them all separate.
Comment by Aachen 11 hours ago
Comment by Agentlien 13 hours ago
"We're often faced with similar trade-offs. You want a meal that's both cheap and delicious? A job that's both well-paid, easy, and fulfilling?"
I really don't feel like "easy" is a dimension I wish to optimize for in a job. It almost feels opposite to what I've actually optimized for - since for me a fulfilling job usually means full of deep technical challenges. I want a job without unnecessary friction, without interpersonal drama, even one that's low stress. But definitely not easy.
Comment by wiether 13 hours ago
> I want a job without unnecessary friction, without interpersonal drama, even one that's low stress.
That's part of how I see an "easy" job. Where I can focus on working on the actual tasks at hand.Doesn't matter if the actual job is filling glasses of water or building rockets; as long as I can focus on it for 100% of my working hours, I'd see it as an "easy" job.
Comment by blanched 13 hours ago
(And please note that I do not mean to imply that there are no challenges in manual labor or that software engineering is more important.)
Comment by jimbokun 13 hours ago
Comment by ytpete 12 hours ago
Comment by StilesCrisis 13 hours ago
Comment by Georgelemental 13 hours ago
Comment by Agentlien 13 hours ago
But I definitely want a job without stress, danger, or physical strain on my body. Perhaps I am just looking for a similar word which doesn't imply anything about the complexity of the task at hand.
Comment by elwell 12 hours ago
Comment by jpfromlondon 12 hours ago
I don't think I've ever seen an example of pareto that wasn't pseudo scientific drivel.
Comment by FailMore 14 hours ago
build a card here: https://requirement5.com/create (and the CLI instructions are there too)
Comment by DarkCrusader2 14 hours ago
Comment by FailMore 14 hours ago
Comment by initramfs 12 hours ago
Comment by cocodill 2 hours ago
Comment by underlines 3 hours ago
Comment by SaltyBackendGuy 12 hours ago
Comment by valiant55 11 hours ago
Comment by drdexebtjl 11 hours ago
The analysis comes before the meta settles, so of course it’s consistent :)
Comment by yathern 14 hours ago
Comment by xp84 12 hours ago
Comment by tgtweak 10 hours ago
OG credit to: Henry Hinnefeld 2015: https://hinnefe2.github.io/python/tools/2015/09/21/mario-kar...
Comment by kevinwang 14 hours ago
Comment by bspammer 14 hours ago
EDIT: If you mean that Rosalina looks slightly higher on the graph, I believe that's just a visual effect to allow multiple characters to occupy the same square - the stats are all integers.
Comment by kevinwang 14 hours ago
Ah, yeah. That is what I meant. Thanks!
Comment by redbell 11 hours ago
Coincidently, this Pareto Front concept is currently on the front page on HN at #10 (https://news.ycombinator.com/item?id=49096439) and apparently, it was posted before this post.
Comment by cantalopes 7 hours ago
Comment by tkclough 5 hours ago
If you get hit by a blue shell with a build fully optimized for speed at the cost of acceleration, it's likely to cost you the race.
Comment by yaqubroli 12 hours ago
Comment by devin 13 hours ago
Comment by dorfsmay 12 hours ago
Comment by andai 16 hours ago
Comment by superMayo 15 hours ago
It’s called scrollytelling. For this particular project, I borrowed a lot from https://mlu-explain.github.io/. For the 3D elements, I used Threejs and a custom vertex shader for the 3D plot.
Comment by dxdm 13 hours ago
I get that this form of presentation may be great for many people, but for my brain, it makes it extremely hard to engage with the content.
Comment by superMayo 12 hours ago
Comment by dxdm 12 hours ago
I appreciate your work to make this topic accessible in an interactive format. Somehow, in this case, it's too much for me.
I think the ratio of information to interactivity is too low. It's like I have to push around a tiny keyhole to slowly access information. The graphs look fun, but their fancifulness is distracting me.
I don't usually mind interactivity, but I think usually it is embedded in the text, instead of gating it, if that makes sense.
Comment by beklein 15 hours ago
Comment by Retr0id 16 hours ago
Comment by kasts 12 hours ago
Comment by phyzix5761 14 hours ago
Comment by demibabs 15 hours ago
Comment by nwsm 15 hours ago
Also, wonderful visualizations, but the change between blue and white backgrounds is really jarring to me.
Comment by SubiculumCode 15 hours ago
Comment by mef51 14 hours ago
Comment by swrrt 4 hours ago
Comment by giekaton 11 hours ago
Comment by hei-lima 7 hours ago
Comment by sendes 14 hours ago
Comment by phoghed 14 hours ago
Comment by reconnecting 16 hours ago
Comment by Jepacor 16 hours ago
I switched him to the meta build and suddenly boom, he went from like 10th to 2nd against the AIs.
It's kinda weird that you can shoot yourself in the foot so much when picking your kart in this game.
Comment by latexr 15 hours ago
Nintendo optimises for fun, not competitive play. Infamously, to curb the competitiveness of Super Smash Bros (SSB) Melee, they introduce a random tripping mechanic in the following SSB (Brawl). Everyone hated it so they removed it in the one after that.
Comment by elwell 12 hours ago
What do you mean "play for Bowser"?
Comment by latexr 16 hours ago
Comment by rakamotog 15 hours ago
Comment by danilocesar 11 hours ago
Comment by suzukivenom 16 hours ago
Comment by Aeroi 15 hours ago
Comment by hn22fazjsv 14 hours ago
Comment by declan_roberts 12 hours ago
Comment by bleuarff 12 hours ago
Comment by johnisom2001 12 hours ago
Did you even read the post?
Comment by hnmu4c5zar 14 hours ago
Comment by alana314 6 hours ago
Comment by paulnpace 14 hours ago
Comment by bix6 15 hours ago
Comment by amilovepdf 12 hours ago
Comment by ShinyLeftPad 16 hours ago
Comment by voidnullvalue 16 hours ago
Comment by andai 16 hours ago
Comment by recursive 12 hours ago
Comment by kfarr 16 hours ago
Comment by ShinyLeftPad 6 hours ago
Comment by duskdozer 14 hours ago
Comment by rtrigoso 16 hours ago
Comment by superMayo 15 hours ago
Comment by fnordian_slip 16 hours ago
Comment by phoghed 15 hours ago
Comment by ShinyLeftPad 6 hours ago
Comment by rokkamokka 16 hours ago
Comment by xkcd1963 11 hours ago
Comment by Xirdus 15 hours ago
Comment by Levitz 15 hours ago
Comment by rtkwe 13 hours ago
Comment by duskdozer 13 hours ago
Comment by rtkwe 12 hours ago
Comment by Xirdus 12 hours ago
Comment by rtkwe 12 hours ago
Comment by Xirdus 11 hours ago
Comment by rtkwe 10 hours ago
Comment by Xirdus 9 hours ago
This page has some elements that scroll and some elements that don't scroll. And some elements that switch between scrolling and not scrolling. And some animations are controlled by scroll position, meaning they bounce back and forth while I try to find my bearings on the scroll wheel. Everything is fighting for my attention all at once, which prevents me from focusing on anything in particular. Most of all, it prevents me from focusing on the scrolling itself - and scrolling requires extreme focus here considering you never know what will happen and how much you need to scroll for it to happen. Is text going to slide in? Is a picture going to suddenly pop up? Is an existing picture going to transform to something else? Will it transform gradually as I scroll, or is it going to do it all suddenly in one step?
In short - it breaks the UI metaphor of scrolling an infinite roll of paper, and that in turn breaks my brain. I just can't follow what's happening, there's too much non-scrolling action happening when I scroll. There's also too much empty space between paragraphs.
Comment by duskdozer 14 hours ago