{"action":"opened","issue":{"url":"https://api.github.com/repos/gregmedlock/Medusa/issues/25","repository_url":"https://api.github.com/repos/gregmedlock/Medusa","labels_url":"https://api.github.com/repos/gregmedlock/Medusa/issues/25/labels{/name}","comments_url":"https://api.github.com/repos/gregmedlock/Medusa/issues/25/comments","events_url":"https://api.github.com/repos/gregmedlock/Medusa/issues/25/events","html_url":"https://github.com/gregmedlock/Medusa/issues/25","id":391143356,"node_id":"MDU6SXNzdWUzOTExNDMzNTY=","number":25,"title":"Implement randomization strategies for iterative gapfilling","user":{"login":"gregmedlock","id":6519833,"node_id":"MDQ6VXNlcjY1MTk4MzM=","avatar_url":"https://avatars1.githubusercontent.com/u/6519833?v=4","gravatar_id":"","url":"https://api.github.com/users/gregmedlock","html_url":"https://github.com/gregmedlock","followers_url":"https://api.github.com/users/gregmedlock/followers","following_url":"https://api.github.com/users/gregmedlock/following{/other_user}","gists_url":"https://api.github.com/users/gregmedlock/gists{/gist_id}","starred_url":"https://api.github.com/users/gregmedlock/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gregmedlock/subscriptions","organizations_url":"https://api.github.com/users/gregmedlock/orgs","repos_url":"https://api.github.com/users/gregmedlock/repos","events_url":"https://api.github.com/users/gregmedlock/events{/privacy}","received_events_url":"https://api.github.com/users/gregmedlock/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2018-12-14T14:57:37Z","updated_at":"2018-12-14T14:57:37Z","closed_at":null,"author_association":"OWNER","body":"Users should be able to tune the bias/variance of an ensemble during iterative gapfilling. For example, the current implementation exhaustively gapfills on all positive growth media conditions. We suspect that this leads to greater convergence in model structure than if only a fraction of media condition were used for each member (e.g. a random 70% of conditions).\r\n\r\nTo solve this issue, we should add an argument for selecting a randomized fraction for each ensemble member (e.g. random_fraction = True will lead the the stated behavior above), and an argument to specify the fraction of conditions used (e.g. fraction_conditions = 1.0 to include all conditions). The default behavior will be the behavior of the existing implementation, where all media conditions are used for each member. If random_fraction = False, fraction_conditions must be equal to 1.0. In order to gapfill to fewer conditions for the entire ensemble, users should just pass a smaller list of conditions.\r\n\r\nAlongside this enhancement, there should be an additional argument to return a dictionary log that indicates the gapfill history for each member of the ensemble. The dictionary could have the structure {member.id:{reaction.id:[ordered list of medium dictionaries]}}, where reaction.id is for the reaction representing the former objective that was fixed as a constraint. This behavior might need to be altered in the future to include more complex fixed constraints."}}
{"actor":{"display_login":"gregmedlock"}}