Files
simulationexam/brute_force.ipynb
T
2015-12-20 13:43:45 -05:00

188 lines
7.8 KiB
Plaintext

{
"cells": [
{
"cell_type": "code",
"execution_count": 9,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Populating the interactive namespace from numpy and matplotlib\n"
]
}
],
"source": [
"%pylab inline\n",
"from network.network import is_valid_network, get_number_of_activated_antenna, pp_network\n",
"from numpy import mean\n",
"\n",
"def get_all_possible_network(box_size):\n",
" number_of_square = box_size * box_size\n",
" return range(2**number_of_square)\n",
"\n"
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"box_size = 3\n",
"\n"
]
},
{
"cell_type": "code",
"execution_count": 11,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"image/png": "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\nC5aY7wAAAABJRU5ErkJggg==\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x7faff062fd68>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"hist(list(map(get_number_of_activated_antenna, valid_networks)), bins=100)\n",
"None"
]
},
{
"cell_type": "code",
"execution_count": 26,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"6.208433278626436"
]
},
"execution_count": 26,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"mean(list(map(get_number_of_activated_antenna, valid_networks)))"
]
},
{
"cell_type": "code",
"execution_count": 15,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"■-□-■-□-■\n",
"□-■-□-■-□\n",
"■-□-■-□-■\n",
"□-■-□-■-□\n",
"■-□-■-□-■\n",
"\n"
]
}
],
"source": [
"print(pp_network(valid_networks[-1], box_size))"
]
},
{
"cell_type": "code",
"execution_count": 20,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"63"
]
},
"execution_count": 20,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"len(valid_networks)"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"344239"
]
},
"execution_count": 4,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"sum(list(map(get_number_of_activated_antenna, valid_networks)))"
]
},
{
"cell_type": "code",
"execution_count": 12,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"random.choice?"
]
}
],
"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.4.3+"
}
},
"nbformat": 4,
"nbformat_minor": 0
}