Skip to content

ODPIPConfigsGenAlg

Samuel Gomes edited this page Jul 12, 2024 · 3 revisions

ODPIPConfigsGenAlg

This class is a child of ConfigsGenAlg. It contains a group formation procedure inspired by the ODP-IP algorithm (see this paper for more information about ODP-IP), an algorithm that benefits from the concurrent execution of the two algorithms ODP and IP. A difference of our implementation is that instead of executing ODP and IP in parallel, ODP is used to search a part of the group configuration space and inform a subsequent IP search. This means that this version is not applying the full potential of the algorithm and acts as a proof-of-concept for future versions.

This algorithm is exact, meaning it returns the optimal solution. Even though its implementation is optimized via a binary representation and a C++ solver, its execution times grow fast with the number of added players which means it must be applied with care.

Constructor and Members

Constructor

ODPIPConfigsGenAlg(
        player_model_bridge: PlayerModelBridge,        
        interactions_profile_template: InteractionsProfile,         
        quality_eval_alg: QualityEvalAlg,
        pers_est_alg: PersonalityEstAlg,
        preferred_num_players_per_group: int = None,
        min_num_players_per_group: int = 2,
        max_num_players_per_group: int = 5,
        joint_player_constraints: string = "",
        separated_player_constraints: string = ""): void

Members

Name: expected type Default value Description
__quality_eval_alg: QualityEvalAlg - The algorithm to be used for evaluating the quality of a group configuration.
__pref_est_alg: PreferencesEstAlg - The algorithm used to build players' preference estimates
__coalitions_profiles: decimal[][] - The InteractionsProfile of each group, stored in their flat representations.
__coalitions_avg_characteristics: decimal[][] - The PlayerCharacteristics of each group, stored in their flat representations.
__coalitions_values: decimal[] - The computed qualities of each group, updated before group formation in each organize call.

Functions

__compute_all_coalitions_values(): decimal[]

Description

Returns all group quality values, resorting to the QualityEvalAlg passed as a parameter.

Overrides organize() (see ConfigsGenAlg).

Clone this wiki locally