{
 "cells": [
  {
   "cell_type": "markdown",
   "id": "7d8922ca",
   "metadata": {},
   "source": [
    "# Telemetry & Solver Diagnostics\n",
    "\n",
    "Explore a sample heuristic telemetry log and visualise convergence metrics."
   ]
  },
  {
   "cell_type": "markdown",
   "id": "18618ecb",
   "metadata": {},
   "source": [
    "**Telemetry analysis not found**: generate reports"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "id": "ddc43779",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2025-11-14T10:34:54.442701Z",
     "iopub.status.busy": "2025-11-14T10:34:54.441763Z",
     "iopub.status.idle": "2025-11-14T10:34:55.078154Z",
     "shell.execute_reply": "2025-11-14T10:34:55.077544Z"
    }
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>iteration</th>\n",
       "      <th>objective</th>\n",
       "      <th>accepted</th>\n",
       "      <th>temperature</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>0</td>\n",
       "      <td>200</td>\n",
       "      <td>10</td>\n",
       "      <td>1.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>50</td>\n",
       "      <td>195</td>\n",
       "      <td>11</td>\n",
       "      <td>0.500000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>100</td>\n",
       "      <td>190</td>\n",
       "      <td>12</td>\n",
       "      <td>0.333333</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>150</td>\n",
       "      <td>185</td>\n",
       "      <td>13</td>\n",
       "      <td>0.250000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>200</td>\n",
       "      <td>180</td>\n",
       "      <td>14</td>\n",
       "      <td>0.200000</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "   iteration  objective  accepted  temperature\n",
       "0          0        200        10     1.000000\n",
       "1         50        195        11     0.500000\n",
       "2        100        190        12     0.333333\n",
       "3        150        185        13     0.250000\n",
       "4        200        180        14     0.200000"
      ]
     },
     "execution_count": 1,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "import sys\n",
    "from pathlib import Path\n",
    "\n",
    "PROJECT_ROOT = Path.cwd().resolve()\n",
    "while PROJECT_ROOT != PROJECT_ROOT.parent and not (PROJECT_ROOT / \"pyproject.toml\").exists():\n",
    "    PROJECT_ROOT = PROJECT_ROOT.parent\n",
    "if not (PROJECT_ROOT / \"pyproject.toml\").exists():\n",
    "    raise RuntimeError(\n",
    "        \"Notebook must be executed within a FHOPS checkout (pyproject.toml not found).\"\n",
    "    )\n",
    "if str(PROJECT_ROOT) not in sys.path:\n",
    "    sys.path.insert(0, str(PROJECT_ROOT))\n",
    "\n",
    "\n",
    "import json\n",
    "\n",
    "import matplotlib.pyplot as plt\n",
    "import pandas as pd\n",
    "\n",
    "TELEMETRY_PATH = PROJECT_ROOT / \"docs/examples/analytics/data/telemetry_tiny7.jsonl\"\n",
    "with TELEMETRY_PATH.open(\"r\", encoding=\"utf-8\") as f:\n",
    "    telemetry = [json.loads(line) for line in f]\n",
    "telemetry_df = pd.DataFrame(telemetry)\n",
    "telemetry_df.head()"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "76329d09",
   "metadata": {},
   "source": [
    "## Objective Trace"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "id": "cb58d9d4",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2025-11-14T10:34:55.081843Z",
     "iopub.status.busy": "2025-11-14T10:34:55.081563Z",
     "iopub.status.idle": "2025-11-14T10:34:55.221930Z",
     "shell.execute_reply": "2025-11-14T10:34:55.221337Z"
    }
   },
   "outputs": [
    {
     "data": {
      "image/png": "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",
      "text/plain": [
       "<Figure size 600x300 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig, ax = plt.subplots(figsize=(6, 3))\n",
    "ax.plot(telemetry_df[\"iteration\"], telemetry_df[\"objective\"], marker=\"o\")\n",
    "ax.set_xlabel(\"Iteration\")\n",
    "ax.set_ylabel(\"Objective\")\n",
    "ax.set_title(\"Objective Convergence\")\n",
    "fig.tight_layout()"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "f1c58f45",
   "metadata": {},
   "source": [
    "## Acceptance Summary"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "id": "384caa5f",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2025-11-14T10:34:55.225364Z",
     "iopub.status.busy": "2025-11-14T10:34:55.225206Z",
     "iopub.status.idle": "2025-11-14T10:34:55.232349Z",
     "shell.execute_reply": "2025-11-14T10:34:55.231760Z"
    }
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>iteration</th>\n",
       "      <th>accepted</th>\n",
       "      <th>temperature</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>0</td>\n",
       "      <td>10</td>\n",
       "      <td>1.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>50</td>\n",
       "      <td>11</td>\n",
       "      <td>0.500000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>100</td>\n",
       "      <td>12</td>\n",
       "      <td>0.333333</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>150</td>\n",
       "      <td>13</td>\n",
       "      <td>0.250000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>200</td>\n",
       "      <td>14</td>\n",
       "      <td>0.200000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>5</th>\n",
       "      <td>250</td>\n",
       "      <td>15</td>\n",
       "      <td>0.166667</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "   iteration  accepted  temperature\n",
       "0          0        10     1.000000\n",
       "1         50        11     0.500000\n",
       "2        100        12     0.333333\n",
       "3        150        13     0.250000\n",
       "4        200        14     0.200000\n",
       "5        250        15     0.166667"
      ]
     },
     "execution_count": 3,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "telemetry_df[[\"iteration\", \"accepted\", \"temperature\"]]"
   ]
  }
 ],
 "metadata": {
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.12.3"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
