|
uatlib
|
Defines the simulation function and related types. More...
#include <uat/agent.hpp>#include <deque>#include <optional>#include <random>#include <vector>#include <cool/compose.hpp>
Go to the source code of this file.
Classes | |
| struct | uat::trade_info_t< R > |
| Type to represent the information in a trade transaction. More... | |
| struct | uat::permit_private_status::on_sale |
| Represents the private status of a permit that is available for trading. More... | |
| struct | uat::permit_private_status::in_use |
| Represents the private status of a permit that is not available for trading. More... | |
| struct | uat::permit_private_status::out_of_limits |
| Represents the private status of a permit that is out of limits (past and future). More... | |
| struct | uat::permit_private_status_t |
| Represents the private status of a permit. More... | |
| struct | uat::agent_private_status::inactive |
| Represents the private status of an agent that is inactive in the simulation. More... | |
| struct | uat::agent_private_status::active |
| Represents the private status of an agent that is active in the simulation. More... | |
| class | uat::agents_private_status_t |
| Private status of the collection of agents in the simulation. More... | |
| struct | uat::simulation_opts_t< R > |
| Options to configure the simulation. More... | |
Typedefs | |
| using | uat::factory_t = std::function< std::vector< any_agent >(uint_t, int)> |
| A function type that generates agents for each iteration. | |
| using | uat::agent_private_status_t = std::variant< agent_private_status::inactive, agent_private_status::active > |
| Variant that represents the private status of an agent. | |
| using | uat::permit_private_status_fn = type_safe::function_ref< permit_private_status_t(region_view, uint_t)> |
| Function reference that allows the simulation to access the private status of an agent. | |
| template<region_compatible R> | |
| using | uat::trade_callback_t = std::function< void(trade_info_t< R >)> |
| Callback type that receives information about a trade transaction. | |
| using | uat::simulation_callback_t = std::function< void(uint_t, const agents_private_status_t &, permit_private_status_fn)> |
| Callback type that receives information about the status of the simulation. | |
| using | uat::stop_criterion_t = std::variant< stop_criterion::no_agents_t, stop_criterion::time_threshold_t > |
| Variant that represents the possible stop criteria for the simulation. | |
Functions | |
| template<region_compatible R> | |
| auto | uat::simulate (const simulation_opts_t< R > &opts={}) -> void |
Variables | |
| constexpr auto | uat::no_owner = std::numeric_limits<uint_t>::max() |
| Unique value to represent the absence of an owner. | |
Defines the simulation function and related types.
| auto uat::simulate | ( | const simulation_opts_t< R > & | opts = {} | ) | -> void |
A simulation of a first-price sealed-bid auction.
| factory | A function that generates agents for each iteration. |
| seed | A random seed. |
| opts | Options to configure the simulation. |