Skip to content

Instantly share code, notes, and snippets.

@yogabonito
Created September 10, 2017 21:27
Show Gist options
  • Save yogabonito/50b573d8f7ee9d66d81a2973689bc9ec to your computer and use it in GitHub Desktop.
Save yogabonito/50b573d8f7ee9d66d81a2973689bc9ec to your computer and use it in GitHub Desktop.
comparison of the clusterings produced by `region` and `clusterpy`
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Clustering comparison: AZP in `region` and `clusterpy`"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"In this notebook we will compare the clusterings produced by `region` and `clusterpy` based on a dataset which is also used in the problems 4, 5, and 6 in [Duque et al. (2011)](https://www.google.at/url?sa=t&rct=j&q=&esrc=s&source=web&cd=2&cad=rja&uact=8&ved=0ahUKEwiK2efWuprWAhVFvBQKHRouACIQFgg9MAE&url=http%3A%2F%2Fonlinelibrary.wiley.com%2Fdoi%2F10.1111%2Fj.1538-4632.2010.00810.x%2Fabstract&usg=AFQjCNF--NAHN98PKuR-gVNQPTk34XDdnA) (see table 4 and figure 5 on page 119). In these three problems, the dataset is clustered into 3, 4, and 6 clusters respectively. Juan Carlos Duque, one of the authors of the mentioned paper, provided me with the .shp- and .dbf-files used in the paper. These files include geographic information together with an clustering-relevant attribute for each area. Additionally, the files contain an optimal solution to each of the three problems we will consider.\n",
"\n",
"In the following, we will run the AZP implementations of `region` and `clusterpy` a number of times for each problem. We will collect the generated solution and calculate the objective values they attain. Then we will plot these objective values as boxplots. Each plot corresponds to one of the three problems and contains a boxplot for `region` and one depicting `clusterpy`'s performance. Please note that the goal is to minimize the objective function so lower values are better."
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"ClusterPy: Library of spatially constrained clustering algorithms\n",
"Some functions are not available, reason: No module named 'Polygon'\n",
"Some functions are not available, reason: No module named 'Polygon'\n"
]
}
],
"source": [
"%matplotlib inline\n",
"import time\n",
"\n",
"import clusterpy as cp\n",
"import geopandas as gpd\n",
"import numpy as np\n",
"import networkx as nx\n",
"import pandas as pd\n",
"import matplotlib.pyplot as plt\n",
"import libpysal.api as ps_api\n",
"\n",
"from region.p_regions.azp import AZP"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"from region.util import objective_func_arr"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [],
"source": [
"from sklearn.metrics.pairwise import distance_metrics\n",
"metric = distance_metrics()[\"manhattan\"]"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Util functions"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"def convert_from_geodataframe(gdf):\n",
" w = ps_api.Rook.from_dataframe(gdf)\n",
" graph = w.to_networkx()\n",
" adj = nx.to_scipy_sparse_matrix(graph)\n",
" neighbor_dict = w.neighbors\n",
" return adj, graph, neighbor_dict, w"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"def objectives_region(geodataframe, n_regions, n_experiments):\n",
" adj = convert_from_geodataframe(geodataframe)[0] # use sparse matrix instead of GeoDataFrame\n",
" attr = geodataframe.VARIABLE0\n",
" region_results = []\n",
" for random_state in range(n_experiments):\n",
" azp = AZP(random_state=random_state)\n",
" azp.fit_from_scipy_sparse_matrix(adj=adj, n_regions=n_regions, data=np.array(attr))\n",
" region_results.append(azp.labels_)\n",
" # ... and calculate the objective values corresponding to the results\n",
" objectives = []\n",
" for result in region_results:\n",
" objectives.append(objective_func_arr(metric, result, attr).item())\n",
" objectives\n",
" return objectives"
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"def objectives_clusterpy(example, n_regions, attr, n_experiments):\n",
" \"\"\" \n",
" Parameters\n",
" ----------\n",
" example : str, {\"EX5\", \"EX7\"}\n",
" \"EX5\" --> use the 5x5 grid dataset.\n",
" \"EX7\" --> use the 7x7 grid dataset.\n",
" n_regions : int\n",
" Number of regions to cluster the dataset into.\n",
" attr : :class:`numpy.ndarray`\n",
" The areas' attributes.\n",
" \"\"\"\n",
" if example not in [\"EX5\", \"EX7\"]:\n",
" raise ValueError(\"Choose 'EX5' or 'EX7' as `example` argument.\")\n",
" layer = cp.importArcData(example)\n",
" method = 'azp'\n",
" # run clusterpy's azp\n",
" cp_results = []\n",
" for _ in range(n_experiments):\n",
" layer.cluster(method, ['VARIABLE0'], n_regions)\n",
" labels = layer.region2areas\n",
" cp_results.append(np.array(labels))\n",
" # ... and calculate the objective values corresponding to the results\n",
" objectives = []\n",
" for result in cp_results:\n",
" objectives.append(objective_func_arr(metric, np.array(result), attr).item())\n",
" return objectives"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"def compare_boxplot_objectives(geodataframe, example, n_regions, n_experiments):\n",
" attr = geodataframe.VARIABLE0\n",
" \n",
" region_results = objectives_region(geodataframe, n_regions, n_experiments)\n",
" cp_results = objectives_clusterpy(example, n_regions, attr, n_experiments)\n",
" \n",
" df = pd.DataFrame(np.array([region_results, cp_results]).T, columns=['region', 'clusterpy'])\n",
" df.boxplot()\n",
" return region_results, cp_results"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# 5x5 dataset from [Duque et al. (2011)](https://www.google.at/url?sa=t&rct=j&q=&esrc=s&source=web&cd=2&cad=rja&uact=8&ved=0ahUKEwiK2efWuprWAhVFvBQKHRouACIQFgg9MAE&url=http%3A%2F%2Fonlinelibrary.wiley.com%2Fdoi%2F10.1111%2Fj.1538-4632.2010.00810.x%2Fabstract&usg=AFQjCNF--NAHN98PKuR-gVNQPTk34XDdnA)"
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAP4AAAD8CAYAAABXXhlaAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAC/lJREFUeJzt3X+snQV5wPHvYy8GiwNrSohruavJCAsh89fJUm8jM7Zb\nUFzrHJmY4DqnqRCHhZkYWLKQ/TX/MAhxrnhTmSwQdCndWplzYNHh6Gh2W8iEVgPBFVqLxTSzRP9g\nzGd/3MNyubnXe3Le99zzluf7Sd7cc07f+54nvf3e9z3nvvdtZCaSannNuAeQtPwMXyrI8KWCDF8q\nyPClggxfKsjwpYIMXyrI8KWCJpbzyVavXp3r1q1bzqeUSjl48OBPMvP8pdZb1vDXrVvHzMzMcj6l\nVEpEHB1kPQ/1pYIMXyrI8KWCDF8qyPClgpYMPyLuiIiTEfH4nMfeGBEPRMST/Y+rRjumpDYNssf/\nCnD5vMduBPZl5kXAvv59SWeIJcPPzIeAU/Me3gLc2b99J/CBlueSNELDnsBzQWae6N9+DrhgsRUj\nYhuwDWBycnKgjZ9z3rn8/PQLQ44mvfqsWrWKU6fm73+H1/jMvczMiFj0ip2ZOQ1MA/R6vYGu7Pnz\n0y/w+UcebjraSNywfgN33PXdcY+xqD+5+l383V/tGfcYC/qjm7awY+/+cY+xqGs3T7Hza938d/fx\nD21odXvDvqv/44h4E0D/48n2RpI0asOGvxfY2r+9FejmLkbSggb5cd49wL8DF0fEsYj4GPBZ4Hci\n4klgU/++pDPEkq/xM/PDi/zRxpZnkbRMPHNPKsjwpYIMXyrI8KWCDF8qyPClggxfKsjwpYIMXyrI\n8KWCDF8qyPClggxfKsjwpYIMXyrI8KWCDF8qyPClggxfKsjwpYIMXyrI8KWCDF8qyPClggxfKsjw\npYIMXyrI8KWCDF8qyPClghqFHxE3RMQTEfF4RNwTEWe3NZik0Rk6/IhYA3wK6GXmpcAK4Kq2BpM0\nOk0P9SeA10XEBLAS+FHzkSSN2tDhZ+Zx4HPAM8AJ4KeZeX9bg0kaocwcagFWAQ8C5wNnAf8IXL3A\netuAGWBmcnIyBwG4uLjMWwZsZ2aQficY3ibgh5n5PEBE7AamgLvmrpSZ08A0QK/Xy0E3fvue/Q1G\nG51rtkyx4+vdnA3g2t+b4s6bvzbuMRa09S8/xJd2PzzuMRb1iQ9u4Ev/0M35PvH7G1rdXpPX+M8A\n6yNiZUQEsBE40s5YkkapyWv8A8Au4BDwvf62pluaS9IINTnUJzNvBm5uaRZJy8Qz96SCDF8qyPCl\nggxfKsjwpYIMXyrI8KWCDF8qyPClggxfKsjwpYIMXyrI8KWCDF8qyPClggxfKsjwpYIMXyrI8KWC\nDF8qyPClggxfKsjwpYIMXyrI8KWCDF8qyPClggxfKsjwpYIMXyrI8KWCGoUfEW+IiF0R8f2IOBIR\n72xrMEmjM9Hw828DvpmZV0bEa4GVLcwkacSGDj8izgMuA/4YIDNfBF5sZyxJoxSZOdwnRrwVmAYO\nA28BDgLbM/Nn89bbBmwDmJycfMfRo0cH2fZQM0mvZoO0GhEHM7O35HoNwu8BjwAbMvNARNwGnM7M\nv1jsc3q9Xs7MzAyybW7fs3+ouUbtmi1T7NjbzdkArt08xRf/uZvzffK9U9z63W7OBnD9u6b439O3\njXuMBa04d3ur4Td5c+8YcCwzD/Tv7wLe3mB7kpbJ0OFn5nPAsxFxcf+hjcwe9kvquKbv6l8H3N1/\nR/9p4KPNR5I0ao3Cz8zHgCVfT0jqFs/ckwoyfKkgw5cKMnypIMOXCjJ8qSDDlwoyfKkgw5cKMnyp\nIMOXCjJ8qSDDlwoyfKkgw5cKMnypIMOXCjJ8qSDDlwoyfKkgw5cKMnypIMOXCjJ8qSDDlwoyfKkg\nw5cKMnypIMOXCjJ8qaDG4UfEioh4NCLua2MgSaPXxh5/O3Ckhe1IWiaNwo+ItcAVwM52xpG0HJru\n8W8FPgP8ooVZJC2XzBxqAd4P/E3/9ruB+xZZbxswA8xMTk7mIAAXF5d5y4DtzAzS7wTD2wBsjoj3\nAWcD50bEXZl59dyVMnMamAbo9Xo56MZv/c9/bTDa6Fz/m7/NF/btH/cYi7pu4xS3PPbQuMdY0J+9\n9TI+/8jD4x5jUTes38AXvtXNr+11m6Za3d7Qh/qZeVNmrs3MdcBVwIPzo5fUTf4cXyqoyaH+/8vM\n7wDfaWNbkkbPPb5UkOFLBRm+VJDhSwUZvlSQ4UsFGb5UkOFLBRm+VJDhSwUZvlSQ4UsFGb5UkOFL\nBRm+VJDhSwUZvlSQ4UsFGb5UkOFLBRm+VJDhSwUZvlSQ4UsFGb5UkOFLBRm+VJDhSwUZvlSQ4UsF\nGb5U0NDhR8SFEfHtiDgcEU9ExPY2B5M0OhMNPvcl4NOZeSgifgU4GBEPZObhlmaTNCJD7/Ez80Rm\nHurffgE4AqxpazBJoxOZ2XwjEeuAh4BLM/P0vD/bBmwDmJycfMfRo0eX3t5rApqPJb2qDNJqRBzM\nzN5S6zU51H/5iV4P3AtcPz96gMycBqYBer3eYDkn7D1+b9PRRmLzmj/gn47vGvcYi7pizZXsfOr+\ncY+xoI//+u9y+5794x5jUddsmWLHD7417jEWdO3Fm1rdXqN39SPiLGajvzszd7czkqRRa/KufgBf\nBo5k5i3tjSRp1Jrs8TcAHwHeExGP9Zf3tTSXpBEa+jV+Zv4bEC3OImmZeOaeVJDhSwUZvlSQ4UsF\nGb5UkOFLBRm+VJDhSwUZvlSQ4UsFGb5UkOFLBRm+VJDhSwUZvlSQ4UsFGb5UkOFLBRm+VJDhSwUZ\nvlSQ4UsFGb5UkOFLBRm+VJDhSwUZvlSQ4UsFGb5UkOFLBTUKPyIuj4gfRMRTEXFjW0NJGq2hw4+I\nFcAXgfcClwAfjohL2hpM0ug02eP/FvBUZj6dmS8CXwW2tDOWpFFqEv4a4Nk594/1H5PUdZk51AJc\nCeycc/8jwF8vsN42YAaYmZyczEGsWrUqARcXlznLIICZQfqdYHjHgQvn3F/bf+wVMnMamAbo9Xo5\nyIZPnTrVYCxJS2lyqP8fwEUR8eaIeC1wFbC3nbEkjdLQe/zMfCki/hT4F2AFcEdmPtHaZJJGpsmh\nPpn5DeAbLc0iaZl45p5UkOFLBRm+VJDhSwUZvlRQ9M+uW54ni3geODrAqquBn4x4nGF1eTbo9nxd\nng26Pd+gs/1aZp6/1ErLGv6gImImM3vjnmMhXZ4Nuj1fl2eDbs/X9mwe6ksFGb5UUFfDnx73AL9E\nl2eDbs/X5dmg2/O1OlsnX+NLGq2u7vEljVCnwu/yxTsj4sKI+HZEHI6IJyJi+7hnmi8iVkTEoxFx\n37hnmS8i3hARuyLi+xFxJCLeOe6ZXhYRN/S/po9HxD0RcfaY57kjIk5GxONzHntjRDwQEU/2P65q\n8hydCf8MuHjnS8CnM/MSYD3wyY7NB7AdODLuIRZxG/DNzPwN4C10ZM6IWAN8Cuhl5qXM/or5VeOd\niq8Al8977EZgX2ZeBOzr3x9aZ8Kn4xfvzMwTmXmof/sFZv/hduYagxGxFrgC2DnuWeaLiPOAy4Av\nA2Tmi5n53+Od6hUmgNdFxASwEvjROIfJzIeA+Zeh2gLc2b99J/CBJs/RpfDPmIt3RsQ64G3AgfFO\n8gq3Ap8BfjHuQRbwZuB54G/7L0V2RsQ54x4KIDOPA58DngFOAD/NzPvHO9WCLsjME/3bzwEXNNlY\nl8I/I0TE64F7gesz8/S45wGIiPcDJzPz4LhnWcQE8HZgR2a+DfgZDQ9V29J/rbyF2W9OvwqcExFX\nj3eqX65/Uc1GP47rUvgDXbxznCLiLGajvzszd497njk2AJsj4r+YfYn0noi4a7wjvcIx4FhmvnyE\ntIvZbwRdsAn4YWY+n5n/A+wGpsY800J+HBFvAuh/PNlkY10Kv9MX74yIYPY16pHMvGXc88yVmTdl\n5trMXMfs39uDmdmZvVZmPgc8GxEX9x/aCBwe40hzPQOsj4iV/a/xRjryxuM8e4Gt/dtbgT1NNtbo\nmnttOgMu3rmB2f874HsR8Vj/sT/vX3dQS7sOuLv/Tf1p4KNjngeAzDwQEbuAQ8z+5OZRxnwGX0Tc\nA7wbWB0Rx4Cbgc8Cfx8RH2P2N1z/sNFzeOaeVE+XDvUlLRPDlwoyfKkgw5cKMnypIMOXCjJ8qSDD\nlwr6PzWe6wpOTHYYAAAAAElFTkSuQmCC\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x7fd6686f9240>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"df5 = gpd.read_file(\"EX5.shp\")\n",
"df5.plot(column=\"VARIABLE0\")\n",
"attr5 = np.array(df5.VARIABLE0)"
]
},
{
"cell_type": "code",
"execution_count": 9,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"n_experiments = 16"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## clustering into 3 regions (problem 4 in [Duque et al. (2011)](https://www.google.at/url?sa=t&rct=j&q=&esrc=s&source=web&cd=2&cad=rja&uact=8&ved=0ahUKEwiK2efWuprWAhVFvBQKHRouACIQFgg9MAE&url=http%3A%2F%2Fonlinelibrary.wiley.com%2Fdoi%2F10.1111%2Fj.1538-4632.2010.00810.x%2Fabstract&usg=AFQjCNF--NAHN98PKuR-gVNQPTk34XDdnA))"
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"n_regions_per_comp {0: 3}\n",
"comp_label 0\n",
"n_regions_in_comp 3\n",
"Regions in comp: {0, 1, 2}\n",
"comp_adj.shape: (25, 25)\n",
"initial_clustering [0 0 1 2 2 0 0 1 2 2 0 1 1 2 2 0 1 1 1 2 0 1 1 1 1]\n",
"data [[ 1.116]\n",
" [-0.024]\n",
" [-0.733]\n",
" [ 0.369]\n",
" [ 0.118]\n",
" [ 0.344]\n",
" [ 0.428]\n",
" [-0.915]\n",
" [ 0.267]\n",
" [ 0.29 ]\n",
" [ 0.364]\n",
" [ 0.38 ]\n",
" [ 0.548]\n",
" [ 0.926]\n",
" [ 3.037]\n",
" [ 1.433]\n",
" [ 0.743]\n",
" [ 1.363]\n",
" [ 1.106]\n",
" [ 0.721]\n",
" [ 2.126]\n",
" [ 2.156]\n",
" [ 1.758]\n",
" [ 0.339]\n",
" [ 1.669]]\n",
"start with obj. val.: [[ 103.438]]\n",
"RN {0: {16, 2, 11, 21, 7}, 1: {1, 3, 6, 8, 10, 13, 15, 19, 20}, 2: {24, 2, 18, 12, 7}}\n",
"step 2\n",
"step 3\n",
" chosen region: 2\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 24 from 1 to 2\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 23 from 1 to 2\n",
" donor is losing {24} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 18 from 1 to 2\n",
" donor is losing {19} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 1\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 0\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 11 from 1 to 0\n",
" donor is losing {10} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 16 from 1 to 0\n",
" donor is losing {15} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"n_regions_per_comp {0: 3}\n",
"comp_label 0\n",
"n_regions_in_comp 3\n",
"Regions in comp: {0, 1, 2}\n",
"comp_adj.shape: (25, 25)\n",
"initial_clustering [0 0 1 1 1 2 0 1 1 1 2 1 1 1 1 2 1 1 1 1 2 1 1 1 1]\n",
"data [[ 1.116]\n",
" [-0.024]\n",
" [-0.733]\n",
" [ 0.369]\n",
" [ 0.118]\n",
" [ 0.344]\n",
" [ 0.428]\n",
" [-0.915]\n",
" [ 0.267]\n",
" [ 0.29 ]\n",
" [ 0.364]\n",
" [ 0.38 ]\n",
" [ 0.548]\n",
" [ 0.926]\n",
" [ 3.037]\n",
" [ 1.433]\n",
" [ 0.743]\n",
" [ 1.363]\n",
" [ 1.106]\n",
" [ 0.721]\n",
" [ 2.126]\n",
" [ 2.156]\n",
" [ 1.758]\n",
" [ 0.339]\n",
" [ 1.669]]\n",
"start with obj. val.: [[ 175.029]]\n",
"RN {0: {2, 11, 5, 7}, 1: {1, 10, 20, 6, 15}, 2: {0, 16, 11, 21, 6}}\n",
"step 2\n",
"step 3\n",
" chosen region: 0\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 2 from 1 to 0\n",
" donor is losing {1} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 11 from 1 to 0\n",
" donor is losing {10} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 3 from 1 to 0\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 8 from 1 to 0\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 13 from 1 to 0\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 18 from 1 to 0\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 4 from 1 to 0\n",
" donor is losing {3} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 16 from 1 to 0\n",
" donor is losing {15} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 9 from 1 to 0\n",
" donor is losing {4} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 7 from 1 to 0\n",
" donor is losing {8, 2, 6} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 12 from 1 to 0\n",
" donor is losing {11, 7} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 1\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 18 from 0 to 1\n",
" donor is losing {19, 23} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 13 from 0 to 1\n",
" donor is losing {18} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 2\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 16 from 0 to 2\n",
" donor is losing {21, 15} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 17 from 1 to 2\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 11 from 0 to 2\n",
" donor is losing {16, 10} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 0 from 0 to 2\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 18 from 1 to 2\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 13 from 1 to 2\n",
" donor is losing {8, 12} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"n_regions_per_comp {0: 3}\n",
"comp_label 0\n",
"n_regions_in_comp 3\n",
"Regions in comp: {0, 1, 2}\n",
"comp_adj.shape: (25, 25)\n",
"initial_clustering [0 0 0 1 1 0 0 0 2 1 0 0 0 2 1 0 0 0 2 1 0 0 0 0 0]\n",
"data [[ 1.116]\n",
" [-0.024]\n",
" [-0.733]\n",
" [ 0.369]\n",
" [ 0.118]\n",
" [ 0.344]\n",
" [ 0.428]\n",
" [-0.915]\n",
" [ 0.267]\n",
" [ 0.29 ]\n",
" [ 0.364]\n",
" [ 0.38 ]\n",
" [ 0.548]\n",
" [ 0.926]\n",
" [ 3.037]\n",
" [ 1.433]\n",
" [ 0.743]\n",
" [ 1.363]\n",
" [ 1.106]\n",
" [ 0.721]\n",
" [ 2.126]\n",
" [ 2.156]\n",
" [ 1.758]\n",
" [ 0.339]\n",
" [ 1.669]]\n",
"start with obj. val.: [[ 156.342]]\n",
"RN {0: {8, 19, 18, 3, 13}, 1: {8, 24, 2, 18, 13}, 2: {3, 7, 9, 12, 14, 17, 19, 23}}\n",
"step 2\n",
"step 3\n",
" chosen region: 2\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 3 from 1 to 2\n",
" donor is losing {2} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 17 from 0 to 2\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 19 from 1 to 2\n",
" donor is losing {24, 18} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 16 from 0 to 2\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 24 from 0 to 2\n",
" donor is losing {19} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 12 from 0 to 2\n",
" donor is losing {13} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 7 from 0 to 2\n",
" donor is losing {8} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 11 from 0 to 2\n",
" donor is losing {12} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 23 from 0 to 2\n",
" donor is losing {24, 18} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 6 from 0 to 2\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 1\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 13 from 2 to 1\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 12 from 2 to 1\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 3 from 2 to 1\n",
" donor is losing {4} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 19 from 2 to 1\n",
" donor is losing {14} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 2 from 0 to 1\n",
" donor is losing {3, 7} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 1 from 0 to 1\n",
" donor is losing {2} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 0\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"n_regions_per_comp {0: 3}\n",
"comp_label 0\n",
"n_regions_in_comp 3\n",
"Regions in comp: {0, 1, 2}\n",
"comp_adj.shape: (25, 25)\n",
"initial_clustering [0 0 1 2 2 0 0 1 1 2 0 0 1 1 2 0 0 1 1 2 0 0 1 1 1]\n",
"data [[ 1.116]\n",
" [-0.024]\n",
" [-0.733]\n",
" [ 0.369]\n",
" [ 0.118]\n",
" [ 0.344]\n",
" [ 0.428]\n",
" [-0.915]\n",
" [ 0.267]\n",
" [ 0.29 ]\n",
" [ 0.364]\n",
" [ 0.38 ]\n",
" [ 0.548]\n",
" [ 0.926]\n",
" [ 3.037]\n",
" [ 1.433]\n",
" [ 0.743]\n",
" [ 1.363]\n",
" [ 1.106]\n",
" [ 0.721]\n",
" [ 2.126]\n",
" [ 2.156]\n",
" [ 1.758]\n",
" [ 0.339]\n",
" [ 1.669]]\n",
"start with obj. val.: [[ 101.53]]\n",
"RN {0: {17, 2, 12, 22, 7}, 1: {1, 3, 6, 9, 11, 14, 16, 19, 21}, 2: {8, 24, 2, 18, 13}}\n",
"step 2\n",
"step 3\n",
" chosen region: 2\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 8 from 1 to 2\n",
" donor is losing {9} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 24 from 1 to 2\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 18 from 1 to 2\n",
" donor is losing {19} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 23 from 1 to 2\n",
" donor is losing {24} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 1\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 18 from 2 to 1\n",
" donor is losing {17} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 6 from 0 to 1\n",
" donor is losing {7} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 1 from 0 to 1\n",
" donor is losing {2} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 0\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 22 from 1 to 0\n",
" donor is losing {21} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 17 from 1 to 0\n",
" donor is losing {16, 22} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 18 from 1 to 0\n",
" donor is losing {19, 23} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"n_regions_per_comp {0: 3}\n",
"comp_label 0\n",
"n_regions_in_comp 3\n",
"Regions in comp: {0, 1, 2}\n",
"comp_adj.shape: (25, 25)\n",
"initial_clustering [0 0 1 2 2 0 0 1 2 2 0 1 1 2 2 0 1 1 1 2 0 1 1 1 1]\n",
"data [[ 1.116]\n",
" [-0.024]\n",
" [-0.733]\n",
" [ 0.369]\n",
" [ 0.118]\n",
" [ 0.344]\n",
" [ 0.428]\n",
" [-0.915]\n",
" [ 0.267]\n",
" [ 0.29 ]\n",
" [ 0.364]\n",
" [ 0.38 ]\n",
" [ 0.548]\n",
" [ 0.926]\n",
" [ 3.037]\n",
" [ 1.433]\n",
" [ 0.743]\n",
" [ 1.363]\n",
" [ 1.106]\n",
" [ 0.721]\n",
" [ 2.126]\n",
" [ 2.156]\n",
" [ 1.758]\n",
" [ 0.339]\n",
" [ 1.669]]\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"start with obj. val.: [[ 103.438]]\n",
"RN {0: {16, 2, 11, 21, 7}, 1: {1, 3, 6, 8, 10, 13, 15, 19, 20}, 2: {24, 2, 18, 12, 7}}\n",
"step 2\n",
"step 3\n",
" chosen region: 1\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 0\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 16 from 1 to 0\n",
" donor is losing {15} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 11 from 1 to 0\n",
" donor is losing {10} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 2 from 1 to 0\n",
" donor is losing {1, 3} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 7 from 1 to 0\n",
" donor is losing {8, 2, 6} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 2\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 12 from 1 to 2\n",
" donor is losing {11, 7} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 7 from 0 to 2\n",
" donor is losing {8} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 11 from 0 to 2\n",
" donor is losing {12} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"n_regions_per_comp {0: 3}\n",
"comp_label 0\n",
"n_regions_in_comp 3\n",
"Regions in comp: {0, 1, 2}\n",
"comp_adj.shape: (25, 25)\n",
"initial_clustering [0 0 1 1 1 0 0 1 1 1 0 0 1 1 1 0 0 1 1 1 0 0 2 2 2]\n",
"data [[ 1.116]\n",
" [-0.024]\n",
" [-0.733]\n",
" [ 0.369]\n",
" [ 0.118]\n",
" [ 0.344]\n",
" [ 0.428]\n",
" [-0.915]\n",
" [ 0.267]\n",
" [ 0.29 ]\n",
" [ 0.364]\n",
" [ 0.38 ]\n",
" [ 0.548]\n",
" [ 0.926]\n",
" [ 3.037]\n",
" [ 1.433]\n",
" [ 0.743]\n",
" [ 1.363]\n",
" [ 1.106]\n",
" [ 0.721]\n",
" [ 2.126]\n",
" [ 2.156]\n",
" [ 1.758]\n",
" [ 0.339]\n",
" [ 1.669]]\n",
"start with obj. val.: [[ 116.819]]\n",
"RN {0: {17, 2, 12, 22, 7}, 1: {1, 6, 11, 16, 22, 23, 24}, 2: {17, 18, 19, 21}}\n",
"step 2\n",
"step 3\n",
" chosen region: 2\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 17 from 1 to 2\n",
" donor is losing {16, 22} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 16 from 0 to 2\n",
" donor is losing {17} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 11 from 0 to 2\n",
" donor is losing {12} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 18 from 1 to 2\n",
" donor is losing {23} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 19 from 1 to 2\n",
" donor is losing {24} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 12 from 1 to 2\n",
" donor is losing {17, 11} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 14 from 1 to 2\n",
" donor is losing {19} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 0\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 16 from 2 to 0\n",
" donor is losing {15} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 11 from 2 to 0\n",
" donor is losing {10, 6} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 12 from 2 to 0\n",
" donor is losing {11, 7} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 1\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 1 from 0 to 1\n",
" donor is losing {2} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 12 from 0 to 1\n",
" donor is losing {13} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 6 from 0 to 1\n",
" donor is losing {7} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 11 from 0 to 1\n",
" donor is losing {12} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"n_regions_per_comp {0: 3}\n",
"comp_label 0\n",
"n_regions_in_comp 3\n",
"Regions in comp: {0, 1, 2}\n",
"comp_adj.shape: (25, 25)\n",
"initial_clustering [0 0 1 2 2 0 0 1 2 2 0 0 1 2 2 0 0 2 2 2 0 0 2 2 2]\n",
"data [[ 1.116]\n",
" [-0.024]\n",
" [-0.733]\n",
" [ 0.369]\n",
" [ 0.118]\n",
" [ 0.344]\n",
" [ 0.428]\n",
" [-0.915]\n",
" [ 0.267]\n",
" [ 0.29 ]\n",
" [ 0.364]\n",
" [ 0.38 ]\n",
" [ 0.548]\n",
" [ 0.926]\n",
" [ 3.037]\n",
" [ 1.433]\n",
" [ 0.743]\n",
" [ 1.363]\n",
" [ 1.106]\n",
" [ 0.721]\n",
" [ 2.126]\n",
" [ 2.156]\n",
" [ 1.758]\n",
" [ 0.339]\n",
" [ 1.669]]\n",
"start with obj. val.: [[ 105.605]]\n",
"RN {0: {17, 2, 12, 22, 7}, 1: {1, 3, 6, 8, 11, 13, 17}, 2: {16, 2, 12, 21, 7}}\n",
"step 2\n",
"step 3\n",
" chosen region: 2\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 1\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 17 from 2 to 1\n",
" donor is losing {16} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 8 from 2 to 1\n",
" donor is losing {7} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 18 from 2 to 1\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 13 from 2 to 1\n",
" donor is losing {12} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 16 from 0 to 1\n",
" donor is losing {17} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 1 from 0 to 1\n",
" donor is losing {2} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 3 from 2 to 1\n",
" donor is losing {2} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 4 from 2 to 1\n",
" donor is losing {3} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 9 from 2 to 1\n",
" donor is losing {8, 4} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 0\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 12 from 1 to 0\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 16 from 1 to 0\n",
" donor is losing {11, 21, 15} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 17 from 1 to 0\n",
" donor is losing {16, 22} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 18 from 1 to 0\n",
" donor is losing {17, 19, 23} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 13 from 1 to 0\n",
" donor is losing {18} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"n_regions_per_comp {0: 3}\n",
"comp_label 0\n",
"n_regions_in_comp 3\n",
"Regions in comp: {0, 1, 2}\n",
"comp_adj.shape: (25, 25)\n",
"initial_clustering [0 0 1 2 2 0 0 1 2 2 0 0 1 2 2 0 0 0 2 2 0 0 0 0 0]\n",
"data [[ 1.116]\n",
" [-0.024]\n",
" [-0.733]\n",
" [ 0.369]\n",
" [ 0.118]\n",
" [ 0.344]\n",
" [ 0.428]\n",
" [-0.915]\n",
" [ 0.267]\n",
" [ 0.29 ]\n",
" [ 0.364]\n",
" [ 0.38 ]\n",
" [ 0.548]\n",
" [ 0.926]\n",
" [ 3.037]\n",
" [ 1.433]\n",
" [ 0.743]\n",
" [ 1.363]\n",
" [ 1.106]\n",
" [ 0.721]\n",
" [ 2.126]\n",
" [ 2.156]\n",
" [ 1.758]\n",
" [ 0.339]\n",
" [ 1.669]]\n",
"start with obj. val.: [[ 108.115]]\n",
"RN {0: {19, 2, 18, 12, 7}, 1: {1, 3, 6, 8, 11, 13, 17}, 2: {2, 7, 12, 17, 23, 24}}\n",
"step 2\n",
"step 3\n",
" chosen region: 0\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 2\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 17 from 0 to 2\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 24 from 0 to 2\n",
" donor is losing {19} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 23 from 0 to 2\n",
" donor is losing {24, 18} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 16 from 0 to 2\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 1\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 6 from 0 to 1\n",
" donor is losing {7} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 11 from 0 to 1\n",
" donor is losing {12} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 3 from 2 to 1\n",
" donor is losing {2} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 16 from 2 to 1\n",
" donor is losing {11, 21, 15} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 1 from 0 to 1\n",
" donor is losing {2} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 8 from 2 to 1\n",
" donor is losing {7} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 4 from 2 to 1\n",
" donor is losing {3} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 9 from 2 to 1\n",
" donor is losing {4} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"n_regions_per_comp {0: 3}\n",
"comp_label 0\n",
"n_regions_in_comp 3\n",
"Regions in comp: {0, 1, 2}\n",
"comp_adj.shape: (25, 25)\n",
"initial_clustering [0 0 1 2 2 1 0 1 1 2 1 1 1 1 2 1 1 1 1 2 1 1 1 1 1]\n",
"data [[ 1.116]\n",
" [-0.024]\n",
" [-0.733]\n",
" [ 0.369]\n",
" [ 0.118]\n",
" [ 0.344]\n",
" [ 0.428]\n",
" [-0.915]\n",
" [ 0.267]\n",
" [ 0.29 ]\n",
" [ 0.364]\n",
" [ 0.38 ]\n",
" [ 0.548]\n",
" [ 0.926]\n",
" [ 3.037]\n",
" [ 1.433]\n",
" [ 0.743]\n",
" [ 1.363]\n",
" [ 1.106]\n",
" [ 0.721]\n",
" [ 2.126]\n",
" [ 2.156]\n",
" [ 1.758]\n",
" [ 0.339]\n",
" [ 1.669]]\n",
"start with obj. val.: [[ 153.538]]\n",
"RN {0: {2, 11, 5, 7}, 1: {0, 1, 3, 6, 9, 14, 19}, 2: {8, 24, 2, 18, 13}}\n",
"step 2\n",
"step 3\n",
" chosen region: 2\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 24 from 1 to 2\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 18 from 1 to 2\n",
" donor is losing {19} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 2 from 1 to 2\n",
" donor is losing {1} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 17 from 1 to 2\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 16 from 1 to 2\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 23 from 1 to 2\n",
" donor is losing {24} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 8 from 1 to 2\n",
" donor is losing {9, 3} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 0\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 5 from 1 to 0\n",
" donor is losing {0} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 2 from 2 to 0\n",
" donor is losing {1} as neighbors\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 3 from 2 to 0\n",
" donor is losing {2} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 8 from 2 to 0\n",
" donor is losing {7} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 7 from 1 to 0\n",
" donor is losing {2} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 4 from 2 to 0\n",
" donor is losing {3} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 9 from 2 to 0\n",
" donor is losing {8, 4} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 1\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"n_regions_per_comp {0: 3}\n",
"comp_label 0\n",
"n_regions_in_comp 3\n",
"Regions in comp: {0, 1, 2}\n",
"comp_adj.shape: (25, 25)\n",
"initial_clustering [0 0 1 2 2 0 0 1 1 2 0 0 1 1 1 0 0 1 1 1 0 0 1 1 1]\n",
"data [[ 1.116]\n",
" [-0.024]\n",
" [-0.733]\n",
" [ 0.369]\n",
" [ 0.118]\n",
" [ 0.344]\n",
" [ 0.428]\n",
" [-0.915]\n",
" [ 0.267]\n",
" [ 0.29 ]\n",
" [ 0.364]\n",
" [ 0.38 ]\n",
" [ 0.548]\n",
" [ 0.926]\n",
" [ 3.037]\n",
" [ 1.433]\n",
" [ 0.743]\n",
" [ 1.363]\n",
" [ 1.106]\n",
" [ 0.721]\n",
" [ 2.126]\n",
" [ 2.156]\n",
" [ 1.758]\n",
" [ 0.339]\n",
" [ 1.669]]\n",
"start with obj. val.: [[ 123.168]]\n",
"RN {0: {17, 2, 12, 22, 7}, 1: {1, 3, 6, 9, 11, 16, 21}, 2: {8, 2, 14}}\n",
"step 2\n",
"step 3\n",
" chosen region: 1\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 2\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 14 from 1 to 2\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 19 from 1 to 2\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 8 from 1 to 2\n",
" donor is losing {9} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 13 from 1 to 2\n",
" donor is losing {14} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 2 from 1 to 2\n",
" donor is losing {1, 3} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 1 from 0 to 2\n",
" donor is losing {2} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 0\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"n_regions_per_comp {0: 3}\n",
"comp_label 0\n",
"n_regions_in_comp 3\n",
"Regions in comp: {0, 1, 2}\n",
"comp_adj.shape: (25, 25)\n",
"initial_clustering [0 0 1 1 1 0 0 1 1 1 0 1 1 1 1 2 1 1 1 1 2 1 1 1 1]\n",
"data [[ 1.116]\n",
" [-0.024]\n",
" [-0.733]\n",
" [ 0.369]\n",
" [ 0.118]\n",
" [ 0.344]\n",
" [ 0.428]\n",
" [-0.915]\n",
" [ 0.267]\n",
" [ 0.29 ]\n",
" [ 0.364]\n",
" [ 0.38 ]\n",
" [ 0.548]\n",
" [ 0.926]\n",
" [ 3.037]\n",
" [ 1.433]\n",
" [ 0.743]\n",
" [ 1.363]\n",
" [ 1.106]\n",
" [ 0.721]\n",
" [ 2.126]\n",
" [ 2.156]\n",
" [ 1.758]\n",
" [ 0.339]\n",
" [ 1.669]]\n",
"start with obj. val.: [[ 171.755]]\n",
"RN {0: {2, 11, 15, 7}, 1: {1, 10, 20, 6, 15}, 2: {16, 10, 21}}\n",
"step 2\n",
"step 3\n",
" chosen region: 2\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 16 from 1 to 2\n",
" donor is losing {15} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 21 from 1 to 2\n",
" donor is losing {20} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 22 from 1 to 2\n",
" donor is losing {21} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 17 from 1 to 2\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 11 from 1 to 2\n",
" donor is losing {16, 10} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 12 from 1 to 2\n",
" donor is losing {11} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 18 from 1 to 2\n",
" donor is losing {17} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 13 from 1 to 2\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 0\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 15 from 2 to 0\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 11 from 2 to 0\n",
" donor is losing {10, 6} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 7 from 1 to 0\n",
" donor is losing {12, 6} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 16 from 2 to 0\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 8 from 1 to 0\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 12 from 2 to 0\n",
" donor is losing {11, 7} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 1\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"n_regions_per_comp {0: 3}\n",
"comp_label 0\n",
"n_regions_in_comp 3\n",
"Regions in comp: {0, 1, 2}\n",
"comp_adj.shape: (25, 25)\n",
"initial_clustering [0 0 1 1 1 0 0 1 1 1 0 2 1 1 1 0 2 1 1 1 0 2 1 1 1]\n",
"data [[ 1.116]\n",
" [-0.024]\n",
" [-0.733]\n",
" [ 0.369]\n",
" [ 0.118]\n",
" [ 0.344]\n",
" [ 0.428]\n",
" [-0.915]\n",
" [ 0.267]\n",
" [ 0.29 ]\n",
" [ 0.364]\n",
" [ 0.38 ]\n",
" [ 0.548]\n",
" [ 0.926]\n",
" [ 3.037]\n",
" [ 1.433]\n",
" [ 0.743]\n",
" [ 1.363]\n",
" [ 1.106]\n",
" [ 0.721]\n",
" [ 2.126]\n",
" [ 2.156]\n",
" [ 1.758]\n",
" [ 0.339]\n",
" [ 1.669]]\n",
"start with obj. val.: [[ 139.758]]\n",
"RN {0: {16, 2, 11, 21, 7}, 1: {16, 1, 11, 21, 6}, 2: {6, 10, 12, 15, 17, 20, 22}}\n",
"step 2\n",
"step 3\n",
" chosen region: 2\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 22 from 1 to 2\n",
" donor is losing {21} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 12 from 1 to 2\n",
" donor is losing {11} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 6 from 0 to 2\n",
" donor is losing {7} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 17 from 1 to 2\n",
" donor is losing {16} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 13 from 1 to 2\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 7 from 1 to 2\n",
" donor is losing {12, 6} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 2 from 1 to 2\n",
" donor is losing {1} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 0\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 2 from 2 to 0\n",
" donor is losing {3} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 3 from 1 to 0\n",
" donor is losing {2} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 6 from 2 to 0\n",
" donor is losing {1, 5} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 7 from 2 to 0\n",
" donor is losing {2} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 1\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 3 from 0 to 1\n",
" donor is losing {4} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"n_regions_per_comp {0: 3}\n",
"comp_label 0\n",
"n_regions_in_comp 3\n",
"Regions in comp: {0, 1, 2}\n",
"comp_adj.shape: (25, 25)\n",
"initial_clustering [0 0 1 2 2 0 0 1 1 2 0 1 1 1 2 0 1 1 1 2 0 1 1 1 1]\n",
"data [[ 1.116]\n",
" [-0.024]\n",
" [-0.733]\n",
" [ 0.369]\n",
" [ 0.118]\n",
" [ 0.344]\n",
" [ 0.428]\n",
" [-0.915]\n",
" [ 0.267]\n",
" [ 0.29 ]\n",
" [ 0.364]\n",
" [ 0.38 ]\n",
" [ 0.548]\n",
" [ 0.926]\n",
" [ 3.037]\n",
" [ 1.433]\n",
" [ 0.743]\n",
" [ 1.363]\n",
" [ 1.106]\n",
" [ 0.721]\n",
" [ 2.126]\n",
" [ 2.156]\n",
" [ 1.758]\n",
" [ 0.339]\n",
" [ 1.669]]\n",
"start with obj. val.: [[ 114.08]]\n",
"RN {0: {16, 2, 11, 21, 7}, 1: {1, 3, 6, 9, 10, 14, 15, 19, 20}, 2: {8, 24, 2, 18, 13}}\n",
"step 2\n",
"step 3\n",
" chosen region: 1\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 0\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 21 from 1 to 0\n",
" donor is losing {20} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 16 from 1 to 0\n",
" donor is losing {15} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 11 from 1 to 0\n",
" donor is losing {10} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 17 from 1 to 0\n",
" donor is losing {16} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 22 from 1 to 0\n",
" donor is losing {21} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 2\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 8 from 1 to 2\n",
" donor is losing {9} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 24 from 1 to 2\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"n_regions_per_comp {0: 3}\n",
"comp_label 0\n",
"n_regions_in_comp 3\n",
"Regions in comp: {0, 1, 2}\n",
"comp_adj.shape: (25, 25)\n",
"initial_clustering [0 0 0 1 1 0 0 0 1 1 0 0 0 1 1 0 0 0 0 1 0 0 2 2 2]\n",
"data [[ 1.116]\n",
" [-0.024]\n",
" [-0.733]\n",
" [ 0.369]\n",
" [ 0.118]\n",
" [ 0.344]\n",
" [ 0.428]\n",
" [-0.915]\n",
" [ 0.267]\n",
" [ 0.29 ]\n",
" [ 0.364]\n",
" [ 0.38 ]\n",
" [ 0.548]\n",
" [ 0.926]\n",
" [ 3.037]\n",
" [ 1.433]\n",
" [ 0.743]\n",
" [ 1.363]\n",
" [ 1.106]\n",
" [ 0.721]\n",
" [ 2.126]\n",
" [ 2.156]\n",
" [ 1.758]\n",
" [ 0.339]\n",
" [ 1.669]]\n",
"start with obj. val.: [[ 131.92]]\n",
"RN {0: {3, 8, 13, 19, 22, 23}, 1: {24, 2, 18, 12, 7}, 2: {17, 18, 19, 21}}\n",
"step 2\n",
"step 3\n",
" chosen region: 2\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 21 from 0 to 2\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 18 from 0 to 2\n",
" donor is losing {19, 23} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 16 from 0 to 2\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 11 from 0 to 2\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 20 from 0 to 2\n",
" donor is losing {21} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 17 from 0 to 2\n",
" donor is losing {18, 22} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 15 from 0 to 2\n",
" donor is losing {16, 20} as neighbors\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 0\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 11 from 2 to 0\n",
" donor is losing {6} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 8 from 1 to 0\n",
" donor is losing {7} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 16 from 2 to 0\n",
" donor is losing {11} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 1\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 2 from 0 to 1\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"n_regions_per_comp {0: 3}\n",
"comp_label 0\n",
"n_regions_in_comp 3\n",
"Regions in comp: {0, 1, 2}\n",
"comp_adj.shape: (25, 25)\n",
"initial_clustering [0 0 1 2 2 0 0 1 2 2 0 0 1 2 2 0 0 1 1 2 0 0 1 1 1]\n",
"data [[ 1.116]\n",
" [-0.024]\n",
" [-0.733]\n",
" [ 0.369]\n",
" [ 0.118]\n",
" [ 0.344]\n",
" [ 0.428]\n",
" [-0.915]\n",
" [ 0.267]\n",
" [ 0.29 ]\n",
" [ 0.364]\n",
" [ 0.38 ]\n",
" [ 0.548]\n",
" [ 0.926]\n",
" [ 3.037]\n",
" [ 1.433]\n",
" [ 0.743]\n",
" [ 1.363]\n",
" [ 1.106]\n",
" [ 0.721]\n",
" [ 2.126]\n",
" [ 2.156]\n",
" [ 1.758]\n",
" [ 0.339]\n",
" [ 1.669]]\n",
"start with obj. val.: [[ 95.325]]\n",
"RN {0: {17, 2, 12, 22, 7}, 1: {1, 3, 6, 8, 11, 13, 16, 19, 21}, 2: {24, 2, 18, 12, 7}}\n",
"step 2\n",
"step 3\n",
" chosen region: 2\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 2 from 1 to 2\n",
" donor is losing {1, 3} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 1 from 0 to 2\n",
" donor is losing {2} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 1\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 21 from 0 to 1\n",
" donor is losing {22} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 20 from 0 to 1\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 13 from 2 to 1\n",
" donor is losing {12} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 0\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 20 from 1 to 0\n",
" donor is losing {15} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 21 from 1 to 0\n",
" donor is losing {20} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"n_regions_per_comp {0: 3}\n",
"comp_label 0\n",
"n_regions_in_comp 3\n",
"Regions in comp: {0, 1, 2}\n",
"comp_adj.shape: (25, 25)\n",
"initial_clustering [0 0 1 2 2 0 0 1 2 2 0 2 2 2 2 0 2 2 2 2 0 2 2 2 2]\n",
"data [[ 1.116]\n",
" [-0.024]\n",
" [-0.733]\n",
" [ 0.369]\n",
" [ 0.118]\n",
" [ 0.344]\n",
" [ 0.428]\n",
" [-0.915]\n",
" [ 0.267]\n",
" [ 0.29 ]\n",
" [ 0.364]\n",
" [ 0.38 ]\n",
" [ 0.548]\n",
" [ 0.926]\n",
" [ 3.037]\n",
" [ 1.433]\n",
" [ 0.743]\n",
" [ 1.363]\n",
" [ 1.106]\n",
" [ 0.721]\n",
" [ 2.126]\n",
" [ 2.156]\n",
" [ 1.758]\n",
" [ 0.339]\n",
" [ 1.669]]\n",
"start with obj. val.: [[ 127.146]]\n",
"RN {0: {16, 2, 11, 21, 7}, 1: {8, 1, 3, 12, 6}, 2: {2, 6, 7, 10, 15, 20}}\n",
"step 2\n",
"step 3\n",
" chosen region: 0\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 11 from 2 to 0\n",
" donor is losing {10, 6} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 16 from 2 to 0\n",
" donor is losing {15} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 17 from 2 to 0\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 12 from 2 to 0\n",
" donor is losing {11} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 13 from 2 to 0\n",
" donor is losing {12} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 18 from 2 to 0\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 8 from 2 to 0\n",
" donor is losing {7} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 3 from 2 to 0\n",
" donor is losing {2} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 2\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 20 from 0 to 2\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 17 from 0 to 2\n",
" donor is losing {22} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 15 from 0 to 2\n",
" donor is losing {20} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 1\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 1 from 0 to 1\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 3 from 0 to 1\n",
" donor is losing {2, 4} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 4 from 2 to 1\n",
" donor is losing {3} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 9 from 2 to 1\n",
" donor is losing {8, 4} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 8 from 0 to 1\n",
" donor is losing {9, 3} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"Getting variables\n",
"Variables successfully extracted\n",
"Running original AZP algorithm (Openshaw and Rao, 1995)\n",
"Number of areas: 25\n",
"Number of regions: 3\n",
"Constructing regions\n",
"initial Solution: [2, 2, 0, 2, 2, 2, 2, 0, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2]\n",
"initial O.F: 9.045742363636366\n",
"Performing local search\n",
"FINAL SOLUTION: [2, 0, 0, 2, 2, 2, 2, 0, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2]\n",
"FINAL O.F.: 8.685420666666667\n",
"Done\n",
"Adding variables\n",
"Done\n",
"Getting variables\n",
"Variables successfully extracted\n",
"Running original AZP algorithm (Openshaw and Rao, 1995)\n",
"Number of areas: 25\n",
"Number of regions: 3\n",
"Constructing regions\n",
"initial Solution: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]\n",
"initial O.F: 6.832735314685316\n",
"Performing local search\n",
"FINAL SOLUTION: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1]\n",
"FINAL O.F.: 6.764515314285715\n",
"Done\n",
"Adding variables\n",
"Done\n",
"Getting variables\n",
"Variables successfully extracted\n",
"Running original AZP algorithm (Openshaw and Rao, 1995)\n",
"Number of areas: 25\n",
"Number of regions: 3\n",
"Constructing regions\n",
"initial Solution: [2, 2, 2, 1, 1, 2, 2, 2, 1, 1, 2, 2, 2, 1, 1, 0, 2, 1, 1, 1, 0, 0, 0, 1, 1]\n",
"initial O.F: 11.315637831818183\n",
"Performing local search\n",
"FINAL SOLUTION: [2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 0, 2, 1, 1, 1, 0, 0, 0, 1, 1]\n",
"FINAL O.F.: 8.525161392857143\n",
"Done\n",
"Adding variables\n",
"Done\n",
"Getting variables\n",
"Variables successfully extracted\n",
"Running original AZP algorithm (Openshaw and Rao, 1995)\n",
"Number of areas: 25\n",
"Number of regions: 3\n",
"Constructing regions\n",
"initial Solution: [0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]\n",
"initial O.F: 9.045742363636364\n",
"Performing local search\n",
"FINAL SOLUTION: [0, 1, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]\n",
"FINAL O.F.: 8.685420666666667\n",
"Done\n",
"Adding variables\n",
"Done\n",
"Getting variables\n",
"Variables successfully extracted\n",
"Running original AZP algorithm (Openshaw and Rao, 1995)\n",
"Number of areas: 25\n",
"Number of regions: 3\n",
"Constructing regions\n",
"initial Solution: [0, 0, 2, 2, 2, 0, 0, 2, 2, 2, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]\n",
"initial O.F: 8.960943333333333\n",
"Performing local search\n",
"FINAL SOLUTION: [0, 2, 2, 2, 2, 0, 2, 2, 2, 2, 0, 2, 2, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]\n",
"FINAL O.F.: 7.312367028571428\n",
"Done\n",
"Adding variables\n",
"Done\n",
"Getting variables\n",
"Variables successfully extracted\n",
"Running original AZP algorithm (Openshaw and Rao, 1995)\n",
"Number of areas: 25\n",
"Number of regions: 3\n",
"Constructing regions\n",
"initial Solution: [0, 0, 1, 1, 1, 0, 0, 1, 1, 1, 0, 0, 0, 2, 2, 2, 0, 2, 2, 2, 2, 2, 2, 2, 2]\n",
"initial O.F: 8.136516844696969\n",
"Performing local search\n",
"FINAL SOLUTION: [0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 2, 2, 0, 2, 2, 2, 2, 2, 2, 2, 2]\n",
"FINAL O.F.: 6.569520830769231\n",
"Done\n",
"Adding variables\n",
"Done\n",
"Getting variables\n",
"Variables successfully extracted\n",
"Running original AZP algorithm (Openshaw and Rao, 1995)\n",
"Number of areas: 25\n",
"Number of regions: 3\n",
"Constructing regions\n",
"initial Solution: [2, 0, 0, 2, 2, 2, 2, 0, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2]\n",
"initial O.F: 8.685420666666667\n",
"Performing local search\n",
"FINAL SOLUTION: [2, 0, 0, 2, 2, 2, 2, 0, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2]\n",
"FINAL O.F.: 8.685420666666666\n",
"Done\n",
"Adding variables\n",
"Done\n",
"Getting variables\n",
"Variables successfully extracted\n",
"Running original AZP algorithm (Openshaw and Rao, 1995)\n",
"Number of areas: 25\n",
"Number of regions: 3\n",
"Constructing regions\n",
"initial Solution: [1, 1, 2, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]\n",
"initial O.F: 9.045742363636364\n",
"Performing local search\n",
"FINAL SOLUTION: [1, 2, 2, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]\n",
"FINAL O.F.: 8.685420666666667\n",
"Done\n",
"Adding variables\n",
"Done\n",
"Getting variables\n",
"Variables successfully extracted\n",
"Running original AZP algorithm (Openshaw and Rao, 1995)\n",
"Number of areas: 25\n",
"Number of regions: 3\n",
"Constructing regions\n",
"initial Solution: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1]\n",
"initial O.F: 7.00070848888889\n",
"Performing local search\n",
"FINAL SOLUTION: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1]\n",
"FINAL O.F.: 6.764515314285715\n",
"Done\n",
"Adding variables\n",
"Done\n",
"Getting variables\n",
"Variables successfully extracted\n",
"Running original AZP algorithm (Openshaw and Rao, 1995)\n",
"Number of areas: 25\n",
"Number of regions: 3\n",
"Constructing regions\n",
"initial Solution: [1, 1, 2, 2, 2, 1, 1, 2, 2, 2, 1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0]\n",
"initial O.F: 8.136516844696969\n",
"Performing local search\n",
"FINAL SOLUTION: [1, 2, 2, 2, 2, 1, 1, 2, 1, 1, 1, 1, 1, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0]\n",
"FINAL O.F.: 7.373772000000001\n",
"Done\n",
"Adding variables\n",
"Done\n",
"Getting variables\n",
"Variables successfully extracted\n",
"Running original AZP algorithm (Openshaw and Rao, 1995)\n",
"Number of areas: 25\n",
"Number of regions: 3\n",
"Constructing regions\n",
"initial Solution: [2, 2, 0, 2, 2, 2, 2, 0, 2, 2, 2, 2, 2, 2, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1]\n",
"initial O.F: 6.569520830769232\n",
"Performing local search\n",
"FINAL SOLUTION: [2, 2, 0, 2, 2, 2, 2, 0, 2, 2, 2, 2, 2, 2, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1]\n",
"FINAL O.F.: 6.569520830769232\n",
"Done\n",
"Adding variables\n",
"Done\n",
"Getting variables\n",
"Variables successfully extracted\n",
"Running original AZP algorithm (Openshaw and Rao, 1995)\n",
"Number of areas: 25\n",
"Number of regions: 3\n",
"Constructing regions\n",
"initial Solution: [0, 1, 1, 2, 2, 0, 0, 1, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]\n",
"initial O.F: 10.569645611111111\n",
"Performing local search\n",
"FINAL SOLUTION: [0, 1, 1, 2, 2, 0, 0, 1, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]\n",
"FINAL O.F.: 10.569645611111111\n",
"Done\n",
"Adding variables\n",
"Done\n",
"Getting variables\n",
"Variables successfully extracted\n",
"Running original AZP algorithm (Openshaw and Rao, 1995)\n",
"Number of areas: 25\n",
"Number of regions: 3\n",
"Constructing regions\n",
"initial Solution: [0, 0, 2, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1]\n",
"initial O.F: 6.569520830769232\n",
"Performing local search\n",
"FINAL SOLUTION: [0, 0, 2, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1]\n",
"FINAL O.F.: 6.56952083076923\n",
"Done\n",
"Adding variables\n",
"Done\n",
"Getting variables\n",
"Variables successfully extracted\n",
"Running original AZP algorithm (Openshaw and Rao, 1995)\n",
"Number of areas: 25\n",
"Number of regions: 3\n",
"Constructing regions\n",
"initial Solution: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1]\n",
"initial O.F: 9.161017028571429\n",
"Performing local search\n",
"FINAL SOLUTION: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1]\n",
"FINAL O.F.: 9.044568405594404\n",
"Done\n",
"Adding variables\n",
"Done\n",
"Getting variables\n",
"Variables successfully extracted\n",
"Running original AZP algorithm (Openshaw and Rao, 1995)\n",
"Number of areas: 25\n",
"Number of regions: 3\n",
"Constructing regions\n",
"initial Solution: [0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2]\n",
"initial O.F: 13.092783818181818\n",
"Performing local search\n",
"FINAL SOLUTION: [0, 1, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2]\n",
"FINAL O.F.: 12.615489238095238\n",
"Done\n",
"Adding variables\n",
"Done\n",
"Getting variables\n",
"Variables successfully extracted\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"Running original AZP algorithm (Openshaw and Rao, 1995)\n",
"Number of areas: 25\n",
"Number of regions: 3\n",
"Constructing regions\n",
"initial Solution: [1, 1, 0, 0, 0, 1, 1, 0, 0, 0, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 2, 2, 2, 1, 1]\n",
"initial O.F: 9.858085416666666\n",
"Performing local search\n",
"FINAL SOLUTION: [1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 1, 1, 1, 1, 2, 1, 2, 1, 1, 2, 2, 2, 1, 1]\n",
"FINAL O.F.: 9.003593716666668\n",
"Done\n",
"Adding variables\n",
"Done\n"
]
},
{
"data": {
"image/png": "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\nEh/C8dXB+QAAAABJRU5ErkJggg==\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x7fd62cdaeb38>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"region_obj3, cp_obj3 = compare_boxplot_objectives(df5, \"EX5\", n_regions=3, n_experiments=n_experiments)"
]
},
{
"cell_type": "code",
"execution_count": 11,
"metadata": {
"scrolled": true
},
"outputs": [
{
"data": {
"text/plain": [
"59.716"
]
},
"execution_count": 11,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"optimal_solution = np.array(df5[\"3REG\"])\n",
"objective_func_arr(metric, optimal_solution, attr5).item()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## clustering into 4 regions (problem 5 in [Duque et al. (2011)](https://www.google.at/url?sa=t&rct=j&q=&esrc=s&source=web&cd=2&cad=rja&uact=8&ved=0ahUKEwiK2efWuprWAhVFvBQKHRouACIQFgg9MAE&url=http%3A%2F%2Fonlinelibrary.wiley.com%2Fdoi%2F10.1111%2Fj.1538-4632.2010.00810.x%2Fabstract&usg=AFQjCNF--NAHN98PKuR-gVNQPTk34XDdnA))"
]
},
{
"cell_type": "code",
"execution_count": 12,
"metadata": {
"scrolled": true
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"n_regions_per_comp {0: 4}\n",
"comp_label 0\n",
"n_regions_in_comp 4\n",
"Regions in comp: {0, 1, 2, 3}\n",
"comp_adj.shape: (25, 25)\n",
"initial_clustering [0 0 1 2 2 0 0 1 2 2 0 3 1 2 2 0 3 3 3 2 0 3 3 3 3]\n",
"data [[ 1.116]\n",
" [-0.024]\n",
" [-0.733]\n",
" [ 0.369]\n",
" [ 0.118]\n",
" [ 0.344]\n",
" [ 0.428]\n",
" [-0.915]\n",
" [ 0.267]\n",
" [ 0.29 ]\n",
" [ 0.364]\n",
" [ 0.38 ]\n",
" [ 0.548]\n",
" [ 0.926]\n",
" [ 3.037]\n",
" [ 1.433]\n",
" [ 0.743]\n",
" [ 1.363]\n",
" [ 1.106]\n",
" [ 0.721]\n",
" [ 2.126]\n",
" [ 2.156]\n",
" [ 1.758]\n",
" [ 0.339]\n",
" [ 1.669]]\n",
"start with obj. val.: [[ 65.342]]\n",
"RN {0: {16, 2, 11, 21, 7}, 1: {1, 3, 6, 8, 11, 13, 17}, 2: {24, 2, 18, 12, 7}, 3: {6, 10, 12, 13, 15, 19, 20}}\n",
"step 2\n",
"step 3\n",
" chosen region: 1\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 1 from 0 to 1\n",
" donor is losing {2} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 11 from 3 to 1\n",
" donor is losing {10, 6} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 6 from 0 to 1\n",
" donor is losing {7} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 3 from 2 to 1\n",
" donor is losing {2} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 8 from 2 to 1\n",
" donor is losing {7} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 4 from 2 to 1\n",
" donor is losing {3} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 9 from 2 to 1\n",
" donor is losing {4} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 2\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 24 from 3 to 2\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 12 from 1 to 2\n",
" donor is losing {17} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 23 from 3 to 2\n",
" donor is losing {24} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 0\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 16 from 3 to 0\n",
" donor is losing {11, 15} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 3\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 20 from 0 to 3\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"n_regions_per_comp {0: 4}\n",
"comp_label 0\n",
"n_regions_in_comp 4\n",
"Regions in comp: {0, 1, 2, 3}\n",
"comp_adj.shape: (25, 25)\n",
"initial_clustering [0 0 1 2 2 3 0 1 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2]\n",
"data [[ 1.116]\n",
" [-0.024]\n",
" [-0.733]\n",
" [ 0.369]\n",
" [ 0.118]\n",
" [ 0.344]\n",
" [ 0.428]\n",
" [-0.915]\n",
" [ 0.267]\n",
" [ 0.29 ]\n",
" [ 0.364]\n",
" [ 0.38 ]\n",
" [ 0.548]\n",
" [ 0.926]\n",
" [ 3.037]\n",
" [ 1.433]\n",
" [ 0.743]\n",
" [ 1.363]\n",
" [ 1.106]\n",
" [ 0.721]\n",
" [ 2.126]\n",
" [ 2.156]\n",
" [ 1.758]\n",
" [ 0.339]\n",
" [ 1.669]]\n",
"start with obj. val.: [[ 117.081]]\n",
"RN {0: {2, 11, 5, 7}, 1: {8, 1, 3, 12, 6}, 2: {2, 6, 7, 10, 15, 20}, 3: {0, 16, 11, 21, 6}}\n",
"step 2\n",
"step 3\n",
" chosen region: 3\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 21 from 2 to 3\n",
" donor is losing {20} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 16 from 2 to 3\n",
" donor is losing {15} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 11 from 2 to 3\n",
" donor is losing {10, 6} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 17 from 2 to 3\n",
" donor is losing {16} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 12 from 2 to 3\n",
" donor is losing {11} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 22 from 2 to 3\n",
" donor is losing {21} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 18 from 2 to 3\n",
" donor is losing {17} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 2\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 12 from 3 to 2\n",
" donor is losing {7} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 11 from 3 to 2\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 1\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 8 from 2 to 1\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 3 from 2 to 1\n",
" donor is losing {2} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 4 from 2 to 1\n",
" donor is losing {3} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 9 from 2 to 1\n",
" donor is losing {4} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 0\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 7 from 1 to 0\n",
" donor is losing {12, 6} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 5 from 3 to 0\n",
" donor is losing {0, 6} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 10 from 3 to 0\n",
" donor is losing {5} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 11 from 2 to 0\n",
" donor is losing {16, 10, 6} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 16 from 3 to 0\n",
" donor is losing {11} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 12 from 2 to 0\n",
" donor is losing {17, 11, 7} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"n_regions_per_comp {0: 4}\n",
"comp_label 0\n",
"n_regions_in_comp 4\n",
"Regions in comp: {0, 1, 2, 3}\n",
"comp_adj.shape: (25, 25)\n",
"initial_clustering [0 0 1 2 2 0 0 1 3 2 0 0 1 3 2 0 0 1 3 2 0 0 1 1 1]\n",
"data [[ 1.116]\n",
" [-0.024]\n",
" [-0.733]\n",
" [ 0.369]\n",
" [ 0.118]\n",
" [ 0.344]\n",
" [ 0.428]\n",
" [-0.915]\n",
" [ 0.267]\n",
" [ 0.29 ]\n",
" [ 0.364]\n",
" [ 0.38 ]\n",
" [ 0.548]\n",
" [ 0.926]\n",
" [ 3.037]\n",
" [ 1.433]\n",
" [ 0.743]\n",
" [ 1.363]\n",
" [ 1.106]\n",
" [ 0.721]\n",
" [ 2.126]\n",
" [ 2.156]\n",
" [ 1.758]\n",
" [ 0.339]\n",
" [ 1.669]]\n",
"start with obj. val.: [[ 81.872]]\n",
"RN {0: {17, 2, 12, 22, 7}, 1: {1, 3, 6, 8, 11, 13, 16, 18, 19, 21}, 2: {8, 24, 2, 18, 13}, 3: {3, 7, 9, 12, 14, 17, 19, 23}}\n",
"step 2\n",
"step 3\n",
" chosen region: 3\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 19 from 2 to 3\n",
" donor is losing {24, 18} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 24 from 1 to 3\n",
" donor is losing {19} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 23 from 1 to 3\n",
" donor is losing {24} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 22 from 1 to 3\n",
" donor is losing {21, 23} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 17 from 1 to 3\n",
" donor is losing {16, 18, 22} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 16 from 0 to 3\n",
" donor is losing {17} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 11 from 0 to 3\n",
" donor is losing {12} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 6 from 0 to 3\n",
" donor is losing {7} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 0\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 22 from 3 to 0\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 2\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 8 from 3 to 2\n",
" donor is losing {9, 3} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 1\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 8 from 2 to 1\n",
" donor is losing {7} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 3 from 2 to 1\n",
" donor is losing {2} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 6 from 3 to 1\n",
" donor is losing {1, 5, 7} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 11 from 3 to 1\n",
" donor is losing {10, 6} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 1 from 0 to 1\n",
" donor is losing {2} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"n_regions_per_comp {0: 4}\n",
"comp_label 0\n",
"n_regions_in_comp 4\n",
"Regions in comp: {0, 1, 2, 3}\n",
"comp_adj.shape: (25, 25)\n",
"initial_clustering [0 0 1 2 2 0 0 1 1 2 0 0 1 1 2 0 0 1 1 2 0 0 3 3 3]\n",
"data [[ 1.116]\n",
" [-0.024]\n",
" [-0.733]\n",
" [ 0.369]\n",
" [ 0.118]\n",
" [ 0.344]\n",
" [ 0.428]\n",
" [-0.915]\n",
" [ 0.267]\n",
" [ 0.29 ]\n",
" [ 0.364]\n",
" [ 0.38 ]\n",
" [ 0.548]\n",
" [ 0.926]\n",
" [ 3.037]\n",
" [ 1.433]\n",
" [ 0.743]\n",
" [ 1.363]\n",
" [ 1.106]\n",
" [ 0.721]\n",
" [ 2.126]\n",
" [ 2.156]\n",
" [ 1.758]\n",
" [ 0.339]\n",
" [ 1.669]]\n",
"start with obj. val.: [[ 77.68]]\n",
"RN {0: {17, 2, 12, 22, 7}, 1: {1, 3, 6, 9, 11, 14, 16, 19, 22, 23}, 2: {8, 24, 2, 18, 13}, 3: {17, 18, 19, 21}}\n",
"step 2\n",
"step 3\n",
" chosen region: 1\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 16 from 0 to 1\n",
" donor is losing {17} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 11 from 0 to 1\n",
" donor is losing {12} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 6 from 0 to 1\n",
" donor is losing {7} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 1 from 0 to 1\n",
" donor is losing {2} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 0\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 11 from 1 to 0\n",
" donor is losing {10} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 16 from 1 to 0\n",
" donor is losing {21, 15} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 17 from 1 to 0\n",
" donor is losing {16, 22} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 18 from 1 to 0\n",
" donor is losing {19, 23} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 13 from 1 to 0\n",
" donor is losing {18, 14} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 2\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 13 from 0 to 2\n",
" donor is losing {8, 14} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 18 from 0 to 2\n",
" donor is losing {19, 13, 23} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 3\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 18 from 2 to 3\n",
" donor is losing {17, 23} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 19 from 2 to 3\n",
" donor is losing {24} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 21 from 0 to 3\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 13 from 2 to 3\n",
" donor is losing {18, 12} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 20 from 0 to 3\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"n_regions_per_comp {0: 4}\n",
"comp_label 0\n",
"n_regions_in_comp 4\n",
"Regions in comp: {0, 1, 2, 3}\n",
"comp_adj.shape: (25, 25)\n",
"initial_clustering [0 0 1 2 2 0 0 1 2 2 0 3 1 2 2 0 3 1 1 2 0 3 1 1 1]\n",
"data [[ 1.116]\n",
" [-0.024]\n",
" [-0.733]\n",
" [ 0.369]\n",
" [ 0.118]\n",
" [ 0.344]\n",
" [ 0.428]\n",
" [-0.915]\n",
" [ 0.267]\n",
" [ 0.29 ]\n",
" [ 0.364]\n",
" [ 0.38 ]\n",
" [ 0.548]\n",
" [ 0.926]\n",
" [ 3.037]\n",
" [ 1.433]\n",
" [ 0.743]\n",
" [ 1.363]\n",
" [ 1.106]\n",
" [ 0.721]\n",
" [ 2.126]\n",
" [ 2.156]\n",
" [ 1.758]\n",
" [ 0.339]\n",
" [ 1.669]]\n",
"start with obj. val.: [[ 77.675]]\n",
"RN {0: {16, 2, 11, 21, 7}, 1: {1, 3, 6, 8, 11, 13, 16, 19, 21}, 2: {24, 2, 18, 12, 7}, 3: {6, 10, 12, 15, 17, 20, 22}}\n",
"step 2\n",
"step 3\n",
" chosen region: 2\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 2 from 1 to 2\n",
" donor is losing {1, 3} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 0\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 7 from 1 to 0\n",
" donor is losing {8, 2, 6} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 3\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 22 from 1 to 3\n",
" donor is losing {21} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 20 from 0 to 3\n",
" donor is losing {21} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 15 from 0 to 3\n",
" donor is losing {16, 20} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 1\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 19 from 2 to 1\n",
" donor is losing {24} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 14 from 2 to 1\n",
" donor is losing {19} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 11 from 3 to 1\n",
" donor is losing {12, 6} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"n_regions_per_comp {0: 4}\n",
"comp_label 0\n",
"n_regions_in_comp 4\n",
"Regions in comp: {0, 1, 2, 3}\n",
"comp_adj.shape: (25, 25)\n",
"initial_clustering [0 0 1 2 2 0 0 1 1 1 0 0 1 1 1 0 0 1 1 1 0 0 3 3 3]\n",
"data [[ 1.116]\n",
" [-0.024]\n",
" [-0.733]\n",
" [ 0.369]\n",
" [ 0.118]\n",
" [ 0.344]\n",
" [ 0.428]\n",
" [-0.915]\n",
" [ 0.267]\n",
" [ 0.29 ]\n",
" [ 0.364]\n",
" [ 0.38 ]\n",
" [ 0.548]\n",
" [ 0.926]\n",
" [ 3.037]\n",
" [ 1.433]\n",
" [ 0.743]\n",
" [ 1.363]\n",
" [ 1.106]\n",
" [ 0.721]\n",
" [ 2.126]\n",
" [ 2.156]\n",
" [ 1.758]\n",
" [ 0.339]\n",
" [ 1.669]]\n",
"start with obj. val.: [[ 99.567]]\n",
"RN {0: {17, 2, 12, 22, 7}, 1: {1, 3, 4, 6, 11, 16, 22, 23, 24}, 2: {8, 9, 2}, 3: {17, 18, 19, 21}}\n",
"step 2\n",
"step 3\n",
" chosen region: 3\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 18 from 1 to 3\n",
" donor is losing {23} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 21 from 0 to 3\n",
" donor is losing {22} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 20 from 0 to 3\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 13 from 1 to 3\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 15 from 0 to 3\n",
" donor is losing {20} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 17 from 1 to 3\n",
" donor is losing {16, 22} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 0\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 12 from 1 to 0\n",
" donor is losing {17, 11} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 13 from 3 to 0\n",
" donor is losing {8, 14} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 1\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 2\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 2 from 1 to 2\n",
" donor is losing {1} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 7 from 1 to 2\n",
" donor is losing {2, 12, 6} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 1 from 0 to 2\n",
" donor is losing {2} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 8 from 1 to 2\n",
" donor is losing {3, 7} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 9 from 1 to 2\n",
" donor is losing {8, 4} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"n_regions_per_comp {0: 4}\n",
"comp_label 0\n",
"n_regions_in_comp 4\n",
"Regions in comp: {0, 1, 2, 3}\n",
"comp_adj.shape: (25, 25)\n",
"initial_clustering [0 0 1 2 2 0 0 1 3 2 0 0 1 3 2 0 0 3 3 2 0 0 3 3 3]\n",
"data [[ 1.116]\n",
" [-0.024]\n",
" [-0.733]\n",
" [ 0.369]\n",
" [ 0.118]\n",
" [ 0.344]\n",
" [ 0.428]\n",
" [-0.915]\n",
" [ 0.267]\n",
" [ 0.29 ]\n",
" [ 0.364]\n",
" [ 0.38 ]\n",
" [ 0.548]\n",
" [ 0.926]\n",
" [ 3.037]\n",
" [ 1.433]\n",
" [ 0.743]\n",
" [ 1.363]\n",
" [ 1.106]\n",
" [ 0.721]\n",
" [ 2.126]\n",
" [ 2.156]\n",
" [ 1.758]\n",
" [ 0.339]\n",
" [ 1.669]]\n",
"start with obj. val.: [[ 70.566]]\n",
"RN {0: {17, 2, 12, 22, 7}, 1: {1, 3, 6, 8, 11, 13, 17}, 2: {8, 24, 2, 18, 13}, 3: {3, 7, 9, 12, 14, 16, 19, 21}}\n",
"step 2\n",
"step 3\n",
" chosen region: 1\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 8 from 3 to 1\n",
" donor is losing {9, 3, 7} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 1 from 0 to 1\n",
" donor is losing {2} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 3 from 2 to 1\n",
" donor is losing {2} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 6 from 0 to 1\n",
" donor is losing {7} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 11 from 0 to 1\n",
" donor is losing {12} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 4 from 2 to 1\n",
" donor is losing {3} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 0\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 2\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 8 from 1 to 2\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 3\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 21 from 0 to 3\n",
" donor is losing {22} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 20 from 0 to 3\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"n_regions_per_comp {0: 4}\n",
"comp_label 0\n",
"n_regions_in_comp 4\n",
"Regions in comp: {0, 1, 2, 3}\n",
"comp_adj.shape: (25, 25)\n",
"initial_clustering [0 0 1 2 2 0 0 1 2 2 0 3 1 2 2 0 3 3 2 2 0 3 3 3 3]\n",
"data [[ 1.116]\n",
" [-0.024]\n",
" [-0.733]\n",
" [ 0.369]\n",
" [ 0.118]\n",
" [ 0.344]\n",
" [ 0.428]\n",
" [-0.915]\n",
" [ 0.267]\n",
" [ 0.29 ]\n",
" [ 0.364]\n",
" [ 0.38 ]\n",
" [ 0.548]\n",
" [ 0.926]\n",
" [ 3.037]\n",
" [ 1.433]\n",
" [ 0.743]\n",
" [ 1.363]\n",
" [ 1.106]\n",
" [ 0.721]\n",
" [ 2.126]\n",
" [ 2.156]\n",
" [ 1.758]\n",
" [ 0.339]\n",
" [ 1.669]]\n",
"start with obj. val.: [[ 66.84]]\n",
"RN {0: {16, 2, 11, 21, 7}, 1: {1, 3, 6, 8, 11, 13, 17}, 2: {2, 7, 12, 17, 23, 24}, 3: {6, 10, 12, 15, 18, 19, 20}}\n",
"step 2\n",
"step 3\n",
" chosen region: 3\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 18 from 2 to 3\n",
" donor is losing {17, 23} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 20 from 0 to 3\n",
" donor is losing {21} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 2\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 0\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 11 from 3 to 0\n",
" donor is losing {10, 6} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 16 from 3 to 0\n",
" donor is losing {11} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 1\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 1 from 0 to 1\n",
" donor is losing {2} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 13 from 2 to 1\n",
" donor is losing {12} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 8 from 2 to 1\n",
" donor is losing {7} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"n_regions_per_comp {0: 4}\n",
"comp_label 0\n",
"n_regions_in_comp 4\n",
"Regions in comp: {0, 1, 2, 3}\n",
"comp_adj.shape: (25, 25)\n",
"initial_clustering [0 0 1 2 2 3 0 1 3 2 3 3 1 3 2 3 3 3 3 2 3 3 3 3 3]\n",
"data [[ 1.116]\n",
" [-0.024]\n",
" [-0.733]\n",
" [ 0.369]\n",
" [ 0.118]\n",
" [ 0.344]\n",
" [ 0.428]\n",
" [-0.915]\n",
" [ 0.267]\n",
" [ 0.29 ]\n",
" [ 0.364]\n",
" [ 0.38 ]\n",
" [ 0.548]\n",
" [ 0.926]\n",
" [ 3.037]\n",
" [ 1.433]\n",
" [ 0.743]\n",
" [ 1.363]\n",
" [ 1.106]\n",
" [ 0.721]\n",
" [ 2.126]\n",
" [ 2.156]\n",
" [ 1.758]\n",
" [ 0.339]\n",
" [ 1.669]]\n",
"start with obj. val.: [[ 91.124]]\n",
"RN {0: {2, 11, 5, 7}, 1: {1, 3, 6, 8, 11, 13, 17}, 2: {8, 24, 2, 18, 13}, 3: {0, 3, 6, 7, 9, 12, 14, 19}}\n",
"step 2\n",
"step 3\n",
" chosen region: 3\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 1\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 3 from 2 to 1\n",
" donor is losing {2} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 11 from 3 to 1\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 4 from 2 to 1\n",
" donor is losing {3} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 9 from 2 to 1\n",
" donor is losing {8, 4} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"step 5 loop\n",
" MOVING 16 from 3 to 1\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 8 from 3 to 1\n",
" donor is losing {9, 3, 7} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 0\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 5 from 3 to 0\n",
" donor is losing {0, 6} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 10 from 3 to 0\n",
" donor is losing {11, 5} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 2 from 1 to 0\n",
" donor is losing {1} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 2\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 24 from 3 to 2\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 23 from 3 to 2\n",
" donor is losing {24} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 13 from 3 to 2\n",
" donor is losing {8, 14} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"n_regions_per_comp {0: 4}\n",
"comp_label 0\n",
"n_regions_in_comp 4\n",
"Regions in comp: {0, 1, 2, 3}\n",
"comp_adj.shape: (25, 25)\n",
"initial_clustering [0 0 1 2 2 0 0 1 1 2 0 0 1 1 1 0 0 1 1 1 0 0 3 3 3]\n",
"data [[ 1.116]\n",
" [-0.024]\n",
" [-0.733]\n",
" [ 0.369]\n",
" [ 0.118]\n",
" [ 0.344]\n",
" [ 0.428]\n",
" [-0.915]\n",
" [ 0.267]\n",
" [ 0.29 ]\n",
" [ 0.364]\n",
" [ 0.38 ]\n",
" [ 0.548]\n",
" [ 0.926]\n",
" [ 3.037]\n",
" [ 1.433]\n",
" [ 0.743]\n",
" [ 1.363]\n",
" [ 1.106]\n",
" [ 0.721]\n",
" [ 2.126]\n",
" [ 2.156]\n",
" [ 1.758]\n",
" [ 0.339]\n",
" [ 1.669]]\n",
"start with obj. val.: [[ 91.606]]\n",
"RN {0: {17, 2, 12, 22, 7}, 1: {1, 3, 6, 9, 11, 16, 22, 23, 24}, 2: {8, 2, 14}, 3: {17, 18, 19, 21}}\n",
"step 2\n",
"step 3\n",
" chosen region: 0\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 17 from 1 to 0\n",
" donor is losing {16, 22} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 18 from 1 to 0\n",
" donor is losing {23} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 1\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 1 from 0 to 1\n",
" donor is losing {2} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 11 from 0 to 1\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 6 from 0 to 1\n",
" donor is losing {7} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 3\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 19 from 1 to 3\n",
" donor is losing {24} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 14 from 1 to 3\n",
" donor is losing {19} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 13 from 1 to 3\n",
" donor is losing {18, 14} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 21 from 0 to 3\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 20 from 0 to 3\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 2\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 8 from 1 to 2\n",
" donor is losing {9} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 13 from 3 to 2\n",
" donor is losing {8, 12} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 12 from 1 to 2\n",
" donor is losing {17, 13} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 11 from 1 to 2\n",
" donor is losing {16, 10} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 6 from 1 to 2\n",
" donor is losing {11, 5} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"n_regions_per_comp {0: 4}\n",
"comp_label 0\n",
"n_regions_in_comp 4\n",
"Regions in comp: {0, 1, 2, 3}\n",
"comp_adj.shape: (25, 25)\n",
"initial_clustering [0 0 1 2 2 0 0 1 2 2 0 2 1 2 2 3 2 2 2 2 3 2 2 2 2]\n",
"data [[ 1.116]\n",
" [-0.024]\n",
" [-0.733]\n",
" [ 0.369]\n",
" [ 0.118]\n",
" [ 0.344]\n",
" [ 0.428]\n",
" [-0.915]\n",
" [ 0.267]\n",
" [ 0.29 ]\n",
" [ 0.364]\n",
" [ 0.38 ]\n",
" [ 0.548]\n",
" [ 0.926]\n",
" [ 3.037]\n",
" [ 1.433]\n",
" [ 0.743]\n",
" [ 1.363]\n",
" [ 1.106]\n",
" [ 0.721]\n",
" [ 2.126]\n",
" [ 2.156]\n",
" [ 1.758]\n",
" [ 0.339]\n",
" [ 1.669]]\n",
"start with obj. val.: [[ 106.479]]\n",
"RN {0: {2, 11, 15, 7}, 1: {1, 3, 6, 8, 11, 13, 17}, 2: {2, 6, 7, 10, 12, 15, 20}, 3: {16, 10, 21}}\n",
"step 2\n",
"step 3\n",
" chosen region: 2\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 3\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 21 from 2 to 3\n",
" donor is losing {20} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 22 from 2 to 3\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 23 from 2 to 3\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 24 from 2 to 3\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 1\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 3 from 2 to 1\n",
" donor is losing {2} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 8 from 2 to 1\n",
" donor is losing {7} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 4 from 2 to 1\n",
" donor is losing {3} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 11 from 2 to 1\n",
" donor is losing {10, 6} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 9 from 2 to 1\n",
" donor is losing {4} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 0\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 11 from 1 to 0\n",
" donor is losing {16, 10} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 16 from 2 to 0\n",
" donor is losing {11, 21, 15} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 12 from 1 to 0\n",
" donor is losing {17, 11} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"n_regions_per_comp {0: 4}\n",
"comp_label 0\n",
"n_regions_in_comp 4\n",
"Regions in comp: {0, 1, 2, 3}\n",
"comp_adj.shape: (25, 25)\n",
"initial_clustering [0 0 1 1 1 0 0 1 1 1 0 2 1 1 1 0 2 1 1 1 0 2 3 3 3]\n",
"data [[ 1.116]\n",
" [-0.024]\n",
" [-0.733]\n",
" [ 0.369]\n",
" [ 0.118]\n",
" [ 0.344]\n",
" [ 0.428]\n",
" [-0.915]\n",
" [ 0.267]\n",
" [ 0.29 ]\n",
" [ 0.364]\n",
" [ 0.38 ]\n",
" [ 0.548]\n",
" [ 0.926]\n",
" [ 3.037]\n",
" [ 1.433]\n",
" [ 0.743]\n",
" [ 1.363]\n",
" [ 1.106]\n",
" [ 0.721]\n",
" [ 2.126]\n",
" [ 2.156]\n",
" [ 1.758]\n",
" [ 0.339]\n",
" [ 1.669]]\n",
"start with obj. val.: [[ 99.169]]\n",
"RN {0: {16, 2, 11, 21, 7}, 1: {1, 6, 11, 16, 22, 23, 24}, 2: {6, 10, 12, 15, 17, 20, 22}, 3: {17, 18, 19, 21}}\n",
"step 2\n",
"step 3\n",
" chosen region: 2\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 12 from 1 to 2\n",
" donor is losing {11} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 6 from 0 to 2\n",
" donor is losing {7} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 20 from 0 to 2\n",
" donor is losing {21} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 17 from 1 to 2\n",
" donor is losing {16, 22} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 7 from 1 to 2\n",
" donor is losing {6} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 13 from 1 to 2\n",
" donor is losing {12} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 18 from 1 to 2\n",
" donor is losing {17, 23} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 1\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 7 from 2 to 1\n",
" donor is losing {2} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 3\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 17 from 2 to 3\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 19 from 1 to 3\n",
" donor is losing {24, 18} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 14 from 1 to 3\n",
" donor is losing {19} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 18 from 2 to 3\n",
" donor is losing {19, 23} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 0\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 6 from 2 to 0\n",
" donor is losing {1, 5} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"n_regions_per_comp {0: 4}\n",
"comp_label 0\n",
"n_regions_in_comp 4\n",
"Regions in comp: {0, 1, 2, 3}\n",
"comp_adj.shape: (25, 25)\n",
"initial_clustering [0 0 1 2 2 0 0 1 1 2 0 1 1 1 2 0 1 1 1 2 0 1 3 3 3]\n",
"data [[ 1.116]\n",
" [-0.024]\n",
" [-0.733]\n",
" [ 0.369]\n",
" [ 0.118]\n",
" [ 0.344]\n",
" [ 0.428]\n",
" [-0.915]\n",
" [ 0.267]\n",
" [ 0.29 ]\n",
" [ 0.364]\n",
" [ 0.38 ]\n",
" [ 0.548]\n",
" [ 0.926]\n",
" [ 3.037]\n",
" [ 1.433]\n",
" [ 0.743]\n",
" [ 1.363]\n",
" [ 1.106]\n",
" [ 0.721]\n",
" [ 2.126]\n",
" [ 2.156]\n",
" [ 1.758]\n",
" [ 0.339]\n",
" [ 1.669]]\n",
"start with obj. val.: [[ 82.475]]\n",
"RN {0: {16, 2, 11, 21, 7}, 1: {1, 3, 6, 9, 10, 14, 15, 19, 20, 22, 23}, 2: {8, 24, 2, 18, 13}, 3: {17, 18, 19, 21}}\n",
"step 2\n",
"step 3\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
" chosen region: 1\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 2\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 8 from 1 to 2\n",
" donor is losing {9} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 13 from 1 to 2\n",
" donor is losing {14} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 2 from 1 to 2\n",
" donor is losing {1, 3} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 0\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 11 from 1 to 0\n",
" donor is losing {10} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 3\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 21 from 1 to 3\n",
" donor is losing {20} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 20 from 0 to 3\n",
" donor is losing {21} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 19 from 2 to 3\n",
" donor is losing {24} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 14 from 2 to 3\n",
" donor is losing {19} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 15 from 0 to 3\n",
" donor is losing {20} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"n_regions_per_comp {0: 4}\n",
"comp_label 0\n",
"n_regions_in_comp 4\n",
"Regions in comp: {0, 1, 2, 3}\n",
"comp_adj.shape: (25, 25)\n",
"initial_clustering [0 0 1 2 2 0 0 1 2 2 1 1 1 2 2 1 1 1 1 2 1 1 3 3 3]\n",
"data [[ 1.116]\n",
" [-0.024]\n",
" [-0.733]\n",
" [ 0.369]\n",
" [ 0.118]\n",
" [ 0.344]\n",
" [ 0.428]\n",
" [-0.915]\n",
" [ 0.267]\n",
" [ 0.29 ]\n",
" [ 0.364]\n",
" [ 0.38 ]\n",
" [ 0.548]\n",
" [ 0.926]\n",
" [ 3.037]\n",
" [ 1.433]\n",
" [ 0.743]\n",
" [ 1.363]\n",
" [ 1.106]\n",
" [ 0.721]\n",
" [ 2.126]\n",
" [ 2.156]\n",
" [ 1.758]\n",
" [ 0.339]\n",
" [ 1.669]]\n",
"start with obj. val.: [[ 92.398]]\n",
"RN {0: {11, 2, 10, 7}, 1: {1, 3, 5, 6, 8, 13, 19, 22, 23}, 2: {24, 2, 18, 12, 7}, 3: {17, 18, 19, 21}}\n",
"step 2\n",
"step 3\n",
" chosen region: 1\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 2\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 2 from 1 to 2\n",
" donor is losing {1, 3} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 7 from 1 to 2\n",
" donor is losing {8, 2} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 3\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 21 from 1 to 3\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 19 from 2 to 3\n",
" donor is losing {24} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 14 from 2 to 3\n",
" donor is losing {19} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 20 from 1 to 3\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 0\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 2 from 2 to 0\n",
" donor is losing {1} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 7 from 2 to 0\n",
" donor is losing {6} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"n_regions_per_comp {0: 4}\n",
"comp_label 0\n",
"n_regions_in_comp 4\n",
"Regions in comp: {0, 1, 2, 3}\n",
"comp_adj.shape: (25, 25)\n",
"initial_clustering [0 0 1 2 2 0 0 1 2 2 0 3 1 2 2 0 0 1 1 2 0 0 1 1 1]\n",
"data [[ 1.116]\n",
" [-0.024]\n",
" [-0.733]\n",
" [ 0.369]\n",
" [ 0.118]\n",
" [ 0.344]\n",
" [ 0.428]\n",
" [-0.915]\n",
" [ 0.267]\n",
" [ 0.29 ]\n",
" [ 0.364]\n",
" [ 0.38 ]\n",
" [ 0.548]\n",
" [ 0.926]\n",
" [ 3.037]\n",
" [ 1.433]\n",
" [ 0.743]\n",
" [ 1.363]\n",
" [ 1.106]\n",
" [ 0.721]\n",
" [ 2.126]\n",
" [ 2.156]\n",
" [ 1.758]\n",
" [ 0.339]\n",
" [ 1.669]]\n",
"start with obj. val.: [[ 89.147]]\n",
"RN {0: {17, 2, 11, 22, 7}, 1: {1, 3, 6, 8, 11, 13, 16, 19, 21}, 2: {24, 2, 18, 12, 7}, 3: {16, 10, 12, 6}}\n",
"step 2\n",
"step 3\n",
" chosen region: 3\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 6 from 0 to 3\n",
" donor is losing {7} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 1 from 0 to 3\n",
" donor is losing {2} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 2 from 1 to 3\n",
" donor is losing {1, 3} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 3 from 2 to 3\n",
" donor is losing {2} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 7 from 1 to 3\n",
" donor is losing {8, 2, 6} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 8 from 2 to 3\n",
" donor is losing {7} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 4 from 2 to 3\n",
" donor is losing {3} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 9 from 2 to 3\n",
" donor is losing {4} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 0\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 2\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 24 from 1 to 2\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 1\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 21 from 0 to 1\n",
" donor is losing {22} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 20 from 0 to 1\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"n_regions_per_comp {0: 4}\n",
"comp_label 0\n",
"n_regions_in_comp 4\n",
"Regions in comp: {0, 1, 2, 3}\n",
"comp_adj.shape: (25, 25)\n",
"initial_clustering [0 0 1 2 2 0 0 1 3 2 0 3 3 3 2 0 3 3 3 2 0 3 3 3 3]\n",
"data [[ 1.116]\n",
" [-0.024]\n",
" [-0.733]\n",
" [ 0.369]\n",
" [ 0.118]\n",
" [ 0.344]\n",
" [ 0.428]\n",
" [-0.915]\n",
" [ 0.267]\n",
" [ 0.29 ]\n",
" [ 0.364]\n",
" [ 0.38 ]\n",
" [ 0.548]\n",
" [ 0.926]\n",
" [ 3.037]\n",
" [ 1.433]\n",
" [ 0.743]\n",
" [ 1.363]\n",
" [ 1.106]\n",
" [ 0.721]\n",
" [ 2.126]\n",
" [ 2.156]\n",
" [ 1.758]\n",
" [ 0.339]\n",
" [ 1.669]]\n",
"start with obj. val.: [[ 73.442]]\n",
"RN {0: {16, 2, 11, 21, 7}, 1: {8, 1, 3, 12, 6}, 2: {8, 24, 2, 18, 13}, 3: {3, 6, 7, 9, 10, 14, 15, 19, 20}}\n",
"step 2\n",
"step 3\n",
" chosen region: 3\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 0\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 21 from 3 to 0\n",
" donor is losing {20} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 22 from 3 to 0\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 2\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 24 from 3 to 2\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 1\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 8 from 3 to 1\n",
" donor is losing {9, 3} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 1 from 0 to 1\n",
" donor is losing {2} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 3 from 2 to 1\n",
" donor is losing {2} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 4 from 2 to 1\n",
" donor is losing {3} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 6 from 0 to 1\n",
" donor is losing {7} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 9 from 2 to 1\n",
" donor is losing {8, 4} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"Getting variables\n",
"Variables successfully extracted\n",
"Running original AZP algorithm (Openshaw and Rao, 1995)\n",
"Number of areas: 25\n",
"Number of regions: 4\n",
"Constructing regions\n",
"initial Solution: [2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 3, 0]\n",
"initial O.F: 6.957076357142856\n",
"Performing local search\n",
"FINAL SOLUTION: [2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 3, 0]\n",
"FINAL O.F.: 6.957076357142858\n",
"Done\n",
"Adding variables\n",
"Done\n",
"Getting variables\n",
"Variables successfully extracted\n",
"Running original AZP algorithm (Openshaw and Rao, 1995)\n",
"Number of areas: 25\n",
"Number of regions: 4\n",
"Constructing regions\n",
"initial Solution: [3, 3, 3, 1, 1, 3, 3, 3, 1, 1, 3, 3, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1]\n",
"initial O.F: 9.588293733333334\n",
"Performing local search\n",
"FINAL SOLUTION: [3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 1, 2, 1, 3, 1, 1, 1, 1, 1, 1, 0, 1]\n",
"FINAL O.F.: 5.606928103174604\n",
"Done\n",
"Adding variables\n",
"Done\n",
"Getting variables\n",
"Variables successfully extracted\n",
"Running original AZP algorithm (Openshaw and Rao, 1995)\n",
"Number of areas: 25\n",
"Number of regions: 4\n",
"Constructing regions\n",
"initial Solution: [1, 1, 3, 2, 2, 1, 1, 3, 2, 2, 1, 1, 1, 1, 1, 0, 1, 0, 1, 1, 0, 0, 0, 1, 1]\n",
"initial O.F: 8.232968300000001\n",
"Performing local search\n",
"FINAL SOLUTION: [1, 3, 3, 2, 2, 1, 1, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 1, 1]\n",
"FINAL O.F.: 7.836795733333332\n",
"Done\n",
"Adding variables\n",
"Done\n",
"Getting variables\n",
"Variables successfully extracted\n",
"Running original AZP algorithm (Openshaw and Rao, 1995)\n",
"Number of areas: 25\n",
"Number of regions: 4\n",
"Constructing regions\n",
"initial Solution: [0, 0, 2, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 3]\n",
"initial O.F: 6.55880611965812\n",
"Performing local search\n",
"FINAL SOLUTION: [0, 0, 2, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 3, 1]\n",
"FINAL O.F.: 4.883597230769231\n",
"Done\n",
"Adding variables\n",
"Done\n",
"Getting variables\n",
"Variables successfully extracted\n",
"Running original AZP algorithm (Openshaw and Rao, 1995)\n",
"Number of areas: 25\n",
"Number of regions: 4\n",
"Constructing regions\n",
"initial Solution: [3, 3, 0, 0, 0, 3, 3, 0, 0, 0, 3, 3, 3, 3, 1, 2, 3, 3, 3, 3, 2, 2, 2, 3, 3]\n",
"initial O.F: 4.829871011904762\n",
"Performing local search\n",
"FINAL SOLUTION: [3, 0, 0, 0, 0, 3, 3, 0, 0, 0, 3, 3, 3, 3, 1, 2, 3, 2, 3, 3, 2, 2, 2, 3, 3]\n",
"FINAL O.F.: 4.072216895238095\n",
"Done\n",
"Adding variables\n",
"Done\n",
"Getting variables\n",
"Variables successfully extracted\n",
"Running original AZP algorithm (Openshaw and Rao, 1995)\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"Number of areas: 25\n",
"Number of regions: 4\n",
"Constructing regions\n",
"initial Solution: [0, 0, 3, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2]\n",
"initial O.F: 8.330504952380952\n",
"Performing local search\n",
"FINAL SOLUTION: [0, 3, 3, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2]\n",
"FINAL O.F.: 8.038384416666666\n",
"Done\n",
"Adding variables\n",
"Done\n",
"Getting variables\n",
"Variables successfully extracted\n",
"Running original AZP algorithm (Openshaw and Rao, 1995)\n",
"Number of areas: 25\n",
"Number of regions: 4\n",
"Constructing regions\n",
"initial Solution: [1, 1, 3, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0]\n",
"initial O.F: 8.330504952380952\n",
"Performing local search\n",
"FINAL SOLUTION: [1, 3, 3, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0]\n",
"FINAL O.F.: 8.038384416666666\n",
"Done\n",
"Adding variables\n",
"Done\n",
"Getting variables\n",
"Variables successfully extracted\n",
"Running original AZP algorithm (Openshaw and Rao, 1995)\n",
"Number of areas: 25\n",
"Number of regions: 4\n",
"Constructing regions\n",
"initial Solution: [2, 2, 1, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 0, 3, 2, 0, 0, 0, 3, 3, 0, 0, 0]\n",
"initial O.F: 6.090850945054946\n",
"Performing local search\n",
"FINAL SOLUTION: [2, 2, 1, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 0, 3, 2, 0, 0, 0, 3, 3, 3, 0, 0]\n",
"FINAL O.F.: 5.979677480769231\n",
"Done\n",
"Adding variables\n",
"Done\n",
"Getting variables\n",
"Variables successfully extracted\n",
"Running original AZP algorithm (Openshaw and Rao, 1995)\n",
"Number of areas: 25\n",
"Number of regions: 4\n",
"Constructing regions\n",
"initial Solution: [3, 3, 0, 0, 0, 3, 3, 0, 0, 0, 3, 3, 3, 1, 2, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1]\n",
"initial O.F: 5.578939308333333\n",
"Performing local search\n",
"FINAL SOLUTION: [3, 0, 0, 0, 0, 3, 3, 0, 3, 3, 3, 3, 3, 3, 2, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1]\n",
"FINAL O.F.: 4.985169288888889\n",
"Done\n",
"Adding variables\n",
"Done\n",
"Getting variables\n",
"Variables successfully extracted\n",
"Running original AZP algorithm (Openshaw and Rao, 1995)\n",
"Number of areas: 25\n",
"Number of regions: 4\n",
"Constructing regions\n",
"initial Solution: [2, 3, 3, 1, 1, 2, 2, 3, 1, 1, 2, 2, 2, 2, 2, 0, 2, 0, 2, 2, 0, 0, 0, 2, 2]\n",
"initial O.F: 7.864068543589743\n",
"Performing local search\n",
"FINAL SOLUTION: [2, 3, 3, 1, 1, 2, 2, 3, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 0, 0, 0, 2, 2]\n",
"FINAL O.F.: 7.836795733333333\n",
"Done\n",
"Adding variables\n",
"Done\n",
"Getting variables\n",
"Variables successfully extracted\n",
"Running original AZP algorithm (Openshaw and Rao, 1995)\n",
"Number of areas: 25\n",
"Number of regions: 4\n",
"Constructing regions\n",
"initial Solution: [3, 3, 0, 0, 0, 3, 3, 0, 0, 0, 3, 3, 3, 3, 1, 2, 3, 2, 3, 3, 2, 2, 2, 3, 3]\n",
"initial O.F: 4.583183825641026\n",
"Performing local search\n",
"FINAL SOLUTION: [3, 0, 0, 0, 0, 3, 3, 0, 0, 0, 3, 3, 3, 3, 1, 2, 3, 2, 3, 3, 2, 2, 2, 3, 3]\n",
"FINAL O.F.: 4.072216895238096\n",
"Done\n",
"Adding variables\n",
"Done\n",
"Getting variables\n",
"Variables successfully extracted\n",
"Running original AZP algorithm (Openshaw and Rao, 1995)\n",
"Number of areas: 25\n",
"Number of regions: 4\n",
"Constructing regions\n",
"initial Solution: [0, 0, 2, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 3, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1]\n",
"initial O.F: 4.180918119658121\n",
"Performing local search\n",
"FINAL SOLUTION: [0, 0, 2, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 3, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1]\n",
"FINAL O.F.: 4.18091811965812\n",
"Done\n",
"Adding variables\n",
"Done\n",
"Getting variables\n",
"Variables successfully extracted\n",
"Running original AZP algorithm (Openshaw and Rao, 1995)\n",
"Number of areas: 25\n",
"Number of regions: 4\n",
"Constructing regions\n",
"initial Solution: [2, 2, 1, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 0]\n",
"initial O.F: 8.330504952380952\n",
"Performing local search\n",
"FINAL SOLUTION: [2, 1, 1, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 0]\n",
"FINAL O.F.: 8.038384416666666\n",
"Done\n",
"Adding variables\n",
"Done\n",
"Getting variables\n",
"Variables successfully extracted\n",
"Running original AZP algorithm (Openshaw and Rao, 1995)\n",
"Number of areas: 25\n",
"Number of regions: 4\n",
"Constructing regions\n",
"initial Solution: [3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 0, 2, 2, 2, 2, 2, 2, 2, 2]\n",
"initial O.F: 6.254397246031747\n",
"Performing local search\n",
"FINAL SOLUTION: [3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2]\n",
"FINAL O.F.: 5.916415212121212\n",
"Done\n",
"Adding variables\n",
"Done\n",
"Getting variables\n",
"Variables successfully extracted\n",
"Running original AZP algorithm (Openshaw and Rao, 1995)\n",
"Number of areas: 25\n",
"Number of regions: 4\n",
"Constructing regions\n",
"initial Solution: [1, 1, 0, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 2, 3, 1, 3, 3, 3, 3, 3, 3, 3, 3]\n",
"initial O.F: 4.18091811965812\n",
"Performing local search\n",
"FINAL SOLUTION: [1, 1, 0, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 2, 3, 1, 3, 3, 3, 3, 3, 3, 3, 3]\n",
"FINAL O.F.: 4.18091811965812\n",
"Done\n",
"Adding variables\n",
"Done\n",
"Getting variables\n",
"Variables successfully extracted\n",
"Running original AZP algorithm (Openshaw and Rao, 1995)\n",
"Number of areas: 25\n",
"Number of regions: 4\n",
"Constructing regions\n",
"initial Solution: [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 2, 1, 0, 1, 1, 0, 0, 0, 1, 1]\n",
"initial O.F: 6.857522750000001\n",
"Performing local search\n",
"FINAL SOLUTION: [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 2, 1, 0, 1, 1, 0, 0, 0, 1, 1]\n",
"FINAL O.F.: 6.85752275\n",
"Done\n",
"Adding variables\n",
"Done\n"
]
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x7fd6295349e8>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"region_obj4, cp_obj4 = compare_boxplot_objectives(df5, \"EX5\", n_regions=4, n_experiments=n_experiments)"
]
},
{
"cell_type": "code",
"execution_count": 13,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"37.51200000000001"
]
},
"execution_count": 13,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"optimal_solution = np.array(df5[\"4REG\"])\n",
"objective_func_arr(metric, optimal_solution, attr5).item()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## clustering into 6 regions (problem 5 in [Duque et al. (2011)](https://www.google.at/url?sa=t&rct=j&q=&esrc=s&source=web&cd=2&cad=rja&uact=8&ved=0ahUKEwiK2efWuprWAhVFvBQKHRouACIQFgg9MAE&url=http%3A%2F%2Fonlinelibrary.wiley.com%2Fdoi%2F10.1111%2Fj.1538-4632.2010.00810.x%2Fabstract&usg=AFQjCNF--NAHN98PKuR-gVNQPTk34XDdnA))"
]
},
{
"cell_type": "code",
"execution_count": 14,
"metadata": {
"scrolled": true
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"n_regions_per_comp {0: 5}\n",
"comp_label 0\n",
"n_regions_in_comp 5\n",
"Regions in comp: {0, 1, 2, 3, 4}\n",
"comp_adj.shape: (25, 25)\n",
"initial_clustering [0 0 1 2 2 0 0 1 2 2 0 3 1 2 2 0 3 3 3 2 0 3 3 4 4]\n",
"data [[ 1.116]\n",
" [-0.024]\n",
" [-0.733]\n",
" [ 0.369]\n",
" [ 0.118]\n",
" [ 0.344]\n",
" [ 0.428]\n",
" [-0.915]\n",
" [ 0.267]\n",
" [ 0.29 ]\n",
" [ 0.364]\n",
" [ 0.38 ]\n",
" [ 0.548]\n",
" [ 0.926]\n",
" [ 3.037]\n",
" [ 1.433]\n",
" [ 0.743]\n",
" [ 1.363]\n",
" [ 1.106]\n",
" [ 0.721]\n",
" [ 2.126]\n",
" [ 2.156]\n",
" [ 1.758]\n",
" [ 0.339]\n",
" [ 1.669]]\n",
"start with obj. val.: [[ 56.21]]\n",
"RN {0: {16, 2, 11, 21, 7}, 1: {1, 3, 6, 8, 11, 13, 17}, 2: {24, 2, 18, 12, 7}, 3: {6, 10, 12, 13, 15, 19, 20, 23}, 4: {18, 19, 22}}\n",
"step 2\n",
"step 3\n",
" chosen region: 4\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 18 from 3 to 4\n",
" donor is losing {19, 13} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 19 from 2 to 4\n",
" donor is losing {24} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 13 from 2 to 4\n",
" donor is losing {18, 12} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 17 from 3 to 4\n",
" donor is losing {18} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 3\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 23 from 4 to 3\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 20 from 0 to 3\n",
" donor is losing {21} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 15 from 0 to 3\n",
" donor is losing {16, 20} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 2\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 0\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 11 from 3 to 0\n",
" donor is losing {12, 6} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 12 from 1 to 0\n",
" donor is losing {17, 11, 13} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 16 from 3 to 0\n",
" donor is losing {11} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 1\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 1 from 0 to 1\n",
" donor is losing {2} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 8 from 2 to 1\n",
" donor is losing {7} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 3 from 2 to 1\n",
" donor is losing {2} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 4 from 2 to 1\n",
" donor is losing {3} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"n_regions_per_comp {0: 5}\n",
"comp_label 0\n",
"n_regions_in_comp 5\n",
"Regions in comp: {0, 1, 2, 3, 4}\n",
"comp_adj.shape: (25, 25)\n",
"initial_clustering [0 0 1 2 2 3 0 1 4 2 3 4 4 4 4 3 4 4 4 4 3 4 4 4 4]\n",
"data [[ 1.116]\n",
" [-0.024]\n",
" [-0.733]\n",
" [ 0.369]\n",
" [ 0.118]\n",
" [ 0.344]\n",
" [ 0.428]\n",
" [-0.915]\n",
" [ 0.267]\n",
" [ 0.29 ]\n",
" [ 0.364]\n",
" [ 0.38 ]\n",
" [ 0.548]\n",
" [ 0.926]\n",
" [ 3.037]\n",
" [ 1.433]\n",
" [ 0.743]\n",
" [ 1.363]\n",
" [ 1.106]\n",
" [ 0.721]\n",
" [ 2.126]\n",
" [ 2.156]\n",
" [ 1.758]\n",
" [ 0.339]\n",
" [ 1.669]]\n",
"start with obj. val.: [[ 81.833]]\n",
"RN {0: {2, 11, 5, 7}, 1: {8, 1, 3, 12, 6}, 2: {8, 2, 14}, 3: {0, 16, 11, 21, 6}, 4: {3, 6, 7, 9, 10, 15, 20}}\n",
"step 2\n",
"step 3\n",
" chosen region: 1\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 8 from 4 to 1\n",
" donor is losing {3} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 12 from 4 to 1\n",
" donor is losing {7} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 17 from 4 to 1\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 13 from 4 to 1\n",
" donor is losing {8} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 11 from 4 to 1\n",
" donor is losing {10, 12, 6} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 16 from 4 to 1\n",
" donor is losing {11, 15} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 3\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 21 from 4 to 3\n",
" donor is losing {16, 20} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 22 from 4 to 3\n",
" donor is losing {21} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 17 from 1 to 3\n",
" donor is losing {22} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 2\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 2 from 1 to 2\n",
" donor is losing {1} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 8 from 1 to 2\n",
" donor is losing {9, 3} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 7 from 1 to 2\n",
" donor is losing {2} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 4\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 17 from 3 to 4\n",
" donor is losing {18, 12} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 0\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 7 from 2 to 0\n",
" donor is losing {12, 6} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 2 from 2 to 0\n",
" donor is losing {1} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 5 from 3 to 0\n",
" donor is losing {0, 6} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 10 from 3 to 0\n",
" donor is losing {11, 5} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"n_regions_per_comp {0: 5}\n",
"comp_label 0\n",
"n_regions_in_comp 5\n",
"Regions in comp: {0, 1, 2, 3, 4}\n",
"comp_adj.shape: (25, 25)\n",
"initial_clustering [0 0 1 2 2 0 0 1 3 2 0 4 1 3 2 4 4 1 3 2 4 4 1 1 1]\n",
"data [[ 1.116]\n",
" [-0.024]\n",
" [-0.733]\n",
" [ 0.369]\n",
" [ 0.118]\n",
" [ 0.344]\n",
" [ 0.428]\n",
" [-0.915]\n",
" [ 0.267]\n",
" [ 0.29 ]\n",
" [ 0.364]\n",
" [ 0.38 ]\n",
" [ 0.548]\n",
" [ 0.926]\n",
" [ 3.037]\n",
" [ 1.433]\n",
" [ 0.743]\n",
" [ 1.363]\n",
" [ 1.106]\n",
" [ 0.721]\n",
" [ 2.126]\n",
" [ 2.156]\n",
" [ 1.758]\n",
" [ 0.339]\n",
" [ 1.669]]\n",
"start with obj. val.: [[ 56.508]]\n",
"RN {0: {2, 11, 15, 7}, 1: {1, 3, 6, 8, 11, 13, 16, 18, 19, 21}, 2: {8, 24, 2, 18, 13}, 3: {3, 7, 9, 12, 14, 17, 19, 23}, 4: {17, 10, 12, 6, 22}}\n",
"step 2\n",
"step 3\n",
" chosen region: 4\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 0\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 2 from 1 to 0\n",
" donor is losing {1, 3} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 11 from 4 to 0\n",
" donor is losing {12, 6} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 7 from 1 to 0\n",
" donor is losing {8, 2, 6} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 1\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 19 from 2 to 1\n",
" donor is losing {24, 18} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 16 from 4 to 1\n",
" donor is losing {17, 11} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 3\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 7 from 0 to 3\n",
" donor is losing {8} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 12 from 1 to 3\n",
" donor is losing {13, 7} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 19 from 1 to 3\n",
" donor is losing {14} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 2\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 8 from 3 to 2\n",
" donor is losing {9, 3} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"n_regions_per_comp {0: 5}\n",
"comp_label 0\n",
"n_regions_in_comp 5\n",
"Regions in comp: {0, 1, 2, 3, 4}\n",
"comp_adj.shape: (25, 25)\n",
"initial_clustering [0 0 1 2 2 0 0 1 1 2 0 3 1 1 2 0 3 1 1 2 0 3 4 4 4]\n",
"data [[ 1.116]\n",
" [-0.024]\n",
" [-0.733]\n",
" [ 0.369]\n",
" [ 0.118]\n",
" [ 0.344]\n",
" [ 0.428]\n",
" [-0.915]\n",
" [ 0.267]\n",
" [ 0.29 ]\n",
" [ 0.364]\n",
" [ 0.38 ]\n",
" [ 0.548]\n",
" [ 0.926]\n",
" [ 3.037]\n",
" [ 1.433]\n",
" [ 0.743]\n",
" [ 1.363]\n",
" [ 1.106]\n",
" [ 0.721]\n",
" [ 2.126]\n",
" [ 2.156]\n",
" [ 1.758]\n",
" [ 0.339]\n",
" [ 1.669]]\n",
"start with obj. val.: [[ 60.03]]\n",
"RN {0: {16, 2, 11, 21, 7}, 1: {1, 3, 6, 9, 11, 14, 16, 19, 22, 23}, 2: {8, 24, 2, 18, 13}, 3: {6, 10, 12, 15, 17, 20, 22}, 4: {17, 18, 19, 21}}\n",
"step 2\n",
"step 3\n",
" chosen region: 3\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 20 from 0 to 3\n",
" donor is losing {21} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 12 from 1 to 3\n",
" donor is losing {11} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 15 from 0 to 3\n",
" donor is losing {16, 20} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 17 from 1 to 3\n",
" donor is losing {16, 22} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 18 from 1 to 3\n",
" donor is losing {17, 19, 23} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 4\n",
"step 4\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"step 5\n",
"step 5 loop\n",
" MOVING 21 from 3 to 4\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 20 from 3 to 4\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 2\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 0\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 11 from 3 to 0\n",
" donor is losing {6} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 12 from 3 to 0\n",
" donor is losing {7} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 13 from 1 to 0\n",
" donor is losing {18, 14} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 1\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 3 from 2 to 1\n",
" donor is losing {2} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 1 from 0 to 1\n",
" donor is losing {2} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 4 from 2 to 1\n",
" donor is losing {3} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 9 from 2 to 1\n",
" donor is losing {8, 4} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"n_regions_per_comp {0: 5}\n",
"comp_label 0\n",
"n_regions_in_comp 5\n",
"Regions in comp: {0, 1, 2, 3, 4}\n",
"comp_adj.shape: (25, 25)\n",
"initial_clustering [0 0 1 2 2 0 0 1 2 2 0 3 1 2 2 0 3 4 4 2 0 3 4 4 4]\n",
"data [[ 1.116]\n",
" [-0.024]\n",
" [-0.733]\n",
" [ 0.369]\n",
" [ 0.118]\n",
" [ 0.344]\n",
" [ 0.428]\n",
" [-0.915]\n",
" [ 0.267]\n",
" [ 0.29 ]\n",
" [ 0.364]\n",
" [ 0.38 ]\n",
" [ 0.548]\n",
" [ 0.926]\n",
" [ 3.037]\n",
" [ 1.433]\n",
" [ 0.743]\n",
" [ 1.363]\n",
" [ 1.106]\n",
" [ 0.721]\n",
" [ 2.126]\n",
" [ 2.156]\n",
" [ 1.758]\n",
" [ 0.339]\n",
" [ 1.669]]\n",
"start with obj. val.: [[ 53.052]]\n",
"RN {0: {16, 2, 11, 21, 7}, 1: {1, 3, 6, 8, 11, 13, 17}, 2: {24, 2, 18, 12, 7}, 3: {6, 10, 12, 15, 17, 20, 22}, 4: {16, 21, 19, 12, 13}}\n",
"step 2\n",
"step 3\n",
" chosen region: 0\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 3\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 12 from 1 to 3\n",
" donor is losing {17, 11, 13} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 20 from 0 to 3\n",
" donor is losing {21} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 13 from 2 to 3\n",
" donor is losing {12} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 15 from 0 to 3\n",
" donor is losing {16, 20} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 2\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 1\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 8 from 2 to 1\n",
" donor is losing {7} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 3 from 2 to 1\n",
" donor is losing {2} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 4 from 2 to 1\n",
" donor is losing {3} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 9 from 2 to 1\n",
" donor is losing {8, 4} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 4\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 13 from 3 to 4\n",
" donor is losing {8, 18, 14} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 12 from 3 to 4\n",
" donor is losing {13, 7} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"n_regions_per_comp {0: 5}\n",
"comp_label 0\n",
"n_regions_in_comp 5\n",
"Regions in comp: {0, 1, 2, 3, 4}\n",
"comp_adj.shape: (25, 25)\n",
"initial_clustering [0 0 1 2 2 0 0 1 1 1 0 3 1 1 1 0 3 1 1 1 0 3 4 4 4]\n",
"data [[ 1.116]\n",
" [-0.024]\n",
" [-0.733]\n",
" [ 0.369]\n",
" [ 0.118]\n",
" [ 0.344]\n",
" [ 0.428]\n",
" [-0.915]\n",
" [ 0.267]\n",
" [ 0.29 ]\n",
" [ 0.364]\n",
" [ 0.38 ]\n",
" [ 0.548]\n",
" [ 0.926]\n",
" [ 3.037]\n",
" [ 1.433]\n",
" [ 0.743]\n",
" [ 1.363]\n",
" [ 1.106]\n",
" [ 0.721]\n",
" [ 2.126]\n",
" [ 2.156]\n",
" [ 1.758]\n",
" [ 0.339]\n",
" [ 1.669]]\n",
"start with obj. val.: [[ 81.917]]\n",
"RN {0: {16, 2, 11, 21, 7}, 1: {1, 3, 4, 6, 11, 16, 22, 23, 24}, 2: {8, 9, 2}, 3: {6, 10, 12, 15, 17, 20, 22}, 4: {17, 18, 19, 21}}\n",
"step 2\n",
"step 3\n",
" chosen region: 4\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 18 from 1 to 4\n",
" donor is losing {23} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 17 from 1 to 4\n",
" donor is losing {16, 22} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 13 from 1 to 4\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 19 from 1 to 4\n",
" donor is losing {24, 18} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 14 from 1 to 4\n",
" donor is losing {19} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 0\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 1\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 1 from 0 to 1\n",
" donor is losing {2} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 6 from 0 to 1\n",
" donor is losing {7} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 2\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 2 from 1 to 2\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 9 from 1 to 2\n",
" donor is losing {4, 14} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 1 from 1 to 2\n",
" donor is losing {0} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 8 from 1 to 2\n",
" donor is losing {9, 3} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 3\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 17 from 4 to 3\n",
" donor is losing {16} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 18 from 4 to 3\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 22 from 4 to 3\n",
" donor is losing {17, 21} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 13 from 4 to 3\n",
" donor is losing {8, 12} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"n_regions_per_comp {0: 5}\n",
"comp_label 0\n",
"n_regions_in_comp 5\n",
"Regions in comp: {0, 1, 2, 3, 4}\n",
"comp_adj.shape: (25, 25)\n",
"initial_clustering [0 0 1 2 2 3 3 1 4 2 3 3 1 4 2 3 3 4 4 2 3 3 4 4 4]\n",
"data [[ 1.116]\n",
" [-0.024]\n",
" [-0.733]\n",
" [ 0.369]\n",
" [ 0.118]\n",
" [ 0.344]\n",
" [ 0.428]\n",
" [-0.915]\n",
" [ 0.267]\n",
" [ 0.29 ]\n",
" [ 0.364]\n",
" [ 0.38 ]\n",
" [ 0.548]\n",
" [ 0.926]\n",
" [ 3.037]\n",
" [ 1.433]\n",
" [ 0.743]\n",
" [ 1.363]\n",
" [ 1.106]\n",
" [ 0.721]\n",
" [ 2.126]\n",
" [ 2.156]\n",
" [ 1.758]\n",
" [ 0.339]\n",
" [ 1.669]]\n",
"start with obj. val.: [[ 56.712]]\n",
"RN {0: {2, 5, 6}, 1: {1, 3, 6, 8, 11, 13, 17}, 2: {8, 24, 2, 18, 13}, 3: {0, 1, 7, 12, 17, 22}, 4: {3, 7, 9, 12, 14, 16, 19, 21}}\n",
"step 2\n",
"step 3\n",
" chosen region: 1\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 11 from 3 to 1\n",
" donor is losing {12} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 16 from 3 to 1\n",
" donor is losing {17} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 6 from 3 to 1\n",
" donor is losing {1, 7} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 5 from 3 to 1\n",
" donor is losing {0, 6} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 3 from 2 to 1\n",
" donor is losing {2} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 8 from 4 to 1\n",
" donor is losing {9, 3, 7} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 10 from 3 to 1\n",
" donor is losing {11, 5} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 0\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 6 from 1 to 0\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 2 from 1 to 0\n",
" donor is losing {1} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 2\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 3\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 22 from 4 to 3\n",
" donor is losing {21} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 17 from 4 to 3\n",
" donor is losing {16} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 4\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 19 from 2 to 4\n",
" donor is losing {24, 18} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"n_regions_per_comp {0: 5}\n",
"comp_label 0\n",
"n_regions_in_comp 5\n",
"Regions in comp: {0, 1, 2, 3, 4}\n",
"comp_adj.shape: (25, 25)\n",
"initial_clustering [0 0 1 2 3 0 0 1 3 3 0 4 1 3 3 0 4 4 3 3 0 4 4 4 4]\n",
"data [[ 1.116]\n",
" [-0.024]\n",
" [-0.733]\n",
" [ 0.369]\n",
" [ 0.118]\n",
" [ 0.344]\n",
" [ 0.428]\n",
" [-0.915]\n",
" [ 0.267]\n",
" [ 0.29 ]\n",
" [ 0.364]\n",
" [ 0.38 ]\n",
" [ 0.548]\n",
" [ 0.926]\n",
" [ 3.037]\n",
" [ 1.433]\n",
" [ 0.743]\n",
" [ 1.363]\n",
" [ 1.106]\n",
" [ 0.721]\n",
" [ 2.126]\n",
" [ 2.156]\n",
" [ 1.758]\n",
" [ 0.339]\n",
" [ 1.669]]\n",
"start with obj. val.: [[ 62.094]]\n",
"RN {0: {16, 2, 11, 21, 7}, 1: {1, 3, 6, 8, 11, 13, 17}, 2: {8, 2, 4}, 3: {3, 7, 12, 17, 23, 24}, 4: {6, 10, 12, 15, 18, 19, 20}}\n",
"step 2\n",
"step 3\n",
" chosen region: 4\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 20 from 0 to 4\n",
" donor is losing {21} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 15 from 0 to 4\n",
" donor is losing {16, 20} as neighbors\n",
"step 4\n",
"step 5\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 1\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 1 from 0 to 1\n",
" donor is losing {2} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 11 from 4 to 1\n",
" donor is losing {6} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 16 from 4 to 1\n",
" donor is losing {11} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 8 from 3 to 1\n",
" donor is losing {7} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 0\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 1 from 1 to 0\n",
" donor is losing {0} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 3\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 2\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 4 from 3 to 2\n",
" donor is losing {3} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 8 from 1 to 2\n",
" donor is losing {9} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 9 from 3 to 2\n",
" donor is losing {4} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 2 from 1 to 2\n",
" donor is losing {1, 3} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 1 from 0 to 2\n",
" donor is losing {2} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"n_regions_per_comp {0: 5}\n",
"comp_label 0\n",
"n_regions_in_comp 5\n",
"Regions in comp: {0, 1, 2, 3, 4}\n",
"comp_adj.shape: (25, 25)\n",
"initial_clustering [0 0 1 2 2 3 0 1 4 2 3 4 1 4 2 3 4 4 4 2 3 4 4 4 4]\n",
"data [[ 1.116]\n",
" [-0.024]\n",
" [-0.733]\n",
" [ 0.369]\n",
" [ 0.118]\n",
" [ 0.344]\n",
" [ 0.428]\n",
" [-0.915]\n",
" [ 0.267]\n",
" [ 0.29 ]\n",
" [ 0.364]\n",
" [ 0.38 ]\n",
" [ 0.548]\n",
" [ 0.926]\n",
" [ 3.037]\n",
" [ 1.433]\n",
" [ 0.743]\n",
" [ 1.363]\n",
" [ 1.106]\n",
" [ 0.721]\n",
" [ 2.126]\n",
" [ 2.156]\n",
" [ 1.758]\n",
" [ 0.339]\n",
" [ 1.669]]\n",
"start with obj. val.: [[ 59.578]]\n",
"RN {0: {2, 11, 5, 7}, 1: {1, 3, 6, 8, 11, 13, 17}, 2: {8, 24, 2, 18, 13}, 3: {0, 16, 11, 21, 6}, 4: {3, 6, 7, 9, 10, 12, 14, 15, 19, 20}}\n",
"step 2\n",
"step 3\n",
" chosen region: 4\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 0\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 5 from 3 to 0\n",
" donor is losing {0, 6} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 10 from 3 to 0\n",
" donor is losing {11, 5} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 11 from 4 to 0\n",
" donor is losing {10, 6} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 16 from 4 to 0\n",
" donor is losing {11, 15} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 12 from 1 to 0\n",
" donor is losing {17, 11, 13} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 3\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 21 from 4 to 3\n",
" donor is losing {20} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 22 from 4 to 3\n",
" donor is losing {21} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 17 from 4 to 3\n",
" donor is losing {16} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 1\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 1 from 0 to 1\n",
" donor is losing {2} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 8 from 4 to 1\n",
" donor is losing {9, 3, 7} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 3 from 2 to 1\n",
" donor is losing {2} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 4 from 2 to 1\n",
" donor is losing {3} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 9 from 2 to 1\n",
" donor is losing {8, 4} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 2\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 24 from 4 to 2\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"n_regions_per_comp {0: 5}\n",
"comp_label 0\n",
"n_regions_in_comp 5\n",
"Regions in comp: {0, 1, 2, 3, 4}\n",
"comp_adj.shape: (25, 25)\n",
"initial_clustering [0 0 1 2 2 0 0 1 1 2 0 3 1 1 1 3 3 1 1 1 3 3 4 4 4]\n",
"data [[ 1.116]\n",
" [-0.024]\n",
" [-0.733]\n",
" [ 0.369]\n",
" [ 0.118]\n",
" [ 0.344]\n",
" [ 0.428]\n",
" [-0.915]\n",
" [ 0.267]\n",
" [ 0.29 ]\n",
" [ 0.364]\n",
" [ 0.38 ]\n",
" [ 0.548]\n",
" [ 0.926]\n",
" [ 3.037]\n",
" [ 1.433]\n",
" [ 0.743]\n",
" [ 1.363]\n",
" [ 1.106]\n",
" [ 0.721]\n",
" [ 2.126]\n",
" [ 2.156]\n",
" [ 1.758]\n",
" [ 0.339]\n",
" [ 1.669]]\n",
"start with obj. val.: [[ 66.242]]\n",
"RN {0: {2, 11, 15, 7}, 1: {1, 3, 6, 9, 11, 16, 22, 23, 24}, 2: {8, 2, 14}, 3: {17, 10, 12, 6, 22}, 4: {17, 18, 19, 21}}\n",
"step 2\n",
"step 3\n",
" chosen region: 3\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 12 from 1 to 3\n",
" donor is losing {11} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 17 from 1 to 3\n",
" donor is losing {16, 22} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 18 from 1 to 3\n",
" donor is losing {17, 23} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 19 from 1 to 3\n",
" donor is losing {24} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 2\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 2 from 1 to 2\n",
" donor is losing {1} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 7 from 1 to 2\n",
" donor is losing {2, 6} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 8 from 1 to 2\n",
" donor is losing {3, 7} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 12 from 3 to 2\n",
" donor is losing {7} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 11 from 3 to 2\n",
" donor is losing {6} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 0\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 2 from 2 to 0\n",
" donor is losing {1} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 1\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 19 from 3 to 1\n",
" donor is losing {24, 14} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 18 from 3 to 1\n",
" donor is losing {19, 13, 23} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 4\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 21 from 3 to 4\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 20 from 3 to 4\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"n_regions_per_comp {0: 5}\n",
"comp_label 0\n",
"n_regions_in_comp 5\n",
"Regions in comp: {0, 1, 2, 3, 4}\n",
"comp_adj.shape: (25, 25)\n",
"initial_clustering [0 0 1 2 2 0 0 1 3 2 0 3 1 3 2 4 3 3 3 2 4 3 3 3 3]\n",
"data [[ 1.116]\n",
" [-0.024]\n",
" [-0.733]\n",
" [ 0.369]\n",
" [ 0.118]\n",
" [ 0.344]\n",
" [ 0.428]\n",
" [-0.915]\n",
" [ 0.267]\n",
" [ 0.29 ]\n",
" [ 0.364]\n",
" [ 0.38 ]\n",
" [ 0.548]\n",
" [ 0.926]\n",
" [ 3.037]\n",
" [ 1.433]\n",
" [ 0.743]\n",
" [ 1.363]\n",
" [ 1.106]\n",
" [ 0.721]\n",
" [ 2.126]\n",
" [ 2.156]\n",
" [ 1.758]\n",
" [ 0.339]\n",
" [ 1.669]]\n",
"start with obj. val.: [[ 56.304]]\n",
"RN {0: {2, 11, 15, 7}, 1: {1, 3, 6, 8, 11, 13, 17}, 2: {8, 24, 2, 18, 13}, 3: {3, 6, 7, 9, 10, 12, 14, 15, 19, 20}, 4: {16, 10, 21}}\n",
"step 2\n",
"step 3\n",
" chosen region: 3\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 2\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 24 from 3 to 2\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 23 from 3 to 2\n",
" donor is losing {24} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 8 from 3 to 2\n",
" donor is losing {9, 3, 7} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 1\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 11 from 3 to 1\n",
" donor is losing {10, 6} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 8 from 2 to 1\n",
" donor is losing {7} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 3 from 2 to 1\n",
" donor is losing {2} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 4 from 2 to 1\n",
" donor is losing {3} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 9 from 2 to 1\n",
" donor is losing {8, 4} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 4\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 16 from 3 to 4\n",
" donor is losing {11, 15} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 21 from 3 to 4\n",
" donor is losing {20} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 0\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 11 from 1 to 0\n",
" donor is losing {16, 10} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 12 from 1 to 0\n",
" donor is losing {17, 11} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 16 from 4 to 0\n",
" donor is losing {17, 11} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"n_regions_per_comp {0: 5}\n",
"comp_label 0\n",
"n_regions_in_comp 5\n",
"Regions in comp: {0, 1, 2, 3, 4}\n",
"comp_adj.shape: (25, 25)\n",
"initial_clustering [0 0 1 2 2 0 0 1 2 2 0 3 1 2 2 0 3 1 1 2 0 3 4 4 4]\n",
"data [[ 1.116]\n",
" [-0.024]\n",
" [-0.733]\n",
" [ 0.369]\n",
" [ 0.118]\n",
" [ 0.344]\n",
" [ 0.428]\n",
" [-0.915]\n",
" [ 0.267]\n",
" [ 0.29 ]\n",
" [ 0.364]\n",
" [ 0.38 ]\n",
" [ 0.548]\n",
" [ 0.926]\n",
" [ 3.037]\n",
" [ 1.433]\n",
" [ 0.743]\n",
" [ 1.363]\n",
" [ 1.106]\n",
" [ 0.721]\n",
" [ 2.126]\n",
" [ 2.156]\n",
" [ 1.758]\n",
" [ 0.339]\n",
" [ 1.669]]\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"start with obj. val.: [[ 58.952]]\n",
"RN {0: {16, 2, 11, 21, 7}, 1: {1, 3, 6, 8, 11, 13, 16, 19, 22, 23}, 2: {24, 2, 18, 12, 7}, 3: {6, 10, 12, 15, 17, 20, 22}, 4: {17, 18, 19, 21}}\n",
"step 2\n",
"step 3\n",
" chosen region: 0\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 2\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 1\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 1 from 0 to 1\n",
" donor is losing {2} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 3\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 20 from 0 to 3\n",
" donor is losing {21} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 15 from 0 to 3\n",
" donor is losing {16, 20} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 4\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 19 from 2 to 4\n",
" donor is losing {24} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 14 from 2 to 4\n",
" donor is losing {19} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 18 from 1 to 4\n",
" donor is losing {19, 23} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 17 from 1 to 4\n",
" donor is losing {16, 18, 22} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"n_regions_per_comp {0: 5}\n",
"comp_label 0\n",
"n_regions_in_comp 5\n",
"Regions in comp: {0, 1, 2, 3, 4}\n",
"comp_adj.shape: (25, 25)\n",
"initial_clustering [0 0 1 2 2 0 0 1 1 2 0 3 1 1 2 0 3 1 1 2 0 3 4 4 4]\n",
"data [[ 1.116]\n",
" [-0.024]\n",
" [-0.733]\n",
" [ 0.369]\n",
" [ 0.118]\n",
" [ 0.344]\n",
" [ 0.428]\n",
" [-0.915]\n",
" [ 0.267]\n",
" [ 0.29 ]\n",
" [ 0.364]\n",
" [ 0.38 ]\n",
" [ 0.548]\n",
" [ 0.926]\n",
" [ 3.037]\n",
" [ 1.433]\n",
" [ 0.743]\n",
" [ 1.363]\n",
" [ 1.106]\n",
" [ 0.721]\n",
" [ 2.126]\n",
" [ 2.156]\n",
" [ 1.758]\n",
" [ 0.339]\n",
" [ 1.669]]\n",
"start with obj. val.: [[ 60.03]]\n",
"RN {0: {16, 2, 11, 21, 7}, 1: {1, 3, 6, 9, 11, 14, 16, 19, 22, 23}, 2: {8, 24, 2, 18, 13}, 3: {6, 10, 12, 15, 17, 20, 22}, 4: {17, 18, 19, 21}}\n",
"step 2\n",
"step 3\n",
" chosen region: 3\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 17 from 1 to 3\n",
" donor is losing {16, 22} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 12 from 1 to 3\n",
" donor is losing {11} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 20 from 0 to 3\n",
" donor is losing {21} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 15 from 0 to 3\n",
" donor is losing {16, 20} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 18 from 1 to 3\n",
" donor is losing {17, 19, 23} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 0\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 11 from 3 to 0\n",
" donor is losing {6} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 12 from 3 to 0\n",
" donor is losing {7} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 13 from 1 to 0\n",
" donor is losing {18, 14} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 4\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 18 from 3 to 4\n",
" donor is losing {19, 13, 23} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 17 from 3 to 4\n",
" donor is losing {18, 12} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 19 from 2 to 4\n",
" donor is losing {24, 18} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 16 from 3 to 4\n",
" donor is losing {17, 11} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 13 from 0 to 4\n",
" donor is losing {8, 18, 14} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 2\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 1\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 3 from 2 to 1\n",
" donor is losing {2} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 4 from 2 to 1\n",
" donor is losing {3} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 1 from 0 to 1\n",
" donor is losing {2} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"n_regions_per_comp {0: 5}\n",
"comp_label 0\n",
"n_regions_in_comp 5\n",
"Regions in comp: {0, 1, 2, 3, 4}\n",
"comp_adj.shape: (25, 25)\n",
"initial_clustering [0 0 1 2 2 0 0 1 2 2 3 3 3 2 2 3 3 3 3 2 3 3 4 4 4]\n",
"data [[ 1.116]\n",
" [-0.024]\n",
" [-0.733]\n",
" [ 0.369]\n",
" [ 0.118]\n",
" [ 0.344]\n",
" [ 0.428]\n",
" [-0.915]\n",
" [ 0.267]\n",
" [ 0.29 ]\n",
" [ 0.364]\n",
" [ 0.38 ]\n",
" [ 0.548]\n",
" [ 0.926]\n",
" [ 3.037]\n",
" [ 1.433]\n",
" [ 0.743]\n",
" [ 1.363]\n",
" [ 1.106]\n",
" [ 0.721]\n",
" [ 2.126]\n",
" [ 2.156]\n",
" [ 1.758]\n",
" [ 0.339]\n",
" [ 1.669]]\n",
"start with obj. val.: [[ 57.128]]\n",
"RN {0: {11, 2, 10, 7}, 1: {8, 1, 3, 12, 6}, 2: {24, 2, 18, 12, 7}, 3: {5, 6, 7, 13, 19, 22, 23}, 4: {17, 18, 19, 21}}\n",
"step 2\n",
"step 3\n",
" chosen region: 4\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 18 from 3 to 4\n",
" donor is losing {19, 23} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 19 from 2 to 4\n",
" donor is losing {24} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 14 from 2 to 4\n",
" donor is losing {19} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 17 from 3 to 4\n",
" donor is losing {18} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 21 from 3 to 4\n",
" donor is losing {22} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 20 from 3 to 4\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 2\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 18 from 4 to 2\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 17 from 4 to 2\n",
" donor is losing {12} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 1\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 3 from 2 to 1\n",
" donor is losing {2} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 4 from 2 to 1\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 9 from 2 to 1\n",
" donor is losing {4} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 8 from 2 to 1\n",
" donor is losing {9, 3, 7} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 0\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 10 from 3 to 0\n",
" donor is losing {5} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 3\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"n_regions_per_comp {0: 5}\n",
"comp_label 0\n",
"n_regions_in_comp 5\n",
"Regions in comp: {0, 1, 2, 3, 4}\n",
"comp_adj.shape: (25, 25)\n",
"initial_clustering [0 0 1 2 2 0 0 1 2 2 0 3 1 2 2 4 4 1 1 2 4 4 1 1 1]\n",
"data [[ 1.116]\n",
" [-0.024]\n",
" [-0.733]\n",
" [ 0.369]\n",
" [ 0.118]\n",
" [ 0.344]\n",
" [ 0.428]\n",
" [-0.915]\n",
" [ 0.267]\n",
" [ 0.29 ]\n",
" [ 0.364]\n",
" [ 0.38 ]\n",
" [ 0.548]\n",
" [ 0.926]\n",
" [ 3.037]\n",
" [ 1.433]\n",
" [ 0.743]\n",
" [ 1.363]\n",
" [ 1.106]\n",
" [ 0.721]\n",
" [ 2.126]\n",
" [ 2.156]\n",
" [ 1.758]\n",
" [ 0.339]\n",
" [ 1.669]]\n",
"start with obj. val.: [[ 65.023]]\n",
"RN {0: {2, 11, 15, 7}, 1: {1, 3, 6, 8, 11, 13, 16, 19, 21}, 2: {24, 2, 18, 12, 7}, 3: {16, 10, 12, 6}, 4: {17, 10, 11, 22}}\n",
"step 2\n",
"step 3\n",
" chosen region: 2\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 2 from 1 to 2\n",
" donor is losing {1, 3} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 3\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 16 from 4 to 3\n",
" donor is losing {17, 11} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 6 from 0 to 3\n",
" donor is losing {7} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 1 from 0 to 3\n",
" donor is losing {2} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 2 from 2 to 3\n",
" donor is losing {1} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 7 from 1 to 3\n",
" donor is losing {8, 2, 6} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 12 from 1 to 3\n",
" donor is losing {11, 7} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 3 from 2 to 3\n",
" donor is losing {2} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 4 from 2 to 3\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 8 from 2 to 3\n",
" donor is losing {3, 7} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 9 from 2 to 3\n",
" donor is losing {4} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 0\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 1 from 3 to 0\n",
" donor is losing {0} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 2 from 3 to 0\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 6 from 3 to 0\n",
" donor is losing {1, 5} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 1\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 16 from 3 to 1\n",
" donor is losing {21, 15} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 4\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 22 from 1 to 4\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"n_regions_per_comp {0: 5}\n",
"comp_label 0\n",
"n_regions_in_comp 5\n",
"Regions in comp: {0, 1, 2, 3, 4}\n",
"comp_adj.shape: (25, 25)\n",
"initial_clustering [0 0 1 2 2 0 0 1 3 2 0 4 4 3 2 0 4 4 4 2 0 4 4 4 4]\n",
"data [[ 1.116]\n",
" [-0.024]\n",
" [-0.733]\n",
" [ 0.369]\n",
" [ 0.118]\n",
" [ 0.344]\n",
" [ 0.428]\n",
" [-0.915]\n",
" [ 0.267]\n",
" [ 0.29 ]\n",
" [ 0.364]\n",
" [ 0.38 ]\n",
" [ 0.548]\n",
" [ 0.926]\n",
" [ 3.037]\n",
" [ 1.433]\n",
" [ 0.743]\n",
" [ 1.363]\n",
" [ 1.106]\n",
" [ 0.721]\n",
" [ 2.126]\n",
" [ 2.156]\n",
" [ 1.758]\n",
" [ 0.339]\n",
" [ 1.669]]\n",
"start with obj. val.: [[ 60.667]]\n",
"RN {0: {16, 2, 11, 21, 7}, 1: {8, 1, 3, 12, 6}, 2: {8, 24, 2, 18, 13}, 3: {3, 7, 9, 12, 14, 18}, 4: {6, 7, 10, 13, 15, 19, 20}}\n",
"step 2\n",
"step 3\n",
" chosen region: 2\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 18 from 4 to 2\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 4\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 20 from 0 to 4\n",
" donor is losing {21} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 3\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 12 from 4 to 3\n",
" donor is losing {13, 7} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 17 from 4 to 3\n",
" donor is losing set() as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 18 from 2 to 3\n",
" donor is losing {17, 23} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 3 from 2 to 3\n",
" donor is losing {2} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 11 from 4 to 3\n",
" donor is losing {10, 12, 6} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 19 from 2 to 3\n",
" donor is losing {24, 18} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 16 from 4 to 3\n",
" donor is losing {11} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 0\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 11 from 3 to 0\n",
" donor is losing {10, 6} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 3\n",
" chosen region: 1\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 1 from 0 to 1\n",
" donor is losing {2} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 3 from 3 to 1\n",
" donor is losing {2, 4} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
" MOVING 8 from 3 to 1\n",
" donor is losing {9, 3} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
" MOVING 4 from 2 to 1\n",
" donor is losing {3} as neighbors\n",
"step 4\n",
"step 5\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"step 5 loop\n",
"Getting variables\n",
"Variables successfully extracted\n",
"Running original AZP algorithm (Openshaw and Rao, 1995)\n",
"Number of areas: 25\n",
"Number of regions: 5\n",
"Constructing regions\n",
"initial Solution: [3, 3, 2, 0, 0, 3, 3, 2, 0, 0, 3, 3, 3, 3, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 1]\n",
"initial O.F: 6.876924000000002\n",
"Performing local search\n",
"FINAL SOLUTION: [3, 2, 2, 0, 0, 3, 3, 2, 0, 0, 3, 3, 3, 3, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 1]\n",
"FINAL O.F.: 6.334564104166667\n",
"Done\n",
"Adding variables\n",
"Done\n",
"Getting variables\n",
"Variables successfully extracted\n",
"Running original AZP algorithm (Openshaw and Rao, 1995)\n",
"Number of areas: 25\n",
"Number of regions: 5\n",
"Constructing regions\n",
"initial Solution: [3, 3, 4, 0, 0, 3, 3, 4, 0, 0, 3, 3, 3, 2, 2, 1, 3, 2, 2, 2, 1, 1, 1, 2, 2]\n",
"initial O.F: 5.769952053571429\n",
"Performing local search\n",
"FINAL SOLUTION: [3, 3, 4, 0, 0, 3, 3, 4, 0, 0, 3, 3, 3, 2, 2, 1, 3, 2, 2, 2, 1, 1, 1, 2, 2]\n",
"FINAL O.F.: 5.769952053571428\n",
"Done\n",
"Adding variables\n",
"Done\n",
"Getting variables\n",
"Variables successfully extracted\n",
"Running original AZP algorithm (Openshaw and Rao, 1995)\n",
"Number of areas: 25\n",
"Number of regions: 5\n",
"Constructing regions\n",
"initial Solution: [4, 0, 0, 2, 2, 4, 4, 0, 2, 2, 4, 4, 4, 4, 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 3]\n",
"initial O.F: 6.334564104166668\n",
"Performing local search\n",
"FINAL SOLUTION: [4, 0, 0, 2, 2, 4, 4, 0, 2, 2, 4, 4, 4, 4, 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 3]\n",
"FINAL O.F.: 6.334564104166667\n",
"Done\n",
"Adding variables\n",
"Done\n",
"Getting variables\n",
"Variables successfully extracted\n",
"Running original AZP algorithm (Openshaw and Rao, 1995)\n",
"Number of areas: 25\n",
"Number of regions: 5\n",
"Constructing regions\n",
"initial Solution: [0, 0, 3, 1, 1, 0, 0, 3, 1, 1, 0, 0, 0, 1, 2, 4, 0, 1, 1, 1, 4, 4, 4, 1, 1]\n",
"initial O.F: 3.6701762249999996\n",
"Performing local search\n",
"FINAL SOLUTION: [0, 0, 3, 1, 1, 0, 0, 3, 1, 1, 0, 0, 0, 1, 2, 4, 1, 1, 1, 1, 4, 4, 4, 1, 1]\n",
"FINAL O.F.: 3.5961212435064933\n",
"Done\n",
"Adding variables\n",
"Done\n",
"Getting variables\n",
"Variables successfully extracted\n",
"Running original AZP algorithm (Openshaw and Rao, 1995)\n",
"Number of areas: 25\n",
"Number of regions: 5\n",
"Constructing regions\n",
"initial Solution: [4, 4, 2, 0, 0, 4, 4, 2, 0, 0, 4, 4, 4, 0, 1, 3, 4, 0, 0, 0, 3, 3, 3, 0, 0]\n",
"initial O.F: 3.6701762249999996\n",
"Performing local search\n",
"FINAL SOLUTION: [4, 4, 2, 0, 0, 4, 4, 2, 0, 0, 4, 4, 4, 0, 1, 3, 4, 3, 0, 0, 3, 3, 3, 0, 0]\n",
"FINAL O.F.: 3.4104266750000005\n",
"Done\n",
"Adding variables\n",
"Done\n",
"Getting variables\n",
"Variables successfully extracted\n",
"Running original AZP algorithm (Openshaw and Rao, 1995)\n",
"Number of areas: 25\n",
"Number of regions: 5\n",
"Constructing regions\n",
"initial Solution: [0, 0, 4, 1, 1, 0, 0, 4, 1, 1, 0, 0, 0, 0, 3, 2, 0, 2, 0, 0, 2, 2, 2, 0, 0]\n",
"initial O.F: 3.0135504923076923\n",
"Performing local search\n",
"FINAL SOLUTION: [0, 4, 4, 1, 1, 0, 0, 4, 1, 1, 0, 0, 0, 0, 3, 2, 0, 2, 0, 0, 2, 2, 2, 0, 0]\n",
"FINAL O.F.: 2.924212133333334\n",
"Done\n",
"Adding variables\n",
"Done\n",
"Getting variables\n",
"Variables successfully extracted\n",
"Running original AZP algorithm (Openshaw and Rao, 1995)\n",
"Number of areas: 25\n",
"Number of regions: 5\n",
"Constructing regions\n",
"initial Solution: [1, 3, 3, 2, 2, 1, 1, 3, 2, 2, 1, 1, 1, 1, 0, 4, 1, 4, 1, 1, 4, 4, 4, 1, 1]\n",
"initial O.F: 2.9242121333333335\n",
"Performing local search\n",
"FINAL SOLUTION: [1, 3, 3, 2, 2, 1, 1, 3, 2, 2, 1, 1, 1, 1, 0, 4, 1, 4, 1, 1, 4, 4, 4, 1, 1]\n",
"FINAL O.F.: 2.9242121333333335\n",
"Done\n",
"Adding variables\n",
"Done\n",
"Getting variables\n",
"Variables successfully extracted\n",
"Running original AZP algorithm (Openshaw and Rao, 1995)\n",
"Number of areas: 25\n",
"Number of regions: 5\n",
"Constructing regions\n",
"initial Solution: [0, 3, 1, 3, 3, 3, 3, 1, 3, 3, 3, 3, 3, 3, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2]\n",
"initial O.F: 8.22788775\n",
"Performing local search\n",
"FINAL SOLUTION: [0, 0, 1, 3, 3, 0, 0, 1, 3, 3, 0, 0, 0, 3, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2]\n",
"FINAL O.F.: 7.025638071428571\n",
"Done\n",
"Adding variables\n",
"Done\n",
"Getting variables\n",
"Variables successfully extracted\n",
"Running original AZP algorithm (Openshaw and Rao, 1995)\n",
"Number of areas: 25\n",
"Number of regions: 5\n",
"Constructing regions\n",
"initial Solution: [2, 2, 1, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 4, 3, 2, 4, 4, 4, 0, 0, 4, 4, 4]\n",
"initial O.F: 5.756674945054946\n",
"Performing local search\n",
"FINAL SOLUTION: [2, 2, 1, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 4, 3, 2, 4, 4, 4, 0, 0, 0, 4, 4]\n",
"FINAL O.F.: 5.7270873974358985\n",
"Done\n",
"Adding variables\n",
"Done\n",
"Getting variables\n",
"Variables successfully extracted\n",
"Running original AZP algorithm (Openshaw and Rao, 1995)\n",
"Number of areas: 25\n",
"Number of regions: 5\n",
"Constructing regions\n",
"initial Solution: [1, 1, 2, 3, 3, 1, 1, 2, 3, 3, 1, 1, 1, 3, 4, 0, 1, 3, 3, 3, 0, 0, 0, 3, 3]\n",
"initial O.F: 3.670176225\n",
"Performing local search\n",
"FINAL SOLUTION: [1, 1, 2, 3, 3, 1, 1, 2, 3, 3, 1, 1, 1, 3, 4, 0, 1, 0, 3, 3, 0, 0, 0, 3, 3]\n",
"FINAL O.F.: 3.410426675\n",
"Done\n",
"Adding variables\n",
"Done\n",
"Getting variables\n",
"Variables successfully extracted\n",
"Running original AZP algorithm (Openshaw and Rao, 1995)\n",
"Number of areas: 25\n",
"Number of regions: 5\n",
"Constructing regions\n",
"initial Solution: [0, 0, 3, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 4, 2, 2, 2, 0, 4]\n",
"initial O.F: 3.640846196078432\n",
"Performing local search\n",
"FINAL SOLUTION: [0, 0, 3, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 1, 2, 0, 2, 0, 0, 2, 2, 2, 0, 4]\n",
"FINAL O.F.: 2.2342892375\n",
"Done\n",
"Adding variables\n",
"Done\n",
"Getting variables\n",
"Variables successfully extracted\n",
"Running original AZP algorithm (Openshaw and Rao, 1995)\n",
"Number of areas: 25\n",
"Number of regions: 5\n",
"Constructing regions\n",
"initial Solution: [0, 2, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 4, 3, 0, 3, 0, 0, 3, 3, 3, 0, 0]\n",
"initial O.F: 3.139726800000001\n",
"Performing local search\n",
"FINAL SOLUTION: [0, 2, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 4, 3, 0, 3, 0, 0, 3, 3, 3, 0, 0]\n",
"FINAL O.F.: 3.1397268\n",
"Done\n",
"Adding variables\n",
"Done\n",
"Getting variables\n",
"Variables successfully extracted\n",
"Running original AZP algorithm (Openshaw and Rao, 1995)\n",
"Number of areas: 25\n",
"Number of regions: 5\n",
"Constructing regions\n",
"initial Solution: [3, 0, 4, 0, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 2, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1]\n",
"initial O.F: 3.702505805555556\n",
"Performing local search\n",
"FINAL SOLUTION: [3, 0, 4, 0, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 2, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1]\n",
"FINAL O.F.: 3.7025058055555555\n",
"Done\n",
"Adding variables\n",
"Done\n",
"Getting variables\n",
"Variables successfully extracted\n",
"Running original AZP algorithm (Openshaw and Rao, 1995)\n",
"Number of areas: 25\n",
"Number of regions: 5\n",
"Constructing regions\n",
"initial Solution: [3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 1, 3, 1, 3, 3, 1, 1, 1, 0, 4]\n",
"initial O.F: 5.36073185882353\n",
"Performing local search\n",
"FINAL SOLUTION: [3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 1, 3, 1, 3, 3, 1, 1, 1, 0, 4]\n",
"FINAL O.F.: 5.36073185882353\n",
"Done\n",
"Adding variables\n",
"Done\n",
"Getting variables\n",
"Variables successfully extracted\n",
"Running original AZP algorithm (Openshaw and Rao, 1995)\n",
"Number of areas: 25\n",
"Number of regions: 5\n",
"Constructing regions\n",
"initial Solution: [1, 0, 2, 3, 3, 3, 3, 2, 3, 3, 3, 3, 3, 3, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3]\n",
"initial O.F: 8.202238800000002\n",
"Performing local search\n",
"FINAL SOLUTION: [1, 0, 2, 3, 3, 0, 0, 2, 3, 3, 0, 0, 0, 3, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3]\n",
"FINAL O.F.: 6.953019599999999\n",
"Done\n",
"Adding variables\n",
"Done\n",
"Getting variables\n",
"Variables successfully extracted\n",
"Running original AZP algorithm (Openshaw and Rao, 1995)\n",
"Number of areas: 25\n",
"Number of regions: 5\n",
"Constructing regions\n",
"initial Solution: [2, 2, 4, 4, 4, 2, 2, 4, 4, 4, 2, 2, 2, 1, 3, 1, 2, 1, 1, 1, 1, 1, 1, 0, 1]\n",
"initial O.F: 4.421352097222222\n",
"Performing local search\n",
"FINAL SOLUTION: [2, 4, 4, 4, 4, 2, 2, 4, 2, 2, 2, 2, 2, 2, 3, 1, 2, 1, 1, 1, 1, 1, 1, 0, 1]\n",
"FINAL O.F.: 3.6998303999999997\n",
"Done\n",
"Adding variables\n",
"Done\n"
]
},
{
"data": {
"image/png": "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\n/h9Q2RVa8EDjuwAAAABJRU5ErkJggg==\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x7fd62cd864a8>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"region_results, cp_results = compare_boxplot_objectives(df5, \"EX5\", n_regions=5, n_experiments=n_experiments)"
]
},
{
"cell_type": "code",
"execution_count": 15,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"19.009000000000004"
]
},
"execution_count": 15,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"optimal_solution = np.array(df5[\"6REG\"])\n",
"objective_func_arr(metric, optimal_solution, attr5).item()"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"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": 2
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment