Skip to content
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

[3 Poll Proposal] Revitalizing Gridcoin: Enhancing participation by rebalancing rewards and vote weight #268

Open
grctest opened this issue Oct 4, 2024 · 5 comments

Comments

@grctest
Copy link
Contributor

grctest commented Oct 4, 2024

Abstract

Gridcoin ($GRC) has reached several key development milestones, laying a solid foundation in the blockchain space. However, recent years have seen a decline in both $GRC's market capitalization and trading volume, highlighting concerns about community engagement and the utility of the network. This proposal seeks to revitalize the Gridcoin community and ecosystem by introducing a series of changes aimed at promoting increased participation and collaboration.

Motivation

Gridcoin has successfully accomplished numerous significant milestones, including:

  • The switch from Proof of Work (POW - Scrypt) to Proof of Stake (POS) - dramatically reducing Gridcoin's blockchain electricity requirements and redirecting compute power to BOINC instead.
  • The removal of the Gridcoin BOINC team requirement - allowing all BOINC users to earn GRC.
  • The implementation of the Manual Reward Claim mechanism - allowing non GRC holders to request their owed earnings without using a pool nor staking a block, massively reducing the barrier to entry for new Gridcoin users to earn $GRC.
  • The implementation of BOINC stats oracles - avoiding all clients downloading BONIC data, massively reducing BOINC project web server network traffic coming from Gridcoin users.
  • Significant client improvements - consistent core development by dedicated core developers for years now means the blockchain has become more stable, reliable, responsible and fair for all participants.
  • Side staking implemented - enable donating to boinc projects, the foundation or any grc address you want with some of your staking rewards.
  • Established foundation fund - covering some costs for contributors
  • The blockchain is turning 11 years old; not many other cryptocurrency projects can say the same.
  • Team Gridcoin has achieved first place in multiple BOINC contests and BOINC leaderboards, even with the team requirement removed.
  • Consistently rewarded computations which helped fight the covid pandemic

However, despite these achievements, $GRC has faced a notable decline in market cap and trading volume over the past few years, particularly in contrast to other cryptocurrencies that have seen significant growth during this period.

This proposal seeks to address these challenges by significantly increasing GRC emissions, aiming to enhance community engagement, attract new users, and generate renewed interest in the Gridcoin ecosystem. By fostering a collaborative environment, we can strengthen the network and encourage broader participation.

Rational

Primary issues

Despite significant improvements to Gridcoin, including the achievement of key roadmap milestones, the market cap has not reversed its multi-year downtrend. At the time of writing this proposal, $GRC has a market cap of approximately $1.4M and a price of $0.003, a decrease of 98.6% from its peak of $0.2142 on January 9, 2018 (source)

The Gridcoin Research blockchain rewards a considerably larger number of users than the Gridcoin Classic blockchain ever did, with no team requirements, non-BOINC support, and a provably fair distribution of rewards among multiple projects. However, despite these improvements, the price trend has continued to decline.

Additionally, Gridcoin is currently listed on only a few small exchanges and has been delisted from several major exchanges in previous years. This limited accessibility hampers the ability to trade and engage with $GRC effectively.

Furthermore, Gridcoin faces challenges in external service support, making it difficult to spend $GRC directly on goods and services. Compounding these issues, CoinMarketCap no longer displays price charts for Gridcoin, further impacting visibility and engagement.

Primary identified root cause - The lackluster emissions schedule

Gridcoin's declining emissions schedule has not produced the desired positive impact on the value of $GRC. The decision to reduce emissions aimed to create a more sustainable ecosystem, yet it has not led to the anticipated outcomes. This indicates a need to adjust our approach for the future.

The classic client emitted between 5-150 $GRCX per block, considering the conversion from $GRCX to $GRC was 10x, that means blocks were rewarded between 50-1500 $GRC each.

Initially the classic client proposed to halve block rewards every 4 years, like bitcoin/litecoin, however this was significantly accelerated by the move to gridcoin research.

Prior to Gridcoin's implementation of the BOINC magnitude system (which ensures even distribution of rewards among projects) rewards were distributed unevenly and could be unfairly influenced by external factors. As a result, the earliest distributed coins were less fairly distributed among a smaller group of users than. In contrast, the modern Gridcoin client provides a provably fair rewards distribution for thousands of users across many projects.

