In [1]:
import sklearn
import json
import operator
import matplotlib.pyplot as plt
import prettyplotlib as ppl
%matplotlib inline


/usr/local/lib/python3.4/dist-packages/matplotlib/backends/backend_gtk3agg.py:18: UserWarning: The Gtk3Agg backend is known to not work on Python 3.x with pycairo. Try installing cairocffi.
  "The Gtk3Agg backend is known to not work on Python 3.x with pycairo. "

In [2]:
agent1 = [sklearn.externals.joblib.load('agent1_consolidate')]
agent2 = [sklearn.externals.joblib.load('agent2_consolidate')]

In [3]:
def loader(dictionary):
    def load_keys(k):
        unjsoned = json.loads(k)
        loaded = tuple( ((tuple(unjsoned[0])), unjsoned[1] ))
        return loaded
    return {load_keys(k):v for k,v in dictionary.items()}
loaded1 = [loader(i) for i in agent1]
loaded2 = [loader(i) for i in agent2]
def get_winners(dictionary):
    states = set([k[0] for k,v in dictionary.items()])
    winners = {}
    for s in states:
        matches = [(v, k[1]) for k,v in dictionary.items() if k[0]==s]
        winners[s] = sorted(matches, key=operator.itemgetter(0))[::-1]
    return {k: v[0][1] for k,v in winners.items()}

In [22]:
loaded1[0]


