summaryrefslogtreecommitdiff
path: root/analysis/analysis.R
diff options
context:
space:
mode:
Diffstat (limited to 'analysis/analysis.R')
-rw-r--r--analysis/analysis.R28
1 files changed, 16 insertions, 12 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)