Here's the initial (non-PoB) classic block calculation: (source)

int64 static GetBlockValue(int nHeight, int64 nFees) {
	if (nHeight >= 199000) { // Gridicoin Research transition
		return MaxBlockValue(nHeight,nFees);
	}

	//GridCoin - variable reward based on BoincProcess Utilization (minimum 5, Max 150)
    int64 nSubsidy = GetBoincUtilization() * COIN;
    // Subsidy is cut in half every 840000 blocks, which will occur approximately every 4 years
    nSubsidy >>= (nHeight / 840000); // Gridcoin: 840k blocks in ~4 years
	//Gridcoin : Total block pays 5-150 + 2*Fees
	if (nFees > 100) nFees=0;
    return nSubsidy + (nFees*2);
}

Code highlighting that initial classic distro was based on device cpu/ram utilization (manipulatable), not project magnitude: (source)

int64 static GetBoincUtilization() {
	//GridCoin - BoincUtilization for Processor plus memory will return a value between 0-100.
	//GridCoin pays 5GRC if the miner is not participating, and up to 150GRC if miner is participating, based on the homogenized reading.
	int64 nCalculatedReading = nBoincUtilization * 1.5;
	if (nCalculatedReading < 5) nCalculatedReading=5;
	if (nCalculatedReading > 150) nCalculatedReading = 150;
	if (!bBoincSubsidyEligible) nCalculatedReading = 5;
	return nCalculatedReading;
}

Code highlighting that initial classic PoB didn't divide rewards between projects, note RAC/NetworkRac: (source)

int64 static GetBlockValuePoB(int nHeight, int64 nFees, double RAC, double NetworkRAC, int algo_type) {
	if (nHeight >= 199000) { // transition to gridcoin research
		return MaxBlockValue(nHeight,nFees);
	}

	//GridCoin - variable reward based on BoincProcess Utilization (minimum 5, Max 150)
	if (RAC < 100) RAC = 0; // min RAC of 100
	if (NetworkRAC < 1) NetworkRAC = 1;
	if (nFees > 100) nFees=0;
	double sub1 = (RAC/NetworkRAC)*150; // <- unfair
	if (sub1 > 149.99) sub1 = 149.999;
	std::string sSub = RoundToString(sub1,3);
	double subsidy = 0;
	if (algo_type==3) {
		subsidy = cdbl(sSub,4); //Note the precision change to 4 digits
	} else {
		subsidy = cdbl(sSub,3); //Note the precision change to 3 digits
	}
	if (subsidy > 150) subsidy = 150;
    int64 nSubsidy = subsidy * COIN;
    // Subsidy is cut in half every 840000 blocks, which will occur approximately every 4 years
    nSubsidy >>= (nHeight / 840000); // Gridcoin: 840k blocks in ~4 years
	//Gridcoin : Total block pays 5-150 + 2*Fees
	if (nSubsidy < 0) nSubsidy=0;
    return nSubsidy + (nFees*2);
}

We can condense the above into the following table, using the 10x conversion rate:

chain min max daily blocks daily emissions
GRCX 50 1500 ~576 28,800 to 864,000
GRC 10 10 ~960 9600 + 28000

OK, It feels a bit unrealistic to estimate 1500x576 for every block from the code as not every block aught to have maxed out rewards, but still it highlights a major upper end of rewards which is missing from the research blockchain rewards schedule.

So, Let's compare the total coin supply from launch -> conversion -> now, perhaps that'll be a fairer comparison:

chain from to coin supply days coins/day daily blocks coins/block
GRCX October 16th, 2013 October 11th, 2014 340,569,880 360 days 946,027 ~576 1,642
GRC October 11th, 2014 October 1st 2024 495,007,945 (+154,438,065) 3,643 days 42,393 960 44

OK, so perhaps it was in fact appropriate to estimate that every classic block was rewarded the maximum then..

The daily average emissions during the classic client were approximately 946,000 $GRC, while the current average has decreased to around 42,000 $GRC (with a target of 37,600). This represents a significant reduction of approximately 99.96% in reward emissions, which raises questions about the adequacy of the current distribution

If the original emissions schedule had been maintained, we would have already experienced two halvings, with the next occurring in two years. This would have resulted in an average of approximately 236,500 $GRC per day, still about 563% higher than the current average daily emissions.

This would roughly look like the following: (source)