Out[22]:
{((0, 'pending', 'pending'), 'go_to_sleep'): 112.68411565756227,
 ((0, 'pending', 'running'), 'go_to_sleep'): 116.01397576554234,
 ((0, 'pending', 'sleeping'), 'go_to_sleep'): 134.923117941108,
 ((0, 'running', 'pending'), 'noop'): -66.2,
 ((0, 'running', 'pending'), 'prepare_sleep'): -16.516172401356,
 ((0, 'running', 'running'), 'noop'): -66.76888227231099,
 ((0, 'running', 'running'), 'prepare_sleep'): 21.06819420408069,
 ((0, 'running', 'sleeping'), 'noop'): -75.11836371677092,
 ((0, 'running', 'sleeping'), 'prepare_sleep'): 28.10815873555132,
 ((0, 'sleeping', 'pending'), 'noop'): 166.96236311027062,
 ((0, 'sleeping', 'pending'), 'wakeup'): -12.573728159446887,
 ((0, 'sleeping', 'running'), 'noop'): 228.51751015229064,
 ((0, 'sleeping', 'running'), 'wakeup'): 117.17781204155341,
 ((0, 'sleeping', 'sleeping'), 'noop'): 192.62763868709408,
 ((0, 'sleeping', 'sleeping'), 'wakeup'): 51.23238468050887,
 ((1, 'pending', 'pending'), 'go_to_sleep'): 141.23827431004938,
 ((1, 'pending', 'running'), 'go_to_sleep'): 123.9420438749338,
 ((1, 'pending', 'sleeping'), 'go_to_sleep'): 140.21018097359928,
 ((1, 'running', 'pending'), 'noop'): 19.74703256603823,
 ((1, 'running', 'pending'), 'prepare_sleep'): 69.67482845694312,
 ((1, 'running', 'running'), 'noop'): 23.438178121730292,
 ((1, 'running', 'running'), 'prepare_sleep'): 109.97263414947116,
 ((1, 'running', 'sleeping'), 'noop'): -15.157516282046174,
 ((1, 'running', 'sleeping'), 'prepare_sleep'): 89.85510855633805,
 ((1, 'sleeping', 'pending'), 'noop'): -50,
 ((1, 'sleeping', 'pending'), 'wakeup'): 170.1669152037263,
 ((1, 'sleeping', 'running'), 'noop'): 223.3088546566606,
 ((1, 'sleeping', 'running'), 'wakeup'): 56.363537471160136,
 ((1, 'sleeping', 'sleeping'), 'noop'): 50,
 ((1, 'sleeping', 'sleeping'), 'wakeup'): 154.0234271888705,
 ((2, 'pending', 'pending'), 'go_to_sleep'): 49.387518398255565,
 ((2, 'pending', 'running'), 'go_to_sleep'): 187.0031299044727,
 ((2, 'pending', 'sleeping'), 'go_to_sleep'): 136.95445267132155,
 ((2, 'running', 'pending'), 'noop'): 141.4670084787013,
 ((2, 'running', 'pending'), 'prepare_sleep'): 53.93720950072799,
 ((2, 'running', 'running'), 'noop'): 118.073657435087,
 ((2, 'running', 'running'), 'prepare_sleep'): 103.59294478740314,
 ((2, 'running', 'sleeping'), 'noop'): 138.11666974532608,
 ((2, 'running', 'sleeping'), 'prepare_sleep'): 109.63353449656933,
 ((2, 'sleeping', 'pending'), 'noop'): 12.492951651518325,
 ((2, 'sleeping', 'pending'), 'wakeup'): 194.79939391226142,
 ((2, 'sleeping', 'running'), 'noop'): 238.980574507551,
 ((2, 'sleeping', 'running'), 'wakeup'): 206.17426000328814,
 ((2, 'sleeping', 'sleeping'), 'noop'): 75.29808517303604,
 ((2, 'sleeping', 'sleeping'), 'wakeup'): 222.39654424710574,
 ((3, 'pending', 'pending'), 'go_to_sleep'): 43.37047410158293,
 ((3, 'pending', 'running'), 'go_to_sleep'): 215.7087071792745,
 ((3, 'pending', 'sleeping'), 'go_to_sleep'): 171.76706593543108,
 ((3, 'running', 'pending'), 'noop'): 195.77873086284526,
 ((3, 'running', 'pending'), 'prepare_sleep'): 64.69337203982025,
 ((3, 'running', 'running'), 'noop'): 185.27959066948037,
 ((3, 'running', 'running'), 'prepare_sleep'): 119.69087901472302,
 ((3, 'running', 'running'), 'wakeup'): 50,
 ((3, 'running', 'sleeping'), 'noop'): 173.79712054378516,
 ((3, 'running', 'sleeping'), 'prepare_sleep'): 134.56397207567983,
 ((3, 'sleeping', 'pending'), 'noop'): -1.4500000000000002,
 ((3, 'sleeping', 'pending'), 'wakeup'): 186.6339911422967,
 ((3, 'sleeping', 'running'), 'noop'): 87.50490600081187,
 ((3, 'sleeping', 'running'), 'wakeup'): 248.61979201709642,
 ((3, 'sleeping', 'sleeping'), 'noop'): 50,
 ((3, 'sleeping', 'sleeping'), 'wakeup'): 210.13965904986594,
 ((4, 'pending', 'pending'), 'go_to_sleep'): -14.080221022329102,
 ((4, 'pending', 'running'), 'go_to_sleep'): 169.09171975675133,
 ((4, 'pending', 'sleeping'), 'go_to_sleep'): 81.69216452029372,
 ((4, 'running', 'pending'), 'noop'): 232.64503444895786,
 ((4, 'running', 'pending'), 'prepare_sleep'): 12.941219131787493,
 ((4, 'running', 'running'), 'noop'): 215.00187523853236,
 ((4, 'running', 'running'), 'prepare_sleep'): 161.09360880623422,
 ((4, 'running', 'sleeping'), 'noop'): 213.3206558245582,
 ((4, 'running', 'sleeping'), 'prepare_sleep'): 110.06055521430527,
 ((4, 'sleeping', 'pending'), 'noop'): -6.528959238284253,
 ((4, 'sleeping', 'pending'), 'wakeup'): 207.59923910028274,
 ((4, 'sleeping', 'running'), 'noop'): 61.50362130543823,
 ((4, 'sleeping', 'running'), 'wakeup'): 235.83856619356962,
 ((4, 'sleeping', 'sleeping'), 'noop'): -41.0,
 ((4, 'sleeping', 'sleeping'), 'wakeup'): 200.04286871982612,
 ((5, 'pending', 'pending'), 'go_to_sleep'): -52.5,
 ((5, 'pending', 'running'), 'go_to_sleep'): 47.5,
 ((5, 'pending', 'sleeping'), 'go_to_sleep'): 81.48878460633992,
 ((5, 'running', 'pending'), 'noop'): 242.65556455878834,
 ((5, 'running', 'pending'), 'prepare_sleep'): -2.5,
 ((5, 'running', 'running'), 'noop'): 236.451816420876,
 ((5, 'running', 'running'), 'prepare_sleep'): 52.36877978091972,
 ((5, 'running', 'sleeping'), 'noop'): 229.69542765427641,
 ((5, 'running', 'sleeping'), 'prepare_sleep'): 48.985878835222096,
 ((5, 'sleeping', 'pending'), 'noop'): -50,
 ((5, 'sleeping', 'running'), 'noop'): 66.19322477056001,
 ((5, 'sleeping', 'sleeping'), 'wakeup'): 120.63385193532028,
 ((6, 'pending', 'pending'), 'go_to_sleep'): -24.610566817713476,
 ((6, 'pending', 'sleeping'), 'go_to_sleep'): 0.5136000000000074,
 ((6, 'running', 'pending'), 'noop'): 253.44853712903657,
 ((6, 'running', 'pending'), 'prepare_sleep'): 12.822389588456227,
 ((6, 'running', 'running'), 'noop'): 279.3092392414041,
 ((6, 'running', 'running'), 'prepare_sleep'): 10.89570075661015,
 ((6, 'running', 'sleeping'), 'noop'): 256.00007512329705,
 ((6, 'running', 'sleeping'), 'prepare_sleep'): -6.82072,
 ((6, 'sleeping', 'running'), 'noop'): 50,
 ((6, 'sleeping', 'running'), 'wakeup'): 69.62720580194768,
 ((6, 'sleeping', 'sleeping'), 'noop'): 60.38024,
 ((7, 'pending', 'running'), 'go_to_sleep'): 47.5,
 ((7, 'pending', 'sleeping'), 'go_to_sleep'): 27.5,
 ((7, 'running', 'pending'), 'noop'): 73.20474695521929,
 ((7, 'running', 'running'), 'noop'): 154.31414129921743,
 ((7, 'running', 'sleeping'), 'noop'): 162.21598492118724,
 ((7, 'sleeping', 'pending'), 'wakeup'): 47.5,
 ((7, 'sleeping', 'running'), 'noop'): 58.2679199136,
 ((7, 'sleeping', 'running'), 'wakeup'): 47.5,
 ((7, 'sleeping', 'sleeping'), 'noop'): -50,
 ((8, 'pending', 'sleeping'), 'go_to_sleep'): 47.5,
 ((8, 'running', 'pending'), 'noop'): 50,
 ((8, 'running', 'pending'), 'prepare_sleep'): -2.5,
 ((8, 'running', 'running'), 'noop'): 77.72691893995427,
 ((8, 'running', 'running'), 'prepare_sleep'): 7.5,
 ((8, 'running', 'sleeping'), 'noop'): 123.37710332678267,
 ((8, 'running', 'sleeping'), 'prepare_sleep'): -2.5,
 ((8, 'sleeping', 'running'), 'noop'): 58.19597976737542,
 ((8, 'sleeping', 'sleeping'), 'wakeup'): 70.38708461529743,
 ((9, 'pending', 'pending'), 'go_to_sleep'): -52.5,
 ((9, 'pending', 'running'), 'go_to_sleep'): 47.5,
 ((9, 'pending', 'sleeping'), 'go_to_sleep'): 29.42306572545938,
 ((9, 'running', 'pending'), 'noop'): 50,
 ((9, 'running', 'pending'), 'prepare_sleep'): -2.5,
 ((9, 'running', 'running'), 'noop'): 74.320952,
 ((9, 'running', 'running'), 'prepare_sleep'): -2.5,
 ((9, 'running', 'sleeping'), 'noop'): 50,
 ((9, 'running', 'sleeping'), 'prepare_sleep'): -2.5,
 ((9, 'sleeping', 'pending'), 'wakeup'): 55.427056,
 ((9, 'sleeping', 'running'), 'noop'): 28.169999999999998,
 ((9, 'sleeping', 'running'), 'wakeup'): 78.4743058816,
 ((9, 'sleeping', 'sleeping'), 'noop'): 50,
 ((10, 'pending', 'pending'), 'go_to_sleep'): -40.75554406656,
 ((10, 'pending', 'running'), 'go_to_sleep'): 68.13155297536,
 ((10, 'pending', 'sleeping'), 'go_to_sleep'): 60.1748486656,
 ((10, 'running', 'running'), 'noop'): 78.38744,
 ((10, 'running', 'sleeping'), 'prepare_sleep'): 20.46268816612147,
 ((10, 'sleeping', 'pending'), 'noop'): -50,
 ((10, 'sleeping', 'pending'), 'wakeup'): 57.91035588502595,
 ((10, 'sleeping', 'running'), 'noop'): 78.66394210348288,
 ((10, 'sleeping', 'sleeping'), 'noop'): 65.34513992929689,
 ((11, 'pending', 'pending'), 'go_to_sleep'): 6.050000000000001,
 ((11, 'pending', 'running'), 'go_to_sleep'): -23.665519999999997,
 ((11, 'pending', 'sleeping'), 'go_to_sleep'): -52.5,
 ((11, 'running', 'pending'), 'noop'): 74.1626872448,
 ((11, 'running', 'pending'), 'prepare_sleep'): -2.5,
 ((11, 'running', 'running'), 'prepare_sleep'): 27.80207194495999,
 ((11, 'running', 'sleeping'), 'noop'): 78.204128,
 ((11, 'sleeping', 'running'), 'wakeup'): 77.977458483712,
 ((12, 'pending', 'running'), 'go_to_sleep'): 37.1166445079552,
 ((12, 'pending', 'sleeping'), 'go_to_sleep'): -19.869586052607993,
 ((12, 'running', 'pending'), 'prepare_sleep'): -2.5,
 ((12, 'running', 'running'), 'noop'): 89.44536557550848,
 ((12, 'running', 'running'), 'prepare_sleep'): 47.5,
 ((12, 'running', 'sleeping'), 'noop'): 65.73558482686977,
 ((12, 'running', 'sleeping'), 'prepare_sleep'): 28.049999999999997,
 ((12, 'sleeping', 'pending'), 'noop'): 40.0,
 ((12, 'sleeping', 'running'), 'wakeup'): 98.59390529111758,
 ((12, 'sleeping', 'sleeping'), 'noop'): 29.786088000000003,
 ((13, 'pending', 'pending'), 'go_to_sleep'): -52.5,
 ((13, 'pending', 'sleeping'), 'go_to_sleep'): -52.5,
 ((13, 'running', 'pending'), 'noop'): 58.55,
 ((13, 'running', 'pending'), 'prepare_sleep'): -2.5,
 ((13, 'running', 'running'), 'noop'): 89.68066871705601,
 ((13, 'running', 'running'), 'prepare_sleep'): 47.5,
 ((13, 'running', 'sleeping'), 'noop'): 74.22396753597441,
 ((13, 'running', 'sleeping'), 'prepare_sleep'): -2.5,
 ((13, 'sleeping', 'sleeping'), 'wakeup'): 65.32,
 ((14, 'pending', 'pending'), 'go_to_sleep'): -52.5,
 ((14, 'pending', 'sleeping'), 'go_to_sleep'): -52.5,
 ((14, 'running', 'pending'), 'noop'): 50.0,
 ((14, 'running', 'running'), 'noop'): 79.03726500182836,
 ((14, 'running', 'running'), 'prepare_sleep'): -2.5,
 ((14, 'running', 'sleeping'), 'noop'): 70.46237545447424,
 ((14, 'running', 'sleeping'), 'prepare_sleep'): -2.5,
 ((14, 'sleeping', 'pending'), 'wakeup'): 47.5,
 ((14, 'sleeping', 'running'), 'wakeup'): 56.5,
 ((14, 'sleeping', 'sleeping'), 'wakeup'): 66.52528,
 ((15, 'running', 'pending'), 'noop'): 50,
 ((15, 'running', 'pending'), 'prepare_sleep'): -2.5,
 ((15, 'running', 'running'), 'noop'): 68.6048,
 ((16, 'running', 'running'), 'noop'): 76.03088}

