Giving smart contracts autonomy

Smart contracts are like complicated vending machines. They can't do anything on their own, they can't just dispense lots of soda randomly, or grow legs and arms to fight a competing vending machine in the area. But what if they could? What if they could create transactions on their own?

Autonomy Network

Autonomy Network is a system that allows smart contracts to queue Requests in the Registry contract, with a trigger (e.g. price of ABC goes above 500$). The system then, when the condition is met, calls the contract to do whatever it needs to do.

It works by a sort of Proof-of-Stake system. “Validators” (bots) can lock their AUTO (in the StakeManager contract) to get the exclusive right to execute Requests for a certain period of blocks.

In exchange, the smart contract has to pay enough ETH or AUTO to cover gas fees and a little extra to make it worthwhile for that validator.

Autonomy's PoS structure vs. “Free-for-all” incentives

Current ways of trying to achieve autonomous transactions is to incentivize bots to do it, for example, the compounding of an autocompounder.

This is like putting a small pile of money that is just about worthwhile for somebody to grab, so 100 bots will try and lunge for it before the other ones, and one random lucky bot will win the grand prize of... 5 cents after gas, probably, while everyone else fails.

This works, but is inefficient, prone to frontrunning and this free-for-all battle can make it not worthwhile for the bot, as there is a high chance of loss and a tiny chance of earning (and tiny earnings).

Frontrunners

Bots aren't instant, they have to pay for gas and their transactions will sit quietly in the memory pool. Generalized frontrunners can scan the memory pool and copy profitable transactions with a slightly higher gas price, and so the bots trying to grab the pile of money end up being outpaced by those frontrunners.

Inefficiency

For every lucky bot that succeeds, there are at least 5 more who fail. The model of a free-for-all means there can be only one.

The combination of all these factors causes bots to slowly become disincentivized as more bots join in, with extremely tiny profit margins and high chances of loss. This causes bot makers to just “give up”, turning off their losing bots. This also leads to centralization, as certain people have an “edge” over others, such as well-connected nodes or an agreement with a miner.

To contrast, Autonomy Network is more structured, with each validator bot having the exclusive rights to grab these piles of money at different times. This stops these cycles of bots bumping into each other as they wrestle for this tiny pile of money, saving a lot of time, gas and having better economic guarantees that your request will be executed (if you pay enough).

What can Autonomy be used for?

Right now, Autonomy Network hasn't launched most of its stuff yet, like the AUTO token, or its documentation. It's in beta currently.

The current main usecase of Autonomy is trading. Autonomy's request architecture allows for limit orders and other stuff available on a CEX, on AutoSwap.Trade.

It could potentially be used in the future to create blockchain life, or NFTs that can run transactions on their own and be autonomous, these things could be used in the Metaverse too. Who knows?

I think Autonomy's really cool and I'll definitely be buying the token when it launches. Not financial advice by the way.

🚀


tags down here as to not interrupt your reading: #autonomy #defi #dapp #dev #nft #pos #dex