Skip to content

Commit f10f13d

Browse files
author
Deric Pang
authored
Revert "Release v0.5 (#1202)" (#1221)
This reverts commit 983c402.
1 parent 983c402 commit f10f13d

File tree

845 files changed

+9230
-13750
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

845 files changed

+9230
-13750
lines changed

.gitignore

100644100755
Lines changed: 21 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -1,30 +1,29 @@
1-
/UnitySDK/[Ll]ibrary/
2-
/UnitySDK/[Tt]emp/
3-
/UnitySDK/[Oo]bj/
4-
/UnitySDK/[Bb]uild/
5-
/UnitySDK/[Bb]uilds/
6-
/UnitySDK/[Pp]ackages/
7-
/UnitySDK/[Uu]nity[Pp]ackage[Mm]anager/
8-
/UnitySDK/Assets/AssetStoreTools*
9-
/UnitySDK/Assets/Plugins*
10-
/UnitySDK/Assets/Gizmos*
1+
/unity-environment/[Ll]ibrary/
2+
/unity-environment/[Tt]emp/
3+
/unity-environment/[Oo]bj/
4+
/unity-environment/[Bb]uild/
5+
/unity-environment/[Bb]uilds/
6+
/unity-environment/[Pp]ackages/
7+
/unity-environment/[Uu]nity[Pp]ackage[Mm]anager/
8+
/unity-environment/Assets/AssetStoreTools*
9+
/unity-environment/Assets/Plugins*
10+
/unity-environment/Assets/Gizmos*
1111

1212
# Tensorflow Model Info
1313
/models
1414
/summaries
15-
16-
# Training environments
17-
/envs
15+
python/models
16+
python/summaries
1817

1918
# Environemnt logfile
20-
*UnitySDK.log
19+
*unity-environment.log
2120

2221
# Visual Studio 2015 cache directory
23-
/UnitySDK/.vs/
22+
/unity-environment/.vs/
2423

2524
# Autogenerated VS/MD/Consulo solution and project files
26-
/UnitySDKExportedObj/
27-
/UnitySDK.consulo/
25+
/unity-environmentExportedObj/
26+
/unity-environment.consulo/
2827
*.csproj
2928
*.unityproj
3029
*.sln
@@ -41,7 +40,7 @@
4140
*.pidb.meta
4241

4342
# Unity3D Generated File On Crash Reports
44-
/UnitySDK/sysinfo.txt
43+
/unity-environment/sysinfo.txt
4544

4645
# Builds
4746
*.apk
@@ -52,10 +51,10 @@
5251
*.x86
5352

5453
# Tensorflow Sharp Files
55-
/UnitySDK/Assets/ML-Agents/Plugins/Android*
56-
/UnitySDK/Assets/ML-Agents/Plugins/iOS*
57-
/UnitySDK/Assets/ML-Agents/Plugins/Computer*
58-
/UnitySDK/Assets/ML-Agents/Plugins/System*
54+
/unity-environment/Assets/ML-Agents/Plugins/Android*
55+
/unity-environment/Assets/ML-Agents/Plugins/iOS*
56+
/unity-environment/Assets/ML-Agents/Plugins/Computer*
57+
/unity-environment/Assets/ML-Agents/Plugins/System*
5958

6059
# Generated doc folders
6160
/docs/html
@@ -76,20 +75,5 @@
7675
*.eggs*
7776
*.gitignore.swp
7877

79-
# VSCode hidden files
80-
*.vscode/
8178

8279
.DS_Store
83-
.ipynb_checkpoints
84-
85-
# pytest cache
86-
*.pytest_cache/
87-
88-
# Ignore compiled protobuf files.
89-
ml-agents-protobuf/cs
90-
ml-agents-protobuf/python
91-
ml-agents-protobuf/Grpc*
92-
93-
# Ignore PyPi build files.
94-
dist/
95-
build/

CODE_OF_CONDUCT.md

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -67,8 +67,7 @@ members of the project's leadership.
6767

6868
## Attribution
6969

70-
This Code of Conduct is adapted from the [Contributor Covenant][homepage],
71-
version 1.4, available at
72-
https://www.contributor-covenant.org/version/1/4/code-of-conduct/
70+
This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4,
71+
available at https://www.contributor-covenant.org/version/1/4/code-of-conduct/
7372

7473
[homepage]: https://www.contributor-covenant.org

CONTRIBUTING.md

Lines changed: 29 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -1,56 +1,54 @@
11
# Contribution Guidelines
22

3-
Thank you for your interest in contributing to the ML-Agents toolkit! We are
4-
incredibly excited to see how members of our community will use and extend the
5-
ML-Agents toolkit. To facilitate your contributions, we've outlined a brief set
6-
of guidelines to ensure that your extensions can be easily integrated.
3+
Thank you for your interest in contributing to the ML-Agents toolkit! We are incredibly
4+
excited to see how members of our community will use and extend the ML-Agents toolkit.
5+
To facilitate your contributions, we've outlined a brief set of guidelines
6+
to ensure that your extensions can be easily integrated.
77

8-
## Communication
8+
### Communication
99

10-
First, please read through our [code of conduct](CODE_OF_CONDUCT.md), as we
11-
expect all our contributors to follow it.
10+
First, please read through our [code of conduct](CODE_OF_CONDUCT.md),
11+
as we expect all our contributors to follow it.
1212

13-
Second, before starting on a project that you intend to contribute to the
14-
ML-Agents toolkit (whether environments or modifications to the codebase), we
15-
**strongly** recommend posting on our
16-
[Issues page](https://github.com/Unity-Technologies/ml-agents/issues)
17-
and briefly outlining the changes you plan to make. This will enable us to
18-
provide some context that may be helpful for you. This could range from advice
19-
and feedback on how to optimally perform your changes or reasons for not doing
20-
it.
13+
Second, before starting on a project that you intend to contribute
14+
to the ML-Agents toolkit (whether environments or modifications to the codebase),
15+
we **strongly** recommend posting on our
16+
[Issues page](https://github.com/Unity-Technologies/ml-agents/issues) and
17+
briefly outlining the changes you plan to make. This will enable us to provide
18+
some context that may be helpful for you. This could range from advice and
19+
feedback on how to optimally perform your changes or reasons for not doing it.
2120

2221
Lastly, if you're looking for input on what to contribute, feel free to
2322
reach out to us directly at [email protected] and/or browse the GitHub
2423
issues with the `contributions welcome` label.
2524

26-
## Git Branches
25+
### Git Branches
2726

28-
Starting with v0.3, we adopted the
27+
Starting with v0.3, we adopted the
2928
[Gitflow Workflow](http://nvie.com/posts/a-successful-git-branching-model/).
30-
Consequently, the `master` branch corresponds to the latest release of
29+
Consequently, the `master` branch corresponds to the latest release of
3130
the project, while the `develop` branch corresponds to the most recent, stable,
3231
version of the project.
3332

3433
Thus, when adding to the project, **please branch off `develop`**
3534
and make sure that your Pull Request (PR) contains the following:
36-
3735
* Detailed description of the changes performed
38-
* Corresponding changes to documentation, unit tests and sample environments (if
39-
applicable)
36+
* Corresponding changes to documentation, unit tests and sample environments
37+
(if applicable)
4038
* Summary of the tests performed to validate your changes
4139
* Issue numbers that the PR resolves (if any)
4240

43-
## Environments
41+
### Environments
4442

45-
We are also actively open to adding community contributed environments as
46-
examples, as long as they are small, simple, demonstrate a unique feature of
47-
the platform, and provide a unique non-trivial challenge to modern
43+
We are also actively open to adding community contributed environments as
44+
examples, as long as they are small, simple, demonstrate a unique feature of
45+
the platform, and provide a unique non-trivial challenge to modern
4846
machine learning algorithms. Feel free to submit these environments with a
49-
PR explaining the nature of the environment and task.
47+
PR explaining the nature of the environment and task.
5048

51-
## Style Guide
49+
### Style Guide
5250

53-
When performing changes to the codebase, ensure that you follow the style guide
54-
of the file you're modifying. For Python, we follow
55-
[PEP 8](https://www.python.org/dev/peps/pep-0008/).
56-
For C#, we will soon be adding a formal style guide for our repository.
51+
When performing changes to the codebase, ensure that you follow the style
52+
guide of the file you're modifying. For Python, we follow
53+
[PEP 8](https://www.python.org/dev/peps/pep-0008/). For C#, we will soon be
54+
adding a formal style guide for our repository.

Dockerfile

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -122,11 +122,14 @@ RUN apt-get update && apt-get -y upgrade
122122
# xvfb is used to do CPU based rendering of Unity
123123
RUN apt-get install -y xvfb
124124

125-
COPY ml-agents /ml-agents
126-
WORKDIR /ml-agents
127-
RUN pip install .
125+
126+
ADD python/requirements.txt .
127+
RUN pip install --trusted-host pypi.python.org -r requirements.txt
128+
129+
WORKDIR /execute
130+
COPY python /execute/python
128131

129132
# port 5005 is the port used in in Editor training.
130133
EXPOSE 5005
131134

132-
ENTRYPOINT ["mlagents-learn"]
135+
ENTRYPOINT ["python", "python/learn.py"]

LICENSE

100644100755
File mode changed.

README.md

100644100755
Lines changed: 45 additions & 61 deletions
Original file line numberDiff line numberDiff line change
@@ -1,86 +1,76 @@
11
<img src="docs/images/unity-wide.png" align="middle" width="3000"/>
22

3-
<img src="docs/images/image-banner.png" align="middle" width="3000"/>
4-
53
# Unity ML-Agents Toolkit (Beta)
64

7-
**The Unity Machine Learning Agents Toolkit** (ML-Agents) is an open-source
8-
Unity plugin that enables games and simulations to serve as environments for
9-
training intelligent agents. Agents can be trained using reinforcement learning,
10-
imitation learning, neuroevolution, or other machine learning methods through a
11-
simple-to-use Python API. We also provide implementations (based on TensorFlow)
12-
of state-of-the-art algorithms to enable game developers and hobbyists to easily
13-
train intelligent agents for 2D, 3D and VR/AR games. These trained agents can be
14-
used for multiple purposes, including controlling NPC behavior (in a variety of
15-
settings such as multi-agent and adversarial), automated testing of game builds
16-
and evaluating different game design decisions pre-release. The ML-Agents
17-
toolkit is mutually beneficial for both game developers and AI researchers as it
18-
provides a central platform where advances in AI can be evaluated on Unity’s
19-
rich environments and then made accessible to the wider research and game
20-
developer communities.
5+
**The Unity Machine Learning Agents Toolkit** (ML-Agents) is an open-source Unity plugin
6+
that enables games and simulations to serve as environments for training
7+
intelligent agents. Agents can be trained using reinforcement learning,
8+
imitation learning, neuroevolution, or other machine learning methods through
9+
a simple-to-use Python API. We also provide implementations (based on
10+
TensorFlow) of state-of-the-art algorithms to enable game developers
11+
and hobbyists to easily train intelligent agents for 2D, 3D and VR/AR games.
12+
These trained agents can be used for multiple purposes, including
13+
controlling NPC behavior (in a variety of settings such as multi-agent and
14+
adversarial), automated testing of game builds and evaluating different game
15+
design decisions pre-release. The ML-Agents toolkit is mutually beneficial for both game
16+
developers and AI researchers as it provides a central platform where advances
17+
in AI can be evaluated on Unity’s rich environments and then made accessible
18+
to the wider research and game developer communities.
2119

2220
## Features
23-
2421
* Unity environment control from Python
2522
* 10+ sample Unity environments
2623
* Support for multiple environment configurations and training scenarios
27-
* Train memory-enhanced agents using deep reinforcement learning
24+
* Train memory-enhanced Agents using deep reinforcement learning
2825
* Easily definable Curriculum Learning scenarios
29-
* Broadcasting of agent behavior for supervised learning
26+
* Broadcasting of Agent behavior for supervised learning
3027
* Built-in support for Imitation Learning
31-
* Flexible agent control with On Demand Decision Making
28+
* Flexible Agent control with On Demand Decision Making
3229
* Visualizing network outputs within the environment
3330
* Simplified set-up with Docker
34-
* Wrap learning environments as a gym
3531

3632
## Documentation
3733

38-
* For more information, in addition to installation and usage instructions, see
39-
our [documentation home](docs/Readme.md).
40-
* If you are a researcher interested in a discussion of Unity as an AI platform, see a pre-print of our [reference paper on Unity and the ML-Agents Toolkit](https://arxiv.org/abs/1809.02627). Also, see below for instructions on citing this paper.
41-
* If you have used a version of the ML-Agents toolkit prior to v0.5, we strongly
42-
recommend our [guide on migrating from earlier versions](docs/Migrating.md).
34+
* For more information, in addition to installation and usage
35+
instructions, see our [documentation home](docs/Readme.md).
36+
* If you have
37+
used a version of the ML-Agents toolkit prior to v0.4, we strongly recommend
38+
our [guide on migrating from earlier versions](docs/Migrating.md).
4339

44-
## Additional Resources
40+
## References
4541

4642
We have published a series of blog posts that are relevant for ML-Agents:
47-
48-
* Overviewing reinforcement learning concepts
49-
([multi-armed bandit](https://blogs.unity3d.com/2017/06/26/unity-ai-themed-blog-entries/)
50-
and
51-
[Q-learning](https://blogs.unity3d.com/2017/08/22/unity-ai-reinforcement-learning-with-q-learning/))
52-
* [Using Machine Learning Agents in a real game: a beginner’s guide](https://blogs.unity3d.com/2017/12/11/using-machine-learning-agents-in-a-real-game-a-beginners-guide/)
53-
* [Post](https://blogs.unity3d.com/2018/02/28/introducing-the-winners-of-the-first-ml-agents-challenge/)
54-
announcing the winners of our
55-
[first ML-Agents Challenge](https://connect.unity.com/challenges/ml-agents-1)
56-
* [Post](https://blogs.unity3d.com/2018/01/23/designing-safer-cities-through-simulations/)
57-
overviewing how Unity can be leveraged as a simulator to design safer cities.
43+
- Overviewing reinforcement learning concepts
44+
([multi-armed bandit](https://blogs.unity3d.com/2017/06/26/unity-ai-themed-blog-entries/)
45+
and [Q-learning](https://blogs.unity3d.com/2017/08/22/unity-ai-reinforcement-learning-with-q-learning/))
46+
- [Using Machine Learning Agents in a real game: a beginner’s guide](https://blogs.unity3d.com/2017/12/11/using-machine-learning-agents-in-a-real-game-a-beginners-guide/)
47+
- [Post](https://blogs.unity3d.com/2018/02/28/introducing-the-winners-of-the-first-ml-agents-challenge/) announcing the winners of our
48+
[first ML-Agents Challenge](https://connect.unity.com/challenges/ml-agents-1)
49+
- [Post](https://blogs.unity3d.com/2018/01/23/designing-safer-cities-through-simulations/)
50+
overviewing how Unity can be leveraged as a simulator to design safer cities.
5851

5952
In addition to our own documentation, here are some additional, relevant articles:
60-
61-
* [Unity AI - Unity 3D Artificial Intelligence](https://www.youtube.com/watch?v=bqsfkGbBU6k)
62-
* [A Game Developer Learns Machine Learning](https://mikecann.co.uk/machine-learning/a-game-developer-learns-machine-learning-intent/)
63-
* [Explore Unity Technologies ML-Agents Exclusively on Intel Architecture](https://software.intel.com/en-us/articles/explore-unity-technologies-ml-agents-exclusively-on-intel-architecture)
53+
- [Unity AI - Unity 3D Artificial Intelligence](https://www.youtube.com/watch?v=bqsfkGbBU6k)
54+
- [A Game Developer Learns Machine Learning](https://mikecann.co.uk/machine-learning/a-game-developer-learns-machine-learning-intent/)
55+
- [Explore Unity Technologies ML-Agents Exclusively on Intel Architecture](https://software.intel.com/en-us/articles/explore-unity-technologies-ml-agents-exclusively-on-intel-architecture)
6456

6557
## Community and Feedback
6658

67-
The ML-Agents toolkit is an open-source project and we encourage and welcome
68-
contributions. If you wish to contribute, be sure to review our
69-
[contribution guidelines](CONTRIBUTING.md) and
59+
The ML-Agents toolkit is an open-source project and we encourage and welcome contributions.
60+
If you wish to contribute, be sure to review our
61+
[contribution guidelines](CONTRIBUTING.md) and
7062
[code of conduct](CODE_OF_CONDUCT.md).
7163

7264
You can connect with us and the broader community
7365
through Unity Connect and GitHub:
74-
7566
* Join our
76-
[Unity Machine Learning Channel](https://connect.unity.com/messages/c/035fba4f88400000)
77-
to connect with others using the ML-Agents toolkit and Unity developers
78-
enthusiastic about machine learning. We use that channel to surface updates
79-
regarding the ML-Agents toolkit (and, more broadly, machine learning in
80-
games).
81-
* If you run into any problems using the ML-Agents toolkit,
82-
[submit an issue](https://github.com/Unity-Technologies/ml-agents/issues) and
83-
make sure to include as much detail as possible.
67+
[Unity Machine Learning Channel](https://connect.unity.com/messages/c/035fba4f88400000)
68+
to connect with others using the ML-Agents toolkit and Unity developers enthusiastic
69+
about machine learning. We use that channel to surface updates
70+
regarding the ML-Agents toolkit (and, more broadly, machine learning in games).
71+
* If you run into any problems using the ML-Agents toolkit,
72+
[submit an issue](https://github.com/Unity-Technologies/ml-agents/issues) and
73+
make sure to include as much detail as possible.
8474

8575
For any other questions or feedback, connect directly with the ML-Agents
8676
@@ -94,14 +84,8 @@ of the documentation to one language (Chinese), but we hope to continue
9484
translating more pages and to other languages. Consequently,
9585
we welcome any enhancements and improvements from the community.
9686

97-
* [Chinese](docs/localized/zh-CN/)
87+
- [Chinese](docs/localized/zh-CN/)
9888

9989
## License
10090

10191
[Apache License 2.0](LICENSE)
102-
103-
## Citation
104-
105-
If you use Unity or the ML-Agents Toolkit to conduct research, we ask that you cite the following paper as a reference:
106-
107-
Juliani, A., Berges, V., Vckay, E., Gao, Y., Henry, H., Mattar, M., Lange, D. (2018). Unity: A General Platform for Intelligent Agents. *arXiv preprint arXiv:1809.02627.* https://github.com/Unity-Technologies/ml-agents.

UnitySDK/Assets/ML-Agents/Editor/Tests.meta

Lines changed: 0 additions & 8 deletions
This file was deleted.

0 commit comments

Comments
 (0)