예제 #1
0
def cli(experiment_json, run_name, buffer, seed, checkpoint_path):

    print('cli')
    print('------')
    print(experiment_json, run_name, buffer)
    print('')

    hyp = json_util.load(experiment_json)
    hyp['buffer'] = buffer

    if run_name:
        hyp['run-name'] = run_name

    print('params')
    print('------')
    print(hyp)
    print('')
    sleep(2)

    if checkpoint_path:
        print(f'checkpointing from {checkpoint_path}')
        print('')
        main(**init.init_checkpoint(checkpoint_path))

    else:
        print(f'starting so fresh, so clean')
        print('')
        main(**init.init_fresh(hyp))
예제 #2
0
def test_system():
    main(**init_fresh(hyp))
    run_path = './experiments/pendulum/test-system'
    print(f'deleting {run_path}\n')
    rmtree(str(run_path))
    return run_path
예제 #3
0
def test_system_battery():
    main(**init_fresh(batt_hyp))
    run_path = './experiments/battery/test-system'
    print(f'deleting {run_path}\n')
    rmtree(str(run_path))
    return run_path
예제 #4
0
    "n-episodes": 4,
    "test-every": 128,
    "n-tests": "all",
    "env": {
        "name": "battery",
        "initial_charge": 0.0,
        "episode_length": episode_length,
        "n_batteries": n_batteries,
        "dataset": dataset,
    },
    "network": {
        "name": "attention",
        "size_scale": 8
    },
    "seed": 42,
}

expt = init_fresh(hyp)

train_one_head_network(
    buffer.sample(4),
    expt["nets"]["actor"],
    [expt["nets"]["online-1"], expt["nets"]["online-2"]],
    [expt["nets"]["target-1"], expt["nets"]["target-2"]],
    expt["nets"]["alpha"],
    expt["writers"]["train"],
    expt["optimizers"],
    expt["counters"],
    hyp,
)