CIP ? - Set minPoolCost to 0


CIP ???
Set minPoolCost to 0
Robin of Loxley adarobinhood@tutanota.com
Draft
Standards
2022-10-17
CC-BY-4.0

Abstract

A minPoolCost of 340 ADA/epoch makes popularity the basis for pool desirability, causing preferred traits like pledge and performance to be overshadowed. This has promoted stake to centralize with operators who are effective at campaigning, but do not necessarily have any stake in the system of their own. We want to create a fair marketplace for stake pools that allows the network to decentralize with time; minPoolCost is averse to that goal.

Motivation

Popularity is currently the basis for desirability and defines which pools will receive high rewards and which won’t. A pool with high popularity, low pledge, and low performance will offer significantly higher rewards than a pool with low popularity, high pledge, and high performance. With equal fee structures, a pool with 19.5MM pledge that is just starting out will be less desirable than a saturated pool with no pledge; a pool with 6MM pledge and perfect performance will be less desirable than a pool with 0 pledge and 90% performance. This makes it apparent we are not incentivizing a secure stable network and the network cannot self-correct if stake ends up in the wrong place.

The entirety of IOG’s research is without a minPoolCost or any other minimum fee. The game theory design relied on stake pool operators (SPOs) having the ability to compete in a fair marketplace of pool desirability by modifying their pledge, cost, and margin in relation to other pools. Adding a minimum value to cost has removed the opportunity for operators to control their desirability outside of first gaining popularity. As a pool gains popularity it disproportionately gains desirability, allowing the operator to lower pledge and raise margin, while still maintaining higher desirability than a less popular pool with better fee structure and higher pledge. Operators can lie about their costs while still gaining utility. As long as the operator can maintain popularity they can exceed K indefinitely by opening more and more pools with a reward bonus instead of penalty. This significantly lowers the cost of a sybille attack, while making sybille behavior highly desirable and profitable. A sybille attacker, or anybody for that matter, should need stake in the system to compete for delegation, not just a rigorous marketing campaign.

The network is incentivizing the wrong behavior from SPOs which has made the network highly leveraged.

"The higher the leverage of the system, the worse its security [...] The lower the leverage of a blockchain system, the higher its degree of decentralization."

High security should always be the priority.

Specification:

“minPoolCost”: 0

Rationale:

98% of all pools have their cost at 340 ADA/epoch or within + 10. As the price of ADA went from $0.3 to $3, almost no operators modified their cost. As the price of ADA dropped from $3 to $0.3, almost no operators modified their cost. This shows that the minPoolCost is not related to the real cost of operating a pool and the cost of a pool is no longer related to its utility.

We have a large body of research accompanied by simulations showing that removing minPoolCost will increase decentralization of the network and begin incentivizing the right behavior from SPOs and the delegating community.

A minPoolCost is not in Cardano’s design specification. ALL published research is in favor of setting minPoolCost to 0.

Effects:

Stake pool desirability will become a function of pledge, performance, cost, and margin instead of only popularity. Operators will need to consolidate and grow pledge while moderating fees to remain competitive with other pools on the market.

SPOs define their cost as an absolute value when submitting their registration.cert. They do not reference minPoolCost. Changing minPoolCost will not change any predefined costs. Pools that wish to leave their cost as-is can do so without any input. Pools that wish to lower their cost below 340 ADA/epoch will have to submit an updated registration.cert.

Backwards Compatibility:

This proposed change is fully backwards compatible and will not require a hard-fork. Adjusting parameters is ‘easy’ and will require no code rewrites. This change can be implemented immediately.

Research and References

Engineering Design Specification for Delegation and Incentives in Cardano–Shelley

Reward Sharing Schemes for Stake Pools

Preventing Sybil attacks

Stake Pools in Cardano

Incentive Paper Lecture Series (Parts 1-7)

The general perspective on staking in Cardano

15 Likes

We need this a lot, it’s hard to compet with pools with no pledge at all. This minpoolcost set to zero let us adjust our strategies.

6 Likes

Yes please :slight_smile: Although perhaps a more gradual change would be more palatable to those who are stuck in the mud?

1 Like

I am here to voice my support for this CIP, without an attempt to fix the problem, the problem will not be solved.

4 Likes

A small pool with ~1.2M delegation (rough average to get one block) would have to advertise a ~40% pool fee to make the same 340 ADA.

