論文專注於利用軟體卸載的技術減少行動裝置的耗電或事件分析演算法的處理時間,以提升群眾感測系統的系統效能。事件分析演算法會經由使用者蒐集的感測器資料分析事件的發生與否,該分析可以透過卸載的技術卸載到雲端執行,以達到省電或提升速度的目的。由於軟體卸載的效益取決於許多因素,我們在本篇論文中提出了卸載決策演算法,結合當下的環境資訊,來決定是否將運算卸載到雲端。為了證明軟體卸載可實際用在現有的應用程式中,我們實作了一個工具幫助我們在沒有原始碼的情況下,分析其他第三方程式可以使用軟體卸載的部分,並修改該程式的安裝檔使其能夠使用軟體卸載。為了實際試驗軟體卸載對於群眾感測系統的影響,我們在本論文中實作了一個群眾感測雛形系統,並將軟體卸載的技術整合到該系統上進行測試。該雛型系統包含了(i)中控端、(ii)卸載伺服器及(iii)客戶端,並實作了2個事件分析演算法在系統中。 我們的實驗顯示了我們提出的卸載決策演算法可以達到80%的準確率,極大的避免了因決策錯誤產生的額外成本。同時,我們也透過自行開發的工具分析、修改第三方的程式,並經由實際的使用修改後的程式,證實了卸載技術的確能夠使用在現有的第三方程式中。最後,我們使用整合了軟體卸載的群眾感測系統進行實驗,證實軟體卸載的確能改進群眾感測系統的效能。
We focus on utilizing offloading to reduce the energy consumption of the mobile devices or the execution time of event analysis algorithms, and improve the system performance of crowdsensing systems. Event analysis algorithms analyze the sensory data that are collected by mobile users to determine whether events happen or not. The overhead of event analysis algorithms can be offloaded to cloud servers to achieve energy efficiency or better performance. Since offloading benefits depend on many factors, such as network latency and computation capability, we propose an offloading decision algorithm, which considers the context information to decide whether to offload the computation to cloud servers. To show that offloading can be used in existing applications, we develop an APK analysis tool to analyze the third-party applications. Without the source code, the tool determines which part of an application can be offloaded and modify the application to be offload version. To evaluate the impact of crowdsensing system with offloading, we implement a crowdsensing prototype system and integrate offloading technique into the system. The prototype system involves (i) a broker, (ii) offload servers, and (iii) clients. We implement 2 event analysis algorithms in the system. Our experiments show that our offloading decision algorithm improves the system performance through intelligently making offloading decisions, and the accuracy is up to 80\%. The high accuracy significantly reduces the penalty of suboptimal offloading decision. Moreover, by utilizing the APK analysis tool, we analyze and modify third-party applications. The results of offloading the third-party applications show that offloading can be used in existing third-party applications. Last, we conduct experiments with the crowdsensing prototype system with offloading and show that offloading improves the performance of the crowdsensing system.