@ -98,6 +98,27 @@ The goal of this whitepaper is to present such an entity --- Agorata.
\section{Decision-making algorithm}
In this chapter, the strategy for making decisions will be described.
\textbf{Deal representation}
A deal proposal is made by the user in the form of a smart contract. A smart contract is considered as an entity with which other entities (users, smart contracts) can interact via messages\footnote{The message concept used here is from The Open Network (TON). A message can include tokens, commands, information, code.}.
For a state of the contract we can determine the messages that can be sent to the contract and for each of them --- the response messages and the next state. The deal is represented as a tree with states as leafs and actions (messages) as edges. Depending on the actions, the deal has a total outcome --- the number of tokens that were gained/spent by the agent.
\textbf{Agent parameters}
\begin{enumerate}
\item$T_{0}$ is the maximum deal time --- i.e., the horizon after which the benefits of the deal are not considered
\item$\tau$ is the charachteristic time of discount --- e.g., $\exp({\frac{1\,year}{\tau}})-1$ is the minimal yearly rate for a loan
\end{enumerate}
Given these parameters, the value function $V((x_{i}), (t_{i}))$ can be determined. It takes the sequence of values $(x_{i}, t_{i})$, where $x_{i}$ are the incoming/outcoming tokens from the agent.
\textbf{Deal evaluation}
The agent considers the worst case of the deal from the perspective of game theory: the best (from the perspective of the value function) actions of the agent and the ``worst'' actions of the counteragents.
This sequence of events is the run through the value function in order to make a decision.