mirror of
https://github.com/wassname/ray.git
synced 2026-07-15 11:25:40 +08:00
* Exploration API (+EpsilonGreedy sub-class). * Exploration API (+EpsilonGreedy sub-class). * Cleanup/LINT. * Add `deterministic` to generic Trainer config (NOTE: this is still ignored by most Agents). * Add `error` option to deprecation_warning(). * WIP. * Bug fix: Get exploration-info for tf framework. Bug fix: Properly deprecate some DQN config keys. * WIP. * LINT. * WIP. * Split PerWorkerEpsilonGreedy out of EpsilonGreedy. Docstrings. * Fix bug in sampler.py in case Policy has self.exploration = None * Update rllib/agents/dqn/dqn.py Co-Authored-By: Eric Liang <ekhliang@gmail.com> * WIP. * Update rllib/agents/trainer.py Co-Authored-By: Eric Liang <ekhliang@gmail.com> * WIP. * Change requests. * LINT * In tune/utils/util.py::deep_update() Only keep deep_updat'ing if both original and value are dicts. If value is not a dict, set * Completely obsolete syn_replay_optimizer.py's parameters schedule_max_timesteps AND beta_annealing_fraction (replaced with prioritized_replay_beta_annealing_timesteps). * Update rllib/evaluation/worker_set.py Co-Authored-By: Eric Liang <ekhliang@gmail.com> * Review fixes. * Fix default value for DQN's exploration spec. * LINT * Fix recursion bug (wrong parent c'tor). * Do not pass timestep to get_exploration_info. * Update tf_policy.py * Fix some remaining issues with test cases and remove more deprecated DQN/APEX exploration configs. * Bug fix tf-action-dist * DDPG incompatibility bug fix with new DQN exploration handling (which is imported by DDPG). * Switch off exploration when getting action probs from off-policy-estimator's policy. * LINT * Fix test_checkpoint_restore.py. * Deprecate all SAC exploration (unused) configs. * Properly use `model.last_output()` everywhere. Instead of `model._last_output`. * WIP. * Take out set_epsilon from multi-agent-env test (not needed, decays anyway). * WIP. * Trigger re-test (flaky checkpoint-restore test). * WIP. * WIP. * Add test case for deterministic action sampling in PPO. * bug fix. * Added deterministic test cases for different Agents. * Fix problem with TupleActions in dynamic-tf-policy. * Separate supported_spaces tests so they can be run separately for easier debugging. * LINT. * Fix autoregressive_action_dist.py test case. * Re-test. * Fix. * Remove duplicate py_test rule from bazel. * LINT. * WIP. * WIP. * SAC fix. * SAC fix. * WIP. * WIP. * WIP. * FIX 2 examples tests. * WIP. * WIP. * WIP. * WIP. * WIP. * Fix. * LINT. * Renamed test file. * WIP. * Add unittest.main. * Make action_dist_class mandatory. * fix * FIX. * WIP. * WIP. * Fix. * Fix. * Fix explorations test case (contextlib cannot find its own nullcontext??). * Force torch to be installed for QMIX. * LINT. * Fix determine_tests_to_run.py. * Fix determine_tests_to_run.py. * WIP * Add Random exploration component to tests (fixed issue with "static-graph randomness" via py_function). * Add Random exploration component to tests (fixed issue with "static-graph randomness" via py_function). * Rename some stuff. * Rename some stuff. * WIP. * WIP. * Fix SAC. * Fix SAC. * Fix strange tf-error in ray core tests. * Fix strange ray-core tf-error in test_memory_scheduling test case. * Fix test_io.py. * LINT. * Update SAC yaml files' config. Co-authored-by: Eric Liang <ekhliang@gmail.com>
93 lines
3.4 KiB
Bash
Executable File
93 lines
3.4 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
ROOT_DIR=$(cd "$(dirname "${BASH_SOURCE:-$0}")"; pwd)
|
|
|
|
echo "PYTHON is $PYTHON"
|
|
|
|
# Make sure all important package versions are static (via env variables
|
|
# or assign default values to them).
|
|
tf_version="$TF_VERSION"
|
|
if [[ $tf_version == "" ]]; then tf_version="2.0.0b1"; fi
|
|
echo "tf_version is $tf_version"
|
|
tfp_version="$TFP_VERSION"
|
|
if [[ tfp_version == "" ]]; then tfp_version="0.8"; fi
|
|
echo "tfp_version is $tfp_version"
|
|
torch_version="$TORCH_VERSION"
|
|
if [[ torch_version == "" ]]; then torch_version="1.4"; fi
|
|
echo "torch_version is $torch_version"
|
|
|
|
platform="unknown"
|
|
unamestr="$(uname)"
|
|
if [[ "$unamestr" == "Linux" ]]; then
|
|
echo "Platform is linux."
|
|
platform="linux"
|
|
elif [[ "$unamestr" == "Darwin" ]]; then
|
|
echo "Platform is macosx."
|
|
platform="macosx"
|
|
else
|
|
echo "Unrecognized platform."
|
|
exit 1
|
|
fi
|
|
|
|
# Upgrade pip and other packages to avoid incompatibility ERRORS.
|
|
pip install --upgrade pip # setuptools cloudpickle urllib3
|
|
|
|
if [[ "$PYTHON" == "3.6" ]] && [[ "$platform" == "linux" ]]; then
|
|
sudo apt-get update
|
|
sudo apt-get install -y python-dev python-numpy build-essential curl unzip tmux gdb
|
|
# Install miniconda.
|
|
wget -q https://repo.continuum.io/miniconda/Miniconda3-4.5.4-Linux-x86_64.sh -O miniconda.sh -nv
|
|
bash miniconda.sh -b -p $HOME/miniconda
|
|
export PATH="$HOME/miniconda/bin:$PATH"
|
|
pip install -q scipy tensorflow==$tf_version \
|
|
cython==0.29.0 gym \
|
|
opencv-python-headless pyyaml pandas==0.24.2 requests \
|
|
feather-format lxml openpyxl xlrd py-spy pytest-timeout networkx tabulate aiohttp \
|
|
uvicorn dataclasses pygments werkzeug kubernetes flask grpcio pytest-sugar pytest-rerunfailures pytest-asyncio \
|
|
blist scikit-learn
|
|
elif [[ "$PYTHON" == "3.6" ]] && [[ "$platform" == "macosx" ]]; then
|
|
# Install miniconda.
|
|
wget -q https://repo.continuum.io/miniconda/Miniconda3-4.5.4-MacOSX-x86_64.sh -O miniconda.sh -nv
|
|
bash miniconda.sh -b -p $HOME/miniconda
|
|
export PATH="$HOME/miniconda/bin:$PATH"
|
|
pip install -q scipy tensorflow==$tf_version \
|
|
cython==0.29.0 gym \
|
|
opencv-python-headless pyyaml pandas==0.24.2 requests \
|
|
feather-format lxml openpyxl xlrd py-spy pytest-timeout networkx tabulate aiohttp \
|
|
uvicorn dataclasses pygments werkzeug kubernetes flask grpcio pytest-sugar pytest-rerunfailures pytest-asyncio \
|
|
blist scikit-learn
|
|
elif [[ "$LINT" == "1" ]]; then
|
|
sudo apt-get update
|
|
sudo apt-get install -y build-essential curl unzip
|
|
# Install miniconda.
|
|
wget -q https://repo.continuum.io/miniconda/Miniconda3-4.5.4-Linux-x86_64.sh -O miniconda.sh -nv
|
|
bash miniconda.sh -b -p $HOME/miniconda
|
|
export PATH="$HOME/miniconda/bin:$PATH"
|
|
# Install Python linting tools.
|
|
pip install -q flake8==3.7.7 flake8-comprehensions flake8-quotes==2.0.0
|
|
elif [[ "$LINUX_WHEELS" == "1" ]]; then
|
|
sudo apt-get install docker
|
|
sudo usermod -a -G docker travis
|
|
elif [[ "$MAC_WHEELS" == "1" ]]; then
|
|
:
|
|
else
|
|
echo "Unrecognized environment."
|
|
exit 1
|
|
fi
|
|
|
|
# Additional RLlib dependencies.
|
|
if [[ "$RLLIB_TESTING" == "1" ]]; then
|
|
pip install -q tensorflow-probability==$tfp_version gast==0.2.2 \
|
|
torch==$torch_version torchvision \
|
|
gym[atari] atari_py smart_open lz4
|
|
fi
|
|
|
|
if [[ "$PYTHON" == "3.6" ]] || [[ "$MAC_WHEELS" == "1" ]]; then
|
|
# Install the latest version of Node.js in order to build the dashboard.
|
|
source $HOME/.nvm/nvm.sh
|
|
nvm install node
|
|
fi
|
|
|
|
pip install -q psutil setproctitle \
|
|
--target="$ROOT_DIR/../../python/ray/thirdparty_files"
|