Adding a difficulty factor to the botsteemCreated with Sketch.

in #utopian-io7 years ago

image.png

Recently, the bot has been updated many time in order to get closer to the behavior we except to see. I am also working with @scipio on developing his User Authority vision, which we believe will bring a human factor in the right way onto the bot calculation.

In the meantime, @elear asked me to improve the calculation of the pool for each category. The problem was that each pool was only calculated according to the number of contribution, without regard of the difficulty of the pool. This was a huge problem as we ended up with bigger upvote for Suggestions than for Development, which didn't make sense at all.

With @elear 's help, I've set a difficulty factor to each of the categories before the calculation of the reward pool.

Now the reward pool for each category is calculated as follow, the numbers being weighted by the corresponding difficulty:

assigned_pool =(posts.filter(post => post.json_metadata.type === elt).length / total_weighted_length * 100) *categories_pool[elt].difficulty* MAX_USABLE_POOL / 100;

It's not Chinese, it simply means that the assigned_pool for each category is equal to the number of post in this category divided by the total_weighted_length and multiplied by the difficulty and the maximum usable voting power.

The total_weighted_length is the total number of posts being voted, each one weighted by the difficulty of its category as follow:

total_weighted_length=Σ Lc*Dc
where Lc: Length of the category
and Dc: Difficulty of the category

All the difficulties are for now ranged between 1 (for suggestions, blogs...) and 2 (development, sub-projects). Since this was purely arbitrary, I've added another parameter called DIFFICULTY_MULTIPLIER that is for now set to 1.

Modifying that parameter allows to test with different gaps between the different categories and tweak the parameters until we get what we want.

Meanwhile, @ruah is working on separating the different kind of bots the Utopian bot is jealous of between pay-for-vote and others, to make it fairer.

Step by steps, we're working on a better Utopian Bot.

Hope this helps.

@stoodkev



Posted on Utopian.io - Rewarding Open Source Contributors

Sort:  

Great adition. I wonder how you weighted Video Tutorials.

1.85, among the highest.

Amazing work with a lot of systematic analysis and thinking in the process! Well done, I could never have the patience to go through all those lines of code and test them for validity. It's all too logical for my confusing and fussy mind!!

You are from earth, I am from Venus!
Cheers.

Haha just doing what I can ;)

Great addition buddy. Upvoted and following u now.
Regards Nainaz
#thealliance

Congratulations @stoodkev! You have completed some achievement on Steemit and have been rewarded with new badge(s) :

Award for the number of posts published

Click on any badge to view your own Board of Honor on SteemitBoard.
For more information about SteemitBoard, click here

If you no longer want to receive notifications, reply to this comment with the word STOP

By upvoting this notification, you can help all Steemit users. Learn how here!

Thank you for the contribution. It has been approved.

You can contact us on Discord.
[utopian-moderator]

Excellent work. The difficulty parameter was much needed. I also respect the attitude that it can be improved further :thumbs-up:

Hey @stoodkev I am @utopian-io. I have just upvoted you at 14% Power!

Achievements

  • WOW WOW WOW People loved what you did here. GREAT JOB!
  • You have less than 500 followers. Just gave you a gift to help you succeed!
  • Seems like you contribute quite often. AMAZING!

Community-Driven Witness!

I am the first and only Steem Community-Driven Witness. Participate on Discord. Lets GROW TOGETHER!

mooncryption-utopian-witness-gif

Up-vote this comment to grow my power and help Open Source contributions like this one. Want to chat? Join me on Discord https://discord.gg/Pc8HG9x

Coin Marketplace

STEEM 0.27
TRX 0.11
JST 0.030
BTC 70771.68
ETH 3814.65
USDT 1.00
SBD 3.46