In [5]:
[get_winners(j) for j in loaded2]


Out[5]:
[{(0, 'pending', 'pending'): 'go_to_sleep',
  (0, 'pending', 'running'): 'go_to_sleep',
  (0, 'pending', 'sleeping'): 'go_to_sleep',
  (0, 'running', 'pending'): 'prepare_sleep',
  (0, 'running', 'running'): 'prepare_sleep',
  (0, 'running', 'sleeping'): 'prepare_sleep',
  (0, 'sleeping', 'pending'): 'noop',
  (0, 'sleeping', 'running'): 'noop',
  (0, 'sleeping', 'sleeping'): 'noop',
  (1, 'pending', 'pending'): 'go_to_sleep',
  (1, 'pending', 'running'): 'go_to_sleep',
  (1, 'pending', 'sleeping'): 'go_to_sleep',
  (1, 'running', 'pending'): 'noop',
  (1, 'running', 'running'): 'prepare_sleep',
  (1, 'running', 'sleeping'): 'prepare_sleep',
  (1, 'sleeping', 'pending'): 'wakeup',
  (1, 'sleeping', 'running'): 'noop',
  (1, 'sleeping', 'sleeping'): 'wakeup',
  (2, 'pending', 'pending'): 'go_to_sleep',
  (2, 'pending', 'running'): 'go_to_sleep',
  (2, 'pending', 'sleeping'): 'go_to_sleep',
  (2, 'running', 'pending'): 'noop',
  (2, 'running', 'running'): 'prepare_sleep',
  (2, 'running', 'sleeping'): 'prepare_sleep',
  (2, 'sleeping', 'pending'): 'wakeup',
  (2, 'sleeping', 'running'): 'wakeup',
  (2, 'sleeping', 'sleeping'): 'wakeup',
  (3, 'pending', 'pending'): 'go_to_sleep',
  (3, 'pending', 'running'): 'go_to_sleep',
  (3, 'pending', 'sleeping'): 'go_to_sleep',
  (3, 'running', 'pending'): 'noop',
  (3, 'running', 'running'): 'noop',
  (3, 'running', 'sleeping'): 'noop',
  (3, 'sleeping', 'pending'): 'wakeup',
  (3, 'sleeping', 'running'): 'wakeup',
  (3, 'sleeping', 'sleeping'): 'wakeup',
  (4, 'pending', 'pending'): 'go_to_sleep',
  (4, 'pending', 'running'): 'go_to_sleep',
  (4, 'pending', 'sleeping'): 'go_to_sleep',
  (4, 'running', 'pending'): 'noop',
  (4, 'running', 'running'): 'noop',
  (4, 'running', 'sleeping'): 'noop',
  (4, 'sleeping', 'pending'): 'wakeup',
  (4, 'sleeping', 'running'): 'wakeup',
  (4, 'sleeping', 'sleeping'): 'wakeup',
  (5, 'pending', 'pending'): 'go_to_sleep',
  (5, 'pending', 'running'): 'go_to_sleep',
  (5, 'pending', 'sleeping'): 'go_to_sleep',
  (5, 'running', 'pending'): 'noop',
  (5, 'running', 'running'): 'noop',
  (5, 'running', 'sleeping'): 'noop',
  (5, 'sleeping', 'running'): 'noop',
  (5, 'sleeping', 'sleeping'): 'wakeup',
  (6, 'pending', 'running'): 'go_to_sleep',
  (6, 'running', 'pending'): 'noop',
  (6, 'running', 'running'): 'noop',
  (6, 'running', 'sleeping'): 'noop',
  (6, 'sleeping', 'pending'): 'wakeup',
  (6, 'sleeping', 'running'): 'wakeup',
  (6, 'sleeping', 'sleeping'): 'noop',
  (7, 'pending', 'pending'): 'go_to_sleep',
  (7, 'pending', 'running'): 'go_to_sleep',
  (7, 'pending', 'sleeping'): 'go_to_sleep',
  (7, 'running', 'running'): 'noop',
  (7, 'running', 'sleeping'): 'noop',
  (7, 'sleeping', 'pending'): 'wakeup',
  (7, 'sleeping', 'running'): 'noop',
  (7, 'sleeping', 'sleeping'): 'noop',
  (8, 'pending', 'pending'): 'go_to_sleep',
  (8, 'pending', 'running'): 'go_to_sleep',
  (8, 'pending', 'sleeping'): 'go_to_sleep',
  (8, 'running', 'running'): 'prepare_sleep',
  (8, 'running', 'sleeping'): 'noop',
  (8, 'sleeping', 'pending'): 'wakeup',
  (8, 'sleeping', 'running'): 'wakeup',
  (8, 'sleeping', 'sleeping'): 'wakeup',
  (9, 'pending', 'running'): 'go_to_sleep',
  (9, 'pending', 'sleeping'): 'go_to_sleep',
  (9, 'running', 'pending'): 'prepare_sleep',
  (9, 'running', 'running'): 'prepare_sleep',
  (9, 'running', 'sleeping'): 'noop',
  (9, 'sleeping', 'pending'): 'wakeup',
  (9, 'sleeping', 'running'): 'wakeup',
  (9, 'sleeping', 'sleeping'): 'wakeup',
  (10, 'pending', 'pending'): 'go_to_sleep',
  (10, 'pending', 'running'): 'go_to_sleep',
  (10, 'pending', 'sleeping'): 'go_to_sleep',
  (10, 'running', 'pending'): 'noop',
  (10, 'running', 'running'): 'noop',
  (10, 'running', 'sleeping'): 'prepare_sleep',
  (10, 'sleeping', 'running'): 'wakeup',
  (10, 'sleeping', 'sleeping'): 'noop',
  (11, 'pending', 'running'): 'go_to_sleep',
  (11, 'pending', 'sleeping'): 'go_to_sleep',
  (11, 'running', 'pending'): 'noop',
  (11, 'running', 'running'): 'noop',
  (11, 'running', 'sleeping'): 'prepare_sleep',
  (11, 'sleeping', 'running'): 'wakeup',
  (12, 'pending', 'sleeping'): 'go_to_sleep',
  (12, 'running', 'pending'): 'noop',
  (12, 'running', 'running'): 'noop',
  (12, 'running', 'sleeping'): 'noop',
  (12, 'sleeping', 'pending'): 'wakeup',
  (12, 'sleeping', 'running'): 'noop',
  (12, 'sleeping', 'sleeping'): 'wakeup',
  (13, 'pending', 'pending'): 'go_to_sleep',
  (13, 'running', 'pending'): 'prepare_sleep',
  (13, 'running', 'running'): 'noop',
  (13, 'running', 'sleeping'): 'noop',
  (13, 'sleeping', 'pending'): 'wakeup',
  (14, 'pending', 'running'): 'go_to_sleep',
  (14, 'running', 'pending'): 'noop',
  (14, 'running', 'running'): 'noop',
  (14, 'running', 'sleeping'): 'noop',
  (14, 'sleeping', 'pending'): 'wakeup',
  (14, 'sleeping', 'running'): 'wakeup',
  (14, 'sleeping', 'sleeping'): 'noop',
  (15, 'pending', 'running'): 'go_to_sleep',
  (15, 'pending', 'sleeping'): 'go_to_sleep',
  (15, 'running', 'running'): 'prepare_sleep',
  (15, 'running', 'sleeping'): 'noop',
  (15, 'sleeping', 'running'): 'wakeup',
  (16, 'running', 'pending'): 'prepare_sleep',
  (16, 'running', 'running'): 'noop',
  (16, 'running', 'sleeping'): 'noop',
  (17, 'running', 'pending'): 'noop'}]

In [6]:
hist1 = sklearn.externals.joblib.load('agent1_hist')
hist2 = sklearn.externals.joblib.load('agent2_hist')

In [7]:
def get_score(hist):
    loaded = {k:len(json.loads(v)) for k,v in loader(hist).items()}
    not_running = sum([v for k,v in loaded.items() if k[0][1] == 'sleeping' and k[0][2]=='sleeping'])
    total = sum([v for k,v in loaded.items()])
    zero = sum([v for k,v in loaded.items() if k[0][0] == 0])
    return not_running,zero, total, not_running/total,zero/total
print(get_score(hist1))
print(get_score(hist2))


(438, 1257, 5708, 0.0767344078486335, 0.22021723896285914)
(385, 1109, 5712, 0.06740196078431372, 0.19415266106442577)

In [10]:
record = sklearn.externals.joblib.load('pend_writer')
one = [(i[0], i[1]['battery']) for i in record if i[1]['_id']==0]
two = [(i[0], i[1]['battery']) for i in record if i[1]['_id']==1]
print(len(one))


3938

In [17]:
fig,ax = plt.subplots(1)
ppl.plot(ax, [i[0] for i in one[3600:3800]],[i[1] for i in one[3600:3800]])
ppl.plot(ax, [i[0] for i in two[3700:3800]],[i[1] for i in two[3700:3800]])