Date range coins/day total coin supply coins emitted in period coins per year
16/10/13 - 15/10/17 933068 1,260,108,556 1,260,108,556 315,027,139
16/10/17 - 15/10/21 466534 1,941,714,850 681,606,294 170,401,573
16/10/21 - 15/10/24 (75%) 233267 2,197,842,061 256,127,211 64,031,802

When comparing the current supply of 494,969,675 $GRC to the originally proposed classic emissions estimate of 2,197,842,061 $GRC at this point, it is clear that only about 22% of the intended emissions have been realized. This results in approximately 1.7 billion fewer $GRC being in circulation than the classic emission schedule anticipated.

OK, so let's visualize the original classic emissions schedule and where we'd somewhat be now if we'd stuck with it:

The inflation chart highlights some challenges associated with Gridcoin Classic. While starting from zero can exaggerate the initial APR, it is noteworthy that we were initially on track for a 100% APR at the time of conversion to $GRC. However this rate was decreased significantly to 9%, followed by a further decline to 1.5% within the next year after migrating from the classic to research blockchains. (source)

Following the implementation of the Constant Block Reward system, the emissions of $GRC increased from the previously hardcoded rate of 1.5% to approximately 4.5%.

Based on these estimates, both the Research and Classic blockchains would have been roughly experiencing the same inflation rate at this point, with an additional 1.5 billion $GRC distributed by now had the original emissions schedule been maintained.

The charts above illustrate:

  • By 31/03/15 (6 months post research) $GRCX would have emitted an equivalent amount to $GRC's current total supply. Comparing 6 months to 10 years highlights the significantly lower emissions.
  • The distribution of 154,438,065 research coins over a 10-year period results in an annual distribution of approximately 15,443,806 $GRC since the transition. This represents a 95.46% reduction in the annual distribution compared to the first year of Classic Gridcoin.
  • Despite this significant reduction in annual emissions, there has been minimal positive impact on the price of Gridcoin since the peak values briefly experienced between 2017 and 2018.


US source, EU source

The charts above indicate the following:

  • The inflation rate of $GRC has decreased from around 4.5% to below 3.5%.
  • At the current rate, it would take over 100 years to reach the amount of coins that the Classic client was originally intended to emit by this point.
  • Inflation in both the USA and the EU has significantly outpaced $GRC's yearly emissions. Between mid-2021 and late 2023, inflation rates were 200-300% higher than $GRC's rates.
  • The price spikes of $GRC in 2017 and 2018 coincided with rising inflation in the US and EU, during which $GRC's rates exceeded fiat inflation rates.


UK Source, EU Source

Another issue highlighted in the charts is the substantial increase in electricity costs, contributing to the ongoing cost of living crisis in both the UK and the EU. Gridcoin has yet to adjust its emissions schedule to reflect the global rise in electricity prices, which have not returned to pre-'energy-crisis' levels (source).

For context, during the period from 2014 to 2017, I operated a 6kWh BOINC cluster at a monthly cost of £600. By the peak winter of 2022, this cost would have risen to approximately £6000 per month.

While some participants use solar power at little or no cost, many are still affected by rising electricity prices, which are part of a broader cost of living crisis in the UK and EU. Inflation rates have recently outpaced those related to Gridcoin, decreasing disposable income and potentially impacting user engagement with the Gridcoin ecosystem.

Thus, even if electricity costs are not a concern for all, they are a critical factor influencing participation and BOINC computations within the network. Recognizing these economic pressures is essential for understanding current trends and addressing community needs. By considering these real-world factors, we can foster a more supportive environment that encourages participation and strengthens the Gridcoin protocol, ensuring we remain responsive to the evolving landscape.

In conclusion

Given all the issues above, I propose that the current reward emissions should be significantly increased for both block producers and BOINC crunchers over the coming years.

Secondary identified issue - Unbalanced ratios for rewards & voting

Currently, the staking block rewards are fixed at 9,600 GRC/day, while the BOINC rewards are approximately 28,000 GRC/day. This creates a distribution where staking receives 25.5% of the total rewards, and BOINC is rewarded with 74.4% (not accounting for MCR fees).

Where as for voting, the total coin supply is assigned 82.36% vote weight, and total network magnitude is assigned 17.64%.

