As shown by the Byteball airdrop the current system is broken, it can easily be manipulated with accounts that have a lot of voting power. It should not be so based on big upvotes which can easily level up someones reputation, but how much they contribute to the ecosystem of Steemit.
I believe this formula could work: (amount of unique upvotes received + amount of unique comments received) x (amount of unique upvotes given + amount of unique comments given)
So if I (receive 50 unique up votes + 10 unique comments received)(45 unique upvotes given + 2 unique comments given)
So this would mean I have a score of: 60 x 47 = 2820
This obviously wouldn't be my actual scores, everyone would be a lot higher and it would be reasonably easy to grade scores just like the system we have at the moment but with a different formula.
As this formula is simpler than the system we currently have, it will be easier for people to understand how they can get there reputation up, as they understand how the system works they will be more likely to contribute to the Steem community even if it is for their own self gain
I'm not a statistical genius but I think this could work, as its balanced and not easily abused by whales