Skip to content

Goal: A game similar to EloEverything, but including lotteries over experiences, so that it infers a *utility function*, not an elo ranking. Work in progress.

Notifications You must be signed in to change notification settings

VH-abc/Utility-everything

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

33 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

So far, only the core utility logic and backend GUI are implemented. The EloEverything-style ranking interface isn't implemented yet.
Run gui.py to play with the algorithm.

image

To use elo_optimizer.py from your own file:

  • Import it. It is a stateful module with globals:

    ITEMS: list[Item]  
    LOTTERIES: list[Lottery]  
    RESULTS: list[Result]  
    PARAMETERS: list[torch.Tensor]  
    MODE = "compound" # "compound" or "overwrite" (mode for adding results for pairs that have already been played)  
    
  • Interact with it as follows:

    • Use the Item() and Lottery() constructors to create items and lotteries
    • Use add_result() to add results (don't use the Result constuctor directly)
    • Items, Lotteries, and Results have delete() methods. The delete() method removes an object, its dependents, and its parameters from global lists.
    • Call optimization methods as needed to recompute the best fit utilities and temperatures. Currently only full_batch_optimize() exists.
    • Interact directly with the global lists for other operations

About

Goal: A game similar to EloEverything, but including lotteries over experiences, so that it infers a *utility function*, not an elo ranking. Work in progress.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages