summaryrefslogtreecommitdiff
path: root/analysis
diff options
context:
space:
mode:
authorLoic Guegan <manzerbredes@mailbox.org>2022-11-07 13:54:33 +0100
committerLoic Guegan <manzerbredes@mailbox.org>2022-11-07 13:54:33 +0100
commit2f3c41d6a3ff84c430c78a15b5f96085362ad7a5 (patch)
treee7d657adac8b02be470650eed99987d23753e7c9 /analysis
parentd26603fb00c53847f95c393a0f0f0e81edff89e6 (diff)
Minor changes
Diffstat (limited to 'analysis')
-rw-r--r--analysis/analysis.R21
-rw-r--r--analysis/annotations/.combined.autosave.xoppbin47945 -> 0 bytes
-rw-r--r--analysis/annotations/.combined2.autosave.xoppbin0 -> 89027 bytes
-rw-r--r--analysis/annotations/combined.xoppbin47925 -> 48040 bytes
-rw-r--r--analysis/annotations/combined2.pdfbin0 -> 634855 bytes
-rw-r--r--analysis/annotations/combined2.xoppbin0 -> 96899 bytes
-rw-r--r--analysis/figures/combined.pdfbin208404 -> 0 bytes
-rw-r--r--analysis/figures/combined2.pdfbin0 -> 634855 bytes
-rw-r--r--analysis/figures/dimension_coverage.pdfbin18212 -> 18212 bytes
-rw-r--r--analysis/figures/dimension_efficiency.pdfbin78855 -> 78855 bytes
-rw-r--r--analysis/figures/dimension_energy-coverage-policy.pdfbin0 -> 138901 bytes
-rw-r--r--analysis/figures/dimension_energy-coverage-wakeupfor.pdfbin0 -> 138987 bytes
-rw-r--r--analysis/figures/dimension_energy-coverage.pdfbin0 -> 149307 bytes
-rw-r--r--analysis/figures/dimension_energy.pdfbin111807 -> 111807 bytes
-rw-r--r--analysis/knn.R49
-rw-r--r--analysis/renv.lock12
16 files changed, 78 insertions, 4 deletions
diff --git a/analysis/analysis.R b/analysis/analysis.R
index 2e54763..f38a1a3 100644
--- a/analysis/analysis.R
+++ b/analysis/analysis.R
@@ -30,8 +30,6 @@ data_seed=data%>%group_by(simkey,wireless,wakeupfor,seed)%>%summarize(energy=sum
mutate(efficiency=energy/coverage)%>%
ungroup()
-
-
## Perform various plots to understand the data
GG_VARIOUS=function(){
## Dimension Coverage
@@ -47,12 +45,29 @@ GG_VARIOUS=function(){
aes(simkey,efficiency,color=wakeupfor))+
geom_point()+facet_wrap(~wireless+wakeupfor)+ggtitle("Dimension Efficiency")+ylab("Efficiency (J/Succ)")
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)")+
+ 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)")
+ 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)")
+ ggsave("figures/dimension_energy-coverage-policy.pdf")
+
+
}
## Plot to generate:
GG_VARIOUS()
-
system("rm -f figures/combined.pdf")
system("pdfunite figures/*.pdf figures/combined.pdf")
diff --git a/analysis/annotations/.combined.autosave.xopp b/analysis/annotations/.combined.autosave.xopp
deleted file mode 100644
index fda6e0c..0000000
--- a/analysis/annotations/.combined.autosave.xopp
+++ /dev/null
Binary files differ
diff --git a/analysis/annotations/.combined2.autosave.xopp b/analysis/annotations/.combined2.autosave.xopp
new file mode 100644
index 0000000..773d02b
--- /dev/null
+++ b/analysis/annotations/.combined2.autosave.xopp
Binary files differ
diff --git a/analysis/annotations/combined.xopp b/analysis/annotations/combined.xopp
index e8db727..9a4d230 100644
--- a/analysis/annotations/combined.xopp
+++ b/analysis/annotations/combined.xopp
Binary files differ
diff --git a/analysis/annotations/combined2.pdf b/analysis/annotations/combined2.pdf
new file mode 100644
index 0000000..969dd8c
--- /dev/null
+++ b/analysis/annotations/combined2.pdf
Binary files differ
diff --git a/analysis/annotations/combined2.xopp b/analysis/annotations/combined2.xopp
new file mode 100644
index 0000000..56bfd6a
--- /dev/null
+++ b/analysis/annotations/combined2.xopp
Binary files differ
diff --git a/analysis/figures/combined.pdf b/analysis/figures/combined.pdf
deleted file mode 100644
index 5566c74..0000000
--- a/analysis/figures/combined.pdf
+++ /dev/null
Binary files differ
diff --git a/analysis/figures/combined2.pdf b/analysis/figures/combined2.pdf
new file mode 100644
index 0000000..969dd8c
--- /dev/null
+++ b/analysis/figures/combined2.pdf
Binary files differ
diff --git a/analysis/figures/dimension_coverage.pdf b/analysis/figures/dimension_coverage.pdf
index bbc23bc..4520271 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 1a6ec95..685e519 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
new file mode 100644
index 0000000..36af3df
--- /dev/null
+++ 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
new file mode 100644
index 0000000..d4b5732
--- /dev/null
+++ 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
new file mode 100644
index 0000000..5301d93
--- /dev/null
+++ 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 dd5c8bd..0aee6e7 100644
--- a/analysis/figures/dimension_energy.pdf
+++ b/analysis/figures/dimension_energy.pdf
Binary files differ
diff --git a/analysis/knn.R b/analysis/knn.R
new file mode 100644
index 0000000..71771f1
--- /dev/null
+++ b/analysis/knn.R
@@ -0,0 +1,49 @@
+library("tidyverse")
+library("class")
+
+## Simulation Parameters:
+## simkey {baseline,extended,hint,hintandextended}
+## wireless {lora,nbiot}
+## wakeupfor {60s,180s}
+## seed [1,200]
+## node on[0,12]
+## isSender {0,1}
+## dataSize {1MB}
+
+## Metrics:
+## energy [0,+inf)
+## nDataRcv [0,+inf)
+
+nseed=200
+nwakeupfor=2
+nwireless=2
+nsimkey=4
+nsimulations=nseed*nwakeupfor*nwireless*nsimkey # Must be 3200
+
+## 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)
+data_seed_isSender=data%>%group_by(simkey,wireless,wakeupfor,seed,isSender)%>%summarize(energy_mean=mean(energy))%>%
+ left_join(tmp_data_coverage,by=c("simkey","wireless","wakeupfor","seed"))%>%
+ mutate(efficiency=energy_mean/coverage)%>%
+ ungroup()
+data_seed=data%>%group_by(simkey,wireless,wakeupfor,seed)%>%summarize(energy=sum(energy),coverage=sum(nDataRcv))%>%
+ mutate(efficiency=energy/coverage)%>%
+ ungroup()
+
+
+## Prepare data for knn
+set.seed(1) # Reproducibility
+data_seed=data_seed%>%select(-efficiency,-seed)%>%mutate(wireless=as.numeric(as.factor(data_seed$wireless)))
+
+## Train
+train_set=data_seed%>%sample_frac(0.8) # 80% of the data
+test_set=data_seed%>%anti_join(train_set) # 20% of the data
+classifier=knn(train=train_set%>%select(-simkey),test=test_set%>%select(-simkey),cl=train_set$simkey,k=10)
+
+## Analysis
+cont_table=table(classifier,test_set$simkey)
+accuracy=round((sum(diag(cont_table)/sum(rowSums(cont_table))))*100)
+prop_table=round(prop.table(cont_table),digits=2)
+print(prop_table)
+print(paste0("Overall KNN accuracy ",accuracy,"%"))
diff --git a/analysis/renv.lock b/analysis/renv.lock
index cc2f3c1..698d4ef 100644
--- a/analysis/renv.lock
+++ b/analysis/renv.lock
@@ -1,6 +1,6 @@
{
"R": {
- "Version": "4.2.1",
+ "Version": "4.2.2",
"Repositories": [
{
"Name": "CRAN",
@@ -183,6 +183,16 @@
"tibble"
]
},
+ "class": {
+ "Package": "class",
+ "Version": "7.3-20",
+ "Source": "Repository",
+ "Repository": "CRAN",
+ "Hash": "da09d82223e669d270e47ed24ac8686e",
+ "Requirements": [
+ "MASS"
+ ]
+ },
"cli": {
"Package": "cli",
"Version": "3.4.1",