Pages:
Author

Topic: A proposal for Recent Shared Maximum PPS (Read 10974 times)

legendary
Activity: 3108
Merit: 1359
February 06, 2013, 06:27:04 AM
#77
Just yet another necropost  Cheesy

OneFixt
CPPSRB != RSMPPS
legendary
Activity: 1260
Merit: 1000
November 16, 2011, 12:59:51 PM
#76
Really?  Gonna necro this thread to advertise BitPenny? 

The entire range of *PPS has been debated and hashed over plenty in many other threads since July.  Not really any point in touting yet another one with it's own set of problems.
member
Activity: 84
Merit: 11
November 15, 2011, 10:20:09 PM
#75
Recently, I've been trying to find a pool that has the most fair payout system that deters pool hopping. Slush system works ok but it's really bad for people that are not doing this 24/7. Deepbit deters pool hopping but the delayed statistics is annoying. I came across Eligius' Shared Maximum Pay Per Share (SMPPS - http://eligius.st/wiki/index.php/Shared_Maximum_PPS) model. This model works well but I believe there is a flaw. When the pool is running lucky, all is good. But when the pool is running unlucky, there is less incentives for people to join the pool because they know that they will not get their full PPS reward because a part of the earnings will need to be shared with other users that were owed rewards from previous unlucky blocks. This could potentially lead to a vicious cycle where if the difficulty increases and the pool's hashrate does not increase to match, the pool will earn less BTC and would not be able to cover the previous debt.

For example, imagine if a SMPPS pool is unlucky and currently running a 100 BTC deficit. Why would I want to join this pool? For every 1 share I contribute, I would have to likely share it with 2 others for the 50 BTC earned. Let's say the next round is an average round. The pool earns 50 BTC, but since the deficit is now 150 BTC, I will only get a third of the payout right away and need to wait for the rest… assuming I will eventually get them. So why not just join a SMPPS pool that is currently lucky? That way, I will get all the PPS rewards that I contribute. I believe this leads to pool hopping not due to long rounds, but due to lucky/unlucky pools.

I have a proposal for a better PPS system that I'm calling Recent Shared Maximum PPS or RSMPPS. The idea is simple. It's basically SMPPS, but instead of paying out the reward to all unpaid PPS proportionally, RSMPPS will favor recent blocks. So it will first proportionally pay out the unpaid PPS for the current block (the one that was just found). If there are any remaining rewards, it will pay them out to the next recent block that has unpaid PPS shares. It will keep doing that by paying out unpaid PPS shares from earlier and earlier blocks until all 50 BTC are paid out. If there are any left, it will keep those for the next unlucky round. This system will have no disadvantage for new miners joining the pool, because rewards will be first paid to the people that actually worked on the current block. So there's no debt burden on new users. And old unpaid PPS shares will get paid out if the pool gets lucky enough. With this system, it's possible for the pool to never get lucky enough to pay out really old unpaid shares. I think that's fair.

What do people think?

Coblee,
BitPenny (website, forum topic) uses the Delayed PPS (CPPSRB - Capped Pay Per Share with Recent Backpay) system which, I believe, accomplishes what you propose.
legendary
Activity: 2618
Merit: 1007
I still have the issue with it where it feels unfair for non-fulltime miners.

Feels != is...

PPLNS might for example need different stats displays... something along the lines of "every share submitted has a xx% chance of paying 0 BTC, a xx% chance of paying __BTC, a xx% chance of paying __BTC" and so on, and then an average over these numbers below. "Estimated payout" just taken from Prop. will always show too low numbers, as it doesn't take into account that shares can pay out multiple times - so depending on N you might not report quite a bit of the potential earnings.

Giving percentages per share would also be more true to how the system works, than having some estimated rewards that slowly rise and fall with your proportional contribution in the last N shares.
donator
Activity: 1654
Merit: 1351
Creator of Litecoin. Cryptocurrency enthusiast.
A *MPPS pool with a positive buffer is always better than one with a negative buffer if all else is equal. I'm not denying that. RSMPPS makes it better, but it's still a problem.

All payout methods has their own problems. If there was a perfect one, we wouldn't be discussing this anymore. But in my opinion, *MPPS pools are more fair and RSMPPS does the best job at not causing miners to quit when the buffer goes negative.

Well, the only problem with geometric scoring is that it is not really user friendly (hard to understand for average users), and a bit processor intensive for the server.

The only problem with PPLNS is a little weirdness around difficulty changes. If you account for this with some pretty easy scoring, it works perfectly. And I think PPLNS is quite user friendly.

So I contend that there is better out there.

PPLNS might be better in terms of easy to understand and no disadvantage for previous bad luck. I still have the issue with it where it feels unfair for non-fulltime miners.
sr. member
Activity: 404
Merit: 250
A *MPPS pool with a positive buffer is always better than one with a negative buffer if all else is equal. I'm not denying that. RSMPPS makes it better, but it's still a problem.

All payout methods has their own problems. If there was a perfect one, we wouldn't be discussing this anymore. But in my opinion, *MPPS pools are more fair and RSMPPS does the best job at not causing miners to quit when the buffer goes negative.

Well, the only problem with geometric scoring is that it is not really user friendly (hard to understand for average users), and a bit processor intensive for the server.

The only problem with PPLNS is a little weirdness around difficulty changes. If you account for this with some pretty easy scoring, it works perfectly. And I think PPLNS is quite user friendly.

So I contend that there is better out there.
donator
Activity: 1654
Merit: 1351
Creator of Litecoin. Cryptocurrency enthusiast.
A *MPPS pool with a positive buffer is always better than one with a negative buffer if all else is equal. I'm not denying that. RSMPPS makes it better, but it's still a problem.

All payout methods has their own problems. If there was a perfect one, we wouldn't be discussing this anymore. But in my opinion, *MPPS pools are more fair and RSMPPS does the best job at not causing miners to quit when the buffer goes negative.
sr. member
Activity: 404
Merit: 250
In the other you are guaranteed less than full payout for quite a long time, since you have to pay off unpaid shares which others have accumulated. You are getting less than proportional in this case, right?
This is true of SMPPS and, to an extent, ESMPPS, but it is not true of RSMPPS or CPPS* which prioritize the present and future over the past.

Ok, so let's talk specifically about SMPPS and ESMPPS then.

The catch is, the fact that you are a new miner in my above example is irrelevant. Because if you have a lot of shares built up at an SMPPS pool, it still behooves you to switch to the other SMPPS pool, because you are going to make your owed money back at the first pool whether you mine there or not. So if you switch, you get full credit for your current mining efforts, and then you get some trickle from the other pool finding blocks. The problem is that everyone will do this, and the pool will die.

I am not familiar with CPPS* so I cannot comment on it.

RSMPPS is an improvement, in my opinion. However, if the block buffer <= 0, there is still a non-zero chance you could fall into the negatives, and thus, not get paid in full for the next block (if it has to roll over to future blocks). Therefore, as soon as the buffer hit zero, it would behoove you to switch to another pool where you are guaranteed full payout.

Let me know where your complaint with my logic is.
legendary
Activity: 2576
Merit: 1186
In the other you are guaranteed less than full payout for quite a long time, since you have to pay off unpaid shares which others have accumulated. You are getting less than proportional in this case, right?
This is true of SMPPS and, to an extent, ESMPPS, but it is not true of RSMPPS or CPPS* which prioritize the present and future over the past.
sr. member
Activity: 404
Merit: 250
In a *MPPS pool you get paid the expected payout in the best case and less in the worst case.

On Prop. you get paid far more than expected in the best case and far less in the worst case (which evens out if there are no hoppers).
Not quite. All variations of *MPPS will pay you extra for formerly underpaid blocks, making them even out even without hoppers. In the scenario where the pool never evens out, neither would proportional.

Empirically, perhaps you are right. There could definitely be cases where you will be underpaid for long portions of time in a proportional pool. See BTC Guild currently for an example. They have had bad luck the last several difficulties. But that doesn't matter, because it should even out in the long run. There is no reason not to mine there (other than the fact it is proportional, and seems to be DDoS'ed a lot because it is big).

However, I want to paint a scenario for you. If there were two pools, both *MPPS, one with a 20 block buffer, and one with a 20 block deficit, which would you mine at if you were a brand new miner?

In one pool you are guaranteed a full PPS payout for quite a long time regardless of when the pool finds a block.

In the other you are guaranteed less than full payout for quite a long time, since you have to pay off unpaid shares which others have accumulated. You are getting less than proportional in this case, right?

Does anyone disagree with this?
legendary
Activity: 2618
Merit: 1007
True.

In a *MPPS pool you get paid the expected payout in the best case and less in the worst case.

On Prop. you get paid far more than expected in the best case and far less in the worst case (which evens out if there are no hoppers).
Scored/PPLNS is similar, you can have "lucky" shares and "unlucky" shares that are worth more/less than others, it's just not predictable, so you can't hop.

All in all:
As soon as a *MPPS pool gets close to 0, better make a run for the hills and switch pools (if you are a careful miner). RSMPPS seems especially dangerous at the beginning of a loss period (when approaching 0 buffer).

Please explain why RSMPPS is especially dangerous.
As more recent shares that have still to be paid get paid, shares submitted at the time the pool used up it's buffer will get paid last (or never). On RSMPPS you have to monitor the pool balance even more closely because of this. SMPPS will try to pay these first once it has some luck, so all the shares submitted during a "proportional phase" are at danger of never being paid the full amount.

The difference is that Proportional and PPLNS don't carry this "burden" of formerly under-/overpaid blocks. Once a round ends, you're done and have had luck or not. you can join a pool that has had a huge bad luck strain for 3 months and still get perfectly fine payouts if the luck suddenly changes.
With SMPPS (and especially RSMPPS) it might be the case, that in 2 months from now you might get paid for a share submitted right now.
legendary
Activity: 2576
Merit: 1186
In a *MPPS pool you get paid the expected payout in the best case and less in the worst case.

On Prop. you get paid far more than expected in the best case and far less in the worst case (which evens out if there are no hoppers).
Not quite. All variations of *MPPS will pay you extra for formerly underpaid blocks, making them even out even without hoppers. In the scenario where the pool never evens out, neither would proportional.
donator
Activity: 1654
Merit: 1351
Creator of Litecoin. Cryptocurrency enthusiast.
True.

In a *MPPS pool you get paid the expected payout in the best case and less in the worst case.

On Prop. you get paid far more than expected in the best case and far less in the worst case (which evens out if there are no hoppers).
Scored/PPLNS is similar, you can have "lucky" shares and "unlucky" shares that are worth more/less than others, it's just not predictable, so you can't hop.

All in all:
As soon as a *MPPS pool gets close to 0, better make a run for the hills and switch pools (if you are a careful miner). RSMPPS seems especially dangerous at the beginning of a loss period (when approaching 0 buffer).

Please explain why RSMPPS is especially dangerous.
donator
Activity: 1654
Merit: 1351
Creator of Litecoin. Cryptocurrency enthusiast.
To clarify, this may be what people are missing.

You think that it is fair because at worst, you end up getting paid as if it were a proportional pool.

However, proportional pools are fair because you get the benefit of short rounds to even out the pain of the long rounds.

PPS is fair because you get paid 'what you deserve' even during long rounds, but you actually lose out on short rounds.

So a pool that gives you the payment of a PPS pool on short rounds with the payment of a proportional pool on long rounds should be avoided at all costs.

And that is exactly what a *MPPS pool is if it is significantly 'behind'.

This is only the case for the worst case scenarion. Let's use an example where L is for long rounds and S is for short rounds and we have even luck for this whole time frame. And assume the pool has a huge negative buffer (i.e. significantly behind).

If the scenario is SSSSSSSSSSLLLLLLLLLL (10 short rounds, then 10 long rounds)
Then yes, all the initial short rounds will be paid at PPS and the extras will be used to payoff the negative buffer. In this worst cast scenario, those short rounds are paid only PPS. And the long rounds are only paid proportional.

If the scenario is LLLLLLLLLLSSSSSSSSSS (10 long rounds, then 10 short rounds)
Then the long rounds will be paid proportional and the difference will be added to the negative buffer. When we hit those short rounds, the extras (over PPS) will be used to pay off the recent long rounds. So in the end, you will paid the PPS reward for each share in this timeframe.

And for the average case of LSLSLSLSLSLSLSLSLSLS
It works out well too since each short round would pay for the last long round.

So yes, a negative buffer is not good (because the next short round will be used to payoff the buffer), but it's not as bad as you think.
legendary
Activity: 2618
Merit: 1007
True.

In a *MPPS pool you get paid the expected payout in the best case and less in the worst case.

On Prop. you get paid far more than expected in the best case and far less in the worst case (which evens out if there are no hoppers).
Scored/PPLNS is similar, you can have "lucky" shares and "unlucky" shares that are worth more/less than others, it's just not predictable, so you can't hop.

All in all:
As soon as a *MPPS pool gets close to 0, better make a run for the hills and switch pools (if you are a careful miner). RSMPPS seems especially dangerous at the beginning of a loss period (when approaching 0 buffer).
sr. member
Activity: 404
Merit: 250
To clarify, this may be what people are missing.

You think that it is fair because at worst, you end up getting paid as if it were a proportional pool.

However, proportional pools are fair because you get the benefit of short rounds to even out the pain of the long rounds.

PPS is fair because you get paid 'what you deserve' even during long rounds, but you actually lose out on short rounds.

So a pool that gives you the payment of a PPS pool on short rounds with the payment of a proportional pool on long rounds should be avoided at all costs.

And that is exactly what a *MPPS pool is if it is significantly 'behind'.
sr. member
Activity: 404
Merit: 250
So I may have missed something in the last three pages, but I don't see how this really fixes anything.