/usr/local/lib/python3.4/dist-packages/matplotlib/__init__.py:872: UserWarning: axes.color_cycle is deprecated and replaced with axes.prop_cycle; please use the latter.
  warnings.warn(self.msg_depr % (key, alt_key))
Out[17]:
[<matplotlib.lines.Line2D at 0x7f176c21e518>]

In [23]:
loader(agent1[0])


Out[23]:
{((0, 'pending', 'pending'), 'go_to_sleep'): 112.68411565756227,
 ((0, 'pending', 'running'), 'go_to_sleep'): 116.01397576554234,
 ((0, 'pending', 'sleeping'), 'go_to_sleep'): 134.923117941108,
 ((0, 'running', 'pending'), 'noop'): -66.2,
 ((0, 'running', 'pending'), 'prepare_sleep'): -16.516172401356,
 ((0, 'running', 'running'), 'noop'): -66.76888227231099,
 ((0, 'running', 'running'), 'prepare_sleep'): 21.06819420408069,
 ((0, 'running', 'sleeping'), 'noop'): -75.11836371677092,
 ((0, 'running', 'sleeping'), 'prepare_sleep'): 28.10815873555132,
 ((0, 'sleeping', 'pending'), 'noop'): 166.96236311027062,
 ((0, 'sleeping', 'pending'), 'wakeup'): -12.573728159446887,
 ((0, 'sleeping', 'running'), 'noop'): 228.51751015229064,
 ((0, 'sleeping', 'running'), 'wakeup'): 117.17781204155341,
 ((0, 'sleeping', 'sleeping'), 'noop'): 192.62763868709408,
 ((0, 'sleeping', 'sleeping'), 'wakeup'): 51.23238468050887,
 ((1, 'pending', 'pending'), 'go_to_sleep'): 141.23827431004938,
 ((1, 'pending', 'running'), 'go_to_sleep'): 123.9420438749338,
 ((1, 'pending', 'sleeping'), 'go_to_sleep'): 140.21018097359928,
 ((1, 'running', 'pending'), 'noop'): 19.74703256603823,
 ((1, 'running', 'pending'), 'prepare_sleep'): 69.67482845694312,
 ((1, 'running', 'running'), 'noop'): 23.438178121730292,
 ((1, 'running', 'running'), 'prepare_sleep'): 109.97263414947116,
 ((1, 'running', 'sleeping'), 'noop'): -15.157516282046174,
 ((1, 'running', 'sleeping'), 'prepare_sleep'): 89.85510855633805,
 ((1, 'sleeping', 'pending'), 'noop'): -50,
 ((1, 'sleeping', 'pending'), 'wakeup'): 170.1669152037263,
 ((1, 'sleeping', 'running'), 'noop'): 223.3088546566606,
 ((1, 'sleeping', 'running'), 'wakeup'): 56.363537471160136,
 ((1, 'sleeping', 'sleeping'), 'noop'): 50,
 ((1, 'sleeping', 'sleeping'), 'wakeup'): 154.0234271888705,
 ((2, 'pending', 'pending'), 'go_to_sleep'): 49.387518398255565,
 ((2, 'pending', 'running'), 'go_to_sleep'): 187.0031299044727,
 ((2, 'pending', 'sleeping'), 'go_to_sleep'): 136.95445267132155,
 ((2, 'running', 'pending'), 'noop'): 141.4670084787013,
 ((2, 'running', 'pending'), 'prepare_sleep'): 53.93720950072799,
 ((2, 'running', 'running'), 'noop'): 118.073657435087,
 ((2, 'running', 'running'), 'prepare_sleep'): 103.59294478740314,
 ((2, 'running', 'sleeping'), 'noop'): 138.11666974532608,
 ((2, 'running', 'sleeping'), 'prepare_sleep'): 109.63353449656933,
 ((2, 'sleeping', 'pending'), 'noop'): 12.492951651518325,
 ((2, 'sleeping', 'pending'), 'wakeup'): 194.79939391226142,
 ((2, 'sleeping', 'running'), 'noop'): 238.980574507551,
 ((2, 'sleeping', 'running'), 'wakeup'): 206.17426000328814,
 ((2, 'sleeping', 'sleeping'), 'noop'): 75.29808517303604,
 ((2, 'sleeping', 'sleeping'), 'wakeup'): 222.39654424710574,
 ((3, 'pending', 'pending'), 'go_to_sleep'): 43.37047410158293,
 ((3, 'pending', 'running'), 'go_to_sleep'): 215.7087071792745,
 ((3, 'pending', 'sleeping'), 'go_to_sleep'): 171.76706593543108,
 ((3, 'running', 'pending'), 'noop'): 195.77873086284526,
 ((3, 'running', 'pending'), 'prepare_sleep'): 64.69337203982025,
 ((3, 'running', 'running'), 'noop'): 185.27959066948037,
 ((3, 'running', 'running'), 'prepare_sleep'): 119.69087901472302,
 ((3, 'running', 'running'), 'wakeup'): 50,
 ((3, 'running', 'sleeping'), 'noop'): 173.79712054378516,
 ((3, 'running', 'sleeping'), 'prepare_sleep'): 134.56397207567983,
 ((3, 'sleeping', 'pending'), 'noop'): -1.4500000000000002,
 ((3, 'sleeping', 'pending'), 'wakeup'): 186.6339911422967,
 ((3, 'sleeping', 'running'), 'noop'): 87.50490600081187,
 ((3, 'sleeping', 'running'), 'wakeup'): 248.61979201709642,
 ((3, 'sleeping', 'sleeping'), 'noop'): 50,
 ((3, 'sleeping', 'sleeping'), 'wakeup'): 210.13965904986594,
 ((4, 'pending', 'pending'), 'go_to_sleep'): -14.080221022329102,
 ((4, 'pending', 'running'), 'go_to_sleep'): 169.09171975675133,
 ((4, 'pending', 'sleeping'), 'go_to_sleep'): 81.69216452029372,
 ((4, 'running', 'pending'), 'noop'): 232.64503444895786,
 ((4, 'running', 'pending'), 'prepare_sleep'): 12.941219131787493,
 ((4, 'running', 'running'), 'noop'): 215.00187523853236,
 ((4, 'running', 'running'), 'prepare_sleep'): 161.09360880623422,
 ((4, 'running', 'sleeping'), 'noop'): 213.3206558245582,
 ((4, 'running', 'sleeping'), 'prepare_sleep'): 110.06055521430527,
 ((4, 'sleeping', 'pending'), 'noop'): -6.528959238284253,
 ((4, 'sleeping', 'pending'), 'wakeup'): 207.59923910028274,
 ((4, 'sleeping', 'running'), 'noop'): 61.50362130543823,
 ((4, 'sleeping', 'running'), 'wakeup'): 235.83856619356962,
 ((4, 'sleeping', 'sleeping'), 'noop'): -41.0,
 ((4, 'sleeping', 'sleeping'), 'wakeup'): 200.04286871982612,
 ((5, 'pending', 'pending'), 'go_to_sleep'): -52.5,
 ((5, 'pending', 'running'), 'go_to_sleep'): 47.5,
 ((5, 'pending', 'sleeping'), 'go_to_sleep'): 81.48878460633992,
 ((5, 'running', 'pending'), 'noop'): 242.65556455878834,
 ((5, 'running', 'pending'), 'prepare_sleep'): -2.5,
 ((5, 'running', 'running'), 'noop'): 236.451816420876,
 ((5, 'running', 'running'), 'prepare_sleep'): 52.36877978091972,
 ((5, 'running', 'sleeping'), 'noop'): 229.69542765427641,
 ((5, 'running', 'sleeping'), 'prepare_sleep'): 48.985878835222096,
 ((5, 'sleeping', 'pending'), 'noop'): -50,
 ((5, 'sleeping', 'running'), 'noop'): 66.19322477056001,
 ((5, 'sleeping', 'sleeping'), 'wakeup'): 120.63385193532028,
 ((6, 'pending', 'pending'), 'go_to_sleep'): -24.610566817713476,
 ((6, 'pending', 'sleeping'), 'go_to_sleep'): 0.5136000000000074,
 ((6, 'running', 'pending'), 'noop'): 253.44853712903657,
 ((6, 'running', 'pending'), 'prepare_sleep'): 12.822389588456227,
 ((6, 'running', 'running'), 'noop'): 279.3092392414041,
 ((6, 'running', 'running'), 'prepare_sleep'): 10.89570075661015,
 ((6, 'running', 'sleeping'), 'noop'): 256.00007512329705,
 ((6, 'running', 'sleeping'), 'prepare_sleep'): -6.82072,
 ((6, 'sleeping', 'running'), 'noop'): 50,
 ((6, 'sleeping', 'running'), 'wakeup'): 69.62720580194768,
 ((6, 'sleeping', 'sleeping'), 'noop'): 60.38024,
 ((7, 'pending', 'running'), 'go_to_sleep'): 47.5,
 ((7, 'pending', 'sleeping'), 'go_to_sleep'): 27.5,
 ((7, 'running', 'pending'), 'noop'): 73.20474695521929,
 ((7, 'running', 'running'), 'noop'): 154.31414129921743,
 ((7, 'running', 'sleeping'), 'noop'): 162.21598492118724,
 ((7, 'sleeping', 'pending'), 'wakeup'): 47.5,
 ((7, 'sleeping', 'running'), 'noop'): 58.2679199136,
 ((7, 'sleeping', 'running'), 'wakeup'): 47.5,
 ((7, 'sleeping', 'sleeping'), 'noop'): -50,
 ((8, 'pending', 'sleeping'), 'go_to_sleep'): 47.5,
 ((8, 'running', 'pending'), 'noop'): 50,
 ((8, 'running', 'pending'), 'prepare_sleep'): -2.5,
 ((8, 'running', 'running'), 'noop'): 77.72691893995427,
 ((8, 'running', 'running'), 'prepare_sleep'): 7.5,
 ((8, 'running', 'sleeping'), 'noop'): 123.37710332678267,
 ((8, 'running', 'sleeping'), 'prepare_sleep'): -2.5,
 ((8, 'sleeping', 'running'), 'noop'): 58.19597976737542,
 ((8, 'sleeping', 'sleeping'), 'wakeup'): 70.38708461529743,
 ((9, 'pending', 'pending'), 'go_to_sleep'): -52.5,
 ((9, 'pending', 'running'), 'go_to_sleep'): 47.5,
 ((9, 'pending', 'sleeping'), 'go_to_sleep'): 29.42306572545938,
 ((9, 'running', 'pending'), 'noop'): 50,
 ((9, 'running', 'pending'), 'prepare_sleep'): -2.5,
 ((9, 'running', 'running'), 'noop'): 74.320952,
 ((9, 'running', 'running'), 'prepare_sleep'): -2.5,
 ((9, 'running', 'sleeping'), 'noop'): 50,
 ((9, 'running', 'sleeping'), 'prepare_sleep'): -2.5,
 ((9, 'sleeping', 'pending'), 'wakeup'): 55.427056,
 ((9, 'sleeping', 'running'), 'noop'): 28.169999999999998,
 ((9, 'sleeping', 'running'), 'wakeup'): 78.4743058816,
 ((9, 'sleeping', 'sleeping'), 'noop'): 50,
 ((10, 'pending', 'pending'), 'go_to_sleep'): -40.75554406656,
 ((10, 'pending', 'running'), 'go_to_sleep'): 68.13155297536,
 ((10, 'pending', 'sleeping'), 'go_to_sleep'): 60.1748486656,
 ((10, 'running', 'running'), 'noop'): 78.38744,
 ((10, 'running', 'sleeping'), 'prepare_sleep'): 20.46268816612147,
 ((10, 'sleeping', 'pending'), 'noop'): -50,
 ((10, 'sleeping', 'pending'), 'wakeup'): 57.91035588502595,
 ((10, 'sleeping', 'running'), 'noop'): 78.66394210348288,
 ((10, 'sleeping', 'sleeping'), 'noop'): 65.34513992929689,
 ((11, 'pending', 'pending'), 'go_to_sleep'): 6.050000000000001,
 ((11, 'pending', 'running'), 'go_to_sleep'): -23.665519999999997,
 ((11, 'pending', 'sleeping'), 'go_to_sleep'): -52.5,
 ((11, 'running', 'pending'), 'noop'): 74.1626872448,
 ((11, 'running', 'pending'), 'prepare_sleep'): -2.5,
 ((11, 'running', 'running'), 'prepare_sleep'): 27.80207194495999,
 ((11, 'running', 'sleeping'), 'noop'): 78.204128,
 ((11, 'sleeping', 'running'), 'wakeup'): 77.977458483712,
 ((12, 'pending', 'running'), 'go_to_sleep'): 37.1166445079552,
 ((12, 'pending', 'sleeping'), 'go_to_sleep'): -19.869586052607993,
 ((12, 'running', 'pending'), 'prepare_sleep'): -2.5,
 ((12, 'running', 'running'), 'noop'): 89.44536557550848,
 ((12, 'running', 'running'), 'prepare_sleep'): 47.5,
 ((12, 'running', 'sleeping'), 'noop'): 65.73558482686977,
 ((12, 'running', 'sleeping'), 'prepare_sleep'): 28.049999999999997,
 ((12, 'sleeping', 'pending'), 'noop'): 40.0,
 ((12, 'sleeping', 'running'), 'wakeup'): 98.59390529111758,
 ((12, 'sleeping', 'sleeping'), 'noop'): 29.786088000000003,
 ((13, 'pending', 'pending'), 'go_to_sleep'): -52.5,
 ((13, 'pending', 'sleeping'), 'go_to_sleep'): -52.5,
 ((13, 'running', 'pending'), 'noop'): 58.55,
 ((13, 'running', 'pending'), 'prepare_sleep'): -2.5,
 ((13, 'running', 'running'), 'noop'): 89.68066871705601,
 ((13, 'running', 'running'), 'prepare_sleep'): 47.5,
 ((13, 'running', 'sleeping'), 'noop'): 74.22396753597441,
 ((13, 'running', 'sleeping'), 'prepare_sleep'): -2.5,
 ((13, 'sleeping', 'sleeping'), 'wakeup'): 65.32,
 ((14, 'pending', 'pending'), 'go_to_sleep'): -52.5,
 ((14, 'pending', 'sleeping'), 'go_to_sleep'): -52.5,
 ((14, 'running', 'pending'), 'noop'): 50.0,
 ((14, 'running', 'running'), 'noop'): 79.03726500182836,
 ((14, 'running', 'running'), 'prepare_sleep'): -2.5,
 ((14, 'running', 'sleeping'), 'noop'): 70.46237545447424,
 ((14, 'running', 'sleeping'), 'prepare_sleep'): -2.5,
 ((14, 'sleeping', 'pending'), 'wakeup'): 47.5,
 ((14, 'sleeping', 'running'), 'wakeup'): 56.5,
 ((14, 'sleeping', 'sleeping'), 'wakeup'): 66.52528,
 ((15, 'running', 'pending'), 'noop'): 50,
 ((15, 'running', 'pending'), 'prepare_sleep'): -2.5,
 ((15, 'running', 'running'), 'noop'): 68.6048,
 ((16, 'running', 'running'), 'noop'): 76.03088}