At 60M it’s .8% pool fee to make 340 ADA.

Did I do that right?

Starting a pool on Cardano should be a guaranteed operational loss without whale support.
y/n?

How does the min fee variable look at all ends of the spectrum if there is no min fee? Just asking if anyone has considered a model for this based on math/game theory.

3 Likes

I fully support this CIP.

Attached are charts of the expected delegator yield as a function of stake (including multipool operators beyond k) with the mandatory fee at 340 and the mandatory fee at 0.

340:
chart_current_equation_a0_0.3_minfee_340

0:
image

10 Likes

There are several forums where, for month after month, CIP authors, researchers, SPOs, data modellers, and interested community members have been considering these models: including plans for a community modelling effort based on open source software. Most of the progress has been documented here:

including considerations, not directly part of this CIP, of:

  • setting 0 min pool fee
  • setting 50 min pool fee
  • keeping 340 min pool fee (i.e. doing nothing)
  • modifying the a0 parameter instead (or as well)
  • introducing a variable min fee
  • nonlinear models of fees & rewards
  • other means of shaping the incentive based PoS system.

A small fraction of these approaches were acknowledged & documented by IOG here… contributors to the discussion above have also voiced their hopes that future writing from IOG will include the dialogue on all the suggested approaches, not just those featured in the article:

Also there is a Discord channel quoted in the GitHub thread — which I won’t quote here in an effort to contain discussion to the most motivated & articulate contributors (not to mention keeping it on GitHub itself) — serving as another resource for those who want to see & discuss the variations already proposed, before possibly duplicating the effort of earlier writers & proposers.

cc @Michael.Liesenfelt @shawnim

p.s. thanks for chiming in Michael - your posting came in while I was writing this :sunglasses:

6 Likes

I will just add that various theories have been proposed about why IOG are dragging their heels over this. Currently the leading theories are:

  • Risk aversion among academics
  • Fear that IOG changing params will attract SEC attention
  • IOG are benefitting financially from the current status quo (corruption)

I will address these:
Regarding risk aversion - I don’t think this is the real cause, but even if it is, my argument against it is that, as scientists, we should be trying to understand the impact of changing the protocol params on real-world behaviour - modelling has been done, but we cannot understand how real people will behave under varying parameters without ever tweaking those parameters. It is unscientific to rely purely on models without gathering real world data to feed into those models.
I would suggest that real world delegators most likely exhibit emergent behaviour that is not predicted by any model.

Regarding SEC fear - this is just stupid, we all know IOG can change protocol parameters and that it’s not fully decentralized at the present time. Trying to hide this fact from the SEC by not actually changing any parameters is… well, not legally sound.

Corruption? Well, I’d like to believe it’s not that, but it seems possible - Cardano Foundation seem to have a history of nepotism, embezzling community funds and generally failing to deliver on what the community expects in return for their generous allocation of funds.
I would hope that IOG are more ideologically-driven and less inclined to deviously extract funds from the community, but when they haven’t really provided any justification for their reluctance to experiment with protocol params, is it any wonder people are asking the question?

I think IOG need to address this - what is their reason for dragging their feet on this? Protocol parameters have been changed before. No amount of modelling can fill the place of real-world data - if we make the change and it has a negative impact on decentralization, reverse it, no real harm done. Science requires experimentation.

5 Likes

Thank you for this reply.

Was there any designs that set a fixed rate of return for SPO operation?

Perhaps a rate that scales with saturation?

~20% → 3% or something that dynamically adjusts based on saturation?

@rjmcoin I don’t know if anyone’s proposed fixed rates of return: given the duration of the discussion I’d wager it’s been brought up on the Discord at some point. In my own opinion the idea that “money makes money” is a more a principle of the big banking system than a part of the blockchain ethos (in which innovation & performance ideally yield the best rewards).

The only overt relationship between saturation level & rewards that I recall being proposed was indirect, by actually lowering the saturation level to be proportional with pledge (this is also potentially part of CIP-0050):

1 Like

This is not true. From the RSS paper:

“We then describe how RSS can be deployed in the PoS setting, mitigating a number
of potential deployment attacks and protocol deviations that include censoring transactions,
performing Sybil attacks with the objective to control the majority of stake, lying about the actual
cost and others.”

So lying about the actual cost of the pool is considered an attack. Setting minPoolCost = 0 opens the door to Sybil attacks.

Insisting that every pool charge 340 ada per epoch does not prevent lying about the actual cost of running a pool - it forces everyone to tell the same lie. Running a pool does not cost 340 ada.

5 Likes

Any pool can lie about their cost. Without a minPoolCost, lying about cost is done at the expense of the pool’s utility/desirability. This is an essential part of decision making in the ‘game’. It is in the pools best interest to be honest about their costs.

In the current implementation, with a minPoolCost, we see many many operators lying about cost, even going so far as to say multiple pools are necessary to cover pool expenses. There is nothing to penalize lying.

5 Likes

No.
In PoS consensus a Sybil attack is the abuse of disproportionately large influence (large delegated influence/stake) obtained with excessive leverage (inadequate investment/pledge). Leverage is the Figure of Merit (FoM) for quantifying the magnitude of the qualitative concept of a Sybil attack.

6 Likes

OK, maybe not a Sybil attack, but it’s a kind of attack (if the SPOs compete until all pools set the cost to 0), as the analysis on the RSS paper relies in the players not lying on the declared cost. Also, reaching the equilibrium requires a positive slope of the rewards functions, which is flat (or nearly flat) when cost=0 as your second graph shows.

Considering than nothing else than original parameters from the original paper are in this excellent CIP, what prevent us to actually implement it now ?
What should be the process to follow ?

2 Likes

If pools want to charge high fees they will need to get pledge to offset those fees. Some pools are expected to charge 0 fees. This is unsustainable for long periods of time. Those pools will typically remain less desirable than pools with high pledge and more reasonable fee structure. Pools with pledge receive higher rewards and can offset higher fees.

I’ve just submitted a merge request on GitHub (CIP-0069? | Set minPoolCost to 0 by ADARobinHood · Pull Request #358 · cardano-foundation/CIPs · GitHub). It is awaiting review.

All anybody can and should be doing now is spreading awareness and gathering vocal support for the CIP.

4 Likes

I’d also like to see the minPoolCost either drastically reduced or set to 0. It creates a large barrier to cross for new pools to get into the acceptable range for ROA %.

I have had several delegates leave my pool because of the poor rewards, even with the bonus incentives I offer. A good friend of mine left after messaging me saying he wanted to help, but the ROA was affecting his long term accumulation goals. It’s hard for us to attract and keep people as a pool under the 10m stake point, and I’m now just below the 1 block/epoch line.

Take away that fee and give my delegates a 4% ROA like the other pools, and all of those people are still with me, plus potentially more that would have been happier to switch over.

I wouldn’t make as much as the SPO with my current 2.2% margin and a 0 fee, but I didn’t start a stake pool to get rich and make money. I did it to help support Cardano and give back to the community in some way. Especially with other opportunities for SPOs popping up to make money (e.g. batching for DeFi), I’d rather have my delegates have a 4% ROA and work a little extra for myself to cover my costs.

-Kyle

7 Likes

I so support setting it to 0 or at least decrease it incrementally.
I would like to see a catalyst proposal for fund 10. Let the community officially sign off on this one. This way, we can guage of it is a direction the stakeholders can agree on and IOG would be safe from the SEC, since it would be a documented community decision.

4 Likes

I fully support this CIP. The stake pools fees market should be a free market.
If a stake pools reduces the fixed fee to 0, this will not be enough to make delegators delegate to it.
A large pool does not need to reduce the fixed fee to compete with a small stake pools with the minimum fixed fee of 0. The current fixed fee is negligible for the ROA of a stake pool minting 40-50 blocks per epoch.
The lower minimum fixed fee for a small stake pool will not bring new delegators, but now the delegators who want to delegate to it now hesitate because of the minimum fixed fee, which drastically reduces the ROA.
Giving the stake pools the liberty to set their fees will probably allow small stake pools to grow easier than in current conditions. The current 340 ADA might help a stake pool which mints one block every few epochs cover the hosting costs, but it also keeps away the delegators who might want to support them, but also want a good ROA. And some of the current delegators are leaving after some time, because they expect a better ROA.

And after all, not all SPOs are running a stake pool to make profit out of it. We are also doing it to support decentralization, and for that we are paying from our own pockets the hosting for a very long time, not to mention the tens of hours dedicated every month (or every week, in some cases) to the Cardano community. There is no better reward than seeing the poll grow and minting many blocks every epoch.

6 Likes