Each mode's ratio balance is vastly different, for voting concerns balance is held to high degree however when it comes to rewards we overwhelmingly favour BOINC computation, I feel that only assigning 17.64% of the 'total money supply' to 'total network magnitude' is an insufficient vote weight and that it should be increased.

Mode total coin supply total magnitude
Rewards 25.5% 74.4%
Voting 82.36% 17.64%

The decisions to assign these rewards was based on a blockchain poll, and the greater vote weight was assigned to total coin supply as it represents a greater amount of validated historical computation compared to total magnitude which represents the latest 30 days moving average credit for each project you're crunching.

For the poll voting weight, the formula used is:

VoterBalance + (VoterMagnitude * ((TotalMoneySupply / TotalNetworkMagnitude) / 5.67))

The voting weight formula references the full money supply, including coins stored in dead addresses and exchange cold storage. This introduces a hidden vote-boosting factor that will continue to grow with the total supply of GRC.

The 5.67 value is 100/17.64, so it too is in scope to be changed by this proposal.

Tertiary issue - Establishing blockchain consensus

The decision to implement a reduced emissions schedule for 'Gridcoin Research' was initially made through a series of forum polls, as on-chain voting functionality was not yet available. With the forum now closed, we have transitioned to conducting polls directly on the Gridcoin blockchain, considering both user balances and their significance in the voting process. (source)

While some may argue that the current emissions schedule lacks robust blockchain consensus, it reflects the rules agreed upon by the community to establish consensus for each block. Given the evolving landscape of our network, now is the right time to reevaluate our approach to consensus on block rewards. This reflection will ensure that our governance mechanisms remain relevant and effective in addressing the needs of the community moving forward.

Specifications

Proposed Voting Weight Adjustment

To address the voting calculation, I propose the following amended vote weight calculation, replacing the 5.67 variable with the following well known formula:

  • Golden_Ratio: (1 + √​​5) / 2 = 1.61803398875
    • Used in calculations
  • Shortened to: 1.618
    • Used in documentation

The Golden Ratio, approximately 1.618, is a timeless symbol of harmony and balance found in nature, art, and architecture. Its presence signifies the pursuit of beauty and equilibrium, making it a fitting choice for our voting calculation. By incorporating this culturally rich number, we not only honor the mathematical elegance it represents but also align our community with the ideals of growth and fairness. This move reflects our commitment to creating a balanced ecosystem within Gridcoin.

Proposed new vote weight formula

To improve the accuracy of our voting calculations, the proposed formula removes dead and cold coins by replacing the total money supply with the active vote weight. The new vote weight formula is as follows:

VoterBalance + (VoterMagnitude * (ActiveVoteWeight / Golden_Ratio / TotalNetworkMagnitude ))

In this formula, the previous value of 5.67 has been substituted with the Golden Ratio of 1.618, promoting a more equitable distribution of vote weight within the Gridcoin ecosystem.

Explanation of Active Vote Weight Calculation (source)

The function starts by retrieving the poll's starting block; if not found, it returns no result. It then gets the ending block, using the current head of the blockchain if the poll is still active.

To calculate the active vote weight, the function scans the blockchain from start to end of the poll. It updates network and pool magnitudes when encountering a superblock, using these values to tally the active vote weight efficiently in a loop.

After scanning, it calculates the average active vote weight. If valid and within limits, it returns this weight; otherwise, it returns no result. The function also references the last superblock before the poll to ensure the weight reflects the most recent network state.

Impact of the proposed formula

  • Given the current total supply of 495,007,945, dividing by 5.67 assigns the total network magnitude a vote weight of 87,302,988 GRC (17.64%).
  • With an active staking supply of 267,026,167, the new formula will assign 165,031,247 GRC to the network magnitude vote weight.
    • This represents a voting weight increases of 189 %
  • The new ratios can be calculated as follows:
    • Balance weight:
      • ActiveVoteWeight / (ActiveVoteWeight + (ActiveVoteWeight / Golden_Ratio))

      • New golden ratio: 61.80% (decrease of 20.56%)
    • Magnitude weight:
      • (ActiveVoteWeight / Golden_Ratio) * (ActiveVoteWeight + (ActiveVoteWeight / Golden_Ratio))

      • New golden ratio: 38.20% (increase of 20.56%)
  • By switching from total supply to active staking supply, we eliminate dead or cold coins from the calculation, incentivizing magnitude voters to acquire a greater stake. This could potentially increase the active staking supply, their magnitude vote weight, and network difficulty.
  • Github issues calling for an increase in magnitude vote weight should be addressed by this substantial vote weight increase.
