{
  "nbformat": 4,
  "nbformat_minor": 0,
  "metadata": {
    "colab": {
      "provenance": []
    },
    "kernelspec": {
      "name": "python3",
      "display_name": "Python 3"
    },
    "language_info": {
      "name": "python"
    }
  },
  "cells": [
    {
      "cell_type": "code",
      "source": [
        "import numpy as np\n",
        "import matplotlib.pyplot as plt\n",
        "\n",
        "n_states = 16\n",
        "n_actions = 4\n",
        "goal_state = 15\n",
        "\n",
        "Q_table = np.zeros((n_states, n_actions))\n"
      ],
      "metadata": {
        "id": "6YAnPGJ9UbWf"
      },
      "execution_count": 1,
      "outputs": []
    },
    {
      "cell_type": "code",
      "source": [
        "learning_rate = 0.8\n",
        "discount_factor = 0.95\n",
        "exploration_prob = 0.2\n",
        "epochs = 1000\n"
      ],
      "metadata": {
        "id": "d0BoBAL6Ubsh"
      },
      "execution_count": 2,
      "outputs": []
    },
    {
      "cell_type": "code",
      "source": [
        "def get_next_state(state, action):\n",
        "    row, col = divmod(state, 4)\n",
        "\n",
        "    if action == 0 and col > 0:\n",
        "        col -= 1\n",
        "    elif action == 1 and col < 3:\n",
        "        col += 1\n",
        "    elif action == 2 and row > 0:\n",
        "        row -= 1\n",
        "    elif action == 3 and row < 3:\n",
        "        row += 1\n",
        "\n",
        "    return row * 4 + col\n"
      ],
      "metadata": {
        "id": "kecLiLNkUbzT"
      },
      "execution_count": 3,
      "outputs": []
    },
    {
      "cell_type": "code",
      "source": [
        "for epoch in range(epochs):\n",
        "    current_state = np.random.randint(0, n_states)\n",
        "\n",
        "    while True:\n",
        "        if np.random.rand() < exploration_prob:\n",
        "            action = np.random.randint(0, n_actions)\n",
        "        else:\n",
        "            action = np.argmax(Q_table[current_state])\n",
        "\n",
        "        next_state = get_next_state(current_state, action)\n",
        "\n",
        "        reward = 1 if next_state == goal_state else 0\n",
        "\n",
        "        Q_table[current_state, action] += learning_rate * (\n",
        "            reward + discount_factor * np.max(Q_table[next_state]) - Q_table[current_state, action]\n",
        "        )\n",
        "\n",
        "        if next_state == goal_state:\n",
        "            break\n",
        "\n",
        "        current_state = next_state\n"
      ],
      "metadata": {
        "id": "GA1mmPEqUb2T"
      },
      "execution_count": 4,
      "outputs": []
    },
    {
      "cell_type": "code",
      "source": [
        "q_values_grid = np.max(Q_table, axis=1).reshape((4, 4))\n",
        "\n",
        "plt.figure(figsize=(6, 6))\n",
        "plt.imshow(q_values_grid, cmap='coolwarm', interpolation='nearest')\n",
        "plt.colorbar(label='Q-value')\n",
        "plt.title('Learned Q-values for Each State')\n",
        "plt.xticks(np.arange(4), ['0', '1', '2', '3'])\n",
        "plt.yticks(np.arange(4), ['0', '1', '2', '3'])\n",
        "plt.gca().invert_yaxis()\n",
        "plt.grid(True)\n",
        "\n",
        "for i in range(4):\n",
        "    for j in range(4):\n",
        "        plt.text(j, i, f'{q_values_grid[i, j]:.2f}', ha='center', va='center', color='black')\n",
        "\n",
        "plt.show()\n",
        "\n",
        "print(\"Learned Q-table:\")\n",
        "print(Q_table)\n"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 794
        },
        "id": "lDNusUWim5Ul",
        "outputId": "d4ef5545-a976-401b-e113-798440abb825"
      },
      "execution_count": 5,
      "outputs": [
        {
          "output_type": "display_data",
          "data": {
            "text/plain": [
              "<Figure size 600x600 with 2 Axes>"
            ],
            "image/png": "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eecdh0aB2WwmJCSE5s2bExgYWKSYahSIiIiUQoMHD3Z6TDUKRETEbRkUw5iCUjzGfsuWLQUue8011xQ6vhoFIiIipUTjxo0xmUwYhpFvOZPJpMmLRETkyqIxBY727dtXrPHVKBAREbeVNaOhsx9JLL2NgipVqhRrfDUKRERESrF//vmHAwcOkJ6e7rC9V69ehY6lRoGIiLgtdR/kbe/evfTp04e///7bYZxB9mOKRRlTUHqHYIqIiFzFHnvsMapVq8bx48cpU6YM27ZtY/Xq1TRt2pSVK1cWKWaJZQpWrEvH2zf90gXdhMWUSdtKsGJdBtZLjPp0R+a2bUq6CoVmkAksZ6O5JSZz6UtqNexVoaSrUGhWqw12H+RszN1YLKXzO0OHcmVLugqFkmmysApo+2YvPIzCf7MrSYln0uDJd4r1HHpLYt7WrVvHTz/9RHBwMGazGbPZTJs2bRg3bhyPPvoof/75Z6Fjls7fehERkauc1WqlXLlyAAQHB3PkyBEgazDizp07ixSz9H39EhGRq4ZhmDAMJ2cKnByvpDRo0IC//vqLatWq0bx5c9544w28vLyYOnUq1atXL1JMNQpERERKof/973+kpKQA8OKLL3LTTTfRtm1bKlSowJw5c4oUU40CERFxY+ZimJb4yug579atm/3/a9SowY4dOzh58mSOtycWxpVxZ0RE5IqU/Uiis5crwWeffWbPFGQLCgoqcoMA1CgQEREplZ544gnCwsK48847+f7774s0L8HF1CgQERG3pUxB3o4ePcqXX36JyWTijjvuICIigmHDhrF27doix1SjQEREpBTy8PDgpptu4vPPP+f48eO888477N+/n44dOxIdHV20mE6uo4iIiNNomuOCKVOmDN26dePUqVP8999/bN++vUhxlCkQEREppVJTU/n888/p0aMHFStWZMKECfTp04dt27YVKZ4yBSIi4raUKchbv379WLRoEWXKlOGOO+7ghRdeoGXLlpcVU40CERGRUshisfDVV1/RrVs3LBaLU2Kq+0BERNxW9jTHzl6uBNndBhaLhddee43Tp09fdkw1CkRExG25wyOJq1evpmfPnkRGRmIymViwYIHD/sGDB2MymRyW7t27XzLupEmTqFq1Kj4+PjRv3pzff/+9UPW60KuvvsrJkyeLfHw2NQpERETykZKSQqNGjZg0aVKeZbp3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\n"
          },
          "metadata": {}
        },
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "Learned Q-table:\n",
            "[[12.42059108 13.12828402  9.64649941  8.38685619]\n",
            " [12.4058649  13.70673929 12.40562452 13.81924681]\n",
            " [11.5182582  14.5457676   9.82738645 14.25394111]\n",
            " [13.61580358 12.78553816 14.32320837 15.3121845 ]\n",
            " [11.74093567  8.06524516  3.44580865 13.81376551]\n",
            " [12.28626772 12.91524409 13.09937537 14.67923529]\n",
            " [ 8.82651103 15.31206808 13.10192887 14.87638963]\n",
            " [14.02849773 15.23929949 14.38487249 16.21016289]\n",
            " [13.36775052 14.65052003 12.31653404 13.79142056]\n",
            " [13.91633622 14.62101887 13.83538555 15.50782123]\n",
            " [13.86577562 16.33806019 14.29643719 13.45597691]\n",
            " [15.29003162 16.2028466  15.22371997 17.20405657]\n",
            " [14.03732145 15.42069045 12.79412622 14.11852529]\n",
            " [14.60128903 16.34328743 14.66744352 15.39940312]\n",
            " [15.27700317 17.20420599 15.3053891  16.17748193]\n",
            " [14.9542415  17.05709817  8.78760795 13.84864754]]\n"
          ]
        }
      ]
    }
  ]
}