Topic: Hungarian math

So I cannot for the world figure out why (not how, why) extensions get calculated like they do.

As an example , I'll take locking time. I have this Arbalest, it's base locking time is 12.5 sec. My Accelerated target locking extension is at level 5, which would indicate a 25% decrease. But, showing info on an activated Arbalest (without mods fitted) shows 10 sec. The way I remember how to decrease something by 25%:

12.5 * (1 - 0.25) = 9.375 sec.

Or, you know:

12.5 - (12.5 * 0.25) = 9.375 sec.

Alright, so let's find the percentage difference between the old number (12.5 before extensions) and the new number (10):

100 * (1 - (10 / 12.5)) = 20%

So my question here, 5% per level reduction relative to what exactly?

(the actual formula is reversed, e.g. you simply ask: what value do I have to increase with 25% to get the base value)

Re: Hungarian math

Calculation is, 12.5 / (1 + 0.25) = 10 sec.

I Currently am the author of Perpetuum Fitting Tool - Continued..
EVE - bigsteve

Re: Hungarian math

There are two ways to compose (or stack) an x% reduction n times.

V*(1-n*x/100) is used when you refer to n reductions of x% of nominal value V (also known as simple composition or additive composition).

V*(1-x/100)^n is used when you refer to n successive reductions of x% of the current value (also known as compound composition or multiplicative composition).

The second formula is better for gaming purposes (and in general for most purposes) because the result is positive for all positive values of x less than 100% and all positive values of n. In particular it makes unlimited number of compositions possible even with different rates (multiple modules and multiple extensions, for example, even with different percentages that would add up to more than 100%).

It also makes the "reduces by x%" description nominally correct for all modules and extension levels independently from any other active effect.

I do realize that this does not answer your question. Not being a dev I can only assume that they went with the V/(1+n*x/100) formula because it offers some of the advantages of the compound formula (result always positive) but it's faster to compute. I am aware of the fact that it makes all descriptions actually incorrect and that it does not really have the benefit of composing different effects the way the compound formula does (also: is the saved computational time really relevant today?)

Unfortunately the fact it's not what I would have done is irrelevant as I'm not a dev.

Avatar Creations have a lot to learn about economy
-- Snowman

4 (edited by Pak 2011-07-18 18:11:14)

Re: Hungarian math

bigsteve wrote:

Calculation is, 12.5 / (1 + 0.25) = 10 sec.

You do realize that the OP knows it already (he posted that formula on the forums earlier) and he's not asking how it's computed but why?

Avatar Creations have a lot to learn about economy
-- Snowman

Re: Hungarian math

Still, even if they do realize most of the description fail in some respect (I was scuffed on IRC today for mentioning this for apparently what was the 100th time), what would be a correct description here that actually made sense? Pulling out a calculator for even multiplicative percentages is not rocket science, but this is just weird.

6 (edited by Pak 2011-07-19 01:01:30)

Re: Hungarian math

Doek wrote:

Still, even if they do realize most of the description fail in some respect (I was scuffed on IRC today for mentioning this for apparently what was the 100th time), what would be a correct description here that actually made sense? Pulling out a calculator for even multiplicative percentages is not rocket science, but this is just weird.

Actually "V decreases by x% per level of ..." or "each level of ... decreases V by x%" are fully correct only when referring to the multiplicative composition.

Yet most people are not used to thinking multiplicatively and would understand it additively even if the correct description for an additive composition would have been "V is diminished by x% of base value per level of ..." or "each level of ... diminishes V by x% of base value".

edit: "V is additively diminished by x% per level of ..." would also be correct, but probably somewhat more confusing for most people.

Knowing that most people would have problems understanding compound composition because it's a multiplicative operation, I have serous doubt that a description like "V decreases by the reciprocal additive x% augmentation per level of ..." would make sense to anyone.

And it still would not explain why the hell they did it that way.

Avatar Creations have a lot to learn about economy
-- Snowman

Re: Hungarian math

1. increase damage/yield, etc

the description says its increasing your damage by x% - wrong
right: The extension is increasing your modules     coefficient of performance by x%

difference: its not 120% + 5%*lvl, its 1,2*(100%+5%*lvl)

2. cycletime

description says its lowereing the cycletime by x% - wrong
right: its increasing the rate of fire by x%

If you want to know WHY it is that way: put those formulas into a spreadsheet and create line-charts. you will see that most extensionbonus ore things happen to have a linear progression, except for those which the Balancing DEV thinks that it would be too overpowered if they would do that.

*Disclaimer: This post can contain strong sarcasm or cynical remarks. keep that in mind!
Whining - It's amazing how fast your trivial concerns will disappear

Re: Hungarian math

Annihilator wrote:

stuff

So how is this relevant to extensions that actually do what they say (more or less), but utilize that peculiar Hungarian math to do it?

Also, the formula for locking is not linear. In fact, have it successively reduce with 4% (instead of 5%) and it pretty much lines up with the formula that's actually used (I'd say at most a 0.2 difference, which becomes a 0.02 difference at level 10).

Re: Hungarian math

each level increases your performance by 5%.   you do not add up your total percentage from your levels, but rather, 5% of the base, then 5% of that, then 5% of the previous.....

so, 12.5-(12.5*0.05)=11.875 (this is for the first level of your skill)
     11.875-(11.875*0.05)=11.28125 (2nd level)
     11.28125-(11.28125*0.05)=10.7171875 (3rd level)
     10.7171875-(10.7171875*0.05)=10.181328125 (4th level)
     10.181328125-(10.181328125*0.05)=9.67226171875 (5th level)

even though this is appearently not the way the game mechanics work, this would be the proper way to calculate your targeting time, not by adding your total % from the skill.

Re: Hungarian math

You said "Should be".. Your argument in invalid vs Hungarian Math.