-
Notifications
You must be signed in to change notification settings - Fork 324
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
CIP-ShawnMcMurdo-NonCentralizingRankings #21
CIP-ShawnMcMurdo-NonCentralizingRankings #21
Conversation
I see that the automatic checks have failed. |
pools will eventually be saturated, whereas all other pools will lose all their members, then to | ||
finally base all reward calculations on these assumptions." | ||
|
||
2. Remove the follosing statement from section 5.6.1: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Typo.
|
||
This is a modification of the ranking methodology defined in section 5.6 Non-Myopic Utility of “Shelley Ledger: Delegation/Incentives Design Spec. (SL-D1 v.1.20, 2020/07/06)” as follows: | ||
|
||
1. Remove the follosing statement from section 5.6: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Typo.
|
||
## Backward Compatibility | ||
|
||
This proposal is not backwards compatible with the current ranking system. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This does not break backwards compatibility because it is an off-chain change.
Thanks @mark-stopka ! Incorporated your changes. |
Comments-Summary: | ||
Comments-URI: | ||
Status: Draft | ||
Type: Standards |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think this should be an "Informational" since this doesn't affect the protocol itself
With the change of k to 500 this CIP has become less critical. If there are strong opinions thank you for weighing in, else this will checked in further out to see if still relevant. |
@crptmppt I've observed that this is just as relevant today. Even in the most recent versions of Daedalus the pools are still basically ranked by descending stake. This kills off small pools even if highly performant because delegators follow the # 1 signs (or top line, or top screen) in Daedalus - conditioned by the UI to believe they're making a mistake if they don't. I've seen our own delegators run from 8 to 10% rewards (as well as our long term 6%) to delegate to packed pools with 4% rewards, over and over again. Because the favoured pools will always be just below the saturation point, and the small performant pools with consistent but fluctuating rewards will be close to the zero point, this problem will remain no matter what K is raised to, and it's happening just as much today as it was back in September 2020 when this CIP was submitted. IOG recently and very publicly claimed in its re-delegation marketing campaign that a diverse "ecosystem" of small pools is integral to Cardano's survival and prosperity. Meanwhile stake-centralising rankings persist. The message to SPOs is: if you have a lot of inertial stake from the beginning, it will maintain an equilibrium just below the saturation point... if not, you must make up for it in sustained persuasive and centralised marketing to reverse the trend of delegators constantly defecting to the largest pools which will always be at the top of the boards. I've done my best to understand the algorithm and maybe have missed something. Like @shawnim said on the Cardano Foundation forum when this CIP first came up (in response to an initial misunderstanding of mine), this will remain a problem no matter what value K may be raised to, and exactly as Shawn predicted the problem hasn't been attenuated by raising K to 500: https://forum.cardano.org/t/how-to-improve-daedalus-rankings/40478/3 If I've misunderstood about whether or how this algorithm change would affect the situation I've described above then please someone post an example (missing from the CIP, perhaps from strict editing) so I can understand it better & help others to do so. If more recent changes to the Daedalus ranking algorithm address this problem in theory then maybe Shawn will post an update about why they don't address it in practice. I'll have to rely on Shawn & others to elaborate: for now I can do no more than respond to the call for "strong opinions." I can confirm from my experience as an SPO is that our Cardano community needs to somehow put an end to the "Nash equilibrium" culling process by diversifying the positions of highest rank, and for this I'm trusting in the Rationale statement itself:
|
@rphair Thanks for the thoughtful response on this! |
Anyone know why "All checks have failed"? Is this something wrong with the CIP or a system issue? |
Looking at the logs it seems netlify failed to build the rendered site - the CI expects 'Authors' in the header (you have 'Author' - would love to get the CI to support both), that might be what is causing the issue, or the structure/format. |
Where: | ||
proposed_pool_stake = pool_live_stake + proposed_user_stake | ||
saturation_warning_stake = (total_stake / k) * saturation_warning_level | ||
saturation_warning_level is a real number greater than 0 representing the percent of ssaturation which is undesirable. A proposed value for saturation_warning_level is 0.95 meaning 95% saturated. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
small typo here
saturation_warning_level is a real number greater than 0 representing the percent of ssaturation which is undesirable. A proposed value for saturation_warning_level is 0.95 meaning 95% saturated. | |
saturation_warning_level is a real number greater than 0 representing the percent of saturation which is undesirable. A proposed value for saturation_warning_level is 0.95 meaning 95% saturated. |
@shawnim, thank you for this proposal! Thank you, @rphair, for your additional arguments strengthening it. I can not really add anything more but to express my support as I am sharing the same opinions based on my own experience as SPO. I hope this will be reviewed, discussed and implemented very soon. ❤️ |
I'll pass this on to the IOG researchers - there's ongoing discussion on the ranking mechanism and how it can be improved. This will be very interesting to them. |
Thanks @kevinhammond for passing this along. |
|
||
## Abstract | ||
|
||
Modify the current ranking system by removing the centralizing Nash Equilibrium goal of the ranking methodology in order to give more fair rankings and improve the viability of the stake pool operator community and the network overall. To do this we need to remove the stated goal of having k fully saturated pools and all other pools having no stake other than owner pledge, which goes against the Cardano goal of decentralization. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It is true that the current ranking has a steep edge after the top k desirable pools. It seems totally reasonable to me to want to ease that transition. It's not clear to me, though, why we have to remove the equilibrium goal. It's also not obvious to me that this is more fair or more decentralized, it's just that there is less noise around the k boundary.
@kevinhammond thanks for providing updates when feasible! |
This was discussed at the last Editor meeting (23), please refer to the notes. |
The IOG researchers have been considering changes to the rewards calculations that would impact the rankings (taking into account both short-term and long-term delegation behaviour) and also possible changes to the visualisations of the rankings. I would expect these results to be publicised soon. |
Thanks to @kevinhammond (with @dcoutts also present) for coming in front of the SPO Marketing Zoom forum last Thursday, in which I was also presenting the Stake Pool Links part of CIP-0013, to address the issue of Delegation Incentives. In trying to gather community feedback as I promised to do at the last couple of CIP Editor meetings, and today trying to explain Delegation Incentives vs. Ranking Algorithm in the SPOCRA forum (please correct me if I've written incorrectly here & I'll post & edit accordingly; I'm a member of the forum but not the union itself): https://members.spocra.io/posts/14926363/comments/41055385 ... I've realised that incoming stake pool links as agreed upon in #61 might not achieve the documented Motivation if the scientifically agreed "incentives" still cause Daedalus wallet & other UIs to provide an effective "warning" against lower ranked stake pools... e.g. by displaying them in the usual angry red colour, with a ranking number suggesting mediocrity even to the naive user. As I've explained it to that forum:
This is a part of the incentive & ecosystem requirement we have never had to consider until now and I wanted to please ask if the IOG scientists deliberating this issue would also consider suppressing any information from the "ranking algorithm" including the subtle but powerful colour codes, and rank(s) which are no longer relevant to apply to pools that the delegating user has already chosen. I'm just posting here to try to get ahead of this issue while you are talking about this one on the back end... to consider the spirit of the overall implementation instead of setting up the UI designers to leave the URI-linked delegations with the same centralising bias that has always been present in the ranking algorithm. I realise this is a complicated dependency & I'll definitely be at Tuesday's meeting to discuss with everyone. |
@@ -0,0 +1,100 @@ | |||
--- | |||
CIP: ? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
CIP-0018 (tentative)
@shawnim - Can you try to rebase the PR? Wondering about the automated checks |
6/29 Editors meeting (25) discussed this PR - see notes. (conversation might be ahead of meeting notes at this point, this is a reference) => PR to be merged as CIP-0024 (Draft) shortly |
(The PR should be merged shortly as Draft) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
With my opinionated architect's hat on, I don't agree with the proposal.
With my fair editor's hat on, it's a reasonable and clearly explained proposal.
…cMurdo-NonCentralizingRankings.md to CIP-0018/CIP-0018.md
collision with another PR being merged concurrently on numbering
521c552
to
5ed5117
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Rebased onto latest master, and added to the README 👍
Where should further discussion, such as the title and better understanding of Duncan's reasons for opposing, occur post-merge? |
Initial CIP for Stake Aware Rankings.