Releases: donghun2018/adclick-simulator
Releases · donghun2018/adclick-simulator
Release list
v0.2.1 -- Bugfix: revenue_per_conversion in policy_info xlsx output
Bugfix
- Revenue_per_conversion in policy_info xlsx output was often smaller than what it is actually.
- Info given to policies was also affected. This may have affected policies to perform suboptimally.
- Cause: mean(revenues) is not the same as sum(revenues)/sum(conversions) when revenues contains 0.0 when some conversions are zero.
- Now the correct information is computed, provided to policies, and printed to xlsx.
- Thanks to pbchen for bug reporting
Ad-click simulator v0.2.0 released
v0.2.0 is here.
This update introduces significant changes in the simulator. Some policies may experience incompatibilities. Please read on.
New feature
Finer bidding space
- Now bids can take values from 0.0 to 10.0 in increments of 0.1
- Bid values are now in float instead of integers. This may lead to some incompatibility issues in policies.
Multiple ad slot placement
- More than one ad slots can be placed. So non-highest-bidders now have chance to win clicks.
- The highest bidder gets the top slot, which is most visible and has the highest click probability
- Bidders with lower bid will get lower slots than bidders with higher bid.
- Tiebreaking takes place randomly
- If all bidders bid the same, their ad placement order is randomly assigned.
- Lower bidders will not be included in the tiebreaking.
Example: Bidders = [A,B,C,D,E,F] with bids = [3,4,5,5,4,3], with 3 ad slots.
- Bidders C, D has highest. Their ad may be placed on first or second slot. Each click will cost 4.
- Bidders B, E has next highest bid, but there is only one slot left. Either B or E may be placed on the third slot. Each click will cost 3.
New information available: winning_bid_avg
- this is average of actual bids from the bidders who got the clicks
- this is different from winning_bid, which is the highest bid.
- discrepancy is due to multiple ad slot placement, as bidders can get clicks without absolutely winning the auction with the highest winning bid.
- reported per iteration, and provided to all policies.
- also printed out in policy output xlsx files.
- this is different from winning_bid, which is the highest bid.
add number-of-impressions + simulator parameters are tuned
New feature
number of impressions
- The policy output now contains another column named num_impressions. It contains the number of impressions from which the clicks are generated.
- Actually, these values are approximates to keep simulator runtime low. Exact tracking for impression counts is a future task (needs rework in simulator loop structures).
time spent by simulator and policies
- A new output file, output_time_spent_in_seconds.xlsx , contains cumulative time spent for simulator and each policies.
- Each row corresponds to each iteration.
Bugfixes
- Fixed unnecessary repeated line prints in some of policy output xlsx files, which may happen with last attribute tuple.
- Simulators run up to number of iterations defined by max_t parameter given in the init xlsx file. This max_t value is the same as the max_t provided to policies.
Simulator parameters tuned
- The auction generating parameters are modified to result in much more frequent auctions, clicks, and revenues to make statistical learning faster.
- The variance of revenue random variable is reduced to make statistical learning easier.
- The init file used for the first run is included (auction_ini_01.xlsx updated).