def main(cls, parse_args): args, device = cls.initialize(parse_args()) ########################################## # update args for pre-trained primitives # **************************************** ckpts = cls.load_checkpoints(args.primitives, args, ckpt_type='primitive') args = cls.update_dirs_primitive(args, [c['args'].expname for c in ckpts]) args.num_primitives = len(ckpts) ########################################## logger = MultiBaseLogger(args=args) task_progression = cls.create_task_progression(logger, args) organism = cls.create_organism(device, task_progression, args) ########################################## # load weights for pre-trained primitives # **************************************** organism = cls.load_primitive_weights(organism, ckpts, logger.printf) ########################################## rl_alg = rlalg_switch(args.alg_name)(device=device, args=args) experiment = Experiment(learner=CentralizedLearner( organism=organism, rl_alg=rl_alg, logger=logger, device=device, args=args, ), task_progression=task_progression, logger=logger, args=args) experiment.main_loop(max_epochs=args.max_epochs)
def main(cls, parse_args): args, device = cls.initialize(parse_args()) logger = MultiBaseLogger(args=args) task_progression = cls.create_task_progression(logger, args) organism = cls.create_organism(device, task_progression, args) rl_alg = rlalg_switch(args.alg_name)(device=device, args=args) experiment_builder = cls.experiment_switch(args.env_name[0]) experiment = experiment_builder(society=organism, task_progression=task_progression, rl_alg=rl_alg, logger=logger, device=device, args=args) experiment.main_loop(max_epochs=args.max_epochs)
def main(cls, parse_args): args, device = cls.initialize(parse_args()) logger = MultiBaseLogger(args=args) task_progression = cls.create_task_progression(logger, args) organism = cls.create_organism(device, task_progression, args) rl_alg = rlalg_switch(args.alg_name)(device=device, args=args) experiment = Experiment(learner=CentralizedLearner( organism=organism, rl_alg=rl_alg, logger=logger, device=device, args=args, ), task_progression=task_progression, logger=logger, args=args) experiment.main_loop(max_epochs=args.max_epochs)
def main(cls, parse_args): args, device = cls.initialize(parse_args()) # ######################################## # update args for pre-trained parent # **************************************** parent_ckpts = cls.load_checkpoints(args.ckpts, args, ckpt_type='parent') args = cls.update_dirs_parent( args, [c['args'].expname for c in parent_ckpts]) args = cls.transfer_args(args, parent_ckpts) # **************************************** # update args for pre-trained primitives # **************************************** primitive_ckpts = cls.load_checkpoints(args.primitives, args, ckpt_type='primitive') args = cls.update_dirs_primitive( args, [c['args'].expname for c in primitive_ckpts]) args.num_primitives = len(primitive_ckpts) ########################################## logger = MultiBaseLogger(args=args) task_progression = cls.create_task_progression(logger, args) organism = cls.create_organism(device, task_progression, args) ########################################## # load weights for pre-trained primitives # **************************************** organism = cls.load_primitive_weights(organism, primitive_ckpts, logger.printf) # **************************************** # load weights for parents # **************************************** organism = cls.load_organism_weights(organism, parent_ckpts, logger.printf) ########################################## rl_alg = rlalg_switch(args.alg_name)(device=device, args=args) experiment_builder = cls.experiment_switch(args.env_name[0]) experiment = experiment_builder(society=organism, task_progression=task_progression, rl_alg=rl_alg, logger=logger, device=device, args=args) experiment.main_loop(max_epochs=args.max_epochs)