This is the second monthly report describing updates, changes, and other news with regards to the Q-Filter voting bot, vote lottery, and web application. In this update, we'll cover the some of the adjustments made to the prior roadmap and changes in overall priority.
Image Source
Progress Report
Vote Lottery
Instead of a monthly payout scheme based on platform participation, a vote lottery was implemented in its place. This allows for payouts to fewer individuals and preventing the q-filter bot from spamming the network on a single day and grants a single payment per post to the best voter. The best voter as mentioned in earlier posts is determined by a combination of voting value and random noise. This makes the system bot-resistant (although one can still develop bots that work probabilistically, but this is much harder).
Q-Filter Bot
The bot remains unchanged, but issues were reported where the bot flagged individuals who in turn did not receive flags, but due to small percentage whale votes that added enough variance to penalize posts into a range where the bot conceived the post as garbage when it was not. Thus, a check was implemented to simply prevent the bot from flagging when no flags were present. But this still leaves potential users without a vote by the bot. So, a future fix will made soon as described in the roadmap below.
Web Application
There were few changes to the web application during the period that are really worth noting. Just a few cosmetic things were adjusted. There are still obvious bugs in the visual interface, but the visual interface is not a priority as users can easily see q-filter posts on Steemit and the volume is still low. But continued improvement is planned in order to improve the application so it is stable to use and view the different filters in action reliably.
Roadmap
Q-Filter Bot & Vote Lottery
In order to fix the issues with small percentage whale votes mentioned above, Q-Filter is moving away from a stake-based measure to a participation-based model. However, we will be using a updated model that uses an adjustable weight model that is bounded rather than having unbounded score. The no flag update described above will still be carried over but regular users should not experience this issue. The vote lottery will also move to a participatory system.
New Participant Model
Rather than grant arbitrary points to users, we will treat the whole ecosystem as a continually adjusting weight network that gives weight to regular users. Those that use Q-Filter more will have more say in the ecosystem. Thus, whales skewing the score will no longer be an issue as it requires constant work in order to maintain a high weight.
This is achieved by capping the total network weight to (1000 * number of Q-Filter participants). Each account that is seen for the first time is granted a weight of 1000 and the weight is adjusted by behavior and participation. Inactive users will lose weight over time, while the inverse happens to active users. This is achieved by adding point to active participants per post and then normalizing the network weights afterward to keep the total network weight bounded.
However, one could argue that spamming of the Q-Filter system is now incentivized with this update. We go over two cases below and describe why that is not so much of an issue:
Case 1: Vote Spamming: This is arguably not an issue. Authors will gain more rewards due to bot participation and without a really sophisticated bot, such bots will not be able to win the vote lottery regularly. Although regular voting is rewarded, this reward is split among voters, thus the only way to significantly gain weight in the network is to win the vote lottery regularly.
Case 2: Post Spamming: This is a potential issue if ignored. But there are incentives to flagging such content. First, one will still gain weight in the network by voting. Second, if the post is truly garbage, the vote lottery winner is more likely to be awarded to those that flag the spam as there is a variance based penalty. Third, those who are more active in the system have the most power. So, policing is significantly easier.
Also low-rated posts will contribute negative weight to the user and users with negative weight overall will be unable to post to the Q-Filter system (They'll still be able to use the tag). Users can regain positive weight again by voting for their peers. Being selfless (via voting) is rewarded in the system with greater weight.
Interface
But why care about having a higher weight if one is not rewarded directly by having a higher weight? First off you have indirect incentives. You have more influence over the scores of different posts which determines which posts and how much they get upvoted by the Q-Filter bot. This score also effects the vote lottery.
But the ultimately goal of these scores is to sort content by a means beyond simply amount of money earned. Because such systems tend to reward promoters and users that are already large and don't need help. By creating a better filter, we hope to better uncover those hidden gems you've been spending so much time on. And hopefully in due time, you will be able to capitalize on this more meritocratic attention.
Updates Schedule
The new participant based system will be implemented in 48 hours from the posting of this article. This allows current users to still receive upvotes from the bot based on the old rules. This also serves as a heads up to other users planning to prepare content for the system that changes are coming. Unfortunately for those who have gained points in the old system, those will be phased out. But they were unattached to any current rewards scheme, so there is no real loss there.
If there are any questions or concerns about the update scheduled for 8PM EST on 2/17, feel free to ask. You will either receive a response from this account or my regular account @greer184. If you want more detailed or technical explanations of the inner workings, I'll be happy to go over those as well.
Great work. I just made my first post with the q-filter tag.
Cool. If your post is deemed "worthy" you should expect to see an upvote from the bot in around 48 hours after the post.
Sounds amazing! Just in time for me to make a promo post for it :D
Did have one question though: Will your weight be viewable?
Right now, I've only have the top 20 weights on the top participants pages in my development environment. Weights will start at 1000 for each individual and then adjust. But being able to view an account's weight is a good idea and I'll try to extend that to all accounts once the above transition is finished.
So I snuck in a rudimentary way to view your account in the update. Off the main webpage, simply add the postfix
/participants/@carn
to get the weight for that account. I will write up another update sometime soon describing this and the web application in more detail.
So, looking at the current top participants, it looks like some upvote bots are in there. Currently they probably will influence someone's rank negatively because people normally buy small percentage upvotes. Since I don't like them I don't really mind that, but I don't know your opinion on them. Another option would be to not count votes by them. This would require some work to keep an updated list though.
Personally I would suggest you only increase a voter's weight after they have posted once with the #q-filter tag. This would factor out those sparse whale votes and downplay votes by people who don't understand the system.
Just me thinking 😉
Yeah, I saw the same thing and double checked the code to make sure everything was working properly and it appears to be behaving correctly with a little more volatility than expected. The only issue with the adjusting voter weights after they post with the q-filter tag is that it requires them to post once (which is the smaller issue) and it would mean that their weight would continually decrease as the total weight in the system is fixed to encourage continual use to maintain weight.
But maybe it will discourage bot-use which could be seen as a good thing. Maybe it will discourage user growth which may be seen bad thing. I'm not sure. But only one post has been processed and it happened to be one with bot votes attached to it. I think making a change now would be a little premature. Let's see what happens over the next few days and see if things start to balance out or if these types of bots take over.
I don't have any problems with a bot winning the vote lottery. It means that the bot either got lucky, there were very few votes on the post, or the human players haven't figured out how to tailor their votes to increase vote lottery odds. Probably a combination of the three.
And highlighting what I've said, the last qFilter Vote Lottery Prize went to the upvote bot @lovejuice.
Just curious, why did you make the stake-based view the default view? It seems like participant based would be the better choice since that is the most complicated part of the Q-Filter system.
The participant-based view will be the default view after the update occurs.
So this is hopefully my last question :P
I was working on a post I'm going to publish after the update and I need to know: On what day after a post is published does the vote-lottery run?
Vote lotteries run 7 days after they enter the system. The post payout will thus occur before the vote lottery in any case. For a future update, I want to use post timestamps so that the q-filter time corresponds with the time used by the Steem blockchain to avoid any confusion.
So right now, the vote lottery runs 7 days after the q-filter tag is initially used.
Congratulations, you were selected for a random upvote! Follow @resteemy and upvote this post to increase your chance of being upvoted again!
Read more about @resteemy here.
Thanks for the gift. That should make the vote lottery winners happy.
I could write an automatic comment response to users of the network, but I would probably want to develop some opt-in system to limit blockchain transactions. I will consider the feature as something to consider for users in the future.