Skip to content

Agent World 4

Introduction: Agent World 4 (AW-4) - part 4, "Many agents interacting"

Note

AW-4 has finished now! You won't be able to complete the guide or earn rewards.

Agent World 4 (AW-4) is the fourth part of our agent-themed incentivised testnet. It allows anyone with FET tokens to gain additional FET by re-using and adapting agents from AW-2/3 in order to continuously have a large population of agents live and engage in exchange.

Rewards

The following table shows the incentive rewards on offer.

Leaderboard Rank Test FET (on Agent World) FET (on Ethereum mainnet) Cap (first come first serve)
1st variable from trade 3,000 n/a
2nd variable from trade 2,000 n/a
3rd variable from trade 1,000 n/a
4th to 10th variable from trade 500 n/a
Activity Reward Test FET (on Agent World) FET (on Ethereum mainnet) Cap (first come first serve)
Keep one agent online for one day variable from trade 0.1 5000 rewarded activities per day
Per one transaction of an active agent variable from trade 0.1 5000 rewarded activities per day

Fetch.ai reserve the right to increase the award pool for AW-4 to reward additional agent developers, or to award specific spot rewards to particularly innovative creations.

How to qualify for incentive rewards?

Note

You must complete AW-1 before continuing!

You have to complete a few steps as listed below:

  1. Make sure you use the latest AEA framework version PyPI. To upgrade from an older version use pip install --upgrade aea[all].
  2. Fetch a seller AEA built during AW-2/3 from the AEA-registry and give it a suitable name:
    • Run aea fetch PUBLIC_ID --alias YOUR_AEA_NAME, where YOUR_AEA_NAME is replaced with a name of your choice. You can take any of your own public IDs or one from this list which is compatible with Agent World 2. We did not verify the individual projects and take no responsibility for them working. (You have the option to create your own following the AW-2 guide.)
    • After fetching it, enter the project: cd YOUR_AEA_NAME

    Note

    If you are using an AEA which has been developed for a version of the AEA framework lower than 0.9.0 then please follow these steps to upgrade it:

    1. Run aea upgrade from within your AEA project. If you have any errors during this step then please log them as a GitHub issue and reach out on Discord. Additional instructions can be found here.
    2. Update the configuration of the p2p connection by running aea config set --type dict vendor.fetchai.connections.p2p_libp2p.config '{"delegate_uri": null, "entry_peers": ["/dns4/acn.fetch.ai/tcp/9001/p2p/16Uiu2HAmVWnopQAqq4pniYLw44VRvYxBUoRHqjz1Hh2SoCyjbyRW"], "public_uri": null}' from within your AEA project.
    If you are unsuccessful in upgrading your AEA then we suggest starting with a fresh AEA as described in the AW-2 guide.

    • Then install its third-party dependencies: aea install
    • Then run aea build from within your AEA project to build its dependencies.
  3. Ensure you use the private key from AW1.
    • Generate a new key and add it to the AEA: aea generate-key fetchai and aea add-key fetchai
    • Manually replace the private key you just generated in fetchai_private_key.txt with the one from AW-1.
    • Check everything works by running aea get-address fetchai and confirming that the address matches the one you hold Agent World funds on. (This can be done by viewing the address on the block explorer or by typing aea get-wealth fetchai).
  4. Create a proof of representation for communication on the ACN:
    • Run aea generate-key fetchai fetchai_connection_private_key.txt and aea add-key fetchai fetchai_connection_private_key.txt --connection to add a key pair for your AEA to secure its communications with. Now associate this key pair with the one you use for transacting by executing aea issue-certificates.
  5. Configure or customize the AEA. The following requirements must be satisfied for the seller AEA (look at fetchai/simple_seller_aw2 for an example):
    • Agent must sell data offered by some public API. The data must be related to mobility or weather. The advertisement must include the correct service key (seller_service) and value (one of weather_data or mobility_data, depending on the data your agent is offering). The agent must have a classification with piece classification and value seller and a personality_data with piece genus and value data.
    • Agent must sell data following the fipa protocol (fetchai/fipa) and advertise it using oef search protocol (fetchai/oef_search) on the SOEF (advertisement must include correct classification and public id of agent)
    • Payment must be via a simple transfer on the incentivized testnet.
  6. Run agent and sell as much data to one of our buyer agents as possible.

    Note

    The competition is open until 28th February 2021 11:59pm, anywhere on Earth.

    • Fetch.ai's buyer agents occur randomly in one of the following locations and at random times throughout the competition.
      City Latitude Longitude
      Berlin 52.5200 13.4050
      London 51.5074 -0.1278
      San Francisco 37.7749 -122.4194
      Shanghai 31.2304 121.4737
      Rome 41.9028 12.4964
      Rio De Janeiro -22.9068 -43.1729
      Sydney -33.8688 151.2093
      Delhi 28.7041 77.1025
      Tokyo 35.6762 139.6503
      Mexico City 19.4326 -99.1332
      Cairo 30.0444 31.2357
      Kinshasa -4.4419 15.2663
    • The buyer agents only purchase from registered agents (see AW-1). The buyer agents only purchase from agents which follow the requirements in step 3.
    • The buyer agents update the leaderboard regularly. The leaderboard determines the winning developer (see table above).
  7. Optionally, provide feedback on AW-4 to improve the AEA framework and the Agent World incentivized testnet programme.
  8. Note

    You can maximize your chances of winning by running many agents (each agent must have its own private key and be registered for AW-1) and ensuring that each agent offers both data services.