{
  "schema": "vamos.documentation.coverage-evidence.v1",
  "python": "3.12.14",
  "packages": {
    "vamos-optimization": "1.0.1",
    "numpy": "2.1.3",
    "scipy": "1.15.3",
    "joblib": "1.4.2",
    "moocore": "0.3.2",
    "matplotlib": "3.10.9",
    "scikit-learn": "1.7.2",
    "numba": "0.67.0"
  },
  "base_commit": "24e601bebdc761b006facb3f784e2b620ac9532a",
  "command": "python tools/build_coverage_tutorials.py --write --work-dir <new-directory>",
  "retention": "Derived teaching arrays and observations; canonical ablation studies and original tuner artifacts remain in the work directory.",
  "sources": {
    "examples/tutorials/capability_examples.py": "cfe6fe0b17868882b6b3924a900b03c6a58c4df9caa308dd9ef9ca78ecec7722",
    "examples/tutorials/advanced_workflows.py": "5af030c83a5a7f8d08432b017024362b4d19291a8bf542176badf914fd10bcbb"
  },
  "outputs": {
    "smsemoa": "Algorithm: smsemoa; encoding: real; backend: numpy; seed: 42\nReturned X: (40, 10); F: (40, 2); result mode: population\nFeasible rows: 40/40; feasible non-dominated rows: 13\nEvaluations: 400\n",
    "spea2": "Algorithm: spea2; encoding: real; backend: numpy; seed: 42\nReturned X: (40, 10); F: (40, 2); result mode: population\nFeasible rows: 40/40; feasible non-dominated rows: 16\nEvaluations: 400\n",
    "ibea": "Algorithm: ibea; encoding: real; backend: numpy; seed: 42\nReturned X: (40, 10); F: (40, 2); result mode: population\nFeasible rows: 40/40; feasible non-dominated rows: 15\nEvaluations: 400\n",
    "smpso": "Algorithm: smpso; encoding: real; backend: numpy; seed: 42\nReturned X: (40, 10); F: (40, 2); result mode: population\nFeasible rows: 40/40; feasible non-dominated rows: 9\nEvaluations: 400\n",
    "agemoea": "Algorithm: agemoea; encoding: real; backend: numpy; seed: 42\nReturned X: (40, 12); F: (40, 3); result mode: population\nFeasible rows: 40/40; feasible non-dominated rows: 40\nEvaluations: 400\n",
    "rvea": "Algorithm: rvea; encoding: real; backend: numpy; seed: 42\nReturned X: (10, 12); F: (10, 3); result mode: population\nFeasible rows: 10/10; feasible non-dominated rows: 10\nEvaluations: 400\n",
    "binary": "Algorithm: nsgaii; encoding: binary; backend: numpy; seed: 42\nReturned X: (40, 80); F: (40, 2); result mode: population\nFeasible rows: 40/40; feasible non-dominated rows: 14\nEvaluations: 400\nDomain checks: passed for binary\n",
    "integer": "Algorithm: nsgaii; encoding: integer; backend: numpy; seed: 42\nReturned X: (40, 20); F: (40, 2); result mode: population\nFeasible rows: 40/40; feasible non-dominated rows: 40\nEvaluations: 400\nDomain checks: passed for integer\n",
    "permutation": "Algorithm: nsgaii; encoding: permutation; backend: numpy; seed: 42\nReturned X: (40, 6); F: (40, 2); result mode: population\nFeasible rows: 40/40; feasible non-dominated rows: 40\nEvaluations: 400\nDomain checks: passed for permutation\n",
    "mixed": "Algorithm: nsgaii; encoding: mixed; backend: numpy; seed: 42\nReturned X: (40, 9); F: (40, 2); result mode: population\nFeasible rows: 40/40; feasible non-dominated rows: 17\nEvaluations: 400\nDomain checks: passed for mixed\n",
    "engineering": "Algorithm: nsgaii; encoding: mixed; backend: numpy; seed: 42\nReturned X: (40, 6); F: (40, 2); result mode: population\nFeasible rows: 40/40; feasible non-dominated rows: 40\nEvaluations: 400\nMinimum-cost feasible front row: 0\nDecision (h, l, t, b, material, stiffeners): [0.783541, 4.169584, 1.760651, 3.396257, 0.0, 2.0]\nObjectives (cost, deflection proxy): [15.905242, 0.059214]\nConstraint residuals G <= 0: [-9827.611456, -5182.606983, -0.190786, -2.612716]\n",
    "feature_selection": "Algorithm: nsgaii; encoding: binary; backend: numpy; seed: 42\nReturned X: (16, 30); F: (16, 2); result mode: population\nFeasible rows: 16/16; feasible non-dominated rows: 4\nEvaluations: 80\nDataset: breast_cancer; split random_state: 0; validation fraction: 0.3\nNonempty returned feature masks: 16\nError is a repeatedly inspected validation objective, not an unbiased test estimate.\n",
    "model_tuning": "Algorithm: nsgaii; encoding: mixed; backend: numpy; seed: 42\nReturned X: (16, 4); F: (16, 2); result mode: population\nFeasible rows: 16/16; feasible non-dominated rows: 9\nEvaluations: 80\nDataset: wine; split random_state: 0; validation fraction: 0.3\nDecisions: log-scaled C, log-scaled gamma, kernel category, polynomial degree.\nObjectives: validation error; support-vector count + 0.1 * degree.\n",
    "tuning": "Experimental tuner: random; trials: 2; budget per run: 400\nBest training HV: 10.281806\nSeeds: {'train_seeds': [7], 'validation_seeds': [101, 102], 'test_seeds': [201, 202]}\nvalidation: 1 candidate summaries; successful evaluations of candidates: 2/2\ntest: 3 candidate summaries; successful evaluations of candidates: 6/6\nThe same ZDT1 instance is reused across splits; held-out seeds are not held-out problems.\n",
    "ablation": "Planned tasks: 6; evaluations: 2400\nbaseline: seed 11; evaluations 400; HV 10.912801\nbaseline: seed 22; evaluations 400; HV 10.843059\nbaseline: seed 33; evaluations 400; HV 10.841080\nwithout-mutation: seed 11; evaluations 400; HV 10.885577\nwithout-mutation: seed 22; evaluations 400; HV 10.552095\nwithout-mutation: seed 33; evaluations 400; HV 10.675069\nOne removed component, three seeds, one problem: descriptive evidence only.\n",
    "performance": "numpy: first 0.018157s; subsequent median 0.015707s; range [0.015278, 0.015735]s\nnumba: first 0.226595s; subsequent median 0.004910s; range [0.004663, 0.005652]s\nmoocore: first 0.008319s; subsequent median 0.006352s; range [0.006193, 0.006411]s\nActual evaluations: 4800; fresh optimizer state for every call.\nTimes describe this machine and tiny workload; no universal backend ranking follows.\n"
  },
  "assets": {
    "smsemoa.py": "0cd33b6e173339cd10ac2bfe521b8c25c882261e7994ddd918186e43086d723f",
    "smsemoa.svg": "aba9f34d44bb91c06887d0c942a58164587c55191c8dedcf08e1edeb5edbfed4",
    "spea2.py": "4dfe41f7420d6983b422ff6b2e27aba48241d08f476434b3f9412900aa9bafec",
    "spea2.svg": "b94da4d0ea681750e591ca5ece3a7ec30616fcab457a4ce4e0ce0417e8f14aaa",
    "ibea.py": "850148e96c6aea144743358f124b3d477beac7313e77c9792b8e12a209e50038",
    "ibea.svg": "95b526045a46556284aceae78f68050530325d11b8b3c455b66a6ea1e051aaf9",
    "smpso.py": "086c7e475ef59afbf52e7b566c078c7f9734f7d9eb13bb30ad0a5c382ce89ed2",
    "smpso.svg": "1afff79021c6c2514a6f198704ae8a6e53362233eb4f975a216f18d4abf9d099",
    "agemoea.py": "0d93afedc3673de5e0eeae7876accd64eaedaeee9f19476880cc1415b1091f42",
    "agemoea.svg": "574a864d343726636b8bb7255f455460ecee97f8b982f0652d09e7c4f30ada7c",
    "rvea.py": "15fb87a8b1a21539cea43d8a90ae4348405dec32e4256da73e01ca13f33b1c3a",
    "rvea.svg": "9e2ac1b9b30fd3b8740f3a1e72de1e3958b441ae8a804808585c5e5d5e421cdd",
    "binary.py": "f4a460b776babd2b60a63071b771644d6f6b6bcc1987c8415badf9d087b50b3b",
    "binary.svg": "230a2230ee2b6063bdf65f322ca1cffafe5cbb243e4a7e7302e3567cf7d2348d",
    "integer.py": "ebd15a5f1d502e9417dd8b8e579aa4277c69f9ff6bc55b24a3d76c244ec3ab6f",
    "integer.svg": "c156389200a4e221d1eb70a47f38ef6cb2632cc364dbcf2baeba8aabfa9c5c07",
    "permutation.py": "9fe1475a5dac1a79aee5f8279266817983f3ae7c04d091005641fa73ac110023",
    "permutation.svg": "ed400b6041efd65e0cefc3674f322807e6957387834edca79ec62ef273b9a17d",
    "mixed.py": "b3643bfccef8136ad4d1afa77e1f2ff0265b0667ecc58acbeaec4e635e880b14",
    "mixed.svg": "1ceeb319a42db2778c2287a3dcd21b91d4320d49d6f3d49e8eff5001bca68ee2",
    "engineering.py": "4aad9a751fb96f618924ae7362698e5ad99cbad615894ab28e8d5a8c67fb777f",
    "engineering.svg": "7bbf4f9a9e03ce744f113deef800306f39522a8bbedfbab89a8b82c2e99082a5",
    "feature_selection.py": "a33cbe3bac28b4ad466e227253fe18a54278ee449231759bdd1e09fa128a60bb",
    "feature_selection.svg": "4adf7833250371de5f76816aa90216416942b42bac3e3edd4f8f7ef472fffaa1",
    "model_tuning.py": "72e0b326bd889367312e9698b7a599e1074417f786839d5ea0f9f05152953315",
    "model_tuning.svg": "1932538404e28a7aa4e2613e90710f1e7869849adccf69a3c2ae0ea3db2e6109",
    "tuning.py": "fe80c3e2f8b99322bf63c32043aaff7a81c8e07fe86d1d09d846ebec481c3142",
    "tuning.svg": "a4a675262f0fc3141a41507216101aa1833202c9dedce715981f90ca6dee082f",
    "ablation.py": "8104dc4ca581f98204584d1b9599dbe7ee5684406fddb71810f680ac2b7b5126",
    "ablation.svg": "b5ab77aafbbe32c23cdcac20e8d2c7ebbab979c063b9028b01eb7e70d35b3059",
    "performance.py": "6c0e686db17c459dabb0d6e5bc2af650dfabf7ec5f1d9678bb16f2f1ef8dc8bb",
    "performance.svg": "84890533051b0d81178c41fb5c291e957ec0c6afc8fdd626108339bc981f776a",
    "observations.json": "19301aa3bfe156479474f4a9635f31d6d11bec6754121f59df2c3d43edd9556f",
    "requirements.txt": "02fc3c2c59658453a9322273e408832440d100afcf8480f0c972c4c9861e0cc4"
  },
  "size_budget_bytes": {
    "observations.json": 750000,
    "other": 250000
  }
}
