معرفی شرکت ها


cpr-gym-0.7.0


Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر
Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر
Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر
Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر
Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر

توضیحات

Gym environment for attacking proof-of-work protocols with RL
ویژگی مقدار
سیستم عامل -
نام فایل cpr-gym-0.7.0
نام cpr-gym
نسخه کتابخانه 0.7.0
نگهدارنده []
ایمیل نگهدارنده []
نویسنده Patrik Keller
ایمیل نویسنده git@pkel.dev
آدرس صفحه اصلی https://github.com/pkel/cpr
آدرس اینترنتی https://pypi.org/project/cpr-gym/
مجوز -
# Consensus Protocol Research CPR is a toolbox for specifying, simulating, and attacking proof-of-work consensus protocols. In this repository you find - protocol specifications for Bitcoin, Ethereum PoW, and others, - implementations of known attacks against these protocols, - a simulator that executes the specified protocols and attacks in a, virtual environment, - tooling for automatic attack-search with reinforcement learning (RL) and - evaluation scripts and notebooks for the above. I'm working on [a website](https://pkel.github.io/cpr/) with more details. ## Python/RL Quickstart CPR provides an OpenAI Gym environment for attack search with Python RL frameworks. If you meet the following **requirements**, you can install it from PyPI. - Unix-like operating system with x86_64 support - CPython, version >= 3.9 ```shell pip install cpr-gym ``` If this worked, you are ready to go. The following snippet simulates 2016 steps of honest behaviour in Nakamoto consensus. ```python import gym import cpr_gym env = gym.make("cpr-nakamoto-v0", episode_len = 2016) obs = env.reset() done = False while not done: action = env.policy(obs, "honest") obs, rew, done, info = env.step(action) ``` ## Install from Source The protocol specifications and simulator are OCaml programs. Also most parts of the Gym environment are written in OCaml. The Python module `cpr_gym` loads the OCaml code from a pre-compiled shared object named `cpr_gym_engine.so`. In order to install the package from source, you have to build this shared object and hence have the OCaml toolchain installed. **Opam** is the OCaml package manager. It's a bit like Python's `pip` or Javascript's `npm`. We use it do download and install our OCaml dependencies and to manage different versions of the OCaml compiler. Make sure that a recent version (>= 2.0) is installed on your system. [Follow these instructions](https://opam.ocaml.org/doc/Install.html). Then use `make setup` to get compiler and dependencies setup in the current working directory under `_opam`. Later, e.g. when dependencies change, run `make dependencies` to update the toolchain. If you ever suspect that the OCaml dependencies are broken, and you do not know how to fix it, delete the `_opam` directory and run `make setup` again. **Dune** is an OCaml build system. We use it to build executables and shared objects, and to run tests. You do not have to interact with dune directly. Just run `make build` to test whether the OCaml build works. Now, installing `cpr_gym` as editable Python package should work. Try `pip install -e .` and follow the short Python example above. If it works, you're ready to go. `import cpr_gym` tries to detect editable installs. If so, `cpr_gym_engine.so` is loaded from the OCaml build directory (`./_build`). You can rebuild the DLL with `make build`. It might be useful to install all Python development dependencies with `pip install -r requirements.txt`. Afterwards, you can run the full test suite, OCaml and Python, with `make test`.


نیازمندی

مقدار نام
- gym
- numpy


نحوه نصب


نصب پکیج whl cpr-gym-0.7.0:

    pip install cpr-gym-0.7.0.whl


نصب پکیج tar.gz cpr-gym-0.7.0:

    pip install cpr-gym-0.7.0.tar.gz