Type Rebalance effect Balance vote weight Magnitude vote weight
Current 5.67 82.36 % 17.64 %
Golden Ratio: (1 + √​​5) / 2 1.618 61.80 % 38.20 %

Reward Distribution Adjustment

Considering the golden ratio works for resitributing vote weight, let's consider also applying it to the rewards distribution mechansim:

Type Rebalance effect Daily staking rewards Staking Reward % Daily crunching rewards Crunching Reward %
Current 5.67 9600 25.53 % 28000 74.47 %
Golden Ratio: (1 + √​​5) / 2 1.618 14,363 38.20 % (+12.67 %) 23,236 61.80 % (-12.67 %)

The +12.67% increase in block rewards enhances the total active staking supply, representing a moderate boost while preserving the inverted order of reward distribution. This approach assigns a larger share of the daily coin emissions to reward BOINC computations in accordance with the golden ratio.

With the rebalance in place, the next step would be then applying a multiplier to significantly boost the rewards emissions.

Multiplier Staking reward BOINC reward Daily emissions Yearly total emissions Next Year Inflation Years till 2B GRC
1 14,363 (15/block) 23,236 (0.2/mag) 37,600 13,724,000 ~3.5 % ~120
5 71,815 (75/block) 116,180 (1/mag) 187,995 68,618,175 13.86 % (+10.64) 22.23
10 143,630 (150/block) 232,360 (2/mag) 375,990 137,236,350 22.77 % (+21.28) 11.11
15 215,445 (225/block) 348,540 (3/mag) 563,985 205,854,525 35.14 % (+31.92) 7.41
20 287,260 (300/block) 464,720 (4/mag) 751,980 274,472,700 45.54 % (+42.56) 5.55

Currently, the default constant block reward (CBR) is set at 10 GRC, with a maximum allowable cap of 20 GRC, representing a 200% increase. To facilitate this change, a mandatory upgrade to the blockchain protocol will be required to raise the maximum CBR reward. (source)

Despite the increase in the maximum reward, the CBR mechanism will remain in effect, as it has significantly improved network difficulty and contributed to a more robust ecosystem. This ensures that the benefits of the CBR system continue while accommodating the new emission dynamics.

Core code in scope for change

  • Increasing the max block reward from 16384 (source)
  • Increase in MAG_UNIT_NUMERATOR for staking base accrual calculation (source 1, source 2)

Required blockchain polls

  1. Approve use of golden ratio for vote weight and rewards distribution ratio

    A poll to request approval to switch from 5.67 to the golden ratio ((1 + √​​5) / 2 = 1.618) for vote weight and rewards distribution

    • Yes

    • No

    • Abstain

  2. Approve changing the vote weight calculation

    A poll to request approval to switch from total coin supply to active coin supply when determining magnitude vote weight.

    • Yes

    • No

    • Abstain

  3. Multiplier Selection

    A poll to determine the size of the multiplier to apply to daily emissions

    • 1x (default if poll fails)
    • 5x
    • 10x
    • 15x
    • 20x
    • Abstain

Discussion

Why Gridcoin classic was neither an instantmine nor premine

Gridcoin Classic's launch was marked by a commitment to fairness and decentralization, distinguishing it from both pre-mined and instant-mined blockchains.

A pre-mine involves the creation of a significant number of coins in a single address before the blockchain becomes public, a practice not observed in Gridcoin Classic. Similarly, an instant mine occurs when 99.99% of coins are mined within the first few public blocks, which also did not happen here.

In the first year of Gridcoin Classic, a total of 340,569,880 GRC were created. In contrast, the subsequent decade of Gridcoin Research only saw the generation of 154,438,065 GRC, averaging approximately 15,443,806 GRC per year. This translates to nearly a 95% reduction in rewards after the initial year. While this dramatic decrease in emissions did not fall under the categories of pre-mining or instant mining, it inadvertently placed new users at a disadvantage by significantly lowering the incentive structure.

The decision to substantially cut emissions was made with the intention of enhancing fairness and decentralization in the reward system. However, this drastic reduction may have unintentionally raised questions about alignment with regulatory considerations. Such a sharp decline in emissions, particularly over a short period, could be perceived as limiting for both new users and dedicated long-term stakeholders.

Now, as an effort to recalibrate the emissions trajectory is proposed, this adjustment acknowledges that earlier choices may have overlooked the importance of sustaining growth and community engagement. This initiative seeks to address past missteps and to reinstate a more balanced and inclusive ecosystem. By promoting an environment that encourages active participation and rewards, it aims to turn the page toward a more promising future for Gridcoin.

Stakeholders are encouraged to engage in this transformative process, contributing to a revitalized Gridcoin that honors its history while forging ahead toward sustainable growth.

Why have exchanges delisted Gridcoin?

Gridcoin was once listed on several major cryptocurrency exchanges, such as Poloniex and Bittrex. Despite both supporting Gridcoin's transition from Classic to Research, they ultimately chose to delist Gridcoin.

The problem lies with how Gridcoin users historically have tended to hold their coins long term, staking and not trading them on exchanges, this lack of supply lead to lower earning for exchanges and eventually delisting. The CBR proposal aimed to encourage more GRC to be kept online, thereby increasing the network weight of the Gridcoin blockchain. However, it did not fully communicate the potential implications for trading activity on supported exchanges.

Before the substantial decrease in Gridcoin emissions, there was sufficient trading volume to justify listings on these platforms. Years later, despite numerous advancements in Gridcoin's blockchain technology and achievements, these exchanges have yet to relist the coin.

By increasing the amount of Gridcoin being circulated, there is potential to encourage more users to engage with their holdings actively. This could lead to a shift away from the long-term holding trend, allowing for a broader use of Gridcoin in transactions, rather than being reserved solely for future use.

Gridcoin is older than Dogecoin - let's compare the two...

Chain Consensus mechanism Daily block rewards Daily research rewards Blockchain age Market cap
GRC POS 9,600 28,000 4,003 days $1.5M
Doge POW (Scrypt) 14,400,400 0 3,952 days $16.3B

While both cryptocurrencies have demonstrated resilience, their approaches to consensus and reward structures highlight key differences that may inform future strategies for Gridcoin.

Consensus Mechanism:

Gridcoin's Proof of Stake (PoS) mechanism stands in stark contrast to Dogecoin's Proof of Work (PoW). PoW relies on energy-intensive mining operations, whereas PoS promotes sustainability by rewarding participants for holding their coins. A recently released roadmap for dogecoin indicates interest in transitioning to a PoS model, yet it has faced delays far in excess of the time it took for Gridcoin to transition from POW to POS.

Reward Structure:

Dogecoin's significantly higher daily rewards encourage circulation and trading among users, contributing to its robust market presence. In contrast, Gridcoin's current structure limits incentives for users to trade, as they may choose to stake rather than exchange their coins. Increasing daily emissions could attract new participants, enhance liquidity, and stimulate market activity.

Community Engagement and Branding:

Dogecoin's meteoric rise is often credited to its meme-driven culture and strong community engagement. While Gridcoin’s story is grounded more in its scientific purpose, it has the potential to spark a new cultural moment of its own. The idea of ushering in a "Golden Age" speaks not only to a fresh era of participation and growth, but also taps into the profound mathematical and cultural resonance of the golden ratio, or divine proportion. This ratio has captivated minds across history—from ancient architecture to nature’s most perfect forms—symbolizing balance, beauty, and harmony.

By aligning Gridcoin’s reward distribution with this timeless principle, we can evoke a sense of deeper meaning and significance within the community. It represents more than just numbers—it’s a call to embrace a balanced, sustainable, and prosperous future. Effectively marketing this narrative could revitalize Gridcoin’s cultural identity, offering something with broader emotional and intellectual appeal. In this way, Gridcoin can create its own unique engagement, echoing the success of Dogecoin’s community-building, but with a more elevated, purposeful message that resonates on multiple levels.

Market Dynamics:

The disparity in market capitalization between Dogecoin and Gridcoin highlights the opportunities for growth in Gridcoin. By adopting a more flexible emissions schedule, Gridcoin could better align with market trends that emphasize accessibility and widespread participation. Dogecoin's success illustrates how a non-scarcity model can foster user engagement and resilience.

In conclusion, Gridcoin can enhance its ecosystem by considering practices similar to those of Dogecoin. By adjusting its emissions strategy, Gridcoin could encourage greater community involvement and trading activity, ultimately supporting a more vibrant and adaptive ecosystem. This approach not only honors the original vision of Gridcoin but also positions it to thrive in the evolving cryptocurrency landscape.

Summary for stakeholders

Existing Gridcoin Users

This proposal aims to significantly increase the daily Gridcoin emissions, benefiting both Proof of Stake (PoS) and BOINC (Berkeley Open Infrastructure for Network Computing) rewards.

  • Mandatory Upgrade: A mandatory client upgrade would be required due to the current maximum constant block reward (CBR) being capped at 200% of the default value of 10 GRC (i.e., a maximum of 20 GRC).

  • Blockchain-Based Voting: The community will participate in a blockchain-based vote to trigger the "Gridcoin Golden Age" and determine the multiplier for the reward increase.

  • User Action: No immediate action is required other than participating in the voting process. If the proposal passes, upgrading your client will be necessary.

  • Blockchain Resilience: The Gridcoin blockchain is designed for longevity, thanks to its low energy consumption and decentralized structure. This resilience provides Gridcoin the potential to outlast services that may fail, such as those run by bad actors in the crypto space (e.g., FTX).

  • Potential Market Impact: If you're actively trading GRC on exchanges, it may be worthwhile to reconsider your trading strategies once this proposal is implemented. Increased emissions could lead to heightened liquidity and more frequent trades.

New Gridcoin Users

The proposed changes will make it easier for new participants to earn a greater share of the total Gridcoin supply through staking and BOINC work than has been possible in recent years.

  • Incentives: The declaration of the "Gridcoin Golden Age" signals a shift toward more accessible opportunities for users to participate in securing the network and contributing to scientific research.

  • Sustainability of Changes: While blockchain updates like this are rare, they reflect the long-term vision for a more sustainable network. If emissions need to be adjusted downward in the future, this would be done smoothly through a network-admin message rather than another mandatory upgrade.

Exchanges & Services

This proposal will be open to discussion and may involve multiple rounds of blockchain polling before a final plan is implemented.

  • Trading Volume: The expected increase in Gridcoin emissions could stimulate greater trading activity, potentially boosting liquidity across exchanges. Interested platforms are encouraged to plan ahead for potential listing opportunities—no listing fees will be paid by the project.

See Also

The Gridcoin Research marketcap chart since creation:

The Team Gridcoin Total RAC (not including non team members):

More info on golden ages:

https://en.wikipedia.org/wiki/Golden_age_(metaphor)

https://civilization.fandom.com/wiki/Golden_Age_(Civ5)

More info on the golden ratio: φ

https://www.adobe.com/uk/creativecloud/design/discover/golden-ratio.html

https://www.canva.com/learn/what-is-the-golden-ratio/

https://en.wikipedia.org/wiki/Golden_ratio

https://mathworld.wolfram.com/GoldenRatio.html

Source of classic to research conversion rate:

https://gridcoin.us/wiki/gridcoin-classic.html

Github links relating to vote weight balancing:

#220

gridcoin-community/Gridcoin-Research#87

gridcoin-community/Gridcoin-Research#1809

@grctest
Copy link
Contributor Author

grctest commented Oct 4, 2024

Thanks for reading my proposal - I'm looking forwards to your comments.

I would vote as follows:

  • Approve use of golden ratio for vote weight and rewards distribution ratio: Yes
  • Approve changing the vote weight calculation: Yes
  • Multiplier Selection: 15x

Frist gridcoin golden ratio meme image:

image

@jamescowens
Copy link
Member

@grctest Thanks for a very thorough proposal! I am writing up some comments which I will post here this weekend.

@jamescowens
Copy link
Member

jamescowens commented Oct 5, 2024

@grctest, there was a significant declining schedule in the current Gridcoin emissions after the changover to the current PoS chain as well. This historical rule is actually retained in the current code in reward.cpp: (listed along with the current CBR code)

CAmount GetCoinYearReward(int64_t nTime)
{
    // Gridcoin Global Interest Rate Schedule
    CAmount INTEREST = 9;

    if (nTime >= 1410393600 && nTime <= 1417305600) INTEREST =   9 * CENT; // 09% between inception  and 11-30-2014
    if (nTime >= 1417305600 && nTime <= 1422576000) INTEREST =   8 * CENT; // 08% between 11-30-2014 and 01-30-2015
    if (nTime >= 1422576000 && nTime <= 1425254400) INTEREST =   7 * CENT; // 07% between 01-30-2015 and 02-30-2015
    if (nTime >= 1425254400 && nTime <= 1427673600) INTEREST =   6 * CENT; // 06% between 02-30-2015 and 03-30-2015
    if (nTime >= 1427673600 && nTime <= 1430352000) INTEREST =   5 * CENT; // 05% between 03-30-2015 and 04-30-2015
    if (nTime >= 1430352000 && nTime <= 1438310876) INTEREST =   4 * CENT; // 04% between 05-01-2015 and 07-31-2015
    if (nTime >= 1438310876 && nTime <= 1447977700) INTEREST =   3 * CENT; // 03% between 08-01-2015 and 11-20-2015
    if (nTime > 1447977700)                         INTEREST = 1.5 * CENT; //1.5% from 11-21-2015 forever

    return INTEREST;
}
} // Anonymous namespace

// -----------------------------------------------------------------------------
// Functions
// -----------------------------------------------------------------------------

CAmount GRC::GetConstantBlockReward(const CBlockIndex* index)
{
    // The constant block reward is set to a default, voted on value, but this can
    // be overridden using an admin message. This allows us to change the reward
    // amount without having to release a mandatory with updated rules. In the case
    // there is a breach or leaked admin keys the rewards are clamped to twice that
    // of the default value.
    const CAmount MIN_CBR = 0;
    const CAmount MAX_CBR = DEFAULT_CBR * 2;

    CAmount reward = DEFAULT_CBR;
    AppCacheEntry oCBReward = GetProtocolRegistry().GetProtocolEntryByKeyLegacy("blockreward1");

    //TODO: refactor the expire checking to subroutine
    //Note: time constant is same as GetBeaconPublicKey
    if ((index->nTime - oCBReward.timestamp) <= (60 * 24 * 30 * 6 * 60)) {
        // This is a little slippery, because if we ever change CAmount from a int64_t, this will
        // break. It is unlikely to ever change, however, and avoids an extra copy/implicit cast.
        if (!ParseInt64(oCBReward.value, &reward)) {
            error("%s: Cannot parse constant block reward from protocol entry: %s",
                  __func__, oCBReward.value);
        }
    }

    reward = std::clamp(reward, MIN_CBR, MAX_CBR);

    return reward;
}

@div72
Copy link
Member

div72 commented Oct 6, 2024

I'm in favour of increasing emissions but the root cause of low market cap for Gridcoin is because of lack of demand. Big part of the problem is that Gridcoin is not a useful cryptocurrency as there's nothing of value that can be bought with GRC. There were some interesting proposals in the past but I think the easiest/safest way is to incentivize? selling goods/services from within the community. (which I assume r/MarketGrid was an attempt at.)

Part of this is can be improved by wallet:

  • The recommended confirmations rules are inherited from Bitcoin, but the current static 10 block rule makes more sense on a PoW chain then on a PoS chain. There's more nuance to this but as an example recommended_confirms = min(log10(amount), 10) could maybe do better.
  • Sidestaking is nice, but the wallet does not make constant recurring payments easy.
  • Most of the accounting related RPCs have been deprecated since the beginning of time, probably does not help with bookkeeping received payments.
  • There's a QR code generation, but since there's no mobile version of the wallet it's not really useful.
  • There's a URI feature in the wallet, has anyone ever used that? Is it still working?

A bigger part of this need some coordinated effort from the community. Once that's done, it'd be more appropriate to look getting into CEXs(or make a DEX?) to help new users obtain GRC.

@jamescowens
Copy link
Member

jamescowens commented Oct 6, 2024

@grctest:

In addition to my comments on Discord, I think it would be feasible to use the active vote weight at the beginning of the poll as a substitute for money supply. Trying to use the average active vote weight during the poll results in effectively a recursive algorithm that makes it non-deterministic to compute each votes' vote weight as the poll progresses after a vote has already been cast. This has some very bad ramifications technically in terms of poll validation and also caching of already cast votes. A lot of work has been done to cache already cast votes to improve GUI performance, and this would go out the window if we have to continually update the active vote weight substitute for money supply as the poll progresses.

Also note that the GetActiveVoteWeight method has the same 567/100 ratio hardcoded there, and this will need to be removed and replaced with an appropriate reference to blockchain consensus structure.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants