Pages:
Author

Topic: Does pool hopping really work? - page 2. (Read 16363 times)

legendary
Activity: 1386
Merit: 1097
May 29, 2011, 02:06:10 AM
#38
Slush's pool is not secure because he messed up his algorithm.

Can you be more specific? Looks like you found (or you think that you found) some mistake in score implementation, but currently I don't know about any.
legendary
Activity: 2968
Merit: 1198
May 29, 2011, 01:53:13 AM
#37
There is a complicated score-based algorithm
it's not complicated at all.

You have to realize that any argument that follows that script is lost, right?

Especially when you are responding to someone who actually demonstrated way above average understanding of pooled mining payout methods.  Think about how it looks from the perspective of miners who don't understand these things half as well as "anon4758," and you will understand why people like proportional.



legendary
Activity: 2968
Merit: 1198
May 29, 2011, 01:48:37 AM
#36
Right, but if they want to go for "simple and understood", why not PPS? It has the least variance, it's simplest, and it has higher expectation than worst-case presence of hoppers.

I don't know how popular PPS is.  It seems like it must have a pretty significant appeal if anyone uses it given the fees that are charged for it, and the fact that people still post saying, "I'm using PPS on such-and-such pool, how can I make more monies?"

If it weren't for the block withholding attacks, PPS might be more popular (and less expensive).

Also, given how people start freaking out every time the PPS rate "drops" because the difficulty goes up, PPS is not necessarily as "simple" as proportional.  "We work together to solve blocks and divide them up according to effort" is about as easy to understand (or so people think!) as it gets.
donator
Activity: 2058
Merit: 1054
May 29, 2011, 01:39:49 AM
#35
@anon4758 - this is some very useful info, thanks for sharing!

Pool hopping is not cheating - it is optimizing. It is the responsibility of pool operators to implement algorithms that are fair. I'd think of all people, cypherpunks like bitcoin miners would be the first ones to recognize this fact. If you place all your trust into math, don't suddenly complain about fairness if your math turns out to not be good enough.
I generally agree, I mentioned elsewhere that I don't have a beef with hoppers, rather with operators of proportional pools.

Hopping away from a single pool (at 43% of mean round time) earns 30% more. Hopping between a couple pools (I have 4 currently automated) earns me 70% more. If you'd automate a dozen pools, you could earn more than 100% extra.
In the theoretical limit of infinitely many proportional pools and perfect hopping, I think you get log(difficulty) times normal, which currently is X13, or 1200% extra.

Slush's pool is not secure because he messed up his algorithm. I earn 20% more on his pool. Deepbit pool is not secure, because they got a large market share.
I know, slush's has several flaws which is why I devised my method which I named the "geometric method".
Surely you don't get a lot of volume on slush with this profit?

What I want to happen is for pool miners to implement mathematically-fair payment algorithms. This is the solution best for the community in the end, but not manually enforcing no-hopping rules or withholding information. There is a complicated score-based algorithm published somewhere on this forum (not slush's algorithm) that seems secure, though I didn't check it in too much detail.
You're probably referring to the geometric method. But hey, it's not complicated at all. Most of the post is just analysis of its various features.

There is a much simpler fair algorithm though, which I want you to confirm: pay for all shares submitted in the last 1 hour of a round. If a block is found sooner than 1 hour into a round, then rollover the extra time and pay for the unpaid shares of the previous round, or the previous round before that (if the previous round was shorter than an hour as well), and so on. This way, each share has equal expected utility regardless of when it is submitted - early on or late in a round. Late shares in long rounds are subsidized by early shares in short rounds. You can use any time interval shorter than the mean round time. I'd recommend 1/4 of the mean time, e.g. 1 hour for a 130GHash/s pool.
Even if this works (which I'll try to look at at some point) it seems much more complicated.


Because in most cases variance is less important than expectation

It seems hard to make that argument in this context.  If people wanted to maximize expectation, they would just solo-mine and avoid pool fees, pool downtime, stale shares, etc.  In most cases the variance is extremely "large" but in absolute terms the amount of money involved for a hobby miner is small enough that it doesn't really matter.  

I will grant that many hobby-scale miners don't understand this and don't act that way in practice.
The huge variance of solo mining is under the scope of the "other cases". But once you cut down, say, 99% of the variance with a score pool, there's not much point in decreasing it further.

Quote
and because the variance of score-based is not that high

True.  But still you are ignoring mental accounting costs.  People like equal shares because they are simple and easy to understand.  If you are hoping for pool participants to understand game theoretic indifference, you're going to be disappointed.  The constant push back (even if mathematically incorrect) over score-based pools being "unfair" should be ample illustration of this.
Right, but if they want to go for "simple and understood", why not PPS? It has the least variance, it's simplest, and it has higher expectation than worst-case presence of hoppers.
member
Activity: 94
Merit: 10
May 29, 2011, 01:37:57 AM
#34
Look, I'll confess (anonymously), I pool hop and it works.

Pool hopping is not cheating - it is optimizing. It is the responsibility of pool operators to implement algorithms that are fair. I'd think of all people, cypherpunks like bitcoin miners would be the first ones to recognize this fact. If you place all your trust into math, don't suddenly complain about fairness if your math turns out to not be good enough.

Hopping away from a single pool (at 43% of mean round time) earns 30% more. Hopping between a couple pools (I have 4 currently automated) earns me 70% more. If you'd automate a dozen pools, you could earn more than 100% extra.

Slush's pool is not secure because he messed up his algorithm. I earn 20% more on his pool. Deepbit pool is not secure, because they got a large market share. If no other pool solved the block (which I know automatically), it was most likely deepbit, even if their statistics are delayed by an hour.

Pool hopping is not too common. I've analyzed the statistics of the pools I use, and less than 5% of users pool hop, so "unsofisticated" pool miners only loose 2-5% of income. After publishing this post, I expect hopping to become more common.

What I want to happen is for pool miners to implement mathematically-fair payment algorithms. This is the solution best for the community in the end, but not manually enforcing no-hopping rules or withholding information. There is a complicated score-based algorithm published somewhere on this forum (not slush's algorithm) that seems secure, though I didn't check it in too much detail. There is a much simpler fair algorithm though, which I want you to confirm: pay for all shares submitted in the last 1 hour of a round. If a block is found sooner than 1 hour into a round, then rollover the extra time and pay for the unpaid shares of the previous round, or the previous round before that (if the previous round was shorter than an hour as well), and so on. This way, each share has equal expected utility regardless of when it is submitted - early on or late in a round. Late shares in long rounds are subsidized by early shares in short rounds. You can use any time interval shorter than the mean round time. I'd recommend 1/4 of the mean time, e.g. 1 hour for a 130GHash/s pool.
newbie
Activity: 7
Merit: 0
May 29, 2011, 01:14:40 AM
#33
Look, I'll confess (anonymously), I pool hop and it works.

Pool hopping is not cheating - it is optimizing. It is the responsibility of pool operators to implement algorithms that are fair. I'd think of all people, cypherpunks like bitcoin miners would be the first ones to recognize this fact. If you place all your trust into math, don't suddenly complain about fairness if your math turns out to not be good enough.

Hopping away from a single pool (at 43% of mean round time) earns 30% more. Hopping between a couple pools (I have 4 currently automated) earns me 70% more. If you'd automate a dozen pools, you could earn more than 100% extra.

Slush's pool is not secure because he messed up his algorithm. I earn 20% more on his pool. Deepbit pool is not secure, because they got a large market share. If no other pool solved the block (which I know automatically), it was most likely deepbit, even if their statistics are delayed by an hour.

Pool hopping is not too common. I've analyzed the statistics of the pools I use, and less than 5% of users pool hop, so "unsofisticated" pool miners only loose 2-5% of income. After publishing this post, I expect hopping to become more common.

What I want to happen is for pool miners to implement mathematically-fair payment algorithms. This is the solution best for the community in the end, but not manually enforcing no-hopping rules or withholding information. There is a complicated score-based algorithm published somewhere on this forum (not slush's algorithm) that seems secure, though I didn't check it in too much detail. There is a much simpler fair algorithm though, which I want you to confirm: pay for all shares submitted in the last 1 hour of a round. If a block is found sooner than 1 hour into a round, then rollover the extra time and pay for the unpaid shares of the previous round, or the previous round before that (if the previous round was shorter than an hour as well), and so on. This way, each share has equal expected utility regardless of when it is submitted - early on or late in a round. Late shares in long rounds are subsidized by early shares in short rounds. You can use any time interval shorter than the mean round time. I'd recommend 1/4 of the mean time, e.g. 1 hour for a 130GHash/s pool.
legendary
Activity: 2968
Merit: 1198
May 28, 2011, 11:56:12 PM
#32
Because in most cases variance is less important than expectation

It seems hard to make that argument in this context.  If people wanted to maximize expectation, they would just solo-mine and avoid pool fees, pool downtime, stale shares, etc.  In most cases the variance is extremely "large" but in absolute terms the amount of money involved for a hobby miner is small enough that it doesn't really matter.   

I will grant that many hobby-scale miners don't understand this and don't act that way in practice.

Quote
and because the variance of score-based is not that high

True.  But still you are ignoring mental accounting costs.  People like equal shares because they are simple and easy to understand.  If you are hoping for pool participants to understand game theoretic indifference, you're going to be disappointed.  The constant push back (even if mathematically incorrect) over score-based pools being "unfair" should be ample illustration of this.

donator
Activity: 2058
Merit: 1054
May 28, 2011, 11:26:03 PM
#31
And if you are lucky, you will be ahead. It all averages out. 
Over many people, not over a single miner!
No. Over a single miner. His expected payout is equal to his contribution. So if he keeps his intermittent mining over a long period of time, his total reward will be close to his total contribution.

Score based mining is imo only useful for pools that have ~5%+ of the network hashrate.
Can you show your calculation why this is so?

so people jumping in don't get screwed over too much due to being late on a profitable round.
I think you're confused about how score-based works. If you join at a time which, in retrospect, is late in the round, you will get more reward. Of course, you don't know beforehand when the round will end, so whenever you join your expectation is the same.
In fact, it is true for proportional pools that if you join late in a round you'll get screwed.

If you have a small pool however where you can expect finished blocks only every few days or so, it might happen that an honest on-off miner might loose out significantly.
Again, it might happens that he has bad luck, but his expectation is equal to his contribution.

Maybe it might be useful to do some calculations which pool is recommendable based on your mining habits ("2 hours/day means you'll need to join a score based pool with at least x% of the network hash rate to minimize initial variance")?
This will depend on greatly on the miner's risk averseness. Because in most cases variance is less important than expectation, and because the variance of score-based is not that high, the best recommendation is to always use score-based.
legendary
Activity: 2618
Merit: 1007
May 28, 2011, 05:16:28 PM
#30
And if you are lucky, you will be ahead. It all averages out. 
Over many people, not over a single miner!

In my opinion, there should be as little "luck" needed in pooled mining as possible.

There is already some variance that comes from pools not having 100% of the mining power of the network, but every further introduction of "luck" (or call it variance) introduces also "bad luck" for others.

Score based mining is imo only useful for pools that have ~5%+ of the network hashrate. This means that on average every ~3 hours a block will be solved, so people jumping in don't get screwed over too much due to being late on a profitable round.

If you have a small pool however where you can expect finished blocks only every few days or so, it might happen that an honest on-off miner might loose out significantly.

Maybe it might be useful to do some calculations which pool is recommendable based on your mining habits ("2 hours/day means you'll need to join a score based pool with at least x% of the network hash rate to minimize initial variance")?
full member
Activity: 238
Merit: 100
May 28, 2011, 04:37:37 PM
#29
This is not taking into account difficulty changes. If you're unlucky and miss payouts currently, there might (with increasing difficulty) be no way to make up for that loss via luck.

And if you are lucky, you will be ahead. It all averages out.

By the way, difficulty changes are completely irrelevant if you mine regularly (it does not have to be constantly). I really don't know why people care about difficulty changes at all. The only thing that matters is what is your hashrate ratio relative to the current global hashrate. This is all continuous. If the current difficulty correspond to, say 3TH/s hashrate but the network is at 4TH/s, you will get the same number of coins per month as if the difficulty was corresponding to 4TH/s and hashrate equal to 4TH/s because in the former case the round will be shorter. 
legendary
Activity: 2618
Merit: 1007
May 28, 2011, 04:24:59 PM
#28
This is not true. If you mine intermittently on score based pool you only increase your variance but the average income will be proportional to your contributed shares. You will quickly lose score if you stop mining but you quickly gain if you start. If you mine from the start of the round to the half time of the round, you'll get close to zero. But if you join at half time of the round, you'll get almost full payout while contributing only half of the shares. In long term, it'll all average out.

This is not taking into account difficulty changes. If you're unlucky and miss payouts currently, there might (with increasing difficulty) be no way to make up for that loss via luck.

If a mining pool grows slower than the network, the payout will be less and less. Also there is the risk of people leaving the pool (see slush...) before you have made up for bad luck.


On the other hand, you might be lucky too, join late in an early round and then continue in a growing pool that keeps up with the global hashrate.

In the end ppl. mine in pools to reduce variance as far as possible - introducing variance is often not so cool. Otherwise no sane person would be mining with PPS on deepbit (or any other pool that charges fees).
full member
Activity: 238
Merit: 100
May 28, 2011, 04:14:22 PM
#27
Score based pools are only working very well for 24/7 miners, if you don't mine all the time, you will loose income when using a score based pool to the 24/7 miners.

This is not true. If you mine intermittently on score based pool you only increase your variance but the average income will be proportional to your contributed shares. You will quickly lose score if you stop mining but you quickly gain if you start. If you mine from the start of the round to the half time of the round, you'll get close to zero. But if you join at half time of the round, you'll get almost full payout while contributing only half of the shares. In long term, it'll all average out.
legendary
Activity: 2968
Merit: 1198
May 28, 2011, 04:01:34 PM
#26
So why add unfruitful complication by having proportional pools exists in the first place?

One reason is that people like simple ("fair") pricing schemes even they aren't economically efficient.  This is an empirical result that applies to Homo Sapiens as opposed to Homo Economicus.

Put two pools side by side, one with each payout method and I'm sure a significant number of people will strongly prefer proportional even if they aren't going to pool hop and understand that they will make less as a result.  Think of it as a fee.

legendary
Activity: 2618
Merit: 1007
May 28, 2011, 03:23:27 PM
#25
So why add unfruitful complication by having proportional pools exists in the first place?
Small score based pools get completely unattractive to be joined by anyone, if they haven't very recently found a block.


Score based pools are only working very well for 24/7 miners, if you don't mine all the time, you will loose income when using a score based pool to the 24/7 miners.
If you want to open a new pool, you better make it proportional and after some "critical mass" has been reached, switch to score based to ensure a steady and more fair income if you wish.

I personally wouldn't join a score based small pool where blocks are only found every 3-4 days, as the risk of "buying in" with (depending on my hashrate vs. pool hashrate) quite some BTC in the beginning is too high for me.
donator
Activity: 2058
Merit: 1054
May 28, 2011, 03:14:23 PM
#24
So if i wanted to pool hop, what kind of pool should i hop to? pay per share? proportional? score-based? I'm really interested in "improving" my efficiency as a miner Tongue
You always mine at the proportional pool which has the least shares in the current round. Once all such pools have >43.5% difficulty, you move to a score-based pool like Continuum.

In the end pool hopping is NOT cheating! You do all the work you have to do etc.
To NOT pool hop however harms your income by up to 28%.
Arguing on whether to call it "cheating" or "not cheating" is a red herring.
The facts are:
If one person does it, his payout is greater than his contribution to the pool (or to the Bitcoin network at large), and for others it's less. In this sense he does not do "all the work he has to do".
If everyone does it, all proportional pools freeze and people will mine in score-based / solo anyway.
So why add unfruitful complication by having proportional pools exists in the first place?
legendary
Activity: 2618
Merit: 1007
May 28, 2011, 11:30:43 AM
#23
So if i wanted to pool hop, what kind of pool should i hop to? pay per share? proportional? score-based? I'm really interested in "improving" my efficiency as a miner Tongue
Score based ppols claim that they are more or less immune to pool hopping, you would look for share based pols probably.

A possible implementation would be a pool of pools, which moves around different pools depending on their solved blocks (conveniently announced in realtime by the pool via long polling).

One of the most difficult variables to get is the current hash rate of the pool, you would have to operate with older data + estimates. As new pools are currently popping up and miners join and leave, this number might not be too accurate (check out http://eligius.st/~artefact2/ for example, how much the hash rate fluctuates) thus screwing your calculations on how long to stay in each round.

In the end pool hopping is NOT cheating! You do all the work you have to do etc.
To NOT pool hop however harms your income by up to 28%.

As I don't have a server at my hands and I guess a dedicated pool-hopping pool might be popular for miners, but not pool operators (as they would get slammed with a lot of GH/s at the start of a round and then suddenly the miners move on to the next pool) I probably won't implement something like this in the public and would advise other to do the same.
legendary
Activity: 2058
Merit: 1452
May 28, 2011, 11:06:35 AM
#22
So if i wanted to pool hop, what kind of pool should i hop to? pay per share? proportional? score-based? I'm really interested in "improving" my efficiency as a miner Tongue
legendary
Activity: 1386
Merit: 1097
May 26, 2011, 07:31:56 PM
#21
That's what I meant. "Owned up to" is an American idiom meaning "publicly admitted".

Oh, then excuse my ignorance Smiley
sr. member
Activity: 406
Merit: 250
May 26, 2011, 07:06:19 PM
#20
No, nobody has owned up to cheating everybody else out of money.

Well, nobody *publicly* claimed that he's cheating others. [...]

That's what I meant. "Owned up to" is an American idiom meaning "publicly admitted".
legendary
Activity: 1386
Merit: 1097
May 26, 2011, 06:42:07 PM
#19
No, nobody has owned up to cheating everybody else out of money.

Well, nobody *publicly* claimed that he's cheating others. But I'm sure that somebody implemented it, because free money are free money Smiley.

I wanted to implement it (and openly demonstrated) because of never ending discussion with some people (who don't understant that it really works), but then lost a motivation. It's their problem that they didn't catch it (actually they later introduced some anti-hoping strategy, too; you know who Smiley.
Pages:
Jump to: