Spaces:
Running on Zero
Running on Zero
Download help.html from TiGa-RCE/ald-tao-gpu: direct link, hf CLI and curl.
- Browser
- Download file 16.3 kB
-
https://huggingface.co/spaces/TiGa-RCE/ald-tao-gpu/resolve/refs%2Fpr%2F1/help.html
- Command line
-
hf download hf://spaces/TiGa-RCE/ald-tao-gpu@refs/pr/1/help.html
-
curl -L -o help.html https://huggingface.co/spaces/TiGa-RCE/ald-tao-gpu/resolve/refs%2Fpr%2F1/help.html
16.3 kB
| <html lang="en"> | |
| <head> | |
| <meta charset="utf-8"> | |
| <meta name="viewport" content="width=device-width, initial-scale=1"> | |
| <meta name="color-scheme" content="dark light"> | |
| <title>AI Learns to Drive — Help</title> | |
| <style> | |
| :root{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#e8eef6;background:#101923;line-height:1.6}*{box-sizing:border-box}body{margin:0}.wrap{width:min(920px,100% - 32px);margin:0 auto;padding:28px 0 56px}header,.section{background:#172330;border:1px solid #304255;border-radius:14px;padding:22px;margin:0 0 16px}h1,h2{line-height:1.2;margin-top:0}h1{font-size:clamp(1.8rem,5vw,2.6rem);margin-bottom:.45rem}h2{font-size:1.35rem;margin-bottom:.6rem}p,ul,ol{max-width:74ch}a{color:#8dc8ff}a:focus-visible{outline:3px solid #ffd166;outline-offset:3px;border-radius:3px}.eyebrow{color:#a8c9e8;font-size:.8rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.lead{font-size:1.08rem}.callout{border-left:4px solid #62c7a5;padding:.65rem 1rem;background:#112b2b;border-radius:0 8px 8px 0}nav ul{display:flex;flex-wrap:wrap;gap:.45rem 1.1rem;padding-left:1.2rem}.steps li{margin:.6rem 0}.pill{display:inline-block;background:#24364a;border-radius:999px;padding:.15rem .55rem;font-size:.9rem}.small{color:#bdc8d5;font-size:.94rem}code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;color:#d8e8fb}footer{padding:8px 4px;color:#bdc8d5}@media(max-width:600px){.wrap{width:min(100% - 20px,920px);padding-top:10px}header,.section{padding:16px;border-radius:10px}nav ul{display:block}nav li{margin:.25rem 0}} | |
| </style> | |
| </head> | |
| <body> | |
| <main class="wrap"> | |
| <header> | |
| <p class="eyebrow">A bounded simulator experiment</p> | |
| <h1>AI Learns to Drive — Help</h1> | |
| <p class="lead">Choose a track, create or load a driving controller, then train and inspect the result. Cars are simulated behind the scenes; the map previews track layout and terrain, without showing cars driving.</p> | |
| <p class="small">The app’s <strong>Quick start</strong> button opens the short <strong>New here? Start a first run</strong> checklist. <strong>Help & tutorial</strong> keeps this full guide one click away. This guide opens in a new tab, so your run and unsaved choices stay in place. Close this tab to return to the lab.</p> | |
| <p class="callout">You can try the built-in replica tracks and browser network editor without installing the original game. This lab does not reproduce the full game, award official stars, or change game progress.</p> | |
| <nav aria-label="Help topics"><ul> | |
| <li><a href="#first-run">First run</a></li><li><a href="#recipes">Recipes</a></li><li><a href="#batches">Batches</a></li><li><a href="#concepts">Basic ideas</a></li><li><a href="#freeze">Selective freezing</a></li><li><a href="#continue">Continue a winner</a></li><li><a href="#compare">Compare policies</a></li><li><a href="#storage">Files and storage</a></li><li><a href="#limits">Limits and compute</a></li><li><a href="#feedback">Feedback</a></li> | |
| </ul></nav> | |
| </header> | |
| <section class="section" id="first-run"> | |
| <h2>Start your first run</h2> | |
| <p>You can start with the built-in settings. There is no need to save a recipe or build a batch first.</p> | |
| <ol class="steps"> | |
| <li><strong>Choose a track.</strong> On <strong>Run & results</strong>, select a built-in replica or upload a <code>.track</code> file. The <strong>Choose a track</strong> button in Quick start takes you to the track controls.</li> | |
| <li><strong>Create a controller.</strong> Pick a starter car and click <strong>Create starter network</strong>. This creates a small controller in the page without starting training. You can also upload a compatible <code>.evolution</code> file or use <strong>Network editor</strong>.</li> | |
| <li><strong>Review the settings.</strong> Open <strong>Training & recipes</strong>, or use <strong>Review first-run settings</strong> in Quick start. Keep the starter values for a first experiment, or adjust them.</li> | |
| <li><strong>Start training.</strong> Return to <strong>Run & results</strong>. Choose <strong>CPU — no GPU allowance</strong> to run without signing in. Under <strong>Action</strong>, select <strong>Train a population</strong>, then click <strong>Run training</strong>.</li> | |
| <li><strong>Receive the result.</strong> When the run finishes, click <strong>Download result</strong> to receive the controller and reveal winner and challenge details. If connected bucket autosave is on, it handles result delivery for you.</li> | |
| </ol> | |
| <p class="small">The starter uses 32 candidates, 20 generations, and 900 ticks per generation (15 simulated seconds per car per generation), mutation 0.3, decay 0, one parent, and one elite candidate. The reward is distance-only (+100); collision and idle elimination are off. These values are a starting experiment, not a promise of a lap.</p> | |
| <p class="small">To restore these values later, use <strong>Apply first-run settings to this form</strong>. Saved recipes stay as they are. To test an existing controller with unchanged weights, choose <strong>Frozen evaluation · one policy, unchanged weights</strong> under Action, then click <strong>Evaluate policy (weights frozen)</strong>.</p> | |
| </section> | |
| <section class="section" id="recipes"> | |
| <h2>Recipes: save a setup you want to reuse</h2> | |
| <p>A recipe holds training settings, reward choices, and optional selective freezing. It does not contain a track, network, or result. Keep up to ten named recipes in slots <strong>A–J</strong> at the top of <strong>Training & recipes</strong>.</p> | |
| <ol class="steps"> | |
| <li><strong>Save a setup.</strong> Adjust the training form, select a recipe slot, and give it a useful name. Click <strong>Save settings to A</strong> (or your chosen slot) to save the current settings in this browser.</li> | |
| <li><strong>Reuse it.</strong> Select a named recipe and click <strong>Apply recipe</strong> to copy its settings into the form. Choosing a slot alone does not apply it. Applying a recipe does not start training.</li> | |
| <li><strong>Check what is saved.</strong> The status shows whether the current form matches the saved recipe or has unsaved changes. Save again when you want to update that recipe.</li> | |
| </ol> | |
| <p><strong>Run training</strong> uses the current form. <strong>Batches use saved recipes</strong>, so save your changes before using them in a batch. Choose the track, starting network, and CPU or GPU on <strong>Run & results</strong>.</p> | |
| <p class="small">Recipe libraries can be exported and imported as JSON. See <a href="#storage">Files and storage</a> for local and optional private-bucket storage.</p> | |
| </section> | |
| <section class="section" id="batches"> | |
| <h2>Batches: run saved recipes in order</h2> | |
| <p>A batch is an ordered list of saved recipes. Use it when you want several training steps to run in sequence on the track and compute backend selected on <strong>Run & results</strong>.</p> | |
| <ol class="steps"> | |
| <li><strong>Save your recipes first.</strong> On <strong>Batches</strong>, choose a batch slot and give the batch a name. Recipe slots and batch slots are separate.</li> | |
| <li><strong>Build the sequence.</strong> Choose a saved recipe and click <strong>Add step</strong>. Use the step controls to move it up or down, duplicate it, or remove it. Repeats are allowed, with up to 20 steps per run. <strong>Advanced sequence</strong> also accepts comma-separated recipe slots, such as <code>A, B, A</code>.</li> | |
| <li><strong>Choose where each step starts.</strong> Check <strong>Use each step’s result to train the next step</strong> to continue from the previous step’s result. Leave it unchecked to start every step from the same original network.</li> | |
| <li><strong>Save, then run.</strong> Click <strong>Save batch</strong> to store the definition. Review the starting network, track, and CPU or GPU on <strong>Run & results</strong>, then click <strong>Run batch</strong> on Batches.</li> | |
| </ol> | |
| <p>For example, you could name recipe A “Explore” and recipe B “Refine”, then run <code>A, B, A</code>. With continuation checked, the network trains through all three steps. Unchecked, each step begins with the original network. These names are examples; the app uses the recipes you saved in those slots.</p> | |
| <p><strong>Save batch and Run batch are separate actions.</strong> Changing a batch’s name, sequence, or continuation option creates an unsaved draft and disables Run batch. Save the draft to use it, or click <strong>Load saved batch</strong> to restore the saved version.</p> | |
| <p class="small">Starting a batch takes a snapshot of its saved recipe settings. Later recipe changes apply to future batch launches. A batch stores recipe references and its continuation choice; it does not save networks, tracks, or results.</p> | |
| </section> | |
| <section class="section" id="concepts"> | |
| <h2>Basic ideas</h2> | |
| <ul> | |
| <li><strong>Network or controller:</strong> reads its configured sensors and produces vehicle controls. Its vehicle type and output order are part of the file.</li> | |
| <li><strong>Population:</strong> a group of candidate controllers evaluated during training.</li> | |
| <li><strong>Generation:</strong> one round of simulation and selection. Training may mutate or recombine candidates between generations.</li> | |
| <li><strong>Reward:</strong> a weighted choice of measured outcomes the trainer should favor. Reward settings guide selection; they do not change the simulator's physics.</li> | |
| <li><strong>Frozen evaluation:</strong> runs one policy with unchanged weights. It does not train or create a winner population.</li> | |
| <li><strong>Recipe:</strong> a reusable set of training settings and reward choices, saved in this browser by default. <a href="#recipes">Save and apply recipes</a>.</li> | |
| <li><strong>Batch:</strong> an ordered sequence of saved recipes, with a choice to continue from each step’s result or restart from the original network. <a href="#batches">Build a batch</a>.</li> | |
| </ul> | |
| <p>Training measurements and fresh challenge checks are simulator results for reconstructed tracks. A supported challenge check replays the named current network with fixed weights; it does not accumulate stars across runs or evaluate original-game opponent races.</p> | |
| <p>Challenge checks use the selected driving settings, including collision elimination, and the chosen run duration or the track’s longer challenge deadline, capped at 300 simulated seconds. This extra replay may add processing time. A condition that is not met within that replay is not proof that the network could never meet it in a longer run.</p> | |
| </section> | |
| <section class="section" id="freeze"> | |
| <h2>Selective freezing</h2> | |
| <p>On <strong>Training & recipes</strong>, open <strong>Selective freezing</strong> to keep selected parameters at their values in the starting network. Freezing an input holds its outgoing weights; freezing a hidden layer holds its incoming weights and biases; freezing an output holds its incoming weights and bias. The available choices and names come from the selected network. Freeze selections are part of saved recipes and can be edited later. Frozen evaluation runs the selected policy unchanged.</p> | |
| </section> | |
| <section class="section" id="continue"> | |
| <h2>Continue a winner</h2> | |
| <p>After the result has been received, select a role from <strong>Winner to continue or evaluate</strong>:</p> | |
| <ul> | |
| <li>Click <strong>Continue training</strong> to stage those weights as the next training input and return the form to training mode.</li> | |
| <li>Click <strong>Evaluate unchanged</strong> to stage the same weights for frozen evaluation.</li> | |
| </ul> | |
| <p>Neither choice starts a run. Review the track and settings, then click <strong>Run training</strong> or <strong>Evaluate policy (weights frozen)</strong> to start the selected action. The chosen track is retained unless you change it. The prior run's measurements are not reused as new evidence.</p> | |
| <p>Fitness winner means the best candidate under your chosen reward in the final generation. Fastest lap is the fastest completed forward lap observed during training. A clean-lap winner must meet the configured forward-lap count with zero physical contacts. One controller may fill multiple roles, and a role can be unavailable.</p> | |
| </section> | |
| <section class="section" id="compare"> | |
| <h2>Compare policies</h2> | |
| <p>Frozen comparison runs selected policies in fresh simulations with their weights unchanged. Use the same track, vehicle, duration, controller frequency, collision and idle settings, and compute backend when you want a direct comparison. The app marks incompatible conditions instead of treating them as equivalent.</p> | |
| <p>Look at lap time, completed laps, contacts, distance, and challenge status together. A short run may end before a lap or challenge deadline. A challenge result is a bounded prediction for the replica track conditions; it is not an original-game award or a Steam leaderboard result.</p> | |
| </section> | |
| <section class="section" id="storage"> | |
| <h2>Files, privacy, and storage</h2> | |
| <p>Your selected files stay in the browser until you start a run or explicitly save/export them. Processing copies and undelivered results are temporary; results expire within five minutes and are deleted after verified browser receipt by default. The app's cleanup does not establish provider-wide zero-data retention.</p> | |
| <p>Run results stay in page memory after download until you discard them, replace them, or close the page. Download the network or a portable bundle if you want a local copy.</p> | |
| <p>Recipes are settings-only and save in this browser by default. Local JSON export/import is also available. Optional private-bucket storage requires a separate explicit HF authorization; its <code>write-repos</code> permission is broader than one bucket. After connecting an existing private bucket, automatic run saving starts on by default and can be turned off. Recipe-library save/list/import are separate actions and transfer settings only; importing asks before replacing the local recipe library and never starts a run. The app does not create or delete buckets.</p> | |
| <p>Read the full <a href="/policy" target="_blank" rel="noopener">data policy</a> before using private files or bucket storage.</p> | |
| </section> | |
| <section class="section" id="limits"> | |
| <h2>Limits and compute</h2> | |
| <p>The worker supports Formula, Rally, Snowmobile, and Truck. Networks support at most 20 inputs, 12 total layers, and 16 neurons per hidden layer. Formula, Rally, and Truck support up to five outputs; Snowmobile supports up to four and cannot use Handbrake. Fresh controllers for every vehicle require Steering and Acceleration; Formula imports retain their supported ordered output subsets.</p> | |
| <p>CPU runs: up to 4,000,000 requested vehicle-ticks in a 25-second native execution window. GPU runs: up to 8,000,000 requested vehicle-ticks in a 45-second native execution window. Both allow up to 1,024 cars, 2,000 generations, fourteen distinct reward metrics, and 32,768 car-generation analysis rows per run. Requested vehicle-ticks are an upper-bound work estimate, not a guarantee of runtime. Results and analysis have separate size limits. These are bounded vanilla-worker limits, not support for arbitrary modified-game networks or full original-game parity.</p> | |
| <p>The public GPU app also provides CPU execution without GPU allowance. GPU runs use HF allowance; optional HF sign-in can associate a request with your account but does not guarantee quota. Sign-in can reload the page, so do it before choosing files if needed.</p> | |
| <p>These are bounded vanilla-worker limits. They do not cover arbitrary modified-game networks or establish full original-game physics parity.</p> | |
| </section> | |
| <section class="section" id="feedback"> | |
| <h2>Feedback</h2> | |
| <p><a href="https://github.com/seeker-cyber-maker/driving_sim_rs/issues/new" target="_blank" rel="noopener">Open an editable GitHub issue draft</a>. It is not submitted automatically. Review the draft before posting and remove private names or data. Do not attach tokens, job keys, private networks, proprietary tracks, or unrelated logs.</p> | |
| </section> | |
| <footer><a href="/" target="_blank" rel="noopener">Open the training app</a><p class="small">This opens a fresh app page. Close this guide tab to return to your existing page.</p></footer> | |
| </main> | |
| </body> | |
| </html> | |