# Reputation Ranking System

**Octan's Reputation Ranking System (RRS)** is a powerful engine that uses advanced mathematical ranking algorithms to accurately calculate the reputation scores of users and other entities within the Web3 ecosystem. RRS utilizes well-established PageRank algorithms in combination with several pairwise ranking algorithms (e.g. HodgeRank, personalized and online learning), modified and improved by Octan Labs to fit the on-chain data analytics context.

It draws inspiration from Google's PageRank and is built on the extensive research and publications (since 2019) of Paven Do, founder of Octan Labs.

See more [here](https://www.igi-global.com/article/pagerank-and-hodgerank-on-ethereum-transactions/315737?utm_campaign=shareaholic\&utm_medium=linkedin\&utm_source=socialnetwork).

## How the Reputation Ranking System works

The RRS captures user activities and behaviors via on-chain records: transactions, contract interactions, transactional volume, and gas spent; providing a universal, comparative, and quantitative measurement of the reputation of accounts within communities and the entire space.

By analyzing graphs of transactions recorded on chains, the RRS employs sophisticated ranking algorithms to calculate the reputation scores of accounts, making it a highly valuable metric for measuring and tracking social insights in the dynamic and rapidly evolving Web3 ecosystems.

From the transaction graph, we induce:

* Total Degree: number of oriented (directed) connections of an account with others. Total degree = in\_degree + out\_degree
* Total In\_degree: number of IN-connections of an account (IN-transfers from others to the account)
* Total Out\_degree: number of OUT-connections of an account (OUT-transfers from the account to others)

**E.g:** in Fig.1, nodes (accounts) A, B, C, D, E, F have:

<figure><img src="https://lh3.googleusercontent.com/z1UAbFViTneM9XFJRXjegaqwDpInMwJPhhgIgyMqK6dut1XVYmHW3JLaXOKAELkHs9MtR8f_-MUnMkUbqLCByS205rIwtuaq1MV4AIuI4ruYBxKHt97zQ6zVTL1nlrRjrBArOgtvf38Pqaxs5gY0cng" alt=""><figcaption><p>Fig.1: A simple visualization for PageRank</p></figcaption></figure>

<table><thead><tr><th width="132"> </th><th>A</th><th>B</th><th>C</th><th>D</th><th>E</th><th>F</th></tr></thead><tbody><tr><td>Degree</td><td>1</td><td>8</td><td>2</td><td>3</td><td>7</td><td>5</td></tr><tr><td>Indegree</td><td>1</td><td>7</td><td>1</td><td>1</td><td>4</td><td>3</td></tr><tr><td>Outdegree</td><td>0</td><td>1</td><td>1</td><td>2</td><td>3</td><td>2</td></tr></tbody></table>

*(many transactions with the same direction add up to 1 degree)*

## Octan Ranking Intuitions

* The reputation score of a public address (or account) is the probability of a random unbiased account interacting with that address at any given moment in an infinite random interaction, or simply, measures the importance of the account within the considered Blockchain / Web3 Ecosystem.
* More IN-transfers or Indegree (receiving value), then higher reputation score
* IN-transfers from a high reputation account result in greater reputation score than receiving from a low reputation account
* OUT-transfers or Outdegree (sending value) result in a lower reputation score.
* Considering age-weight, value weight: latest transactions are more meaningful than the old ones, greater priced value transactions are better.
* Preventing Sybil attack, manipulation, sinkage effect

In Fig.1, node B receives the most in-transfers, thus having the highest score. Nodes A and C both receive one in-transfer but C has a higher score because its in-transfer is from B, the highest-scored node. The smallest nodes mean the lowest scores because they have NO in-transfer (or indegree).

##


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.octan.network/octan-docs-en/overview/octan-reputation-solutions/reputation-ranking-system.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