You correctly pointed out the issue with SMPPS, but even with your system, I don't see the difference.

Let's say you are running a RSMPPS pool that 'is behind'. I am a miner that is looking to be paid fairly.

There is another SMPPS pool out there that 'is ahead' (or some other cheat proof pool, or solo mining, or whatever).

Which am I going to choose?

This round there is a 50% chance that we will solve a block in < N time (where N is difficulty).
There is also a 50% chance that we will solve a block in > N time.

If I enter the 'fair pool' (cheatproof or SMPPS that 'is ahead') my expected earnings from mining here are exactly what they should be.

If I enter the RSMPPS pool, my expected earnings are lower because:
  + If we solve the block in more than N time, I will be underpaid for my shares
  + Not only that, but if we solve several blocks in a row slowly, it makes it even less likely that I get paid what I am owed in a reasonable amount of time.
  + Not only that, but a logical person would never mine at a *SMPPS pool that 'is behind', because of point 1 and 2, so they would quit and you would actually end up NEVER getting paid.

Does this make sense, or am I missing something?

You argument is flawed b/c if you assume that you are solving blocks slowly for an extended time, you will get paid just like a proportional pool. How is that worse than a normal prop pool? Yeah, sure it might take a while (until pool gets lucky) for you to get paid your total PPS reward, but at least there's a chance you will get paid.

The problem with any *SMPPS pool is that if there is a bunch to choose from, you would always choose the one that has a positive buffer. So it may lead to pool hopping due to buffer size. RSMPPS does a better job in alleviating that but not fully.

Because in a proportional pool you get paid far more than you do in PPS on short rounds.
donator
Activity: 1654
Merit: 1351
Creator of Litecoin. Cryptocurrency enthusiast.
If you do traditional PPLNS (without scoring) it is still quite fair (compared to things like *MPPS and Proportional), and it doesn't obfuscate anything. It is incredibly simple.

I would love *MPPS as a miner, because I know exactly which pools to mine from, but I would never run one, since it will just take one bad string of luck to put you out of business if your miners are looking to maximize profits.

I agree that PPLNS is simple and quite fair, but as a miner, I'm wary of mining at a PPLNS pool. Although I believe it's statistically fair, I don't like the fact that if I don't mine 24/7, my luck will play a lot into my earnings. I will be constantly afraid to take my miners down b/c the pool my run into 5 blocks in a row after N/2 shares (or however many) and I will be paid nothing.

As a miner, I would actually prefer a RSMPPS pool (even with negative buffer) than a PPLNS pool, but that's just me.
donator
Activity: 1654
Merit: 1351
Creator of Litecoin. Cryptocurrency enthusiast.
So I may have missed something in the last three pages, but I don't see how this really fixes anything.

You correctly pointed out the issue with SMPPS, but even with your system, I don't see the difference.

Let's say you are running a RSMPPS pool that 'is behind'. I am a miner that is looking to be paid fairly.

There is another SMPPS pool out there that 'is ahead' (or some other cheat proof pool, or solo mining, or whatever).

Which am I going to choose?

This round there is a 50% chance that we will solve a block in < N time (where N is difficulty).
There is also a 50% chance that we will solve a block in > N time.

If I enter the 'fair pool' (cheatproof or SMPPS that 'is ahead') my expected earnings from mining here are exactly what they should be.

If I enter the RSMPPS pool, my expected earnings are lower because:
  + If we solve the block in more than N time, I will be underpaid for my shares
  + Not only that, but if we solve several blocks in a row slowly, it makes it even less likely that I get paid what I am owed in a reasonable amount of time.
  + Not only that, but a logical person would never mine at a *SMPPS pool that 'is behind', because of point 1 and 2, so they would quit and you would actually end up NEVER getting paid.

Does this make sense, or am I missing something?

You argument is flawed b/c if you assume that you are solving blocks slowly for an extended time, you will get paid just like a proportional pool. How is that worse than a normal prop pool? Yeah, sure it might take a while (until pool gets lucky) for you to get paid your total PPS reward, but at least there's a chance you will get paid.

The problem with any *SMPPS pool is that if there is a bunch to choose from, you would always choose the one that has a positive buffer. So it may lead to pool hopping due to buffer size. RSMPPS does a better job in alleviating that but not fully.
sr. member
Activity: 404
Merit: 250
If you do traditional PPLNS (without scoring) it is still quite fair (compared to things like *MPPS and Proportional), and it doesn't obfuscate anything. It is incredibly simple.

I would love *MPPS as a miner, because I know exactly which pools to mine from, but I would never run one, since it will just take one bad string of luck to put you out of business if your miners are looking to maximize profits.
Pages:
Jump to: