Spaces:
Running
Running
title: PositionAuctions | |
emoji: π | |
colorFrom: pink | |
colorTo: green | |
sdk: static | |
pinned: false | |
license: mit | |
short_description: Position Auctions https://arxiv.org/abs/2506.03309 | |
Position Auction Simulator | |
Auction Log Display: A new panel on the right side of the screen (#auctionLogContainer) will now display a running log of simulated auction events. | |
Bidder Simulation: Each "sponsored creative" now has an associated maxBid and a simulatedCTR is calculated for each potential creative-position pairing. | |
Automated Auction Cycle: | |
Every few seconds, an runAuctionCycle function is triggered. | |
For each unoccupied "placement position," it evaluates all available "sponsored creatives." | |
It calculates a "bid value" for each creative based on its maxBid, the simulatedCTR (higher if types match), and a small random factor. | |
The creative with the highest bid "wins" the auction for that position. | |
Visual Integration of Auctions: | |
When an automated auction places a creative, the visual changes (position marker color, size, creative removal) are the same as when you manually place one. This makes the central sculpture dynamically change based on these simulated auctions. | |
Logging: The auction log will show which creative won which position, its "bid," and its "simulated CTR." | |
User Interaction: You can still manually select creatives and place them. If you place a creative on a position, it effectively overrides or preempts the automated auction for that slot. | |
Refinements: | |
The attemptMatch function (for user clicks) and the new auction logic now use a shared function placeCreative to handle the actual placement and visual updates. | |
The scoring system remains tied to your direct interactions. The auction system is primarily for visual dynamism and to illustrate the concept of ongoing auctions. | |
I'll provide the updated HTML and JavaScript code. | |
Key changes to look for in the code: | |
HTML Structure: The main body is now a flex container to position the canvas and the new #auctionLogContainer side-by-side. | |
#auctionLogContainer CSS: Styles for the new log panel. | |
runAuctionCycle(): The core of the automated auction simulation. | |
addAuctionLogEntry(): Adds messages to the log display. | |
startAuctionSimulation() / stopAuctionSimulation(): Control the auction interval. | |
placeCreative(): Centralized function for placing creatives, used by both user interaction and the auction system. | |
Creative userData: Now includes maxBid. | |
Position userData: Now includes source ('user' or 'auction') and originalEmissiveHex. | |
Animation Loop: Unoccupied positions now have a more noticeable emissive pulse. | |
https://arxiv.org/abs/2506.03309 | |
Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference | |