Skip to content
This repository has been archived by the owner on Oct 31, 2023. It is now read-only.

AttributeError: module 'minirts' has no attribute 'ContextOptions' #111

Open
alatyshe opened this issue Jul 13, 2018 · 10 comments
Open

AttributeError: module 'minirts' has no attribute 'ContextOptions' #111

alatyshe opened this issue Jul 13, 2018 · 10 comments

Comments

@alatyshe
Copy link

Get this error when try to run train_minirts.sh:

Warning: argument ValueMatcher/grad_clip_norm cannot be added. Skipped.
PID: 1952
========== Args ============
Loader: handicap_level=0,players="type=AI_NN,fs=50,args=backup/AI_SIMPLE|start/500|decay/0.99;type=AI_SIMPLE,fs=20",max_tick=30000,shuffle_player=False,num_frames_in_state=1,max_unit_cmd=1,seed=0,actor_only=False,model_no_spatial=False,save_replay_prefix=None,output_file=None,cmd_dumper_prefix=None,gpu=None,use_unit_action=False,disable_time_decay=False,use_prev_units=False,attach_complete_info=False,feature_type="ORIGINAL"
ContextArgs: num_games=1024,batchsize=128,game_multi=None,T=20,eval=False,wait_per_group=False,num_collectors=0,verbose_comm=False,verbose_collector=False,mcts_threads=0,mcts_rollout_per_thread=1,mcts_verbose=False,mcts_save_tree_filename="",mcts_verbose_time=False,mcts_use_prior=False,mcts_pseudo_games=0,mcts_pick_method="most_visited"
MoreLabels: additional_labels="id,last_terminal"
ActorCritic:
PolicyGradient: entropy_ratio=0.01,grad_clip_norm=None,min_prob=1e-06,ratio_clamp=10,policy_action_nodes="pi,a"
DiscountedReward: discount=0.99
ValueMatcher: grad_clip_norm=None,value_node="V"
Sampler: sample_policy="epsilon-greedy",greedy=False,epsilon=0.0,sample_nodes="pi,a"
ModelLoader: load=None,onload=None,omit_keys=None,arch="ccpccp;-,64,64,64,-"
ModelInterface: opt_method="adam",lr=0.001,adam_eps=0.001
Trainer: freq_update=1
Evaluator: keys_in_reply="V"
Stats: trainer_stats="winrate"
ModelSaver: record_dir="./record",save_prefix="save",save_dir="./",latest_symlink="latest"
SingleProcessRun: num_minibatch=5000,num_episode=10000,tqdm=True
========== End of Args ============
Traceback (most recent call last):
  File "train.py", line 21, in <module>
    GC = env["game"].initialize()
  File "/home/ubuntu/arvi_dima/ELF/rts/engine/common_loader.py", line 144, in initialize
    co, GC, params = self._init_gc()
  File "/home/ubuntu/arvi_dima/ELF/rts/engine/common_loader.py", line 88, in _init_gc
    co = self.module.ContextOptions()
AttributeError: module 'minirts' has no attribute 'ContextOptions'

Can somebody help please with it?

@Lausichen
Copy link

Download miniconda and install.

wget https://repo.continuum.io/miniconda/Miniconda3-latest-Linux-x86_64.sh -O $HOME/miniconda.sh
/bin/bash $HOME/miniconda.sh -b
$HOME/miniconda3/bin/conda update -y --all python=3

Add the following to ~/.bash_profile (if you haven't already) and source it:

export PATH=$HOME/miniconda3/bin:$PATH

Create a new conda environment and install the necessary packages:

conda create -n elf python=3
source activate elf

If you use cuda 8.0, try conda install pytorch cuda80 -c soumith

conda install pytorch -c soumith

pip install --upgrade pip
pip install msgpack_numpy
conda install tqdm
conda install libgcc

Install cmake >= 3.8 and gcc >= 4.9

This is platform-dependent.

If you use AWS, you can just skip this.

Install tbb

For ubuntu

sudo apt-get install libtbb-dev

For Fedora / CentOS

sudo yum install libtbb-devel

Clone and build the repository:

cd ~
git clone https://github.com/facebookresearch/ELF
cd ELF/rts/
mkdir build && cd build
cmake .. -DPYTHON_EXECUTABLE=$HOME/miniconda3/bin/python -DGAME_DIR=../game_MC
make

Make sure that python3 is the alias of python

alias python3=$HOME/miniconda3/bin/python

Train the model

sh ./train_minirts.sh --gpu 0

At the front was the tutorial I followed, and at the training step, when I ran sh ./train_minirts.sh --gpu 0, it came out
Traceback (most recent call last):
File "train.py", line 19, in
env, all_args = load_env(os.environ, trainer=trainer, runner=runner)
File "/home/liu/ELF/rlpytorch/model_loader.py", line 109, in load_env
game = load_module(envs["game"]).Loader()
File "/home/liu/ELF/rlpytorch/model_loader.py", line 18, in load_module
module = import(os.path.basename(mod))
File "./rts/game_MC/game.py", line 7, in
import minirts
ModuleNotFoundError: No module named 'minirts'.
Have you met this problem or do you know how to solve it?

@alatyshe
Copy link
Author

Lausichen, your solution here:
#1

@Lausichen
Copy link

thanks

@fantianwen
Copy link

@alatyshe hey!alatyshe,have you solved this problem? I come up with this same problem. really confused.

@alatyshe
Copy link
Author

nope, i stack on it.

@nizqleo
Copy link

nizqleo commented Dec 22, 2018

same problem bro @alatyshe , have you find any solutions? It seems that I'm not building the “minirst” module right, all I got is a folder with some cmake stuff in it.

@Gaoee
Copy link

Gaoee commented Mar 1, 2019

Maybe you used different python version.
Try use the same version of python in these two comment:
conda create -n elf python=3
cmake .. -DPYTHON_EXECUTABLE=$HOME/miniconda3/bin/python

@huzhanming16
Copy link

@alatyshe hey, have you solved this problem?I dont know how to do

@fantianwen
Copy link

@huzhanming16 Why not trying Leela.
It seems fb has quit this updating. Still, you can see many "TODO" in the code.

@huzhanming16
Copy link

@fantianwen so no one solved it?

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

6 participants