72 lines
6.7 KiB
HTML
72 lines
6.7 KiB
HTML
<!DOCTYPE html>
|
||
<!-- saved from url=(0057)https://medium.com/media/37989df7e0c024c98a85ab9154886677 -->
|
||
<html><link type="text/css" id="dark-mode" rel="stylesheet" href="https://medium.com/media/37989df7e0c024c98a85ab9154886677"><style type="text/css" id="dark-mode-custom-style"></style><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>MuZero pseudocode (https://arxiv.org/src/1911.08265v1/anc/pseudocode.py) – Medium</title><meta name="description" content="You can't perform that action at this time. You signed in with another tab or window. You signed out in another tab or window. Reload to refresh your session. Reload to refresh your session."><meta name="twitter:widgets:csp" content="on"><meta name="robots" content="noindex"><!--<base target="_blank">--><base href="." target="_blank"><style>body {text-rendering: optimizeLegibility; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; font-family: "ff-tisa-web-pro", Georgia, Cambria, "Times New Roman", Times, serif; font-weight: 400; color: #333332; font-size: 18px; line-height: 1.4; margin: 0; background-color: white; overflow: hidden;}iframe {max-width: 100%;}</style></head><body><style>.gist .gist-file { margin-bottom: 0 !important; }.gist { text-rendering: auto; }</style><script src="./95d78debdbb8309bb77f90799d18ea3d.js" charset="utf-8"></script><link rel="stylesheet" href="./gist-embed-4e64bbf96c31ed6c9ee61f08cea01836.css"><div id="gist99758597" class="gist">
|
||
<div class="gist-file">
|
||
<div class="gist-data">
|
||
<div class="js-gist-file-update-container js-task-list-container file-box">
|
||
<div id="file-pseudocode-py" class="file my-2">
|
||
|
||
|
||
<div itemprop="text" class="Box-body p-0 blob-wrapper data type-python ">
|
||
|
||
<table class="highlight tab-size js-file-line-container" data-tab-size="8" data-paste-markdown-skip="">
|
||
<tbody><tr>
|
||
<td id="file-pseudocode-py-L1" class="blob-num js-line-number" data-line-number="1"></td>
|
||
<td id="file-pseudocode-py-LC1" class="blob-code blob-code-inner js-file-line"><span class="pl-k">def</span> <span class="pl-en">muzero</span>(<span class="pl-s1">config</span>: <span class="pl-v">MuZeroConfig</span>):</td>
|
||
</tr>
|
||
<tr>
|
||
<td id="file-pseudocode-py-L2" class="blob-num js-line-number" data-line-number="2"></td>
|
||
<td id="file-pseudocode-py-LC2" class="blob-code blob-code-inner js-file-line"> <span class="pl-s1">storage</span> <span class="pl-c1">=</span> <span class="pl-v">SharedStorage</span>()</td>
|
||
</tr>
|
||
<tr>
|
||
<td id="file-pseudocode-py-L3" class="blob-num js-line-number" data-line-number="3"></td>
|
||
<td id="file-pseudocode-py-LC3" class="blob-code blob-code-inner js-file-line"> <span class="pl-s1">replay_buffer</span> <span class="pl-c1">=</span> <span class="pl-v">ReplayBuffer</span>(<span class="pl-s1">config</span>)</td>
|
||
</tr>
|
||
<tr>
|
||
<td id="file-pseudocode-py-L4" class="blob-num js-line-number" data-line-number="4"></td>
|
||
<td id="file-pseudocode-py-LC4" class="blob-code blob-code-inner js-file-line">
|
||
</td>
|
||
</tr>
|
||
<tr>
|
||
<td id="file-pseudocode-py-L5" class="blob-num js-line-number" data-line-number="5"></td>
|
||
<td id="file-pseudocode-py-LC5" class="blob-code blob-code-inner js-file-line"> <span class="pl-k">for</span> <span class="pl-s1">_</span> <span class="pl-c1">in</span> <span class="pl-en">range</span>(<span class="pl-s1">config</span>.<span class="pl-s1">num_actors</span>):</td>
|
||
</tr>
|
||
<tr>
|
||
<td id="file-pseudocode-py-L6" class="blob-num js-line-number" data-line-number="6"></td>
|
||
<td id="file-pseudocode-py-LC6" class="blob-code blob-code-inner js-file-line"> <span class="pl-en">launch_job</span>(<span class="pl-s1">run_selfplay</span>, <span class="pl-s1">config</span>, <span class="pl-s1">storage</span>, <span class="pl-s1">replay_buffer</span>)</td>
|
||
</tr>
|
||
<tr>
|
||
<td id="file-pseudocode-py-L7" class="blob-num js-line-number" data-line-number="7"></td>
|
||
<td id="file-pseudocode-py-LC7" class="blob-code blob-code-inner js-file-line">
|
||
</td>
|
||
</tr>
|
||
<tr>
|
||
<td id="file-pseudocode-py-L8" class="blob-num js-line-number" data-line-number="8"></td>
|
||
<td id="file-pseudocode-py-LC8" class="blob-code blob-code-inner js-file-line"> <span class="pl-en">train_network</span>(<span class="pl-s1">config</span>, <span class="pl-s1">storage</span>, <span class="pl-s1">replay_buffer</span>)</td>
|
||
</tr>
|
||
<tr>
|
||
<td id="file-pseudocode-py-L9" class="blob-num js-line-number" data-line-number="9"></td>
|
||
<td id="file-pseudocode-py-LC9" class="blob-code blob-code-inner js-file-line">
|
||
</td>
|
||
</tr>
|
||
<tr>
|
||
<td id="file-pseudocode-py-L10" class="blob-num js-line-number" data-line-number="10"></td>
|
||
<td id="file-pseudocode-py-LC10" class="blob-code blob-code-inner js-file-line"> <span class="pl-k">return</span> <span class="pl-s1">storage</span>.<span class="pl-en">latest_network</span>()</td>
|
||
</tr>
|
||
</tbody></table>
|
||
|
||
|
||
</div>
|
||
|
||
</div>
|
||
</div>
|
||
|
||
</div>
|
||
<div class="gist-meta">
|
||
<a href="https://gist.github.com/davidADSP/95d78debdbb8309bb77f90799d18ea3d/raw/16c8c7ad17b0d0c76464bf2dbefa3f06cdd80da3/pseudocode.py" style="float:right">view raw</a>
|
||
<a href="https://gist.github.com/davidADSP/95d78debdbb8309bb77f90799d18ea3d#file-pseudocode-py">pseudocode.py</a>
|
||
hosted with ❤ by <a href="https://github.com/">GitHub</a>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<script>var height = -1; var delayMs = 200; if (document) {document.domain = document.domain;}function notifyResize(height) {height = height ? height : document.documentElement.offsetHeight; var resized = false; if (window.donkey && donkey.resize) {donkey.resize(height);var elements = document.getElementsByClassName("gist-data"); for (var i = 0; i < elements.length; i++) {elements[i].style.overflow = "visible"}resized = true;}if (parent && parent._resizeIframe) {var obj = {iframe: window.frameElement, height: height}; parent._resizeIframe(obj); resized = true;}if (window.location && window.location.hash === "#amp=1" && window.parent && window.parent.postMessage) {window.parent.postMessage({sentinel: "amp", type: "embed-size", height: height}, "*");}if (window.webkit && window.webkit.messageHandlers && window.webkit.messageHandlers.resize) {window.webkit.messageHandlers.resize.postMessage(height); resized = true;}return resized;}function maybeResize() {try {if (document.documentElement.offsetHeight != height && notifyResize()) {height = document.documentElement.offsetHeight;}delayMs = Math.min(delayMs * 2, 1000000); setTimeout(maybeResize, delayMs);} catch(error) {console.log('maybeResize error: ', error)}}maybeResize();</script></body></html> |