os.environ['OMP_NUM_THREADS'] = '1'

    args = parser.parse_args()
    env = gym.make("FetchPickAndPlace-v1")
    shared_model = Actor()
    if args.use_cuda:
        shared_model.cuda()
    torch.cuda.manual_seed_all(12)

    shared_model.share_memory()

    if os.path.isfile(args.save_path1):
        print('Loading A3C parametets ...')
        shared_model.load_state_dict(torch.load(args.save_path1))

    optimizer = SharedAdam(shared_model.parameters(), lr=args.lr)
    optimizer.share_memory()

    print("No of available cores : {}".format(mp.cpu_count()))

    processes = []

    counter = mp.Value('i', 0)
    lock = mp.Lock()
    print(counter)
    p = mp.Process(target=test,
                   args=(args.num_processes, args, shared_model, counter))

    p.start()
    processes.append(p)
示例#2
0
                    type=float,
                    default=0.9,
                    help='discount factor for rewards (default: 0.9)')
parser.add_argument('--tau',
                    type=float,
                    default=1.00,
                    help='parameter for GAE (default: 1.00)')
args = parser.parse_args()

model = Actor()

if args.use_cuda:
    model.cuda()

torch.cuda.manual_seed_all(25)
optimizer = optim.Adam(model.parameters(), lr=0.0001)

if os.path.isfile(args.save_path1):
    print('Loading A3C parametets ...')
    model.load_state_dict(torch.load(args.save_path1))

for p in model.fc1.parameters():
    p.requires_grad = False
for p in model.fc2.parameters():
    p.requires_grad = False

FloatTensor = torch.cuda.FloatTensor if args.use_cuda else torch.FloatTensor

model.eval()

max_eps = 200000