summaryrefslogtreecommitdiff
path: root/analysis
diff options
context:
space:
mode:
authorLoic Guegan <manzerbredes@mailbox.org>2022-11-30 10:01:05 +0100
committerLoic Guegan <manzerbredes@mailbox.org>2022-11-30 10:01:05 +0100
commit3a4c5500f7c3e139fbb44b2c98343bd0091ae593 (patch)
treea0977227382a176e759812a7762636510eef3905 /analysis
parent6e4fbcd47a712e9be62d01eeecf0744a87de2ec8 (diff)
Minor changes
Diffstat (limited to 'analysis')
-rw-r--r--analysis/analysis.R28
-rw-r--r--analysis/days.R7
-rw-r--r--analysis/figures/combined.pdfbin1235707 -> 1161922 bytes
-rw-r--r--analysis/figures/dimension_coverage.pdfbin18248 -> 18212 bytes
-rw-r--r--analysis/figures/dimension_efficiency.pdfbin95369 -> 78855 bytes
-rw-r--r--analysis/figures/dimension_energy-coverage-policy.pdfbin147139 -> 139310 bytes
-rw-r--r--analysis/figures/dimension_energy-coverage-wakeupfor.pdfbin147425 -> 137643 bytes
-rw-r--r--analysis/figures/dimension_energy-coverage.pdfbin156877 -> 149152 bytes
-rw-r--r--analysis/figures/dimension_energy.pdfbin127845 -> 111807 bytes
-rw-r--r--analysis/figures/f1_scores_offline_ignoreHINTFALSE.csv3
-rw-r--r--analysis/figures/f1_scores_offline_ignoreHINTTRUE.csv3
-rw-r--r--analysis/figures/months_knn.pdfbin23421 -> 23031 bytes
-rw-r--r--analysis/figures/months_tree.pdfbin20718 -> 20626 bytes
-rw-r--r--analysis/figures/sim_dimension_coverage_NO_HINT.pdfbin32982 -> 33148 bytes
-rw-r--r--analysis/figures/sim_dimension_coverage_WITH_HINT.pdfbin33358 -> 33626 bytes
-rw-r--r--analysis/figures/sim_dimension_energy_NO_HINT.pdfbin38035 -> 36693 bytes
-rw-r--r--analysis/figures/sim_dimension_energy_WITH_HINT.pdfbin38170 -> 36850 bytes
-rw-r--r--analysis/figures/sim_results_NO_HINT.csv9
-rw-r--r--analysis/figures/sim_results_WITH_HINT.csv9
-rw-r--r--analysis/learning.R2
20 files changed, 45 insertions, 16 deletions
diff --git a/analysis/analysis.R b/analysis/analysis.R
index f2343a7..8a76849 100644
--- a/analysis/analysis.R
+++ b/analysis/analysis.R
@@ -19,6 +19,7 @@ nwireless=2
nsimkey=4
nsimulations=nseed*nwakeupfor*nwireless*nsimkey # Must be 3200
+if(1==2){
## Load data
data=read_csv("../CCGRID2022.csv")%>%distinct() # Note that in the data experiment wireless=="lora",seed==1,wakeupfor==60,simkey=="baseline" is present 2 times in the CSV file
tmp_data_coverage=data%>%group_by(simkey,wireless,wakeupfor,seed)%>%mutate(coverage=sum(nDataRcv))%>%ungroup()%>%filter(isSender==1)%>%select(simkey,wireless,wakeupfor,seed,coverage)
@@ -38,7 +39,7 @@ sim=sim%>%group_by(simkey,wireless,wakeupfor,energy_constraint,coverage_constrai
sim=sim%>%arrange(energy_constraint,coverage_constraint)%>%group_by(wireless,wakeupfor,model)%>%mutate(id=row_number())%>%ungroup() # Create id for each experiment
rand_id=sample(seq(1,NROW(sim)/8))
sim=sim%>%mutate(id_rand=rand_id[id])
-
+}
## Perform various plots to understand the data
GG_VARIOUS=function(){
## Dimension Coverage
@@ -56,19 +57,19 @@ GG_VARIOUS=function(){
ggsave("figures/dimension_efficiency.pdf")
## Dimension Energy/Coverage
ggplot(data_seed%>%mutate(wakeupfor=as.character(wakeupfor)),
- aes(coverage,energy,color=simkey))+geom_point()+
- ggtitle("Dimension Energy/Coverage")+xlab("Coverage")+ylab("Sum of nodes energy consumption (J)")+
+ aes(coverage,energy,color=simkey))+geom_point(alpha=0.5)+labs(color="Policy")+theme(legend.position="top")+
+ ggtitle("Dimension Energy/Coverage")+xlab("Coverage")+ylab("Nodes energy consumption (J)")+
facet_wrap(~wakeupfor+wireless,scale="free")
ggsave("figures/dimension_energy-coverage.pdf")
## Dimension Energy/Coverage Wakeupfor
ggplot(data_seed%>%mutate(wakeupfor=as.character(wakeupfor)),
- aes(coverage,energy,color=wakeupfor))+geom_point()+
- ggtitle("Dimension Energy/Coverage Wakeupfor")+xlab("Coverage")+ylab("Sum of nodes energy consumption (J)")
+ aes(coverage,energy,color=wakeupfor))+geom_point(alpha=0.5)+labs(color="Policy")+theme(legend.position="top")+
+ ggtitle("Dimension Energy/Coverage Wakeupfor")+xlab("Coverage")+ylab("Nodes energy consumption (J)")
ggsave("figures/dimension_energy-coverage-wakeupfor.pdf")
## Dimension Energy/Coverage Policy
ggplot(data_seed%>%mutate(wakeupfor=as.character(wakeupfor)),
- aes(coverage,energy,color=simkey))+geom_point()+
- ggtitle("Dimension Energy/Coverage Policy")+xlab("Coverage")+ylab("Sum of nodes energy consumption (J)")
+ aes(coverage,energy,color=simkey))+geom_point(alpha=0.5)+labs(color="Policy")+
+ ggtitle("Dimension Energy/Coverage Policy")+xlab("Coverage")+ylab("Nodes energy consumption (J)")
ggsave("figures/dimension_energy-coverage-policy.pdf")
@@ -88,23 +89,26 @@ GG_SIMULATIONS = function(file,key="NOKEY") {
rand_id=sample(seq(1,NROW(sim)/8))
sim=sim%>%mutate(id_rand=rand_id[id])
- sim_means=sim%>%group_by(wireless,wakeupfor,model)%>%summarize(mean_energy=mean(mean_energy_delta),mean_coverage=mean(mean_coverage_delta))
+ sim_means=sim%>%group_by(wireless,wakeupfor,model)%>%summarize(mean_energy=mean(mean_energy_delta),mean_coverage=mean(mean_coverage_delta),sd_energy=sd(sd_energy_delta),sd_coverage=sd(sd_coverage_delta))
+ write.csv(sim_means%>%mutate_if(is.numeric, ~round(.,digits=2)),paste0("figures/sim_results_",key,".csv"),row.names=FALSE, quote=FALSE)
+
## Dimension Energy
ggplot(sim,aes(id_rand,mean_energy_delta,color=model))+
- geom_hline(data=sim_means,aes(yintercept=mean_energy,color=model),linetype="dashed")+
geom_ribbon(aes(ymin=mean_energy_delta-sd_energy_delta,ymax=mean_energy_delta+sd_energy_delta,fill=model),alpha=0.2,color=NA)+
geom_point(aes(shape=simkey),size=2)+geom_line()+facet_wrap(~wireless+wakeupfor,scale="free")+ggtitle(paste0("Simulation Dimension Energy (",key,")"))+ylab("Energy Relative Absolute Error (J)")+
scale_x_continuous("Experiments id",breaks=seq(1,max(sim$id)))+theme(panel.grid.minor = element_blank())+labs(shape="Predictions")+
- guides(fill=guide_legend(title="Models"),color=guide_legend(title="Models"))+
+ geom_hline(data=sim_means,aes(yintercept=mean_energy,color=model))+
+ guides(fill=guide_legend(title="Models"),color=guide_legend(title="Models"))+theme(legend.position="top")+
theme(axis.text.x=element_blank(),axis.ticks.x=element_blank())
- ggsave(paste0("figures/sim_dimension_energy_",key,".pdf"),width=20)
+ ggsave(paste0("figures/sim_dimension_energy_",key,".pdf"),width=10)
+
## Dimension Coverage
ggplot(sim,aes(id_rand,mean_coverage_delta,color=model))+
geom_hline(data=sim_means,aes(yintercept=mean_coverage,color=model),linetype="dashed")+
geom_ribbon(aes(ymin=mean_coverage_delta-sd_coverage_delta,ymax=mean_coverage_delta+sd_coverage_delta,fill=model),alpha=0.2,color=NA)+
geom_point(aes(shape=simkey),size=2)+geom_line()+facet_wrap(~wireless+wakeupfor,scale="free")+ggtitle(paste0("Simulation Dimension Coverage (",key,")"))+ylab("Coverage Relative Absolute Error")+
scale_x_continuous("Experiments id",breaks=seq(1,max(sim$id)))+theme(panel.grid.minor = element_blank())+labs(shape="Predictions")+
- guides(fill=guide_legend(title="Models"),color=guide_legend(title="Models"))+
+ guides(fill=guide_legend(title="Models"),color=guide_legend(title="Models"))+theme(legend.position="top")+
theme(axis.text.x=element_blank(),axis.ticks.x=element_blank())
ggsave(paste0("figures/sim_dimension_coverage_",key,".pdf"),width=20)
diff --git a/analysis/days.R b/analysis/days.R
index 601f210..ce12930 100644
--- a/analysis/days.R
+++ b/analysis/days.R
@@ -139,11 +139,12 @@ sapply(c("knn","tree"),function(grp){
plot=plot+geom_point(data=data%>%drop_na(mean_f1_hint),aes(months,mean_f1_hint,color="hint"))+geom_line(data=data%>%drop_na(mean_f1_hint),aes(months,mean_f1_hint,color="hint"))
}
- plot=plot+xlab("Number of training months")+ylab(paste("Mean",grp,"accuracy"))+ggtitle(paste(grp,"accuracy"))+
+ plot=plot+xlab("Number of months")+ylab(paste("Mean",grp,"accuracy"))+ggtitle(paste(grp,"accuracy"))+
# geom_hline(data=metrics_peak%>%filter(model==grp),aes(yintercept=max_accuracy),color="red",size=1)+
# geom_text(data=metrics_peak%>%filter(model==grp),x=0,aes(y=max_accuracy,label = round(max_accuracy,digits=1),vjust=-1),color="red")+
- facet_wrap(~wireless+wakeupfor)+scale_x_continuous(breaks = seq(0, max(result_summary$months), by = 1))+ylim(c(0,1))+labs(color="F1 Score")
- ggsave(paste0("figures/months_",grp,".pdf"),width=20,height=15)
+ facet_wrap(~wireless+wakeupfor)+scale_x_continuous(breaks = seq(0, max(result_summary$months), by = 1))+ylim(c(NA,1))+labs(color="F1 Score")+
+ theme(legend.position="top")
+ ggsave(paste0("figures/months_",grp,".pdf"),width=9,height=8)
print(plot)
})
diff --git a/analysis/figures/combined.pdf b/analysis/figures/combined.pdf
index 80f32bd..9a4ed4b 100644
--- a/analysis/figures/combined.pdf
+++ b/analysis/figures/combined.pdf
Binary files differ
diff --git a/analysis/figures/dimension_coverage.pdf b/analysis/figures/dimension_coverage.pdf
index 6761219..4081087 100644
--- a/analysis/figures/dimension_coverage.pdf
+++ b/analysis/figures/dimension_coverage.pdf
Binary files differ
diff --git a/analysis/figures/dimension_efficiency.pdf b/analysis/figures/dimension_efficiency.pdf
index cc4ac9b..bc639e4 100644
--- a/analysis/figures/dimension_efficiency.pdf
+++ b/analysis/figures/dimension_efficiency.pdf
Binary files differ
diff --git a/analysis/figures/dimension_energy-coverage-policy.pdf b/analysis/figures/dimension_energy-coverage-policy.pdf
index 1bcb5cc..c0440c7 100644
--- a/analysis/figures/dimension_energy-coverage-policy.pdf
+++ b/analysis/figures/dimension_energy-coverage-policy.pdf
Binary files differ
diff --git a/analysis/figures/dimension_energy-coverage-wakeupfor.pdf b/analysis/figures/dimension_energy-coverage-wakeupfor.pdf
index 22d7539..42869c6 100644
--- a/analysis/figures/dimension_energy-coverage-wakeupfor.pdf
+++ b/analysis/figures/dimension_energy-coverage-wakeupfor.pdf
Binary files differ
diff --git a/analysis/figures/dimension_energy-coverage.pdf b/analysis/figures/dimension_energy-coverage.pdf
index 02d04ec..6d7cf5c 100644
--- a/analysis/figures/dimension_energy-coverage.pdf
+++ b/analysis/figures/dimension_energy-coverage.pdf
Binary files differ
diff --git a/analysis/figures/dimension_energy.pdf b/analysis/figures/dimension_energy.pdf
index a2f0c51..5a5b51c 100644
--- a/analysis/figures/dimension_energy.pdf
+++ b/analysis/figures/dimension_energy.pdf
Binary files differ
diff --git a/analysis/figures/f1_scores_offline_ignoreHINTFALSE.csv b/analysis/figures/f1_scores_offline_ignoreHINTFALSE.csv
new file mode 100644
index 0000000..6f8b376
--- /dev/null
+++ b/analysis/figures/f1_scores_offline_ignoreHINTFALSE.csv
@@ -0,0 +1,3 @@
+model,f1_baseline,f1_hint,f1_extended,f1_hintandextended,accuracy
+knn,0.83,0.73,0.9,0.79,0.69
+tree,0.9,0.75,0.86,0.79,0.7
diff --git a/analysis/figures/f1_scores_offline_ignoreHINTTRUE.csv b/analysis/figures/f1_scores_offline_ignoreHINTTRUE.csv
new file mode 100644
index 0000000..fa754ff
--- /dev/null
+++ b/analysis/figures/f1_scores_offline_ignoreHINTTRUE.csv
@@ -0,0 +1,3 @@
+model,f1_baseline,f1_hint,f1_extended,f1_hintandextended,accuracy
+knn,0.88,NA,0.89,0.91,0.81
+tree,0.93,NA,0.86,0.92,0.83
diff --git a/analysis/figures/months_knn.pdf b/analysis/figures/months_knn.pdf
index 17a4ad1..2eab11f 100644
--- a/analysis/figures/months_knn.pdf
+++ b/analysis/figures/months_knn.pdf
Binary files differ
diff --git a/analysis/figures/months_tree.pdf b/analysis/figures/months_tree.pdf
index 83d4f6d..60fe389 100644
--- a/analysis/figures/months_tree.pdf
+++ b/analysis/figures/months_tree.pdf
Binary files differ
diff --git a/analysis/figures/sim_dimension_coverage_NO_HINT.pdf b/analysis/figures/sim_dimension_coverage_NO_HINT.pdf
index b9b9519..096e285 100644
--- a/analysis/figures/sim_dimension_coverage_NO_HINT.pdf
+++ b/analysis/figures/sim_dimension_coverage_NO_HINT.pdf
Binary files differ
diff --git a/analysis/figures/sim_dimension_coverage_WITH_HINT.pdf b/analysis/figures/sim_dimension_coverage_WITH_HINT.pdf
index a226cf0..567ec38 100644
--- a/analysis/figures/sim_dimension_coverage_WITH_HINT.pdf
+++ b/analysis/figures/sim_dimension_coverage_WITH_HINT.pdf
Binary files differ
diff --git a/analysis/figures/sim_dimension_energy_NO_HINT.pdf b/analysis/figures/sim_dimension_energy_NO_HINT.pdf
index d5ab543..7a8129f 100644
--- a/analysis/figures/sim_dimension_energy_NO_HINT.pdf
+++ b/analysis/figures/sim_dimension_energy_NO_HINT.pdf
Binary files differ
diff --git a/analysis/figures/sim_dimension_energy_WITH_HINT.pdf b/analysis/figures/sim_dimension_energy_WITH_HINT.pdf
index 590bc80..cfdbf83 100644
--- a/analysis/figures/sim_dimension_energy_WITH_HINT.pdf
+++ b/analysis/figures/sim_dimension_energy_WITH_HINT.pdf
Binary files differ
diff --git a/analysis/figures/sim_results_NO_HINT.csv b/analysis/figures/sim_results_NO_HINT.csv
new file mode 100644
index 0000000..bb766bd
--- /dev/null
+++ b/analysis/figures/sim_results_NO_HINT.csv
@@ -0,0 +1,9 @@
+wireless,wakeupfor,model,mean_energy,mean_coverage,sd_energy,sd_coverage
+lora,60,knn,-32.58,-0.06,98.03,0.72
+lora,60,tree,-155.83,-0.98,119.03,0.87
+lora,180,knn,-1125.21,5.26,99.11,0.22
+lora,180,tree,-1659.57,2.44,199.05,0.44
+nbiot,60,knn,-497.99,0.32,52.86,0.3
+nbiot,60,tree,-520.09,-0.09,60.35,0.34
+nbiot,180,knn,12.46,2.32,149.98,0.17
+nbiot,180,tree,-284.82,2.18,257.4,0.29
diff --git a/analysis/figures/sim_results_WITH_HINT.csv b/analysis/figures/sim_results_WITH_HINT.csv
new file mode 100644
index 0000000..b029bef
--- /dev/null
+++ b/analysis/figures/sim_results_WITH_HINT.csv
@@ -0,0 +1,9 @@
+wireless,wakeupfor,model,mean_energy,mean_coverage,sd_energy,sd_coverage
+lora,60,knn,-171.89,-0.78,119.98,0.88
+lora,60,tree,-207.11,-1.05,123.19,0.9
+lora,180,knn,-2629.47,0.11,202.56,0.44
+lora,180,tree,-2924.29,-1.44,172.87,0.38
+nbiot,60,knn,-560.44,-0.53,67.91,0.38
+nbiot,60,tree,-521.77,0.19,61.78,0.35
+nbiot,180,knn,-1543.86,1.51,377.76,0.43
+nbiot,180,tree,-1874.18,1.36,357.03,0.41
diff --git a/analysis/learning.R b/analysis/learning.R
index 684dc7b..7273338 100644
--- a/analysis/learning.R
+++ b/analysis/learning.R
@@ -112,7 +112,7 @@ build_models=function(ignore_hint=TRUE){
f1_extended=mean(f1_extended),
f1_hintandextended=mean(f1_hintandextended),
accuracy=mean(accuracy))
- write.csv(perfs,"figures/f1_scores_offline.csv",quote=FALSE,row.names=FALSE)
+ write.csv(perfs,paste0("figures/f1_scores_offline_ignoreHINT",ignore_hint,".csv"),quote=FALSE,row.names=FALSE)
## Return models
models