How does this prevent a miner from creating their own transactions to game the coefficients? [...]
It just goes against his own interests. Why would he do that? There is no memory between blocks, so a block cannot influence the next.
As long as there is room in the block he can influence the coefficient by sending coins back to himself. See below.
Miner: 5,00
Miner: 5,00
Miner: 5,00
Miner: 5,00
Miner: 5,00
0,00 1,00 1,00 1,00
0,00 1,00 1,00 1,00
0,00 1,00 1,00 1,00
0,00 1,00 1,00 1,00
5,00 1,00 1,00 1,00
5,00 1,00 1,00 1,00
6,00 1,00 1,00 1,00
7,00 1,00 1,00 1,00
8,00 1,00 1,00 1,00
7,00 1,00 1,00 1,00
1,00 1,00 1,00
1,00 1,00 1,00 1,00
2,00 2,00 2,00 2,00
10,00 10,00 10,00
-25,00
Sum 38,00 24,00 14,00 13,00 24,00
Mean 3,80 1,71 1,08 4,33 2,58
Var 11,51 5,76 0,08 24,33 6,37
StdDev 3,39 2,40 0,28 4,93 2,52
Coeff 0,89 1,40 0,26 1,14 0,98
(my openoffice seems to come to slightly different values than you)
Edit: Data is based on Sergio's example:
[...]
Suppose the set of transaction fees available is:
1,1,1,1,1,1,1,1,1,1,1,1,2,10
Suppose the maximum CoVar is 1.
We compare two possible sets to choose, one containing 10 and another without it:
(A) 1,1,1,1,1,1,1,1,1,1,1,1,2
(B) 1,2,10
Results for A:
Sum=14.00
Mean= 1.08
Variance= 0.07
StdDev= 0.27
CoVar= 0.25
Results for B:
Sum=13.00
Mean= 4.33
Variance=16.25
StdDev= 4.03
CoVar= 0.93
So the set A pays more fees, and so it will be chosen.
[...]
A while ago I suggested a maximum spread for transaction fees which is somewhat similar:
https://bitcointalksearch.org/topic/m.804916One problem of both solutions is that with a couple of high fee transactions you can stall the whole network.
Still, there might lay a solution in this direction up ahead.