06-22-2022 , 04:37 PM
I run a sim in PioSolver, 3bp SB v BTN. We get:

EV OOP = 177.331
EV IP = 216.669

And at the bottom we see 'Exploitable for 0.2797% of the pot per hand'.
So we have approximated an equilibrium strategy and solved it down to a high accuracy.
A Nash equilibrium strategy is one which is considered 'unexploitable' ie. your opponent cannot gain a higher EV if he were to choose any other possible strategy.

I then nodelock OOP's flop strategy, whilst keeping IP's strategy the same (the 'solved GTO approximation').
This results in:

EV OOP: 190.385
EV IP: 203.615

Why has OOP gained so much of the EV if IP's strategy is an approximation of GTO? What happened to the 'Exploitable for 0.2797% of the pot per hand' ?
06-22-2022 , 06:01 PM
Are you measuring EV from the same node in both spots? For example, you might have measured the first spot at the root node, and the 2nd nodelocked spot after the flop bet.

It's possible for the nodelocked OOP strategy to have more EV in one line (e.g. putting too much value into the bet), but then lose even more EV in their checking line. You need to compare from the root to be sure.

Quote:
I then nodelock OOP's flop strategy, whilst keeping IP's strategy the same (the 'solved GTO approximation').
How did you do that, exactly? Did you lock IP's strategy on all future runouts and resolve? Or just on the flop? Or did you not resolve?
06-22-2022 , 06:35 PM
Same node, both instances of EV measured at the root node.
I nodelocked OOP to have a stronger betting range and higher betting frequency than optimal, leaving a weaker checking range.
I also nodelocked IP on the flop to this original static 'GTO' strategy. So, in both trees, the original and the double nodelocked one, IP does the exact same actions with his range in every node, whereas OOP has changed his strategy. This causes IP to lose a significant % of the EV after re-solving. (nodelock -> calculate results -> 'Go' to resolve).

I don't really understand this. I thought the original equilibrium is a GTO approximation and thus should not lose any EV against a random strategy.

Logically, it makes sense.. The bottom of IP's calling range OTF vs the bet now becomes -EV, as OOP's betting range is more value heavy. However, OOP's check line is now very weak, so IP's hands which were a check/mix before now become much higher EV to bet. BUT, since we locked IP's frequencies, he is not exploiting OOP's weak checking range by betting more often when checked to. Therefore over the whole tree, all the nodes summed, OOP gains EV and IP loses EV. How is this possible if we solved down a Nash equilibrium for this spot? If IP was playing a true GTO strategy then OOP would not see any EV gain here!
06-22-2022 , 07:51 PM
You'd have to post all the screenshots. Likely evaluating from different node or you changed the preflop ranges.
06-22-2022 , 08:26 PM
There's no theoretical explanation as this just violates basic game theory principles. So it has to be user error or a bug. Post screenshots, or better yet, upload both sims to GDrive and share here.

Two things to note tho:

1) IP will change their strategy on turns and rivers after you resolve.
2) You calculated results before resolving.
06-22-2022 , 09:41 PM
The preflop ranges are the same. And evaluating overall EV at root node.
Just so it's clear what I'm trying to do: I solve down a spot to high accuracy, use one size OTF, and lock IP's strategy so he cannot re-adjust even if I re-solve the tree. IP's play is static, fixed. I also nodelock OOP OTF and come up with a new flop strategy (simply adjusting frequencies, overall range stays the same).

My hypothesis was that there should be minimal EV loss, since IP is playing a strategy approximated to the Nash equilibrium strategy, whereas OOP isn't playing 'GTO' anymore. My understanding so far was that if I solve down a sim to low exploitability, then using this strategy will never lose EV against any other possible strategy. Since it's OOP that has deviated from the pair of equilibrium strategies for this spot, I thought it would be OOP that loses some small amount of EV. (maybe my understanding here is off?)

After changing OOP strategy and nodelocking IP OTF (which causes IP to play 'static' from the flop onwards, meaning every other node past the flop is also unchanged) I get this EV difference:

and at the bottom the exploitability:

I'm not really sure what I could be overlooking here.

@Tombos21
I calculated results because I wanted to compare the EV when IP plays the >old< strategy against OOP's >new< changed strategy. So I don't need to re-solve here as I don't want to find a new equilibrium. I calculate results to just quickly find the EV difference. Once I re-solve allowing IP to change his strategy (unlocking the flop), then a new equilibrium is reached, and IP actually gains a little bit of EV due to OOP deviating.

original 'GTO' strat:

OOP nodelocked betting range:

I won't flood with screenshots, but IP's strategy is the same in both, for every node. Re-solving would change this, and then IP's EV jumps up to around 218 when I do this. But my question is why does IP lose significant EV whilst using the original equilibrium against a new OOP strat.
06-23-2022 , 01:29 AM
It's probably because you used small save, and it forgot the strategy on later streets. When it tries recalculating the EVs, it's essentially using random river strategies, so you get highly exploitable nonsense outputs. That's why your exploitability is off the charts.

You'll see this message if you try to nodelock a small save tree:

Note that if you browse a river in a small save tree it will recalculate that exact river on the fly and look normal. But the rest of the river nodes are still unsolved.

Try this same experiment on a freshly solved or fully solved tree and you'll get normal results (Use full save). Nodelock OOP to bet more often, and press "calculate results" and IP's EV will increase slightly. You don't even need to nodelock IP as their strategy won't change so long as you don't press "Go".
06-23-2022 , 04:45 AM
Tombos is correct, you didn't re-run the sim basically to a lower exploitability more or less. Try re-running and then nodelock, then run again after the nodelock.
06-23-2022 , 08:59 AM
Nice thanks. I did get the above window, and clicked 'Yes', thinking that was fine and the tree got rebuilt but guess not. I will save the full tree and give it a try today.

m