In [16]:
import numpy as np
import pandas as pd
import matplotlib
import matplotlib.pyplot as plt
matplotlib.style.use('ggplot')
%matplotlib inline
import scipy.stats.mstats
import os
In [17]:
ordered = pd.read_csv("OrderedAntAlgorithm.dat", sep=" ")
composed = pd.read_csv("OrderedAntAlgorithm >> SimAnnealAlgorithm.dat", sep=" ")
unordered = pd.read_csv("UnorderedAntAlgorithm.dat", sep=" ")
sim_anneal = pd.read_csv("SimAnnealAlgorithm.dat", sep=" ")
In [22]:
plt.title('Evaluation time on full graphs')
lines = []
for name, df, color in [('ordered', ordered, 'tab:green'),
('composed', composed, 'tab:cyan'),
('unordered', unordered, 'tab:red'),
('sim_anneal', sim_anneal, 'tab:purple')]:
mean = df.groupby('GRAPH_SIZE').mean()
line, = plt.plot(mean.index.values, mean['TIME'], label=name, color=color)
lines.append(line)
variance = df.groupby('GRAPH_SIZE').var()
trim_variance = df.groupby('GRAPH_SIZE').apply(lambda x: x.apply(scipy.stats.mstats.trimmed_var))
max_var = variance['TIME'].max()
max_trim_var = trim_variance['TIME'].max()
print(f'{name} has {max_var} as maximal variance and {max_trim_var} as maximal trimmed varia')
plt.legend(handles=lines)
plt.ylabel('time (sec)')
plt.xlabel('Number of nodes')
plt.show()
In [24]:
plt.title('Related error on full graphs')
lines = []
for name, df, color in [('ordered', ordered, 'tab:green'),
('composed', composed, 'tab:cyan'),
('unordered', unordered, 'tab:red'),
('sim_anneal', sim_anneal, 'tab:purple')]:
mean = df.groupby('GRAPH_SIZE').mean()
line, = plt.plot(mean.index.values, mean['RELATED_ERROR'], label=name, color=color)
lines.append(line)
variance = df.groupby('GRAPH_SIZE').var()
trim_variance = df.groupby('GRAPH_SIZE').apply(lambda x: x.apply(scipy.stats.mstats.trimmed_var))
max_var = variance['RELATED_ERROR'].max()
max_trim_var = trim_variance['RELATED_ERROR'].max()
print(f'{name} has {max_var} as maximal variance and {max_trim_var} as maximal trimmed varia')
plt.legend(handles=lines)
plt.ylabel('Procent of error')
plt.xlabel('Number of nodes')
plt.show()
In [26]:
plt.title('Error on full graphs')
lines = []
for name, df, color in [('ordered', ordered, 'tab:green'),
('composed', composed, 'tab:cyan'),
('unordered', unordered, 'tab:red'),
('sim_anneal', sim_anneal, 'tab:purple')]:
mean = df.groupby('GRAPH_SIZE').mean()
line, = plt.plot(mean.index.values, mean['ERROR'], label=name, color=color)
lines.append(line)
variance = df.groupby('GRAPH_SIZE').var()
trim_variance = df.groupby('GRAPH_SIZE').apply(lambda x: x.apply(scipy.stats.mstats.trimmed_var))
max_var = variance['ERROR'].max()
max_trim_var = trim_variance['ERROR'].max()
print(f'{name} has {max_var} as maximal variance and {max_trim_var} as maximal trimmed varia')
plt.legend(handles=lines)
plt.ylabel('Procent of error')
plt.xlabel('Number of nodes')
plt.show()
In [27]:
sim_anneal = pd.read_csv("../simulated_annealing_iteration_parameter/sim_anneal.dat", sep=" ")
plt.title('Evaluation time on full graphs')
lines = []
for name, df, color in [('sim_anneal', sim_anneal, 'tab:green')]:
mean = df.groupby('GRAPH_SIZE').mean()
line, = plt.plot(mean.index.values, mean['TIME'], label=name, color=color)
lines.append(line)
variance = df.groupby('GRAPH_SIZE').var()
trim_variance = df.groupby('GRAPH_SIZE').apply(lambda x: x.apply(scipy.stats.mstats.trimmed_var))
max_var = variance['TIME'].max()
max_trim_var = trim_variance['TIME'].max()
print(f'{name} has {max_var} as maximal variance and {max_trim_var} as maximal trimmed varia')
plt.legend(handles=lines)
plt.ylabel('time (sec)')
plt.xlabel('Number of nodes')
plt.show()
In [28]:
plt.title('Related error on full graphs')
lines = []
for name, df, color in [('sim_anneal', sim_anneal, 'tab:green')]:
mean = df.groupby('GRAPH_SIZE').mean()
line, = plt.plot(mean.index.values, mean['RELATED_ERROR'], label=name, color=color)
lines.append(line)
variance = df.groupby('GRAPH_SIZE').var()
trim_variance = df.groupby('GRAPH_SIZE').apply(lambda x: x.apply(scipy.stats.mstats.trimmed_var))
max_var = variance['RELATED_ERROR'].max()
max_trim_var = trim_variance['RELATED_ERROR'].max()
print(f'{name} has {max_var} as maximal variance and {max_trim_var} as maximal trimmed varia')
plt.legend(handles=lines)
plt.ylabel('Procent of error')
plt.xlabel('Number of nodes')
plt.show()
In [ ]: