{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "Необязательное ДЗ по лекции \"Спектральная теория графов\". Масляков Глеб, группа 517." ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "collapsed": true }, "outputs": [], "source": [ "import numpy as np\n", "import networkx as nx\n", "import matplotlib.pyplot as plt\n", "%matplotlib inline" ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "collapsed": true }, "outputs": [], "source": [ "import warnings\n", "warnings.filterwarnings(\"ignore\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Изоспектральность деревьев" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Будем генерировать случайные деревья и сравнивать спектр по метрике MSE для разного числа вершин." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Сначала маленькие деревья." ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "collapsed": true }, "outputs": [], "source": [ "lst = []\n", "for n in range(10, 101):\n", " mse = 0\n", " for _ in range(10):\n", " G_1 = nx.generators.trees.random_tree(n)\n", " G_2 = nx.generators.trees.random_tree(n)\n", " s_1 = nx.adjacency_spectrum(G_1).astype(np.float64)\n", " s_2 = nx.adjacency_spectrum(G_2).astype(np.float64)\n", " s_1.sort()\n", " s_2.sort()\n", " mse += np.mean(np.square(s_1 - s_2))\n", " lst.append(mse / 10)" ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "[]" ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.figure(figsize=(5,5))\n", "plt.plot(np.arange(10,101), lst)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Потом побольше." ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "collapsed": false }, "outputs": [], "source": [ "lst = []\n", "for n in range(100, 3001, 100):\n", " mse = 0\n", " for _ in range(10):\n", " G_1 = nx.generators.trees.random_tree(n)\n", " G_2 = nx.generators.trees.random_tree(n)\n", " s_1 = nx.adjacency_spectrum(G_1).astype(np.float64)\n", " s_2 = nx.adjacency_spectrum(G_2).astype(np.float64)\n", " s_1.sort()\n", " s_2.sort()\n", " mse += np.mean(np.square(s_1 - s_2))\n", " lst.append(mse / 10)" ] }, { "cell_type": "code", "execution_count": 19, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "[]" ] }, "execution_count": 19, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\nAAAASUVORK5CYII=\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.figure(figsize=(5,5))\n", "plt.plot(np.arange(100, 3001, 100), lst)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Видно, что MSE спектров двух случайно выбранных деревьев в среднем стремится к нулю при росте $n$." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Для деревьев большего размера уже вычислительно сложно считать спектр." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Спектр Лапласа не распознаёт двудольность" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Пример коспектральных в смысле Лапласа графов. Один из этих графов двудольный, другой нет." ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "collapsed": true }, "outputs": [], "source": [ "G1 = nx.Graph()\n", "G2 = nx.Graph()\n", "G1.add_nodes_from([1,2,3,4,5,6])\n", "G2.add_nodes_from([1,2,3,4,5,6])\n", "G1.add_edges_from([(1,2), (2,3), (3,4), (4,1), (2,5), (5,6), (6,2)])\n", "G2.add_edges_from([(1,2), (2,3), (3,4), (4,1), (2,5), (5,4), (5,6)])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "В первом графе есть цикл нечётной длины $2 \\rightarrow 5 \\rightarrow 6 \\rightarrow 2$. Значит он не является двудольным." ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\nLCIiYjP/H+yGgvGkcsRMAAAAAElFTkSuQmCC\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "nx.draw_shell(G1, with_labels=True)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Во втором графе вершины $2,4,6$ и $3,5,1$ попарно несоединены. Значит он двудольный." ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\nIiLiZf4/p5czxEO2VL0AAAAASUVORK5CYII=\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "nx.draw_shell(G2, with_labels=True)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Матрица Лапласа первого графа" ] }, { "cell_type": "code", "execution_count": 7, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[[ 2 -1 0 -1 0 0]\n", " [-1 4 -1 0 -1 -1]\n", " [ 0 -1 2 -1 0 0]\n", " [-1 0 -1 2 0 0]\n", " [ 0 -1 0 0 2 -1]\n", " [ 0 -1 0 0 -1 2]]\n" ] } ], "source": [ "print(nx.laplacian_matrix(G1).toarray())" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Характеристический многочлен имеет вид: $(\\lambda-3)^2(\\lambda-2)\\lambda (\\lambda^2 - 6\\lambda + 4)$" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Матрица Лапласа второго графа." ] }, { "cell_type": "code", "execution_count": 8, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[[ 2 -1 0 -1 0 0]\n", " [-1 3 -1 0 -1 0]\n", " [ 0 -1 2 -1 0 0]\n", " [-1 0 -1 3 -1 0]\n", " [ 0 -1 0 -1 3 -1]\n", " [ 0 0 0 0 -1 1]]\n" ] } ], "source": [ "print(nx.laplacian_matrix(G2).toarray())" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Характеристический многочлен также имеет вид: $(\\lambda-3)^2(\\lambda-2)\\lambda (\\lambda^2 - 6\\lambda + 4)$" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "То есть их спектры Лапласа совпадают!" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "На всякий случай численно вычисленные собственные значения." ] }, { "cell_type": "code", "execution_count": 10, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "array([-9.69399495e-16, 7.63932023e-01, 2.00000000e+00, 3.00000000e+00,\n", " 3.00000000e+00, 5.23606798e+00])" ] }, "execution_count": 10, "metadata": {}, "output_type": "execute_result" } ], "source": [ "np.linalg.eigvalsh(nx.laplacian_matrix(G1).toarray())" ] }, { "cell_type": "code", "execution_count": 11, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "array([-1.21920032e-15, 7.63932023e-01, 2.00000000e+00, 3.00000000e+00,\n", " 3.00000000e+00, 5.23606798e+00])" ] }, "execution_count": 11, "metadata": {}, "output_type": "execute_result" } ], "source": [ "np.linalg.eigvalsh(nx.laplacian_matrix(G2).toarray())" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [] } ], "metadata": { "anaconda-cloud": {}, "kernelspec": { "display_name": "Python [Root]", "language": "python", "name": "Python [Root]" }, "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.5.2" } }, "nbformat": 4, "nbformat_minor": 0 }