Bug - Not A Bug multiple synergistic maximization (performance)

roippi

Developer
I do not encounter this bug on my account. However, someone with a significant amount of synergistic gear does. The "update" button is clicked one time, and the maximizer makes multiple passes to complete the job - taking up to 2 minutes or longer to finish.

maximizing meat:

Code:
Maximizing...
34834 combinations checked, best score 749.66
71948 combinations checked, best score 749.66
109256 combinations checked, best score 749.66
146647 combinations checked, best score 749.66
182755 combinations checked, best score 749.66
219892 combinations checked, best score 749.66
256175 combinations checked, best score 749.66
292773 combinations checked, best score 749.66
327609 combinations checked, best score 749.66
364611 combinations checked, best score 749.66
402217 combinations checked, best score 749.66
439515 combinations checked, best score 749.66
474764 combinations checked, best score 749.66
507416 combinations checked, best score 749.66
544372 combinations checked, best score 749.66
580594 combinations checked, best score 749.66
615978 combinations checked, best score 749.66
652280 combinations checked, best score 749.66
688641 combinations checked, best score 749.66
725329 combinations checked, best score 749.66
762031 combinations checked, best score 749.66
790720 combinations checked, best score 749.66

maximizing meat, dump:

Code:
Maximizing...
SLOT 0
[ancient turtle shell helmet, Brimstone Beret, Hodgman's porkpie hat, fire]
SLOT 1
[Coilyâcent;]
SLOT 2
[Bag o' Tricks, Brimstone Bunker, box, Hodgman's garbage sticker]
SLOT 3
[Rain-Doh red wings, Misty Cape]
SLOT 4
[origami pasties, hairshirt]
SLOT 5
[poodle skirt, Brimstone Boxers, Hodgman's lobsterskin pants, leotarrrd]
SLOT 6
[incredibly dense meat gem, Grimacite gauntlets, Grimacite galoshes, bitter bowtie, brazen bracelet, bewitching boots, Brimstone Brooch, Brimstone Bracelet, wheel]
SLOT 7
[muculent machete, Brimstone Bludgeon, spork, scratch 'n' sniff sword]
SLOT 8
[bottle-rocket crossbow]
SLOT 9
[party hat, Brimstone Beret, Hodgman's porkpie hat, fire]
SLOT 10
[]
SLOT 11
[wristwatch of the white knight]
SLOT 12
[bottle-rocket crossbow, Brimstone Bludgeon, scratch 'n' sniff sword, spork]
34876 combinations checked, best score 749.66
68637 combinations checked, best score 749.66
103301 combinations checked, best score 749.66
135956 combinations checked, best score 749.66
172403 combinations checked, best score 749.66
209264 combinations checked, best score 749.66
246183 combinations checked, best score 749.66
283254 combinations checked, best score 749.66
319681 combinations checked, best score 749.66
355252 combinations checked, best score 749.66
391794 combinations checked, best score 749.66
428546 combinations checked, best score 749.66
465177 combinations checked, best score 749.66
502396 combinations checked, best score 749.66
538858 combinations checked, best score 749.66
575105 combinations checked, best score 749.66
609331 combinations checked, best score 749.66
645391 combinations checked, best score 749.66
680424 combinations checked, best score 749.66
716644 combinations checked, best score 749.66
752215 combinations checked, best score 749.66
789508 combinations checked, best score 749.66
790720 combinations checked, best score 749.66

I'd classify this as a performance bug, since the correct result is eventually reached. Taking 23 passes to consider something like 10m combinations seems like unintended behavior, though.
 

jasonharper

Developer
This is simply combinatorics in action. And given that this person seems to have a computer about 10x faster than mine, I don't have a whole lot of sympathy for a mere 2-minute maximization.

As a reminder, if you think the maximizer has found something good enough, you can hit ESC to interrupt it, and it will proceed with the best combination it's found so far.
 

roippi

Developer
Marking as not a bug then.

And given that this person seems to have a computer about 10x faster than mine, I don't have a whole lot of sympathy for a mere 2-minute maximization.

Huh. I've never had a maximization take more than 3 seconds so long as it's not hitting the mall. Not intended as a humblebrag on the prowess of my computer, just explaining why the above is so far detached from my experience of the maximizer.
 

Bale

Minion
I've never had a maximization take more than 3 seconds so long as it's not hitting the mall.

There is a huge difference between maximizing for straightforward gear and having synergistic equipment. It gets extremely slow when it is considering the pros and cons of hodgman+hamster vs brimstone vs secrets from the future.
 

xKiv

Active member
I find that maximization time increases verily if I start out equipped in things that don't help (i.e. start out in +meat outfit instead of +item outfit when maximizing +items).
Perhaps an option for a 2-pass maximization, where first pass would simply put the single best item into each slot disregarding any synergies (except 1-handed vs. 2-handed weapons and you-can-only-equip-1-of-X accessories; any other cases where equipping something in a slot might prevent you from equipping something/anything in another slot?), and then second pass starting from that?
The tradeoff would be that it might no longer be possible to prefer "keep current equipment in slot" to "put something else with the same score in the slot".

Also, why are some of these items in the running? +Tie? Does the "1 initiative" in tiebreaker mean that 10% initiative counts as much as 10% meat when maximizing +meat?
hat: fire (has 0 score, 10 tiebreaker; but ancient turtle shell helmet already has 10 score, so why is fire even considered? was it equipped?)
offhand: box ... that should have lower score than the BoT, and I think even than the brimstone bunker would have by itself?
hairshirt ... +ML considered against +30 meat?
leotarrrd ... has +ini, but no +meat (was it really maximizing +meat?)
accessories ... there are 8 accessories listed that do give +meat, so why consider wheel, which gives initiative?
weapon ... spork (and 3 others, + brc in a different shortlist) ... why? equipped?
 

Theraze

Active member
If you actually wanted that, I'd probably suggest a "ignore synergies" option instead of having it run twice. If you care about the synergies and your currently equipped gear, you could then ignore them, maximizing for single best items, and run a normal maximization after.

But really, I don't see this as a change that has to happen. If you want to run a long, complicated maximization, it should just eventually return the proper results. The only sadness I have with it is that it can currently fail to meet requirements when they're possible but not as good as what you're maximizing for. Ah well.
 

xKiv

Active member
But I *don't* want to run long complicated maximization. I want to run the shorter less complicated maximization that gives (mostly) the same results (maybe different items, but same score).

... you could then ignore them, maximizing for single best items, and run a normal maximization after.

Yes, that's essentially what I meant (but failed to write, maybe because I was aggravated by the slowness that the internet was inflicting on me at the time).
 

Catch-22

Active member
Okay, maximizer not something I'm hugely familiar with here, just a question though. For accessories, is the maximizer properly handling the accessories slots? Seems like a lot of combinations are being tried, so it makes me wonder. For example, are:

Acc1: Lucky Rabbit's Foot
Acc2: Baron Von Ratsworth's Monocle
Acc3: Natty Blue Ascot


and

Acc1: Baron Von Ratsworth's Monocle
Acc2: Lucky Rabbit's Foot
Acc3: Natty Blue Ascot


Considered the same combination?
 

jasonharper

Developer
Those are permutations, not combinations. The maximizer considers only distinct combinations, of course (I couldn't afford to ignore a 6X speedup), the problem is that the number to be considered is an exponential function of the size of the shortlists.
 

Catch-22

Active member
the problem is that the number to be considered is an exponential function of the size of the shortlists.

Yeah that's what I figured, just checking we were only considering unique combinations because if we weren't, as you said, we'd be doing things a lot slower. Thanks for the answer :)
 
Top