Softcaps discussion - Printable Version
+- SWTOR Mechanics Forums (http://mmo-mechanics.com/swtor/forums)
+-- Forum: General (/forum-1.html)
+--- Forum: Game Mechanics (/forum-5.html)
+--- Thread: Softcaps discussion (/thread-659.html)
RE: Softcaps discussion - Kaedis - 02-05-2012 08:23 AM
Yes, I should have noted that, those constraint equations assume about 1825 Willpower buffed, upper-end Rakata with stim. You can make isoclines that include primary stats, but they get a fair amount more complicated.
As for how...well, I'm still researching that. The basic idea is you need to figure out the value of the independent stat for which the other stats are linearly proportional, as well as they rate at which they scale in accordance with it. Annoying, but not impossible. The sheet I have thus far does this by interpolation, but it should be possible to find an analytical solution as well.
RE: Softcaps discussion - Cosmic Osmo - 02-05-2012 11:50 AM
How exactly does using your isocline equations make picking gear any easier?
The easiest way to pick gear for optimal DPS/HPS is to calculate stat weights given your current stats, then multiply those by the stats on a piece of gear to determine the total value of that piece of gear. Equip the gear with the highest value, then iteratively re-compute the weights to optimize.
You end up being nowhere near the isocline "goal" distribution of stats because you don't get to pick which stats are on gear, you only get to pick between pieces of gear. Often the choice is between a smaller amount of a more valuable stat and a larger amount of a less valuable stat (or combination of stats), and the latter provides more overall dps, so the thing to do is use that gear, and move away from the isocline "optimal point." A useful method needs to allow you to compare real gear, because itemization points don't exist in a vacuum.
RE: Softcaps discussion - Kaedis - 02-05-2012 04:25 PM
I wasn't saying replace stat weight equations with isoclines. I was saying that ultimately the isocline equations are really the only solid things we can post for a class for optimization. We can post a table of stat weights, as those are vastly different based on gear. Even calculating raw stat weights can be a pain (or impossible for those without a solid grasp of math, at least until we come up with tools that are just "input stats and spec, here's your weights"). Beyond that, it could conceivably be inaccurate in certain circumstances. If for example, you're calculating between two items, the only difference between which is one has 50 crit and the other 50 alacrity. Your current stat weights are crit = 0.74 and alacrity = 0.71. However at +50 crit, crit's value becomes 0.62, while with +50 alacrity, alacrity becomes 0.69. Unless there's an abnormal peak and curve in that range, it's likely that you'd gain a slight amount more dps from the alacrity one, as the average value of the alacrity over that range is 0.7, while crit's is only 0.68.
Arguably you could do this average technique, but what if there is a peak in there? The isoclines are linear constraint equations, which means whichever is higher relative to the isocline point is worth less than the other. Put that alongside a graph overlay of the isocline equations and it becomes a very useful tool (in addition to straight stat weights at a defined point) for determining which item is actually superior. They also provide a nice way of determining which stats scale better.
RE: Softcaps discussion - LagunaD - 02-05-2012 10:46 PM
(02-05-2012 04:25 PM)Kor Wrote: Arguably you could do this average technique, but what if there is a peak in there?
Not sure what you mean by "peak". Adding a stat can only reduce the weight of that stat (it will likely increase the weight of *other* stats). Putting it another way, if stat weights are the derivatives of some objective function to be maximized (DPS, HPS, -Squishiness), the second derivatives of the objective function with respect to any single stat must always negative.
For the "overshoot" concerns you mention, basically what you want is the second derivative of the objective function, or equivalently the first derivative of the weights.
In fact, since finite changes in one stat affect the weights of all others, what you really want is Jacobian matrix of the weights, or (equivalently) the Hessian matrix of the objective function. Then a "gear advisor" would be modeling the objective function as a quadratic surface, rather than a plane, in the neighborhood of the current stat values.
If you can calculate the first derivatives (weights), you can calculate the second derivatives, although I'm not convinced it's really worth the effort except as an intellectual exercise...
RE: Softcaps discussion - Kaedis - 02-06-2012 03:54 AM
Quote:Not sure what you mean by "peak". Adding a stat can only reduce the weight of that stat (it will likely increase the weight of *other* stats). Putting it another way, if stat weights are the derivatives of some objective function to be maximized (DPS, HPS, -Squishiness), the second derivatives of the objective function with respect to any single stat must always negative.
This isn't actually true, for some stats. Accuracy is a good example, which a sharp slop change at the defense soft-cap for melee classes. Alacrity is another that if the slope were slightly different in constants (which may actually happen, considering how crappy it is right now), the better-than-linear percent to output scaling could easily overrule the DR curve and make the total rating to output curve have a couple inflection points. Beyond that, the average technique assumes a linear slope between the two points, which is far from the truth, so even without a peak, it's inaccurate.
Quote:Then a "gear advisor" would be modeling the objective function as a quadratic surface, rather than a plane, in the neighborhood of the current stat values.
Incidentally, this surface is precisely the function that the isocline constraints are meant to model, or at least meant to model the peak of. If you can find the derivative of the object function, you can very easily find the isocline functions as well.
RE: Softcaps discussion - LagunaD - 02-06-2012 06:26 AM
(02-06-2012 03:54 AM)Kor Wrote: If you can find the derivative of the object function, you can very easily find the isocline functions as well.
Very easily? How?
RE: Softcaps discussion - Kaedis - 02-06-2012 08:22 AM
Quote:Very easily? How?
The isocline of a family of functions is the curve defined by the points at which the first derivative is equal. Solving for that curve via interpolation would be relatively easy, if computationally complex. Solving for it analytically...I'll admit, I'm at a loss.
RE: Softcaps discussion - Gorlough - 02-06-2012 06:03 PM
Honestly speaking, there is no mathematical solution to 'optimal' stats in general.
What we're looking at, is a mixture of stats for any given Advanced class where some stats are going to surpass other stats in importance depending on how skill points are distributed and rotations are executed.
Knowing this, all we would be able to calculate, are approximations on common builds (lets take the carolina parakeet or gwarrr's Arsenal spec for example).
So at this point, all that could have done in theory crafting regarding optimizing stats is mostly done. We just have to find solutions for the specific problems.
RE: Softcaps discussion - Kaedis - 02-06-2012 08:40 PM
Quote:Honestly speaking, there is no mathematical solution to 'optimal' stats in general.
There's certainly plenty more work to be done. We still don't have an analytical solution to the stat weight curves (though that may be beyond even Laguna's considerable mathematical prowess, it's certainly beyond mine), and we've still only got a relatively hazy idea of precisely how the stats scale with each other, with the spec choice, and with rotational choice. Even beyond that, we've got an entire breadth of tools to develop from that knowledge. I would hardly say our work is "mostly done".
RE: Softcaps discussion - Anonymousy - 02-06-2012 09:40 PM
how about the following approach:
- take ~3 specs and 1 or 2 rotations for each of them per advanced class
-> you can calculate the dps/hps for them based on the stats
-> set some starting points like 1200 primary attribute, 0 ratings
-> set different constraints for the primary, secondary, tertiary values (like 500,400,300)
-> plot all different combinations of these values based on their dps/hps (say 200 alac+100 surge vs 100 acc+50 surge + 150 defense)
-> repeat for different constraint values.
for simpler calculation, you could also use steps in form of mods (to reduce the possible combinations).
wouldn't that get us pretty close to the optimal stat weight if we could see that 500cun,250pow,150crit,300surge is the best combination for concealment1 and lethality2?
of course it's not analytical and more similar to monte carlo.