Urn-Learning Urns

Types

urn_t
urncollection_t
struct Urn
unsigned int Urn.types
double* Urn.counts
double* Urn.proportions
struct UrnCollection
unsigned int UrnCollection.num_urns
urn_t** UrnCollection.urns

Functions

Urn

urn_t * Urn_create(unsigned int types, double *initial_counts)
void Urn_destroy(urn_t * urn)
void Urn_update(urn_t *urn, double *count_updates)
unsigned int Urn_select(urn_t *urn, double random_draw)
unsigned int Urn_randomSelect(urn_t *urn, rk_state *rand_state_ptr)
void Urn_display(urn_t * urn, char *prefix, FILE *outfile)
urn_t * Urn_clone(urn_t *urn)
void Urn_copy(urn_t *source, urn_t *target)

UrnCollection

urncollection_t * UrnCollection_create(unsigned int num_urns, unsigned int * types, double **initial_counts)
void UrnCollection_destroy(urncollection_t *urnc)
urncollection_t * UrnCollection_clone(urncollection_t *urnc)
void UrnCollection_copy(urncollection_t *source, urncollection_t *target)