Lecture Notes in Computer Science Commenced Publication in 1973 Founding and Former Series Editors: Gerhard Goos, Juris Hartmanis, and Jan van Leeuwen
Editorial Board David Hutchison Lancaster University, UK Takeo Kanade Carnegie Mellon University, Pittsburgh, PA, USA Josef Kittler University of Surrey, Guildford, UK Jon M. Kleinberg Cornell University, Ithaca, NY, USA Alfred Kobsa University of California, Irvine, CA, USA Friedemann Mattern ETH Zurich, Switzerland John C. Mitchell Stanford University, CA, USA Moni Naor Weizmann Institute of Science, Rehovot, Israel Oscar Nierstrasz University of Bern, Switzerland C. Pandu Rangan Indian Institute of Technology, Madras, India Bernhard Steffen TU Dortmund University, Germany Madhu Sudan Microsoft Research, Cambridge, MA, USA Demetri Terzopoulos University of California, Los Angeles, CA, USA Doug Tygar University of California, Berkeley, CA, USA Gerhard Weikum Max Planck Institute for Informatics, Saarbruecken, Germany
6868
Dieter Kranzlmüller A Min Toja (Eds.)
Information and Communication on Technology for the Fight against Global Warming First International Conference, ICT-GLOW 2011 Toulouse, France, August 30-31, 2011 Proceedings
13
Volume Editors Dieter Kranzlmüller Ludwig-Maximilians-Universität München Institut für Informatik Oettingenstrasse 67, 80538 München, Germany E-mail:
[email protected] A Min Toja Vienna University of Technology Institute of Software Technology Favoritenstraße 9-11/188, 1040 Wien, Austria E-mail:
[email protected]
ISSN 0302-9743 e-ISSN 1611-3349 ISBN 978-3-642-23446-0 e-ISBN 978-3-642-23447-7 DOI 10.1007/978-3-642-23447-7 Springer Heidelberg Dordrecht London New York Library of Congress Control Number: 2011934464 CR Subject Classification (1998): D, J.2, J.1, K.6 LNCS Sublibrary: SL 1 – Theoretical Computer Science and General Issues
© Springer-Verlag Berlin Heidelberg 2011 This work is subject to copyright. All rights are reserved, whether the whole or part of the material is concerned, specifically the rights of translation, reprinting, re-use of illustrations, recitation, broadcasting, reproduction on microfilms or in any other way, and storage in data banks. Duplication of this publication or parts thereof is permitted only under the provisions of the German Copyright Law of September 9, 1965, in its current version, and permission for use must always be obtained from Springer. Violations are liable to prosecution under the German Copyright Law. The use of general descriptive names, registered names, trademarks, etc. in this publication does not imply, even in the absence of a specific statement, that such names are exempt from the relevant protective laws and regulations and therefore free for general use. Typesetting: Camera-ready by author, data conversion by Scientific Publishing Services, Chennai, India Printed on acid-free paper Springer is part of Springer Science+Business Media (www.springer.com)
Preface
Reduction of CO2 -emissions is a topic of outmost importance for society and our planet. Today, the information and communication technology (ICT) sector is already a relevant contributor to CO2 emissions and global warming due to its tremendous presence in our everyday life. At the same time, and more importantly it is a key technology for the fight against global warming in all other sectors. This twofold situation was addressed during ICT-GLOW 2011: On the one hand, issues on the potential of ICT as enabler for the reduction of CO2 -emissions pertinent to industry, regions, organizations and society were considered. On the other hand, issues on the urgent need of hardware and software systems which are designed and operated in an energy-aware way and which steadily monitor and optimize their energy consumption was another focus of the conference. The First International Conference on ICT as Key Technology for the Fight Against Global Warming (ICT-GLOW 2011) aimed at providing an interdisciplinary scientific forum for in-depth-discussions on the reduction of the carbon footprint in the different sectors including ICT systems themselves. Emphasis within the ICT sector is laid on holistic and far-reaching approaches for green and eco-friendly ICT systems. The conference brought together researchers and practitioners from multiple disciplines ranging from green maturity models in organizations to system level design and optimization. The papers presented at this conference were selected after extensive reviews by the Program Committee and associated reviewers. We would like to thank all PC members and the reviewers for their valuable advice, and the authors for their contributions to ICT-GLOW 2011. Special thanks go to Gabriela Wagner for managing the submission and paper production process, and to Vitalian Danciu for handling the reviewing process and drafting the conference program. Dieter Kranzlm¨ uller A. Min Tjoa
Organization
Program Chairs Dieter Kranzlm¨ uller A. Min Tjoa
LMU and LRZ M¨ unchen, Germany Vienna University of Technology, Austria
Program Committee Amir Abtahi Gul A. Agha Ishfaq Ahmad Lachlan Andrew
Massachusetts Institute of Technology, USA University of Illinois, USA The University of Texas Arlington, USA Swinburne University of Technology-Melbourne, Australia Cosimo Anglano Universit` a del Piemonte Orientale-Alessandra, Italy Rami Bahsoon University of Birmingham, UK Luciano Bertini Universidade Federal Fluminense, Brazil Riccardo Bettati Texas A&M University, USA Davide Careglio Universitat Polit`ecnica de Catalunya, Spain Jian-Jia Chen Karlsruhe Institute of Technology, Germany Jinjun Chen Swinburne University of Technology-Melbourne, Australia Ayse Kivilcim Coskun Boston University, USA Thiery Coupaye Orange Labs, France Georges Da Costa IRIT Toulouse, France Marco Di Girolamo Hewlett-Packard Company, Italy Dominique Dudkowski NEC Europe, Germany Carla Schlatter Ellis Duke University, USA Paulo Ferrao MIT Portugal, Portugal Karl Fuerlinger LMU Munich, Germany Erol Gelenbe Imperial College London, UK Afitya K. Ghose University of Wollongong, Australia Keishiro Hara Osaka University, Japan Helmut Hlavacs University of Vienna, Austria Chun-Hsi (Vincent) Huang University of Connecticut, USA Herbert Huber Leibniz Supercomputing Centre (LRZ), Garching, Germany Karin Anna Hummmel University of Vienna, Austria Farook Khadeer Hussain Curtin University, Australia Omar Hussain Curtin University, Australia Vipul Jain Indian Institute of Mechanical Engineering, India Wolfgang Kabelka Bundesrechenzentrum GmbH, Austria
VIII
Organization
Vincent Keller Samee U. Khan Harald Kosch Thomas Ledoux Laurent Lef`evre Hector G. Lopez-Ruiz Yung-Hsiang Lu Thomas Ludwig Jaime Lloret Mauri Michele Mazzucco Jean-Marc Menaud Arthur Mickoleit Hiroyuki Morikawa Daniel Moss´e Binh Thanh Nguyen Svetoslav Novkov Sebastian Oberth¨ ur Manish Parashar Cathryn Peoples Barbara Pernici Mario Pickavet Jean-Marc Pierson Wojciech Piotrowicz Massimo Poncino Rastin Pries Gang Qu Sanjay Ranka Martino Ruggiero Brahmananda Sapkota Toshinori Sato Erich Schikuta Hartmut Schmeck Edwin Sha Anastasious Stamou Amirreza Tahamtan Makoto Takizawa Domenico Talia Frank Teuteberg Jordi Torres Gregg Vesonder Vladimir Vlassov Matijin Warnier Rongbo Zhu Albert Zomaya
EPFL, Switzerland North Dakota University, USA Universit¨ at Passau, Germany Ecole des Mines de Nantes, France INRIA, University of Lyon, France Transport Economics Laboratory Lyon, France Purdue University, USA Deutsches Klimazentrum, Germany Universidad Politecnica de Valencia, Spain University of Tartu, Estonia Ecole des Mines de Nantes, France OECD, France University of Tokyo, Japan University of Pittsburgh, USA International Institute for Applied Systems Analysis, Austria Technical University of Sofia, Bulgaria Free University of Brussels, Brussels Rutgers University, USA University of Ulster, UK Politecnico di Milano, Italy University of Ghent, Belgium University of Toulouse, France University of Oxford, UK Politecnico di Torino, Italy University of W¨ urzburg, Germany University of Maryland at College Park, USA University of Florida, USA University of Bologna, Italy University of Twente, The Netherlands Kyushu University, Japan University of Vienna, Austria KIT, Karlsruhe, Germany University of Texas at Dallas, USA University of Athens, Greece Vienna University of Technology, Austria Seikei University, Japan Universit` a Della Calabria, Italy Universit¨ at Osnabr¨ uck, Germany University of Catalonia, Spain ATT, USA KTH, Sweden University of Delft, The Netherlands South-Central University for Nationalities, China University of Sydney, Australia
Table of Contents
Parallel Computing Towards Energy Efficient Parallel Computing on Consumer Electronic Devices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Karl F¨ urlinger, Christof Klausecker, and Dieter Kranzlm¨ uller
1
Characterizing Applications from Power Consumption: A Case Study for HPC Benchmarks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Georges Da Costa and Jean-Marc Pierson
10
Principles of Energy Efficiency in High Performance Computing . . . . . . . . Axel Auweter, Arndt Bode, Matthias Brehm, Herbert Huber, and Dieter Kranzlm¨ uller
18
ICT for Transportation Geocast Routing in Vehicular Networks for Reduction of CO2 Emissions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Maazen Alsabaan, Kshirasagar Naik, Tamer Abdelkader, Tarek Khalifa, and Amiya Nayak Limiting Pollution in Ground Control Optimization . . . . . . . . . . . . . . . . . . Ludovica Adacher and Marta Flamini A Simulation Environment for Smart Charging of Electric Vehicles Using a Multi-objective Evolutionary Algorithm . . . . . . . . . . . . . . . . . . . . . Maryam Ramezani, Mario Graf, and Harald Vogt
26
41
56
Cloud Computing Furthering the Growth of Cloud Computing by Providing Privacy as a Service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . David S. Allison and Miriam A.M. Capretz
64
The Concept of a Mobile Cloud Computing to Reduce Energy Cost of Smartphones and ICT Systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Majid Altamimi and Kshirasagar Naik
79
X
Table of Contents
Pervasive Computing A Model for Sequence Based Power Management in Cyber Physical Systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Andreas Barthels, Florian Ruf, Gregor Walla, Joachim Fr¨ oschl, Hans-Ulrich Michel, and Uwe Baumgarten A System for Energy Savings in an Ambient Intelligence Environment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Thanos G. Stavropoulos, Dimitris Vrakas, Alexandros Arvanitidis, and Ioannis Vlahavas Profiling Power Consumption on Desktop Computer Systems . . . . . . . . . . Giuseppe Procaccianti, Antonio Vetro’, Luca Ardito, and Maurizio Morisio
87
102
110
Measurement and Control GAINS – An Interactive Tool for Assessing International GHG Mitigation Regimes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Thanh Binh Nguyen, Fabian Wagner, and Wolfgang Schoepp Role of Context-Awareness for Demand Response Mechanisms . . . . . . . . . Pari Delir Haghighi and Shonali Krishnaswamy An Architecture and Methodology for a Four-Phased Approach to Green Business Process Reengineering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Alexander Nowak, Frank Leymann, David Schumm, and Branimir Wetzstein
124 136
150
Storage ADSC: Application-Driven Storage Control for Energy Efficiency . . . . . . . Cinzia Cappiello, Alicia Hinostroza, Barbara Pernici, Mariagiovanna Sami, Ealan Henis, Ronen Kat, Kalman Meth, and Marcello Mura Utilization-Aware Redirection Policy in CDN: A Case for Energy Conservation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Saif ul Islam, Konstantinos Stamos, Jean-Marc Pierson, and Athena Vakali Author Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
165
180
189
Towards Energy Efficient Parallel Computing on Consumer Electronic Devices Karl F¨ urlinger, Christof Klausecker, and Dieter Kranzlm¨ uller Department of Computer Science, MNM-Team Ludwig-Maximilians-Universit¨ at (LMU) M¨ unchen, Germany
Abstract. In the last two decades supercomputers have sustained a remarkable growth in performance that even out-performed the predictions of Moore’s law, primarily due to increased levels of parallelism [19]. As industry and academia try to come up with viable approaches for exascale systems, attention turns to energy efficiency as the primary design consideration. At the same time, energy efficiency has always been the main concern in the mobile computing area. Additionally, mobile and consumer electronic devices are becoming ever more powerful as the use cases (e.g., Web 2.0 applications, video encoding, virtual and augmented reality) become more computationally demanding. It is therefore an interesting question to ask if these devices are the possible building blocks of future HPC systems. It was the workstation and server market in the past that provided the CPUs that power supercomputers and it might be the consumer electronic market that provides the underlying technology in the future. In this paper we try to analyze the current state of energy efficient parallel and distributed computing on mobile and consumer electronic devices. We provide an overview of performance characteristics of some current and announced future devices for scientific computation and we build a small proof-of-concept cluster from Apple’s second generation “Apple TV” devices and evaluate its performance on standard benchmark applications. We discuss the limiting factors, and analyze the industry trajectory that we believe could make consumer electronic-based design a feasible technology basis for future HPC system designs.
1
Introduction
Total power consumption and energy efficiency of each component have become important considerations for the design of data-centers and high performance computing facilities. For the next generation of supercomputers (exascale systems), energy efficiency will even become the single most important constraining factor [13]. At the same time, consumer electronic and handheld devices have always been designed with energy efficiency in mind, with efficient ARM-based CPUs powering the majority of devices in the recent history. Driven by use cases such as HD video streaming, rich Web 2.0 browser applications, virtual reality, and 3D gaming, there are strong market forces driving D. Kranzlm¨ uller and A M. Tjoa (Eds.): ICT-GLOW 2011, LNCS 6868, pp. 1–9, 2011. c Springer-Verlag Berlin Heidelberg 2011
2
K. F¨ urlinger, C. Klausecker, and D. Kranzlm¨ uller
the future development of theses mobile devices towards more powerful compute capabilities [15]. For example, dual and even quad core mobile CPU designs with GPU integration have been announced for the next generation of tablet computers. In the light of these developments it is therefore interesting to analyze whether consumer electronic devices could become building blocks of future HPC systems. The supercomputing market is (for the most part) too small to sustain its own CPU ecosystem and in the past has leveraged workstation and server CPUs. In the future, the underlying technology might very well come from consumer electronic space. With our AppleTV Cluster1 we try to provide a data point on the current state of energy efficient parallel and distributed computing on ARM powered consumer electronic devices. The second generation Apple TV (ATV2) is meant to be used as a video streaming client and shares most of its hardware internals with the first generation iPad. The Apple A4 processor combines an ARM Cortex-A8 running at 1 GHz with a PowerVR SGX535 GPU and 256 MB RAM. The device is small (3.9 × 3.9 × 0.9 inches / 9.8 × 9.8 × 2.3 cm) relatively inexpensive (about 100 USD) and consumes only about 2-3 Watts). We have built a small (currently containing four nodes) proof-of-concept cluster out of ATV2s and evaluate it with respect to its power and performance characteristics. The rest of this paper is organized as follows: In Sect. 2 we give a short overview of the current state of the ARM-based computing ecosystem. In Sect. 3 we describe the hardware and software setup of our cluster and in Sect. 4 we evaluate both the single node characteristics as well as the power and performance of the whole system. We discuss related work in Sect. 5 and conclude and provide an outlook on future work in Sect. 6.
2
ARM Computing
ARM holdings is a company headquartered in Cambridge, UK that develops and licenses CPU designs but does not manufacture CPUs themselves. The company was founded in 1990 as a joint venture to continue development of the Acorn RISC Machine (later known as the Advanced Risc Machine), and reports that its technology is used in over one-quarter of all electronic devices [1]. Almost every modern mobile phone is based on ARM architecture CPUs [1] and multi-core mobile devices have started to appear recently [3]. Server solutions based on ARM chips have also recently been announced. The startup company Calxeda has announced plans for a 2U server with 120 CortexA9 quad-core chips and a fast interconnect network [11]. Marvell has announced a quad-core server SoC design based on the Cortex-A9 and with support for DDR3 memory and PCI-Express 2.0 interface [4]. Most devices use the ARM Cortex-A8 (single core) or Cortex-A9 (up to quad-core) CPU designs. 1
http://www.applevtcluster.com
Towards Energy Efficient Parallel Computing
3
3
The AppleTV Cluster
We built a small cluster out of four second generation AppleTV (ATV2) devices. To enable the installation of custom software, it was necessary to perform a jailbreak. Once jailbroken, the device comes with a ssh server pre-installed that allows interactive shell access to the BSD-based iOS operating system (iOS 4.2.1, Darwin 10.4.0 kernel). The installation of a fully functional development toolchain (gcc 4.2.1) and editor is relatively straightforward from then on. Please consult our project web page at http://www.appletvcluster.com for a more detailed HOWTO guide. The ATV2 nodes in our cluster are connected to an Ethernet switch. Access to the cluster nodes is organized through a gateway system (a conventional x86based PC in our case) which is also connected to the switch. To use the cluster to run parallel jobs, we installed an MPI (Message Passing Interface) distribution as the next step. We chose MPICH 2 from Argonne National Lab and configured it using the hydra process manager and TCP transport mechanism.
4
Evaluation
In this section we provide some results of our ongoing evaluation of the characteristics of our ATV2 cluster. We divide the evaluation into a section on single node performance and aspects pertaining to the whole system. Throughout this section we either provide absolute performance numbers and a rough (order of magnitude) comparison to the performance level of contemporary server hardware or compare the ATV2 directly to a popular ARM-based computing platform, the BeagleBoard (http://www.beagleboard.org). We have used a BeagleBoard xM for this comparison which was provided courtesy of collaborators at TU Munich and is also based on the Cortex-A8 CPU. It has an Texas Instruments DM3730 SoC with a 1 GHz2 Cortex-A8 CPU, 64 KB L1 cache, 256 KB L2 cache, and 512 MB low power DDR RAM. Several benchmarking efforts have previously used the BeagleBoard to compare the Cortex-A8 with with other low-power CPU solutions (cf. Sect. 5), and we analyze the relative performance of the BeagleBoard and the ATV2 in order to make our data comparable to those published results. 4.1
Single Node
Table 1 lists several key characteristics of the ATV2’s Apple A4 SoC as reported by the operating system through the iOS “sysctl” command. To independently confirm these parameters, we have used membench [8]. This benchmark tests the memory system performance by accessing arrays of increasing sizes with varying strides. A detailed discussion of the benchmark is beyond the scope of this paper but the data in Figures 1 and 2 confirms the data in Table 1 and additionally shows that the latency to L1 cache is 1 cycle and the latency to L2 cache is 8 cycles. 2
Our board was configured to run at 800 MHz instead of 1 GHz.
4
K. F¨ urlinger, C. Klausecker, and D. Kranzlm¨ uller Table 1. Characteristics of the Apple A4 chip as listed by the “sysctl” command Property L1I cache size L1D cache size L2 cache size Cacheline size Bus frequency Memory size Page size
Value 32 KB 32 KB 512 KB 64 B 100 MHz 247 MB 4KB
sysctl entry hw.l1icachesize hw.l1dcachesize hw.l2cachesize hw.cachelinesize hw.busfrequency hw.memsize hw.pagesize
4 KB page size
64 B cache line size 160
4KB 8KB 16KB 32KB 64KB 128KB 256KB 512KB 1MB 2MB
140
120
Time (nsec)
100
80
60
40
20
0
4
16
64
256
1K
4K
16K
64K
256K
1M
Stride (bytes)
Fig. 1. Membench runs with array sizes ranging from 4 KB to 2 MB
CPU Performance: We ran the Coremark benchmark3 to measure the performance of our individual ATV2 nodes. Coremark is an open source benchmark released by the Embedded Microprocessor Benchmark Consortium (EEMBC) with the goal to provide isolated CPU performance tests. Its focus is on benchmarking CPU cores of embedded systems, however, the website also contains results of high-end desktop and server CPUs. Coremark is based on commonly used algorithms and while its isolated approach does not necessarily reflect real applications, the single value results enable to easily compare performance of different processors. Table 2 shows our benchmark results on the BeagleBoard xM and the ATV2. The results show very comparable performance on a per-MHz basis, the small differences are most likely due to different compiler versions and different cache sizes on the two platforms. 3
www.coremark.org
Towards Energy Efficient Parallel Computing
80
5
4KB 8KB 16KB 32KB 64KB 128KB 256KB 512KB 1MB 2MB
70
60
Time (nsec)
50
40
30
20
8 ns L2 latency
10
1 ns L1 latency
0
4
16
64
256
1K 4K Stride (bytes)
16K
64K
256K
1M
Fig. 2. Detail of the Membench data shown in Fig. 1, with a focus on array sizes from 4 KB to 512 KB Table 2. Coremark benchmark results Device BeagleBoard xM (800 MHz) ATV2 (1 GHz)
Coremark score Coremark per MHz 1928 2316
2.41 2.32
By comparison, we also measured an Intel Atom N270 running at 1.6 GHz at 4674 (2.92 per MHz) with two threads and 3029 (1.89 per MHz) with only one thread. Modern sever nodes achieve much higher total Coremark scores (An Intel Xeon L5640 is listed on the Coremark webpage with a score of more than 110000). However, on a per-thread and per-MHz basis, the best coremark score listed is around 4.2, indicating that the Cortex-A8 achieves comparable performance according to this metric. While Coremark largely only test the integer performance, Linpack is a popular floating point intensive benchmark. Linpack solves a dense linar system of equations using LU factorization. Table 3 shows the results we have obtained by running the (sequential) Linpack benchmark on a single node. Linpack can either be run for single (SP) or double precision (DP) floating numbers. In the case of SP, the Cortex-A8 CPU is able to utilize SIMD registers using NEON instructions. NEON registers are 128 bits wide and allow up to four SP floats to be operated on at once, however NEON is not available for double precision. Unfortunately the compiler version we used on the ATV2 is not able to generate NEON code and we where thus not able to improve the Linpack performance past the 57.2 MFlops reported in Table 3. We are still investigating the BeagleBoard’s comparatively low performance and the anomaly of faster DP than SP performance.
6
K. F¨ urlinger, C. Klausecker, and D. Kranzlm¨ uller Table 3. Linpack benchmark results
Linpack SP (w/o NEON) Linpack SP (w/ NEON) Linpack DP (w/o NEON)
BeagleBoard xM (800 MHz) ATV2 (1 GHz) 22.6 57.5 33.8 – 29.3 40.8
Memory Subsystem: To test the memory system performance we ran the standard stream [5] benchmark and the results are displayed in Table 4. The data shows the results for four variants and compares the results we obtained on the AppleTV2 with the BeagleBoard xM running at 800 MHz. The ATV2 reportedly uses 200 MHz DDR2 RAM with a 64 bit wide memory bus, which would explain the relatively large performance advantage over the BeagleBoard xM (with 166 MHz and 32 bit memory bus). By comparison, a modern Intel Core i7 CPU with 800 MHz DDR2 RAM delivers more than ten times this bandwidth. Table 4. Results of the Stream benchmark on the ATV2 and the BeagleBoard xM (in MB/s) Operation BeagleBoard xM (800 MHz) ATV2 (1 GHz) copy 481.1 749.8 scale 492.9 690.0 add 485.5 874.7 triad 430.0 696.1
4.2
Whole System
MPI Performance: We measured the basic performance characteristics of the interconnect using the OSU microbenchmark suite [16]. Figure 3 shows a plot of the achieved bandwidth and latency. Note that the ATV2 only supports 100MBit Ethernet and that our MPI implementation uses TCP as the transport mechanism. The 100MBit Ethernet is about two orders of magnitude slower than today’s modern high performance interconnects (10GigE, Infiniband QDR) and this is reflected in the comparatively poor bandwidth and latency results. High Performance Linpack (HPL) We ran the High Performance Linpack benchmark (HPL) in parallel on all four nodes of the cluster. The best performance we achieved was 160.4 MFlops in double precision arithmetic. Taking into account a power consumption of 10 Watts for the whole cluster (see the next section) this results in a performance of about 16 MFlops/Watt. For comparison, the currently (April 2011) top-ranked system in the Green500 list is a BlueGene/Q prototype with over 1600 MFlops/Watt. To put this result in perspective one has to keep in mind a couple of things though. First, in double precision the Cortex-A8 does not support SIMD parallelism using NEON and Linpack greatly benefits from wider SIMD width.
Towards Energy Efficient Parallel Computing
Latency
7
Bandwidth
700
12
Latency
600
Bandwidth
10
Bandwidth (MB/sec)
Latency (usec)
500
400
300
8
6
4
200 2
100
0
1
2
4
8
16
32
64
128
Message size (bytes)
256
512
1K
2K
4K
0
4
16
64
256
1K
4K
16K
64K
256K
1M
Message size (bytes)
Fig. 3. Latency (half round-trip latency in Microseconds) and Bandwidth (in MB/Second) as measured by the OSU Microbenchmark suite
Experiments [6] showed that doubling the SIMD width in contemporary Intel CPUs from SSE to AVX can improve the performance of Linpack (on a single node) by about 72%. Second, the VFP unit implementing the DP arithmetic is not pipelined and each floating point operation takes a full 9-17 cycles (depending on operation and operands). Assuming an average latency of 15 cycles, the peak double precision floating point rate of the Cortex-A8 would only be 66.7 MFlops (and our Linpack run achieves 40 MFlops). Third, each ATV2 contains a relatively powerful PowerVR SGX535 GPU that contributes to its power consumption and could improve the floating point performance significantly, if it could be utilized for the computation. Unfortunately, OpenCL programming is not supported on the AppleTV though and so far we found no simple way to exploit the capabilities of the GPU. Lastly, the Green500 list also contains systems that are a lot less energy efficient than the BlueGene/Q prototype. The least energy efficient system (ranked at 500) is a Dell PowerEdge Infiniband Cluster with only 21 MFlops/Watt which is close to the ATV2 cluster result. Power Consumption: We estimated power consumption using a simple power meter. As the measurement accuracy of our setup is limited, and we can only provide an approximation of the power consumption of the cluster (all four nodes). We tested power consumption with three different baseline loads and our results indicate that all the whole cluster (all four ATV2 nodes, but not including the switch) consume about four Watts when idle and and about eight to ten Watts when fully loaded running the Linpack benchmark.
5
Related Work
Several projects have previously built and benchmarked clusters composed of unconventional nodes, such as the Sony Playstation 3 [10],[17], Set-Top-Boxes [14], and the Microsoft XBox [20].
8
K. F¨ urlinger, C. Klausecker, and D. Kranzlm¨ uller
ARM-powered computer devices have also been benchmarked before. A course paper from the University of Texas [18] contains an architectural and benchmark comparison of the Cortex-A8 CPU and the Intel Atom N330. A detailed comparison of the Cortex-A8 with various x86-based solutions is also presented in an online article [2] by Van Smith. The author finds the ARM based solution to be competitive regarding their integer performance but lacking in terms of floating point and memory performance. In supercomputing, the successful IBM BlueGene line of systems can be seen as an early example of supercomputer design inspired by embedded processors. BG/L was based on a relatively low performance dual-core PowerPC 440 processor which lead to massively parallel but well balanced systems [7]. BG/P increased the number of cores to four and eased some of the programmability restrictions of the overall system. A prototype of BlueGene/Q is currently (April 2011) the most energy efficient system on the Green500 list [12] with over 1600 MFlops/Watt. While the BlueGene architecture has been specifically optimized for HPC workloads, this is not the case for ARM-based systems. For example there is currently no support for double precision floating point SIMD operations in NEON. Instead, ARM CPUs often come packaged with fairly powerful GPUs.
6
Outlook and Conclusion
In this paper we have presented the hardware and software setup of our AppleTV cluster. The second generation AppleTV (ATV2) is an example of a growing number of consumer electronic devices that combine an ARM CPU and a powerful GPU in a single package. These devices are designed for energy efficiency from the ground up and are increasingly driven by computationally intensive use cases such as video encoding and augmented reality. While the raw performance and the performance per Watt we have observed with the AppleTV cluster so far is not competitive with conventional desktop CPU (or GPU) solutions, we believe that technology from the consumer electronic sector can play an increasing role in server and high-performance computer installations. A number of technical issues will have to be addressed for this to happen though. First, NEON has to be extended to fully support double precision floating point arithmetic. While fast single precision floating point hardware has successfully been exploited before [9], most applications require a fully compliant IEEE-754 double precision implementation and a large fraction of the performance of HPC systems can be attributed to wide data parallelism in the form of GPUs or wide SIMD registers. Second, ECC memory is required for any mission critical system, and third, communication intensive applications benefit tremendously from a fast interconnect. Some of these issues are already being addresses in SoC designs such as the Marvell Armada XP [4]. We plan to continue the evaluation of the AppleTV cluster along several directions. First, we would like to conduct a more detailed study of the ATV2 in comparison to the single-core BeagleBoard and the dual-core PandaBoard platforms in order to the evaluate the properties of the ARM multicore approach.
Towards Energy Efficient Parallel Computing
9
Second, a large fraction of the compute power of future consumer electronic devices will come from integrated GPUs and we plan to investigate the capabilities of these GPUs for general purpose computing on the ATV2 and other devices. Finally, the ATV2 is much more competitive in integer than in floating point intensive calculations and we plan to investigate the use its application to non-traditional HPC workloads.
References 1. ARM company profile, http://www.arm.com/about/company-profile/index.php 2. The coming war: ARM versus x86, http://vanshardware.com/2010/08/ mirror-the-coming-war-arm-versus-x86/ 3. LG optimus 2x, http://www.lg.com/global/press-release/article/ lg-launches-world-first-and-fastest-dual-core-smartphone.jsp 4. Marvell Armada XP multicore series, http://www.marvell.com/products/ processors/embedded/armada_xp/ 5. STREAM: Sustainable memory bandwidth in high performance computers, http://www.cs.virginia.edu/stream/ 6. Vektorisierungsk¨ unstler, https://www.heise.de/artikel-archiv/ct/2011/4/ 156_Compiler-Intel-Composer-XE-2011-mit-AVX-Optimierung 7. Adiga, N. R., et al.: An overview of the BlueGene/ L supercomputer (2002) 8. Arpaci, R.H., Culler, D.E., Krishnamurthy, A., Steinberg, S.G., Yelick, K.: Empirical evaluation of the CRAY-T3D: a compiler perspective. SIGARCH Comput. Archit. News 23, 320–331 (1995) 9. Buttari, A., Dongarra, J., Langou, J., Langou, J., Luszczek, P., Kurzak, J.: Mixed precision iterative refinement techniques for the solution of dense linear systems. Int. J. High Perform. Comput. Appl. 21, 457–466 (2007) 10. Buttari, A., Luszczek, P., Kurzak, J., Dongarra, J., Bosilca, G.: SCOP3: A rough guide to scientific computing on the PlayStation 3. version 0.1. Technical Report UT-CS-07-595, Innovative Computing Laboratory, University of Tennessee Knoxville (April 2007) 11. Calxeda 5 watt ARM server, http://insidehpc.com/2011/03/14/ calxeda-boasts-of-5-watt-arm-server-node/ 12. The Green500 List, http://www.green500.org 13. Kogge, P.M., et al.: Exascale computing study: Technology challenges in achieving exascale systems. DARPA Information Processing Techniques Office (IPTO) Sponsored Study (2008) 14. Neill, R., Shabarshin, A., Carloni, L.P.: A heterogeneous parallel system running OpenMPI on a broadband network of embedded set-top devices. In: Proceedings of the 7th ACM International Conference on Computing Frontiers, CF 2010, pp. 187–196. ACM, New York (2010) 15. NVIDIA. The benefits of multiple CPU cores in mobile devices, whitepaper (2010), http://goo.gl/g3MXo 16. OSU Micro-Benchmarks, http://mvapich.cse.ohio-state.edu/benchmarks 17. PS3 cluster at NCSU, http://moss.csc.ncsu.edu/~mueller/cluster/ps3/ 18. Katie, R.-H., Hedge, P.: ARM Cortex-A8 vs. Intel Atom: Architectural and benchmark comparisons (2009) 19. The Top 500 Supercomputer Sites, http://www.top500.org 20. Unmodified Xbox Cluster, http://www.bgfax.com/xbox/home.html
Characterizing Applications from Power Consumption: A Case Study for HPC Benchmarks Georges Da Costa and Jean-Marc Pierson Toulouse University {dacosta,pierson}@irit.fr
Abstract. With the rise of Clouds and PaaS (Platform as a Service) usage, providers of large computing facilities are completely disconnected from users running jobs on their infrastructure. Thus, the old adage knowledge is power has never been so true. By having good insight on application running on their infrastructure, providers can save up to 30% of their energy consumption while not impacting too much applications. Without access to application source code, it can be quite difficult to have a precise vision of the type of application. For instance, in NAS Parallel Benchmark (NPB), seven different benchmarks are available and have different behaviors (memory consumption patterns, performance decreasing with processor frequency,...) but discriminating between them can be costly due to the monitoring infrastructure. In this article we show that using power consumption of hosts we can discriminate between applications with nearly no impact on the application execution and without a-priori knowledge.
1
Introduction and Motivation
Having a better understanding of a running application is a key feature for both application developers and hosting platform administrators. While the former have access to the source codes of their application, the latter have usually no a priori clue on the actual behavior of an application. Having such information would allow for a better transparent accounting of the resource usage per application when several customers share the same physical infrastructure. The platform providers (and the underlying management middleware) would be able to better consolidate the applications on a smaller number of actual nodes. Platform provider would be able to provide token-free license where the observation of the system permits to determine the usage of a commercial application without bothering users with the token management. When running HPC applications, knowing the communication patterns of the running jobs allows for predicting the interaction of the jobs (possibly embedded in Virtual Machines) without instrumenting the code. Detecting automatically a communication phase allows for decreasing frequency and voltage of the processor, reducing power consumption. These information also give inputs on the D. Kranzlm¨ uller and A M. Tjoa (Eds.): ICT-GLOW 2011, LNCS 6868, pp. 10–17, 2011. c Springer-Verlag Berlin Heidelberg 2011
Characterizing Applications from Power Consumption
11
matching between a job and a particular host: Detecting an heavy communicating job will help to decide to migrate it on a network-performant host; another example is the placement of similar jobs (in their communication or memory usage pattern) on the same host that may be avoided. This finally results in optimized facility management that benefits both the platform provider and its users. Classifying applications using a limited number of parameters allows for a fast response on their characterization, suitable for online usage. Observing the system and being able to detect to which class an application belongs is possible, so far using offline trace analysis. Offline performance analysis helps for long term and/or repeating services and applications, but it needs a monitoring infrastructure that is not usually transparent for the application: The observer disturbs the observed phenomena. While this is not an issue for service-oriented applications running in service clouds (where the platform usage by an application is close to a maximum of 30%), this becomes an issue for more constrained HPC applications. Most of the codes are heavily tuned to perform at best, achieving top-ranked flops per seconds performance. Adding provider-based monitoring infrastructure is not acceptable in many cases, or the data acquisition frequency is so low (not to disturb the experiment) that having pertinent usage figures is not achieved. Hence the need for low-impact monitoring and classification is mandatory in such cases. In this paper we propose a methodology with no impact on the running applications to characterize their behavior. Using only external monitored value (i.e. power and network communications) we are able to discriminate between different classes of applications at runtime, opening doors to a wide variety of transparent actions on the system. The paper is organized as follows: Section 2 exhibits related works. Section 3 describes our approach while Section 4 shows experimental results. Finally we conclude in Section 5 with current and future works.
2
State of the Art
Many authors propose offline analysis of HPC applications. In [16] authors introduce metrics to characterize parallel applications. Their motivation is to be able to chose the right platform for a given application from the classification based on static code analysis. Not taking into account the actual machines where the applications run is presented as a benefit but does not allow for online and direct classification and class detections. In [1] an approach based on a similarity-based taxonomy is proposed, but nothing is said about the differentiation of the applications in the different classes (and the number of classes). Both approaches show the possibility of classifying the parallel applications in a limited number of classes. In [4], authors manually analyze the communication patterns of 27 applications from different HPC benchmarks based on MPI communication library. Their purpose was to study the possible deterministic communication patterns in order to exploit them in fault tolerance algorithms. This code analysis is time
12
G. Da Costa and J.-M. Pierson
consuming and does not allow for runtime analysis. However it proves the potential and the value of communication pattern discovery. The authors of [12] proposes a tool for assessing the code quality of HPC applications which turns to static pattern analysis while for instance [3] proposes MAQAO to tune performance of OpenMP codes. In [6], authors present the Integrated Performance Monitor (IPM). This tool allows for MPI application profiling and workload characterization. It allows for post-mortem analysis of the application behavior to understand the computation and communication phases. Vampir [11], Tau [15], Sun Studio [9] are other examples of such performance analysis tools. In [8] authors use Periscope to automatically detect memory access patterns, after the program ends. Similarly, Scalasca [7] searches for particular characteristic event sequences in event traces automatically. From low-level event traces, it classifies the behavior and quantifies the significance of the events by searching for patterns of inefficient behaviors. It relies on a number of layers to create an instrumented code, to collect and measure via measurement libraries linked with the application, to trace the running application to finally analyze a report produced after the run. Authors of [14] use an I/O stress test benchmark, namely IOR, to reproduce and predict I/O access patterns. Analysis of the results shows that a simple testbed can be used for the characterization of more complex applications, but a manual tuning of the benchmark parameters has to be operated, which leads to impractical usage. In [10] authors examined and compared two input/output access pattern classification methods based on learning algorithms. The first approach used a feedforward neural network previously trained on benchmarks to generate qualitative classifications. The second approach used Markov models trained from previous executions to create a probabilistic model of input/output accesses. All these works propose to characterize the application after their run. They usually need instrumentation of the running code and heavy capturing tools to intercept system calls and communication routines. Other approaches like [5,13] analyze code features at run time. Performance counters on the machines are collected and mathematical models deriving power consumption of applications on the system are provided. Based on statistical analysis they do not need any instrumentation of the code itself, but only of the running system. This latter is close to the fundamental of our approach since it allows for online detection of classes.
3
Our Approach
Classification can be based on provided information or based on the application behavior. Classification will be used in order to tune systems parameters (network speed, processor frequency,...). Several applications impact the system in the same manner, depending only on their behavior. Even if being more complex, in this paper behavior detection is used: Additionally to avoid the need for provided information, it also reduces user burden: Indeed users don’t have to specify which type of application they run. It will finally remove the possibility to cheat the system (and the system administrator) on the real application run.
Characterizing Applications from Power Consumption
13
Without a-priori information (such as application name) it is necessary to obtain information on the application behavior. Several possibilities are available: Process information (performance counters, system resources used), Subsystem information (network, disks) and Host information (power consumption). Intuitively using all those information for one particular application allows for deriving in which category it fits. It enables also to understand in which phase this application is (computing, communicating, ...). Categories are defined using reference applications (in our study reference HPC applications : NAS Parallel Benchmark[2]). Initial model is obtained after running and monitoring all benchmarks and then clustering couple of characteristics to find combinations of characteristics allowing for discriminating between applications. This model of the characterization based on this clustering allows to fit any application (or phase of application) in a category. The most important part concerns the choice of characteristics used to define the model. To remove a-priori on this choice, it is necessary to test all combinations. Indeed some characteristics (such as the number of instructions processed -performance counter: PERF COUNT HW INSTRUCTIONS-) show finally only small variations on our HPC reference set of applications which are not sufficient to discriminate between these applications. Several combinations of characteristics are usable to achieve such classification. To choose between those, convenience and impact of measures are important. Network-related measurements and power-related measurements can be done outside of the computing node: Using such measures eliminated the impact of this monitoring method. This is of prime importance for HPC applications when the race for best performance does not permit extensive monitoring on the computing nodes. So we choose the external characteristic (network-related) which discriminates most when used in conjunction with power and create a first model. To improve the model we can then add new external characteristics until reaching an efficient enough model. Characteristics are defined not only as raw physical measures but also as the dynamic of those physical measures (for instance, standard deviation, average, ...).
4 4.1
Validation Experimental Method
In order to evaluate the possibility to discriminate between several applications, nodes from the Toulouse Grid5000 site have been used. Each node is connected to a watt-meter able to measure power consumption every second. Those monitored nodes are bi Dual-Core AMD Opteron processors (2218) at 2.6GHz with 8GB of memory and Gigabyte Ethernet card. Debian runs on those nodes, using 2.6.37 Linux kernel. Since the watt-meter sampling frequency is at maximum 1 (one sample every second), all the measurement infrastructure was set up for this granularity.
14
G. Da Costa and J.-M. Pierson
For this test, reference applications come from NAS Parallel Benchmark[2]. This benchmark provides 7 applications (IS, FT, EP, BT, LU, CG and SP) with workloads representatives of HPC applications. They exhibit a range of behaviors between an embarrassingly parallel code (EP) to LU decomposition of matrix (LU). Each of those applications is well described and present some well known communication and computing patterns. In the following, class C benchmarks are used. NPB classes are related to problem length. C classes problems are between half a minute to a few minutes on selected nodes. As most HPC applications, these benchmarks do not use disks so this characteristic is not taken into account in the following. For this batch of experiments, 4 nodes were used, leading to 16 cores experiment. NAS Parallel benchmark are all being configured to use 16 slots, one per core. Depending on the benchmark, some limits are imposed on the number of slots: Hence 16 cores have been used in order to have the same number of slots per benchmark. Some benchmarks need a power of two, some need a square,... 4.2
Experimental Results
1.2e+08
1.2e+08
1e+08
1e+08
Number of bytes sent per second
Number of bytes sent per second
Figures 1, 2 and 3 show the importance of taking into account application dynamism. They represent respectively the bandwidth used by CG, SP and FT benchmarks for sending data. The first one is stable during the experiment duration, the second one shows large variations (between 17Mb/s and 28Mb/s) while having a pattern, whereas the last one exhibits random variations. These characteristics show the internal execution patterns.
8e+07
6e+07
4e+07
2e+07
8e+07
6e+07
4e+07
2e+07
0
0 0
10
20
30
40 time (s)
50
60
70
80
Fig. 1. Send bandwidth for CG benchmark for one node
0
50
100
150
200
250
300
350
time (s)
Fig. 2. Send bandwidth for SP benchmark for one node
Those three figures exhibit that external measurements can at least discriminate between applications, without using exact values but only the dynamism of those values. To leverage this dynamism, measures are not only taken directly but also using statistical filters. The current filters used for evaluating relevance of measures were: 1st decile, last decile, median, mean value, standard deviation.
1.2e+08
3e+07
1e+08
2.5e+07
Number of sent bytes (1st decile)
Number of bytes sent per second
Characterizing Applications from Power Consumption
8e+07
6e+07
4e+07
2e+07
15 FT SP BT EP LU IS CG
2e+07
1.5e+07
1e+07
5e+06
0 0
20
40
60
80 100 time (s)
120
140
160
180
0 235
240
245
250 255 Power consumption (W)
260
265
270
8e+07
Fig. 3. Send bandwidth for FT benchmark Fig. 4. Send bandwidth first decile and for one node mean power are used to discriminate between IS, FT, EP, BT, LU and the block (CG, SP)
9e+07
5e+07
4e+07
Median sent bytes
6e+07
4e+07
2e+07
Number of sent bytes (med value)
7e+07
6e+07
FT SP BT EP LU IS CG
8e+07
3e+07
0e+00
2e+07
1e+07
240 0 235
240
245
250 255 Power consumption (W)
260
265
270
245
250
255
260
●
● ●●
●
● ●●
265
Mean power (W)
Fig. 5. Send bandwidth median value and Fig. 6. Automatic classification in 7 mean power are used to discriminate be- classes using R (with the fuzzy clustering tween CG, LU, BT, SP, FT and the block algorithm) (EP and IS)
Figures 4 and 5 show the best combinations to discriminate between NPB. It is a combination of mean power of all the nodes and send characteristics. These figures show that IS and FT have nearly the same send pattern, and using only this value would make it impossible to discriminate between these two. The same applies for other network characteristics. It is only by using power that it is possible to discriminate between these two benchmarks. It is also the case for SP and BT. Clustering is possible using those values as shown on Figure 6. This Figure shows the classical fuzzy clustering algorithm of R using the median value of send bandwidth and mean power consumption. Using only those two information, it is already possible to automatically differentiate between the 7 benchmarks. Without any knowledge on the application (only the fact there are 7 benchmarks), the obtained clustering is corresponding to the right one shown in Figure 5.
16
5
G. Da Costa and J.-M. Pierson
Conclusion
The experiments presented in this article show that using only external information such as power consumption and network traffic it is possible to evaluate which application is running on a particular node. This is possible in HPC environment as each node is usually dedicated to a particular application. Such method is particularly important for HPC environment as it does not have any impact on the computing infrastructure. Current experiments and the corresponding classification model are limited to the 4 nodes used. Using several architectures and number of nodes we will derive a parametrized model as a function of the architecture. In the current state of the system, an empirical comparison of the characteristics was conducted. An iteration of the mechanism will allow the system to choose itself which characteristic is the more relevant depending on the set of applications to discriminate so as to produce the classification model. Acknowledgment. Experiments presented in this paper were carried out using the Grid’5000 experimental testbed, being developed under the INRIA ALADDIN development action with support from CNRS, RENATER and several Universities as well as other funding bodies (see https://www.grid5000.fr). NPB runs on this testbed were done with the help of Damien Borgetto.
References 1. Asanovic, K., Bodik, R., Demmel, J., Keaveny, T., Keutzer, K., Kubiatowicz, J., Morgan, N., Patterson, D., Sen, K., Wawrzynek, J., Wessel, D., Yelick, K.: A view of the parallel computing landscape. Commun. ACM 52, 56–67 (2009) 2. Bailey, D., Harris, T., Saphir, W., van der Wijngaart, R., Woo, A., Yarrow, M.: The nas parallel benchmarks 2.0. Technical report. NAS Technical Report NAS-95-020, NASA Ames Research Center, Moffett Field (1995) 3. Barthou, D., Rubial, A.C., Jalby, W., Koliai, S., Valensi, C.: Performance tuning of x86 openmp codes with maqao. In: Parallel Tools Workshop, Dresden, Germany, pp. 95–113. Springer, Heidelberg (2009) 4. Cappello, F., Guermouche, A., Snir, M.: On communication determinism in parallel hpc applications. In: Proceedings of 19th International Conference on Computer Communications and Networks, ICCCN 2010, pp. 1–8 (August 2010) 5. Da Costa, G., Hlavacs, H.: Methodology of Measurement for Energy Consumption of Applications (regular paper). In: Energy Efficient Grids, Clouds and Clusters Workshop (co-located with Grid) (E2GC2), Brussels, October 25-October 29, page (electronic medium). IEEE, Los Alamitos (2010), http://www.ieee.org/ 6. F¨ urlinger, K., Wright, N.J., Skinner, D.: Performance analysis and workload characterization with ipm. In: Mller, M.S., Resch, M.M., Schulz, A., Nagel, W.E. (eds.) Tools for High Performance Computing 2009, pp. 31–38. Springer, Heidelberg (2010) 7. Geimer, M., Wolf, F., Wylie, B.J.N., Becker, D., B¨ ohme, D., Frings, W., Hermanns, M.-A., Mohr, B., Szebenyi, Z.: Recent developments in the scalasca toolset. In: M¨ uller, M.S., Resch, M.M., Nagel, W.E., Schulz, A. (eds.) Proc. of the 3rd Parallel Tools Workshop on Tools for High Performance Computing 2009, Dresden, Germany, pp. 39–51. Springer, Heidelberg (2010)
Characterizing Applications from Power Consumption
17
8. Gerndt, M., Kereku, E.: Automatic memory access analysis with periscope. In: Gervasi, O., Gavrilova, M.L. (eds.) ICCSA 2007, Part I. LNCS, vol. 4705, pp. 847–854. Springer, Heidelberg (2007) 9. Itzkowitz, M., Maruyama, Y.: Hpc profiling with the sun studio performance tools. In: Parallel Tools Workshop, Dresden, Germany, Springer, Heidelberg (2009) 10. Madhyastha, T.M., Reed, D.A.: Learning to classify parallel input/output access patterns. IEEE Transactions on Parallel and Distributed Systems 13(8), 802–813 (2002) 11. Nagel, W.E., Arnold, A., Weber, M., Hoppe, H.-C., Solchenbach, K.: Vampir: Visualization and analysis of mpi resources. Supercomputer 12, 69–80 (1996) 12. Panas, T., Quinlan, D., Vuduc, R.: Tool support for inspecting the code quality of hpc applications. In: Proceedings of the 29th International Conference on Software Engineering Workshops, p. 182. IEEE Computer Society, Washington, DC (2007) 13. Rivoire, S., Ranganathan, P., Kozyrakis, C.: A comparison of high-level full-system power models. In: Zhao, F. (ed.) HotPower, USENIX Association (2008) 14. Shan, H., Antypas, K., Shalf, J.: Characterizing and predicting the i/o performance of hpc applications using a parameterized synthetic benchmark. In: SC 2008, p. 42:1–42:12. IEEE Press, USA (2008) 15. Sameer, S.: The tau parallel performance system. Int. J. High Perform. Comput. Appl. 20, 287–311 (2006) 16. Alexander, S., van Amesfoort, A.S., Varbanescu, A.L., Sips, H.J.: Towards parallel application classification using quantitative metrics. In: ASCI 2010(2010)
Principles of Energy Efficiency in High Performance Computing Axel Auweter, Arndt Bode, Matthias Brehm, Herbert Huber, and Dieter Kranzlm¨ uller Leibniz Supercomputing Centre (LRZ) of the Bavarian Academy of Sciences and Humanities Boltzmannstr. 1, 85748 Garching bei M¨ unchen, Germany
[email protected] http://www.lrz.de/
Abstract. High Performance Computing (HPC) is a key technology for modern researchers enabling scientific advances through simulation where experiments are either technically impossible or financially not feasible to conduct and theory is not applicable. However, the high degree of computational power available from today’s supercomputers comes at the cost of large quantities of electrical energy being consumed. This paper aims to give an overview of the current state of the art and future techniques to reduce the overall power consumption of HPC systems and sites. We believe that a holistic approach for monitoring and operation at all levels of a supercomputing site is necessary. Thus, we do not only concentrate on the possibility of improving the energy efficiency of the compute hardware itself, but also of site infrastructure components for power distribution and cooling. Since most of the energy consumed by supercomputers is converted into heat, we also outline possible technologies to re-use waste heat in order to increase the Power Usage Effectiveness (PUE) of the entire supercomputing site. Keywords: High Performance Computing, Energy Efficiency, Power Usage Effectiveness, HPC, PUE.
1
Introduction
As of today, HPC sites and large data centres are among the biggest power consuming entities in the Information and Communication Technology (ICT) sector. According to a study conducted by the German Federal Ministry for the Environment, Nature Conservation and Nuclear Safety (BMU), the power consumption of the German HPC sites and data centres has more than doubled since the year 2000 and amounted to 10.1 TWh1 in 2008, which corresponded to
1
This paper is supported by PRACE-1IP, the Partnership for Advanced Computing in Europe, funded under the EU’s Seventh Framework Programme (FP7/2007-2013) under grant agreement n◦ RI-261557. http://www.prace-project.eu/ TWh: terawatt hour.
D. Kranzlm¨ uller and A M. Tjoa (Eds.): ICT-GLOW 2011, LNCS 6868, pp. 18–25, 2011. c Springer-Verlag Berlin Heidelberg 2011
Principles of Energy Efficiency in High Performance Computing
19
the emission of 6.4 million tonnes of CO2 [6] based on the German energy mix of that time. Recently, Moore’s law [12] has continued to show its validity: The number of transistors that can be put on a computer chip of constant die size has roughly doubled every 18 months. Manycore CPUs are omnipresent and in many cases supplemented by special purpose accelerators such as Graphics Processing Units (GPU) that feature similar levels of transistor density. Along with the growth of the number of transistors comes an increased demand of electrical power for the components. Thus, further increases in processing performance to support larger scientific simulations can only be achieved if the efficiency in terms of FLOPs2 per Watt is increased significantly. Although energy efficiency for ICT has been thoroughly discussed in the past, only very few HPC sites have implemented versatile power saving methods. Yet, many HPC sites operate systems with thousands of processing cores and the power consumption of the systems is getting more and more important as the number of processors increases. So far, the major drivers for energy efficient ICT have been mobile applications and commercial data centres, which were seeking longer battery runtimes and lower operating costs, respectively. Unfortunately, many of the developed energy saving technologies either do not scale to the size of HPC sites or are not applicable to HPC at all. For example, virtualisation technology has enabled data centres to increase the average usage of their servers notably, thus reducing the total amount of hardware components in use and the overall energy consumption. Yet, since HPC sites typically operate at more than 90% utilisation of their machines anyway, the use of virtualisation technologies is not a feasible way for supercomputing centres to reduce energy consumption. In this paper, we provide an overview of the existing and future promising techniques to improve the energy efficiency of HPC sites and applications. We introduce key concepts of power awareness and efficiency for both the compute hardware as well as for the surrounding HPC site infrastructure. Therefore, the next section will outline the necessary tools for energy monitoring and control, section 3 will cover possible improvements of the HPC site infrastructure, and section 4 will outline the requirements for energy efficient system hardware and operation management software.
2
Tools for Energy Monitoring and Control
A preparatory step to improve the energy efficiency in HPC consists of the fine-grained assessment of the power consumption of the entire HPC system encompassing not only compute nodes, interconnect networks and storage devices, but also site infrastructure components for cooling, monitoring and power supply. Given a holistic view of the energy consumption over time, ineffective use of components can be spotted and subsequently improved. An approach for this would be to sample the power consumption of all components at regular intervals and to store the resulting information into a central 2
FLOPs: Floating-point operations per second.
20
A. Auweter et al.
database. In addition, this database should also store information about the system’s workload and various utilisation metrics. Such metrics are the CPU load per core, additional CPU performance counter data like cycle and instruction counters, or per-node information on the interconnect network load. If the same database also holds information about the jobs running on the system, the energy consumption for a particular computation, so called energy-to-solution, can be measured. While the individual components necessary for such a monitoring system are available today, an integrated solution does not yet exist. Yet, implementation of the outlined ideas would allow fine-grained monitoring of the system’s power consumption including the attribution of power consumption on a per-job basis. In addition, a correlation between an application’s performance and its power consumption could be made enabling site operators to act accordingly, e.g. to pinpoint applications for which the energy efficiency of the calculation can be improved. Thus, the development of such a power monitoring system is subject to ongoing research.
3
Site Infrastructure Aspects
In order to minimize the power consumed by a HPC centre as a whole, one has to consider the reduction of power for running the computer system, and for the infrastructure necessary to run the computer system. Let us start with the consideration of the infrastructure. The supercomputing site infrastructure consists of the whole environment surrounding the HPC system such as the building, the necessary equipment for power supply, power distribution and cooling. The efficiency of the energy consumption spent on the supercomputing site infrastructure can be quantified using the Power Usage Efficiency (PUE) metric [11]. The PUE is defined as the ratio of the total energy used by the supercomputing site divided by the amount of energy that is consumed for pure computational work. In 2006, it was shown in [8] that typical data centres operate with PUE ratings between 1.3 and 3.0. In principal, there are three ways of improving the energy efficiency at the HPC site infrastructure level: (1) reduction of electrical loss in wires and during transformation, (2) improved cooling technologies, and (3) reuse of waste heat. Any transmission of electricity results in a certain line loss due to the ohmic, inductive and capacitive resistance of the cables in use. While the solution for large power grids is to transmit electricity at thousands of Volts which results in a reduction of line loss, ICT equipment operates at very low voltages. Through stepwise transformation, the electricity supplied to the data centre is made available at the compute and infrastructure components where internal standard ACDC power supplies provide the device-specific current. Both transformers and device power supplies themselves, as well as their distance to the final consuming entity play a significant role for the energy efficiency of the site. Keeping the low voltage paths at minimum length reduces the line loss significantly. Also, the efficiency of the internal AC-DC power supplies should be critically reviewed
Principles of Energy Efficiency in High Performance Computing
21
because their efficiency can vary significantly [3]. In case uninterruptible power supplies (UPS) are used, their efficiency should be critically assessed as well. Due to the principle of energy conservation, almost all of the energy consumed by a supercomputer is converted into heat. With today’s supercomputing sites consuming several Megawatts of power, effective and energy efficient cooling of a HPC system becomes crucial. The efficiency of the cooling apparatus directly depends on the target operation temperature of the components, the thermal conductivity and capacity of the coolant, and the energy necessary to drive the cooling system (fans, compressors, pumps,. . . ). Ordinary data centres often provide housing for customer-owned servers. Today, these machines are typically restricted to work solely with air based cooling. As an improvement, many studies such as [3] and [8] have shown the effectiveness of strictly separating hot and cold aisles in the room to avoid short-circuits of hot air into the cold air areas. Other ideas discussed include the use of watercooled racks which benefit from the improved thermal conductivity of water and avoids the extra energy spent on cooling the entire room. Since HPC installations are typically composed of a large number of homogeneous hardware components, due to the economies of scale and the type of components being freely selectable, cooling can be implemented in an even more efficient fashion: Through the use of direct liquid cooling in which all temperature-critical components are directly connected to a liquid cooling loop, the use of air as coolant is completely avoided. With an increasing demand for integration and the use of more processing cores per volume, manufacturing processes for 3D stacked silicon are currently being developed. Until now, the removal of dissipated heat was the biggest challenge for highly integrated semiconductors. New research work shows the feasibility of embedding ‘microchannels’ of 100µm diameter into multi-layered chips to provide in-chip liquid cooling [1]. Whether components are cooled at the package level or in-chip, the thermal capacity of liquid cooling systems allows for a temperature increase on the inlet side to 40◦ C or even higher temperatures while still providing sufficient cooling to the hardware. Since the resulting outlet temperatures increase accordingly, the entire system can be re-cooled freely to ambient air even on hot summer days in most areas. Alternatively, groundwater or water evaporation in the re-cooling plant can be used for re-cooling on hot days. All this renders active compressor based cooling technologies superfluous and results in minimal electricity spendings for cooling. With regard to the impact of higher operating temperatures on the mean time between failure, a promising study conducted by Intel showed no significant increase of the failure rate of a data centre that was kept at outside temperatures and humidity of up to 90◦ F (32◦ C) [2]. While relatively low outlet temperatures of a liquid cooling loop can already be used for generating warm water and heating buildings, higher temperatures are necessary for efficient re-use of waste heat for cooling or trigeneration. For driving an absorption cooling process, inlet temperatures of 75◦ C or higher are necessary to achieve a COP3 of 0.7-0.8. Another technology, adsorption cooling, 3
Coefficient of Performance:
ColdProduced DrivingHeat
.
22
A. Auweter et al.
allows lower inlet temperatures starting from 60◦ C at the price of a lower COP of 0.5-0.6 [13]. Although both cooling techniques operate at comparably low degrees of efficiency, coldness can be used in the HPC site itself to cool the remaining non-direct liquid cooled components, whereas hot water can only be used for heating in external buildings nearby.
4
System Hardware and Operation Requirements
Although current supercomputers show a continued increase in theoretical peak performance, they struggle to provide sustained performance to the user. Figure 1 shows the sustained performance of the HLRB-II supercomputer during one week of operation in March 2011. Although the majority of the 9728 CPU cores is active throughout the week, the sustained performance of the scientific applications ranges between 2 and 9 TFLOPs. Given that HLRB-II’s peak performance is 62.3 TFLOPs and during the Linpack benchmark, which is used for the Top5004 list, it achieved 56.5 TFLOPs, the tremendous gap between peak and sustained performance becomes visible. Figure 2 shows the achieved performance (in percent of the peak performance) on the HLRB-II for selected scientific application domains. Differences between peak performance and sustained performance allow for two conclusions to be drawn with regard to energy efficiency: either, the performance efficiency should be improved by closer matching software and hardware to the scientific problems to solve, or measures should be taken to ensure that hardware in idle state (which makes up the difference between peak performance and sustained performance) does not consume any power.
Fig. 1. Performance statistics gathered in March 2011 during a typical week of operation of the HLRB-II supercomputer
4
http://www.top500.org/
Fig. 2. FLOPs performance of HLRB-II in percent of the theoretical peak performance for different application domains
Principles of Energy Efficiency in High Performance Computing
23
One way to match the hardware to the scientific application can be the use of special purpose accelerators or Graphics Processing Units (GPUs) whose design is much less redundant in terms of transistor count of the executing hardware for the specific scientific applications as compared to a general purpose CPU. General Purpose GPU (GPGPU) computing has become a well studied field in recent years and its superiority for certain sets of computational workload is indisputable. Still, many workloads do not benefit from GPGPU acceleration and adaption of the codes to the accelerator architecture is expensive, if possible at all since the programmability of GPGPU accelerators remains a challenge. In an all-encompassing view of the HPC user needs, one must conclude that supercomputing cannot solely rely on this kind of hardware [9]. In contrast to GPGPUs that focus on massively parallel execution, modern CPUs incorporate sophisticated measures to improve their single-thread performance like large caches, branch prediction, speculative execution and out-oforder execution. These techniques achieve higher single thread performance at the expense of power consumption for the more redundant hardware, since for example energy spent on following a speculative execution path is lost whenever the path is not taken. A solution to this may be the use of low-power processors such as those targeted for the mobile and embedded markets that typically do not require a high general purpose single thread performance. Active research is currently being conducted within the Partnership for Advanced Computing in Europe (PRACE) to assess the feasibility of using low-cost, low-power Systemson-Chip for HPC. If changing the processing hardware is not feasible, the hardware in use might still be tuned to deliver a lower energy-to-solution. Many researchers have found that in power- and frequency-scalable clusters, applications benefit from reduced clock rates and variations in the degree of parallelism [5] [7] [14]. Since in many cases the gap between peak and sustained performance is due to the memory, communication, or I/O bandwidth boundedness, CPUs spend a lot of time idle waiting for data before continuing their calculation. In case the CPU clock frequency is reduced but memory and interconnect access times remain the same, the idle periods are shortened without a major impact on the overall application performance. Since the power consumption of a CPU running at lower clock frequencies is also lower, the overall energy-to-solution is reduced. Since some processors allow the frequency of every core to be selected individually, an empirical exploration of the configuration space is not feasible in many-core scenarios. Thus, research has been done to model and predict the optimal configuration in frequency-scalable systems [4]. In addition to freely scaling the performance of single nodes or cores, shutting down unused components entirely is also an effective measure to save energy. The necessary technologies have to be implemented at all levels. While at the chip level, automatic clock gating is already widely used to turn of inactive regions on the chip, the complete shutting down of cluster nodes that are intentionally left idle by the batch scheduler is still uncommon. In addition, batch scheduling systems that are topology-aware and implement mechanisms to force
24
A. Auweter et al.
execution of certain threads or tasks to particular cores can lead to an increased energy-efficiency if the selected pinning optimizes cache usage and inter-process communication patterns [10]. All outlined methods for improving the energy efficiency of HPC system hardand software span an optimization space of large dimensionality. Therefore, it is necessary to run site-specific tests on the correlation between selected performance and utilization metrics and their impact on the energy consumption. This allows specific optimizations for the configuration of hard- and software to be analysed in contrast to a simple trial and error approach. All this requires close interaction of monitoring and control components of the compute hardware and the site infrastructure as well as an intelligent and automatic energy-efficiency operating system software stack to relieve the application programmer from the burden of manual power optimization.
5
Conclusions
This paper gives an overview of the principles of energy efficient operation of a HPC site and shows differences and similarities to ordinary data centres. We have introduced techniques for monitoring the site, outlined an efficient site infrastructure and described the necessary features of the hardware and the system management software to operate at lowest possible power consumption while still obtaining the best possible computing power. Once the technical aspects are implemented, changes of the HPC centre’s usage policies will have to be discussed. This includes but is not restricted to ensuring that the users actively make use of the new energy-aware monitoring and control tools and user compliance with the site’s overall energy saving strategy is assured. We believe that only a holistic view and operation of the HPC site including compute and infrastructure components will allow utmost reduction of the power consumed and aid to retaining the competitiveness of HPC based simulation as a successful way of achieving scientific results. Acknowledgements. The Leibniz Supercomputing Centre (LRZ) is one of Germany’s largest supercomputing sites and a European HPC provider for the Partnership for Advanced Computing in Europe (PRACE) as well as a national HPC provider within the Gauss Centre for Supercomputing (GCS). LRZ has recently finished an expansion building to hold a 3 PetaFLOP/s supercomputer (SuperMUC) which will consist of more than 100,000 processing cores and will be installed in 2012. SuperMUC will make use of direct liquid cooling and the hot water will be reused for heating the LRZ buildings. Remaining hot water will be re-cooled freely to ambient air. SuperMUC is expected to achieve a PUE lower than 1.1. In addition, fine-grained monitoring facilities and an energyaware operating software stack as outlined in Section 2 will be implemented. As a preparatory system to implement the necessary tools for SuperMUC’s monitoring and control, and to test the feasibility of high inlet temperatures in direct liquid cooled systems, LRZ is putting into service a smaller cluster in
Principles of Energy Efficiency in High Performance Computing
25
which waste heat is re-used by an adsorption chiller to cool additional air-cooled components. The cluster will be put into service in May 2011 and first benchmark results of energy-to-solution measurements are expected to be available in Q3 2011.
References 1. Alfieri, F., Tiwari, M.K., Zinovik, I., Poulikakos, D., Brunschwiler, T., Michel, B.: 3D Integrated Water Cooling of a Composite Multilayer Stack of Chips. In: Proceedings of the 14th International Heat Transfer Conference (August 2010) 2. Atwood, D., Miner, J.G.: Reducing Data Center Cost with an Air Economizer. Technical report, Intel (August 2008), http://www.intel.com/it/pdf/reducing_ data_center_cost_with_an_air_economizer.pdf 3. Bruschi, J., Rumsey, P., Anliker, R., Chu, L., Gregson, S.: Best Practices Guide for Energy-Efficient Data Center Design. Technical report, U.S. Department of Energy (February 2010), http://www1.eere.energy.gov/femp/pdfs/ eedatacenterbestpractices.pdf 4. Maury, M.C., Blagojevic, F., Antonopoulos, C.D., Nikolopoulos, D.S.: Predictionbased power-performance adaptation of multithreaded scientific codes. IEEE Transactions on Parallel and Distributed Systems 19(10), 1396–1410 (2008) 5. Maury, M.C., Dzierwa, J., Antonopoulos, C.D., Nikolopoulos, D.S.: Online powerperformance adaptation of multithreaded programs using hardware event-based prediction. In: Proceedings of the 20th Annual International Conference on Supercomputing, ICS 2006, pp. 157–166. ACM, New York (2006) 6. Fichter, K., Clausen, J.: Energy-Efficient Data Centres - Best-Practice-Examples from Europe, the USA and Asia. Federal Ministry for the Environment Nature Conservation and Nuclear Safety (January 2010), http://www.bmu.de/english/ energy_efficiency/doc/45749.php 7. Freeh, V.W., Pan, F., Kappiah, N., Lowenthal, D.K., Springer, R.: Exploring the energy-time tradeoff in mpi programs on a power-scalable cluster. In: International Parallel and Distributed Processing Symposium, vol. 1, p. 4a (2005) 8. Greenberg, S., Mills, E., Tschudi, B., Rumsey, P., Myatt, B.: Best Practices for Data Centers: Lessons Learned from Benchmarking 22 Data Centers. In: Proceedings of the 2006 ACEEE Summer Study on Energy Efficiency in Buildings (2006) 9. Hacker, H., Trinitis, C., Weidendorfer, J., Brehm, M.: Considering gpgpu for hpc centers: Is it worth the effort? (2011) 10. Klug, T., Ott, M., Weidendorfer, J., Trinitis, C.: Autopin – automated optimization of thread-to-core pinning on multicore systems (2011) 11. Malone, C., Belady, C.: Metrics to Characterize Data Center & IT Equipment Energy Use. In: Proceedings of the Digital Power Forum (September 2006) 12. Moore, G.E.: Cramming more components onto integrated circuits. Electronics 38(8) ( April 1965) 13. N´ un ˜ez, T.: Thermally Driven Cooling: Technologies, Developments and Applications. Journal of Sustainable Energy 1(4) (December 2010) 14. Springer, R., Lowenthal, D.K., Rountree, B., Freeh, V.W.: Minimizing execution time in mpi programs on an energy-constrained, power-scalable cluster. In: Proceedings of the eleventh ACM SIGPLAN symposium on Principles and practice of parallel programming. PPoPP 2006, pp. 230–238. ACM, New York (2006)
Geocast Routing in Vehicular Networks for Reduction of CO2 Emissions Maazen Alsabaan1 , Kshirasagar Naik1 , Tamer Abdelkader1 , Tarek Khalifa1 , and Amiya Nayak2 1
Department of Electrical and Computer Engineering, University of Waterloo, Waterloo, ON, Canada N2L 3G1 2 School of Information Technology and Engineering, University of Ottawa, Ottawa, ON, Canada K1N 6N5 {malsabaa,snaik,tammabde,tkhalifa}@uwaterloo.ca,
[email protected]
Abstract. Pollution and gas emissions are increasing and negatively impacting global warming. Consequently, researchers are looking for solutions that save environment. Greenhouse gas (GHG) emissions from vehicles are considered to be one of the main contributing sources. Carbon dioxide (CO2 ) is the largest component of GHG emissions. Vehicular networks offer promising technology that can be applied for reduction of CO2 emissions. One of the major applications of vehicular networks is Intelligent Transportation Systems (ITS). To exchange and distribute messages, geocast routing protocols have been proposed for ITS applications. Almost all of these protocols evaluate network-centric performance measures, instead of evaluating the impact of the protocol on the vehicular system. Nowadays, the harmful effects of air pollutants have been the subject of considerable public debate. Vehicles’ stop-and-go condition, high speed, and high accelerations are environmentally unfriendly actions (EUF) that increase the amount of emissions. These actions can happen frequently for vehicles approaching a traffic light signal (TLS). Therefore, we propose a new protocol named environmentally friendly geocast (EFG), which focuses on minimizing CO2 emissions from vehicles approaching a TLS by avoiding the EUF actions. Simulation results demonstrate that the proposed protocol can achieve effective reduction of vehicle CO2 emissions. Keywords: CO2 emissions, environmentally friendly geocast, intelligent transportation systems, vehicular ad hoc networks.
1
Introduction
The detrimental effects of air pollution and concerns about global warming are being increasingly reported by the media. Greenhouse gas (GHG) emissions from vehicles are considered one of the main contributing sources. Carbon dioxide (CO2 ) is the largest component of GHG emissions. For example, in Japan in 2008, the amount of CO2 emissions from vehicles (200 million ton) is about 17 percent of the entire CO2 emissions from Japan (1200 million ton) [1]. The D. Kranzlm¨ uller and A M. Tjoa (Eds.): ICT-GLOW 2011, LNCS 6868, pp. 26–40, 2011. c Springer-Verlag Berlin Heidelberg 2011
Geocast Routing in Vehicular Networks for Reduction of CO2 Emissions
27
Kyoto Protocol aims to stabilize the GHG concentrations in the atmosphere at a level that would prevent dangerous interference with the climate system [2]. With increasing public awareness of the need for reduced GHG emissions from vehicles, it is important to address this problem by effectively using the capability of information technology before spending more on new roads. Geocast protocols in vehicular networks technologies are a promising research area in Intelligent Transportation Systems (ITS) applications. The main actions affecting the increase in the amount of emissions include acceleration, high speed, drivers getting lost or not taking a very direct route to their destination, idling cars on the road, stop-and-go conditions, choosing a path according to a navigation system that later becomes congested and inefficient after committing to that path. The question then becomes what role do geocast protocols play in vehicular networks to reduce the impact of some of these actions?. This paper focuses on reducing the impact of stop-and-go conditions, high speeds, and high accelerations. The effect of speed and acceleration on vehicle CO2 emissions can be investigated by using an emission model. Emission models have been studied in [3]. According to that study, the Virginia Tech Microscopic model (VT-Micro) is superior to the other models in its accuracy. To study the impact of vehicle speed, the vehicle acceleration is set to a constant value (say 0 kph/s). After that, the CO2 emissions are computed with different values of speed using VT-Micro model. Figure 1 shows that CO2 emissions increase with high speeds. Similarly, to show the effect of vehicle acceleration, the vehicle speed is set to 30 kph. Then, the CO2 emissions are calculated with different values of accelerations. Figure 2 demonstrates that negative accelerations do not affect the CO2 emissions much because vehicles do not exert power in negative accelerations. On the other hand, the amount of vehicle CO2 emissions increases with increasing the vehicle acceleration. As a result, it is logical to propose an existing scenario where some environmentally unfriendly (EUF) actions happen frequently. Based on this scenario, the capability of information technology has to be utilized to help avoid or reduce these actions.
Fig. 1. The impact of speed on vehicle CO2 emissions
28
M. Alsabaan et al.
Fig. 2. The impact of acceleration on vehicle CO2 emissions
The proposed scenario in this study involves vehicles approaching a Traffic Light Signal (TLS). The main EUF actions that can occur for these vehicles are stop-and-go condition, unnecessary excessive speed, and unnecessary high acceleration. This paper proposes an environmentally friendly geocast (EFG) protocol whose objective is to deliver the information of a TLS to approaching vehicles. Based on the TLS information, the vehicles calculate their recommended Environmentally Friendly (EF) speed (SR ) to serve three main purposes: 1. to avoid having to stop, a vehicle may adapt its speed to (SR ), such that SRmin ≤ SR ≤ SF , where SRmin is the minimum acceptable speed and SF is the free-flow (maximum allowed) speed. 2. to prevent unnecessary excessive speed, a vehicle adjusts its speed to SRmin in order to avoid unnecessary high speeds if the vehicle has to stop for the TLS. 3. to avoid high accelerations, a vehicle calculates the SR as the maximum possible speed for the vehicle to pass the TLS. As a result, after passing the TLS, the vehicle will return to the free-flow speed with low acceleration. The main contributions of this work are as follows: – Highlight the EUF actions that can be avoided by applying vehicular networks; – Identify a suitable scenario where applying vehicular geocast protocols will significantly reduce vehicle emissions; – For the identified scenario, propose and evaluate an EFG protocol that helps vehicles to avoid EUF actions. As a result, greater emissions reductions can be achieved. The remainder of this paper is organized as follows: Section 2 reviews related work about geocast protocols; Section 3 describes the system model; Section 4 proposes the EFG protocol; Section 5 presents and discusses simulation results; and finally, Section 6 draws conclusions and recommends future work.
Geocast Routing in Vehicular Networks for Reduction of CO2 Emissions
2
29
Related Work
Geocast protocols provide the capability to transmit a packet to all nodes within a geographic region. The geocast region is defined based on the applications. For instance, a message to alert drivers about congestion on a highway may be useful to vehicles approaching an upcoming exit prior to the obstruction, yet unnecessary to vehicles already in the congested area. The existing geocast protocols are classified based on the forwarding types, which are either flooding, directed flooding, or forwarding without flooding [4]. Based on performance metrics, geocast protocols are classified in this paper. Most existing geocast protocols for vehicular networks aim to minimize message latency, or to increase dissemination reliability. In this work, we want to draw the attention of researchers working in the field of communication to design geocast protocols that aim to reduce vehicle emissions. 2.1
Geocast Protocols to Minimize Message Latency
Message latency can be defined as the delay of message delivery. A higher number of wireless hops causes an increase in message latency. Greedy forwarding can be used to reduce the number of hops required to transmit a packet from a sender to a destination. In this approach, a packet is forwarded by a node to a neighbor located closer to the destination [5]. Contention period strategy can potentially minimize message latency. In reference [6], when a node receives a packet, it waits for some time before rebroadcasting. This waiting time depends on the distance between the node and the sender; as such, the waiting time is shorter for a more distant receiver. The node will rebroadcast the packet if the waiting time expires and the node did not receive the same packet from another node. Otherwise, the packet will be discarded. 2.2
Geocast Protocols to Increase the Dissemination Reliability
One of the main problems associated with geocast routing protocols is that they do not guarantee reliability, which means not all nodes inside a geographic area can be reached. Simple flooding forwarding can achieve a high delivery success ratio because it has high transmission redundancy. However, the delivery ratio will be worse with increased network size. Also, frequent broadcast in simple flooding causes message overhead and collisions. To limit the inefficiency of the simple flooding approach, directed flooding approaches have been proposed by defining a forwarding zone and applying a controlled packet retransmission scheme within the dissemination area. Location Based Multicast (LBM) protocols are based on flooding by defining a forwarding zone [7]. Emergency Message Dissemination for Vehicular environment (EMDV) protocol requires the forwarding zone to be shorter than the communication range and to lie in the direction of dissemination [8]. A retransmission counter (RC) is proposed as a packet retransmission scheme [8]. When nodes receive a packet, they cache it, increment the RC and start a timer.
30
M. Alsabaan et al.
The packet will be rebroadcast if the time is expired. Moreover, the packet will be discarded if the RC reaches a threshold. For small networks, temporary caching can potentially increase the reliability [9]. 2.3
Geocast Protocols Aim to Reduce Vehicle CO2 Emissions
To the best of our knowledge, all existing protocols focus on improving the network-centric performance measures (e.g., message delay, packet delivery ratio) instead of improving the performance metrics that are meaningful to both the scientific community and the general public (e.g., CO2 emissions). The key performance metrics of this paper are vehicle CO2 emissions. This metric can be called an EF metric. Improving the network metrics will improve the EF metric. However, the existing protocols are not EF because their delivery approach and provided information are not designed to assist drivers in reducing EUF actions. In [10,11], we have studied how vehicular networks can be used to reduce fuel consumption and CO2 emission in a city and a highway environment. However, we have not designed a geocast protocol that is suitable in applications such as reducing vehicle fuel consumption and CO2 emissions. To the best of our knowledge, our attempt is a first in the field.
3
System Model
Street segments with length L and N -lanes have been considered. At the intersections, there is TLS as shown in Fig.3. For simplicity, we consider a pre-timed TLS system. However, our work can be applied to dynamic TLS systems [12]. The free-flow speed of the street is SF m/s. The nodes in the road network are (1) Mobile nodes: vehicles; (2) Fixed nodes: TLSs. Wireless communications consist of vehicle to vehicle communication and vehicle to TLS communication. Therefore, we assume that the TLSs and vehicles are equipped with an OnBoard Unit (OBU), an entity responsible for vehicular communication such as wireless radio access, geographical ad hoc routing, network congestion control, etc. We also assume that the OBU is equipped with a (short range) wireless communication device. In addition to the OBU, vehicles are equipped with an Application Unit (AU), an entity that runs applications. It is assumed in this study that the AU is equipped with position data and an electronic road map. Therefore, the vehicles know their locations and the location of the TLS. Vehicles exchange (x, y) coordinates periodically. An ideal Medium Access Control (MAC) layer and Physical (PHY) layer are assumed. For simplicity, we make several assumptions such as vehicles approaching the intersection are not affected by an adjacent intersection, the communication range of the TLS can cover a Region of Interest (to be discussed), no lane change is considered, vehicles do not exceed the road speed limit, and they do not pass through a red TLS. Vehicles enter the system as a Poisson process with a rate of λ vph/lane. The mobility of the vehicles is based on the car-following concept [13]. To present the car-following behavior, we use a well known model named INTEGRATION
Geocast Routing in Vehicular Networks for Reduction of CO2 Emissions
31
Fig. 3. System model
[14]. The movements of the vehicles are adapted according to the space headway. Vehicles travel at the free flow speed. When the space headway of a vehicle and a vehicle driving ahead of it, or the space headway of a vehicle and a red or yellow TLS, reaches the minimum safe space headway (hmin ), the vehicle following has to be decelerated. hmin can be calculated as the average speed of the leading vehicle and the following vehicle multiplied by the time the following vehicle has to comfortably decelerate from its current speed to the speed of the vehicle in front of it. The calculation can be represented in the following equation [14]: Sf + Sl Sf − Sl )·( ) (1) 2 δ where Sf and Sl represent the speed of the following and leading vehicles, respectively and δ is the maximum comfortable deceleration rate. The following vehicle would accelerate if the leading vehicle were accelerating. The acceleration rate is governed by vehicle dynamics. A vehicle wanting to increase its speed will attempt to accelerate at the maximum possible rate [14]. hmin = (
4
Proposed Environmentally Friendly Geocast Protocol
The steps of designing our EFG protocol can be summarized as follows: (1) Define the Region of Interest (ROI) based on whether a vehicle will benefit from the information or not; (2) Specify what types of information a packet has to contain; (3) Deliver a packet with required information from to wanted vehicles; (4) Utilize the idea of VANETs; (5) Calculate the recommended speed based on the objectives; (6) Notify the TLS to retransmit if the network is disconnected; (7) Integrate an emission model with vehicular networks. As a result, the amount of CO2 emissions can be calculated. 4.1
Defining the Geocast Destination Regions or ROI
ROIs are defined to be the regions where the TLS information is necessary for vehicles in that regions to adjust their speed to SR . Vehicles calculate SR for drivers to avoid stopping at the TLS. Figure 4 shows what the SR will be when the current phase is green and red (or yellow).
32
M. Alsabaan et al.
Fig. 4. SR when the current phase is green, red, or yellow
Assuming that vehicles that do not receive a packet travel at SF , it is not necessary to geocast in a region where SR = SF . Thus, the geocast destination regions are the regions where SR < SF . For vehicles with SR < SF , their distances (d) to the TLS are in the following range: If the Current Phase is Green (Lg + (n − 1) · CL ) · SF < d < (Lg + Ty + Tr + (n − 1) · CL ) · SF where Lg is The number of seconds to switch from green to yellow, CL is the TLS cycle length (s), Ty and Tr represent the full yellow and red phase time, respectively. n = 1, 2, 3, ..., i. n is the region ID number, and i is the last region number. Defining i depends on the distance between a TLS and its preceding d −L ·S one (ds ) such as i = sCL ·Sg F F . The center of each ROI is as follows: Cen(ROIn ) =
SF · (Ty + Tr ) + (Lg + (n − 1) · CL ) · SF 2
(2)
where Cen(ROIn ) is defined as the distance between the TLS and the center of ROIn . In Fig. 5, if TLS 1 is inside ROIi , the center and diameter of ROIi will be as follows: Cen(ROIi ) =
ds − (Lg + (i − 1) · CL ) · SF + (Lg + (i − 1) · CL ) · SF 2
(3)
Dia(ROIi ) = ds − (Lg + (i − 1) · CL ) · SF
(4)
If The Current Phase is Red 0 < d < Lr · SF
,or (Lr + Tg + (n − 1) · CL ) · SF < d < (Lr + n · CL ) · SF
d −(L +T )·S
where i = s CLr ·SFg F + 1, Lr is The number of seconds to switch from red to green, and Tg is the green phase time. Cen(ROI1 ) = Cen(ROIn+1 ) =
(Ty +Tr )·SF 2
Lr · SF 2
+ (Lr + Tg + n · CL ) · SF
(5) (6)
Geocast Routing in Vehicular Networks for Reduction of CO2 Emissions
33
As shown in Fig. 5, if TLS 1 is inside ROIi , the center of ROIi will be as follows: When i = 1, Cen(ROI1 ) = d2s and Dia(ROI1 ) = ds ; otherwise, Cen(ROIi ) =
ds − (Lr + Tg + (i − 1) · CL ) · SF +(Lr +Tg +(i−1)·CL )·SF (7) 2 Dia(ROIi ) = ds − (Lr + Tg + (i − 1) · CL ) · SF
(8)
If The Current Phase is Yellow 0 < d < (Ly +Tr )·SF
,or (Ly +Tr +Tg +(n−1)·CL )·SF < d < (Ly +Tr +n·CL )·SF
Cen(ROI1 ) = Cen(ROIn+1 ) =
(Ly + Tr ) · SF 2
(Ty + Tr ) · SF + (Ly + Tr + Tg + n · CL ) · SF 2
(9) (10)
d −(L +T +T )·S
y r g F where i = s + 1 and Ly is The number of seconds to switch CL ·SF from yellow to red. As in Fig. 5, if TLS 1 is inside ROIi , the center of ROIi will be as follows: When i = 1, Cen(ROI1 ) = d2s and Dia(ROI1 ) = ds ; otherwise,
Cen(ROIi ) =
ds − (Ly + Tr + Tg + (i − 1) · CL ) · SF + (Ly + Tr + Tg + (i − 1) · CL ) · SF 2
Dia(ROIi ) = ds − (Ly + Tr + Tg + (i − 1) · CL ) · SF
(11)
(12)
In all the green, red, and yellow, the diameters of the destination regions are fixed to SF · (Ty + Tr ), while the centers of the regions are based on Lg , Ly , or Lr . Figure 6 shows the impact of Lg on ROIs.
Fig. 5. Two consecutive TLSs
Fig. 6. Distances between ROI and a TLS when the current phase is green
34
4.2
M. Alsabaan et al.
Message Delivery
The TLS uses a geocast routing protocol to deliver the message to the destination region. Preliminarily, in this paper, we assume that the distance from the previous TLS to the heading one covers only one ROI. Therefore, the proposed protocol is for delivering the message to the approaching vehicles inside ROI1 . The message delivery consists of three parts: (1) From a TLS to vehicles; (2) Inter-vehicle communication; (3) From vehicles to a TLS. 4.3
From a TLS to Vehicles
When a TLS starts to be green, it geomulticasts a packet to the first vehicle in each lane inside ROI1 . A geomulticast sends a packet to a group (not all) of nodes (vehicles) in a geographical area. The geomulticast packet contains four types of information: (1) The type of the current phase, which is green in this situation; (2) The number of seconds to switch from the current phase; (3) The traffic light schedule (Tg , Ty , and Tr ); (4) The geographical address of the first vehicle in each lane inside the ROI1 . Since a TLS communication range covers ROI1 , it can sense (x, y) coordinates from vehicles inside its coverage. Therefore, a TLS can know the position of the first vehicle inside ROI1 in each lane, where ROI1 can be calculated from Eq. 2 and Fig. 6 as follows: Center(ROI1 ) =
SF · (Ty + Tr ) + Lg · SF 2
Diameter(ROI1 ) = SF · (Ty + Tr ) Three conditions must be satisfied for a vehicle to be a destination of a TLS: (1) A vehicle is inside ROI1 ; (2) A vehicle is the first vehicle in its lane inside ROI1 ; (3) A vehicle has not received a packet yet. A vehicle discards the packet if the three conditions are not satisfied. Otherwise, the vehicle calculates and adjusts its speed to SR , which is calculated as the distance between the vehicle and the TLS after receiving the packet (d) over the required delay of the vehicle to be able to pass the TLS as in the following equation: SR = max(
d , SRmin ) (Ng − 1) · CL + Lg + Ty + Tr + M
(13)
|d/S −L |
F g where Ng = max( , 1) and CL = Tg + Ty + Tr . CL In another situation, if it is assumed that the TLS geomulticasts a packet when it starts to be red, the calculation of SR is as follows:
SR = max(
d , SRmin ) (Nr − 1) · CL + Lr + M − D
where Nr = max( |d/SCFL−Lr | , 1).
(14)
Geocast Routing in Vehicular Networks for Reduction of CO2 Emissions
35
In addition, the following equation shows the calculation of SR if it is assumed that the TLS geomulticasts a packet when it starts to be yellow. SR = max(
d , SRmin ) (Ny − 1) · CL + Ly + Tr + M − D
(15)
|d/S −L −T |
F y r where Ny = max( , 1), , SRmin is the minimum recommended or CL acceptable speed (m/s). Ng , Nr , and Ny represent the number of light cycles completed before the vehicle can pass the TLS when the current phase is green, red, and yellow, respectively. D is the packet delay (s), defined as the difference of the time of receiving the packet and the time of initiating the packet from the TLS. M is the time the vehicle has to comfortably decelerate from its current speed to the recommended speed.
4.4
Inter-vehicle Communication
After the first vehicle in each lane receives a message from the TLS, calculates, and adjusts its speed at SR , it unicasts a packet to the vehicle behind it (following) on the same lane its SR , stopping time at the TLS, The geographical address of the following vehicle, and the traffic light schedule. When the following vehicle receives the message, it calculates and adjusts its speed to the speed that makes the minimum headway when the leading vehicle reaches the TLS. In other words, it calculates and adjusts its speed to the maximum speed that the following vehicle can achieve without being affected by the leading vehicle. First, we want to determine whether the leading vehicle will stop or not. This can be done by calculating the stopping time (TSl ) as the difference of the required delay of the vehicle to be able to pass the TLS and the time of the leading vehicle to reach the TLS if it traveles at SR as follows: TSl = (Ng − 1) · CL + Lg + Ty + Tr + M − D −
d SRl
(16)
If 0 ≥ TSl ≥ −(Tg + Ty ), it means the vehicle will not stop at the TLS. In this case, the recommended speed of the following vehicle is SRf = min(max(SRl + S +S
df l − hmin , SRmin ), SF ) Tl + M
S −S
(17)
l where Tl = SdRl , hmin = ( f 2 Rl )·( f δ Rl ), d is the distance between the vehicle and the TLS after receiving the packet (m) and adjusting the speed to SRl , df l is the distance b/w the following and the leading vehicle (m), Tl is the time a leading vehicle needs to reach the TLS (s), dl is the distance between the leading vehicle and the TLS at the time the vehicle sent the packet. The leading vehicle will stop at the TLS if the above condition is not satisfied. In this case, when a following vehicle receives a packet, it determines whether it is traveling at the same speed as the leading vehicle (SRl ), whether it is going to
36
M. Alsabaan et al. d
fl pass the TLS without stopping (Is SRl > TSl )? If yes, the recommended speed of the following vehicle is calculated as
SRf = min(max(
df l − hmin , SRmin ), SF ) TSl + M
Otherwise, SRf = SRmin
(18) (19)
If SRf < SF , it means that the following vehicle is inside the ROI. Therefore, the unicast approach is repeated to the vehicle behind it. If SRf = SF , it means that the following vehicle is out of the ROI. Some remarks are (1) Vehicles know that they are out of ROI when SR = SF ; (2) Vehicles whose SR has been calculated and utilized are inside the ROI, so ROIs are moving with the vehicles; (3) A ROI is extended until SRf = SF . 4.5
From Vehicles to a TLS
When a vehicle receives a packet, it advises the driver to travel at EF speed. After adjusting the speed to be an EF, the vehicle unicasts the packet to its following vehicle if it is inside the transmission range. Otherwise, the packet has to be buffered until the following vehicle enters the transmission range. However, in a very low traffic where a vehicle might reach a TLS while it still has the packet, the vehicle notifies the TLS. As a result, the TLS geomulticasts a new packet as explained in Subsection 4.3. A flowchart represents a summary of the proposed protocol is in Fig. 7.
Fig. 7. Flowchart for the EFG protocol
Geocast Routing in Vehicular Networks for Reduction of CO2 Emissions
5
37
Simulation Study and Discussions
The simulation traffic model is shown in Fig. 8. The street has 2-lane and is in one direction. The rest of the simulation parameters are specified in Table 1.
Fig. 8. Traffic model Table 1. Simulation Parameters SF SRmin CL Tg
60 km/h 40 km/h 100 s 45 s
Ty Tr λ δ
5s 50 s 200 vph/lane -5 kph/s
The proposed EFG protocol has been evaluated based on an environmentally friendly metric (CO2 emissions). The protocol has been compared with the case where no vehicular network is applied. Moreover, The impact of communication metrics such as message delay and delivery ratio on the reduction of CO2 emissions is presented. The average CO2 emissions from vehicles traveling from O to D has been computed with different vehicles’ transmission ranges. Figure 9 shows the benefit of the EFG protocol on the environment. With no EFG, the amount of CO2 emissions is independent of the vehicles’ transmission range since no communication occurs. Zero transmission range means there is no vehicle-to-vehicle communications. However, vehicles receive packets from the TLS. As the vehicles’ transmission range increases, vehicles receive a packet early. Also, the chance of packet delivery increases. These advantages help drivers to avoid the UEF actions. As a result, the amount CO2 emissions decreases with increasing the vehicles’ transmission range as shown in Fig. 9. Since vehicles enter the system as a Poisson distribution with λ = 200 vph/lane at speed 60 km/h, the average space headway between vehicles is 300 m. The network becomes connected all the time when the transmission range is greater than or equal to every space headway between two successive vehicles. In this case, the space headway between vehicles is random. However, it can be noticed that the amount of CO2 emissions and fuel consumption start to reach the constant state after 300 m transmission range, which is equal to the average space headway between vehicles.
38
M. Alsabaan et al.
Fig. 9. Average vehicle CO2 emissions versus vehicles’ transmission range
Figure 10 shows how the EFG protocol can decrease vehicles’ stopping time. It is clear that in the absence of vehicular network, the average vehicle stopping time is around 12 seconds. This time would be shortened if the idea of vehicular networks is applied. It can be seen that with the EFG protocol, the vehicle stopping time can be decreased until 2.8 seconds with increasing vehicles’ transmission range.
Fig. 10. Average vehicle stops delay versus vehicles’ transmission range
It is clear that increasing vehicles’ transmission range contributes to reducing packet delay as shown in Figure 11. In fact, fast packet delivery enables earlier vehicles actions, thereby achieving greater reductions of CO2 emissions. It can be noticed from Figs. 9 and 11 that the amount of CO2 emissions are directly proportional to packet delay. Figure 12 demonstrates the ratio of cars that were supposed to receive a packet but did not due to the shortness in the vehicles’ transmission range. Similar to packet delay, this ratio is directly proportional to the amount of CO2 emissions. Therefore, it desirable to design a geocat protocol that has short packet delay and high packet delivery ratio for the reduction of CO2 emissions.
Geocast Routing in Vehicular Networks for Reduction of CO2 Emissions
39
Fig. 11. Average received packet delay versus vehicles’ transmission range
Fig. 12. Ratio of cars were not able to receive a packet
6
Conclusions and Future Work
This work has been inspired by the fact that, to date, rising CO2 emissions are increasingly recognized as global challenges. Geocast protocols in vehicular networks can play a key role in reducing vehicle CO2 emissions. The existing geocast protocols seek to improve mainly the performance of the communications systems; however, they do not show how improvements of the communication system would affect CO2 emissions. This work has proposed a new protocol that focuses on minimizing vehicle CO2 emissions. The goal of the protocol is to deliver the information of a TLS to approaching vehicles. Based on that information, vehicles can calculate the environmentally friendly speeds. These speeds are recommended to vehicles, in order to avoid having to stop, high accelerations, and useless high speeds. With increasing the vehicles’ transmission range, simulation results demonstrate how the performance improves in terms of vehicle CO2 emissions, stopping time, packet delay, and the ratio of vehicles that did not receive a packet, while they are inside the ROI. In the future, a protocol that considers the collaboration between adjacent TLSs will be proposed.
40
M. Alsabaan et al.
Acknowledgments. This research was supported by a research grant from the Natural Science and Engineering Research Council (NSERC) of Canada and by a scholarship from King Saud University, Saudi Arabia. The authors wish to thank Professor Hesham Rakha of Civil and Environmental Engineering at Virginia Tech for providing them a spreadsheet with the VTMicro model coefficients.
References 1. Tsugawa, S., Kato, S.: Energy ITS, another application of vehicular communications. IEEE Communications Magazine 6(11), 120–126 (2010) 2. Organization for Economic Co-operation and Development (OECD)/ International Energy Agency (IEA), CO2 Emissions from Fuel Combustion Highlights (2009) 3. Rakha, H., Ahn, K., Trani, A.: Comparison of MOBILESa, MOBILE6, VTMICRO, and CMEM Models for Estimating Hot-Stabilized Light-Duty Gasoline Vehicle Emissions. Canadian Journal of Civil Engineering 30, 1010–1021 (2003) 4. Maih¨ ofer, C.: A Survey of Geocast Routing Protocols. IEEE Communications Surveys and Tutorials 6(2), 32–42 (2004) 5. Karp, B., Kung, H.T.: GPSR: greedy perimeter stateless routing for wireless networks. In: Proc. MobiCom, pp. 243–254 (2000) 6. Briesemeister, L., Schafers, L., Hommel, G.: Disseminating messages among highly mobile hosts based on inter-vehicle communication. In: IEEE IV, pp. 522–527 (2000) 7. Ko, Y.B., Vaidya, N.H.: Location-Aided Routing (LAR) in mobile ad hoc networks. Wireless Networks 6(4), 307–321 (2000) 8. Moreno, M.T.: Inter-Vehicle Communications: Achieving Safety in a Distributed Wireless Environment: Challenges, Systems and Protocols. Dissertation, Universit¨ atsverlag Karlsruhe (2007); ISBN: 978-3-86644-175-0 9. Maihofer, C., Eberhardt, R.: Geocast in vehicular environments: caching and transmission range control for improved efficiency. In: IEEE IV, pp. 951–956 (2004) 10. Alsabaan, M., Naik, K., Nayak, A.: Applying vehicular ad hoc networks for re¨ duced vehicle fuel consumption. In: Ozcan, A., Chaki, N., Nagamalai, D. (eds.) WiMo 2010. Communications in Computer and Information Science, vol. 84, pp. 217–228. Springer, Heidelberg (2010) 11. Alsabaan, M., Naik, K., Khalifa, T., Nayak, A.: Vehicular Networks for Reduction of Fuel Consumption and CO2 Emission. In: IEEE INDIN, pp. 671–676 (2010) 12. Maslekar, N., Boussedjra, M.: VANET based Adaptive Traffic Signal Control. In: IEEE Vehicular Technology Conference (2011) 13. May, A.D.: Traffic flow fundamentals. Prentice-Hall, Englewood Cliffs (1990) 14. Van Aerde, M., and Associates, Ltd.: INTEGRATION release 2.30 for Windows: User’s Guide: Fundamental Model Features, vol. I & II (2005)
Limiting Pollution in Ground Control Optimization Ludovica Adacher1 and Marta Flamini2 1
Dipartimento di Informatica e Automazione, Universit´ a degli studi ”Roma Tre” 2 Universit´ a Telematica Internazionale UNINETTUNO Rome, Italy
[email protected],
[email protected]
Abstract. In this paper we deal with the problem of scheduling aircrafts maneuvering on ground in the specific case study of Malpensa Airport. Given a fixed route and a landing/take off time instant for each landing/departing aircraft, we consider three objective functions in the following lexicographical order: (i) the minimization of the number of tardy aircrafts; (ii) the maximization of the safety; (iii) the minimization of pollution and noise. Problem constraints are related to the safety rules. We model the problem as a job-shop scheduling problem. We develop heuristic procedures based on an alternative graph formulation of the problem to construct and improve feasible solutions. Experimental results based on real data and analysis are reported. Keywords: Air traffic control, Aircraft scheduling problem, Job-shop, Alternative Graph, Pollution.
1
Introduction
In the increase of air traffic, airports are becoming the major bottleneck in Air Traffic Control (AT C) operations. Aviation authorities are thus studying methods to optimize the use of the existing airport infrastructures and aircraft movements in the vicinity of airports, subject to a certain required level of safety. Airports management is entrusted to dispatchers in air control, local control and ground control. Air control tasks concern with routing decisions, where a route for each aircraft has to be chosen from its current position to its destination, and scheduling decisions in the vicinity of the airports, where routes are fixed and feasible aircrafts sequencing and timing have to be determined such that safety rules are satisfied. Local control is responsible of runways control and consists in sequencing and timing the use of the runway by the aircrafts. Ground control is responsible for aircraft traffic management in the Terminal Maneuvering Area (T M A), that generally includes all taxiways, runways, yards, aprons or intersections. Currently, human controllers perform AT C operations supported only by graphical representations of the aircrafts position and speed. Decision support systems would be useful both to optimize management performances and to face unexpected events without neglecting the optimization of traffic management even in such cases. Problems arising in AT C are usually hard to perform D. Kranzlm¨ uller and A M. Tjoa (Eds.): ICT-GLOW 2011, LNCS 6868, pp. 41–55, 2011. c Springer-Verlag Berlin Heidelberg 2011
42
L. Adacher and M. Flamini
in terms of both designing adequate models and projecting efficient and effective solution techniques, due to the complex real aspects that have to be included in the model representation in order to produce solutions that can be practically implemented. Several approaches have been proposed for solving both air and ground scheduling problems ([1], [2], [3]), but most of the early contributions suffer for a substantial lack of information due to the usage of very simplified models. Recent models ([4]) introduce an increased level of realism and incorporate a larger variety of constraints and possibilities, such as no-wait constraints, and earliness/tardiness penalties for each early/tardy aircraft. Most of the research efforts focus on local control ([5], [6] , [7]) where runway scheduling problems are analyzed. Due to the complexity of such problems researchers often propose the developing of heuristic procedures. Bianco et al. [8] model the single runway landing problem as a job-shop scheduling problem and propose a solution based on a mixed integer linear programming formulation. In this paper, the main focus is on the real time local and ground Aircraft Scheduling Problem ASP with fixed routes. The case study we refer is related to the T M A of Malpensa Airport (from now on T M A). The T M A has a specific layout implying the traversing of one of the runways by most part of routes. For the safety problem of T M A it is important to develop a detailed model able to adequately represent all the safety constraints. The traversing of the runway is regulated by stop bars. Whenever an aircraft has to cross the runway while another aircraft occupies the runway, the first one has to wait at a stop bar. Here the spacial safety rules are less pressing, since a reduced distance between the aircrafts is allowed. In our problem we consider three objective functions in lexicographical order, namely (i) the minimization of the number of tardy aircrafts; (ii) the minimization of the mean waiting time at the stop bars close to one of the runways; (iii) the minimization of pollution and noise. The first objective function represents one of the most analyzed indices in literature, which gives a measure of the performance of the control operations. The second objective function concerns with the safety and aims to limit the event in which two aircrafts are physically close. Regarding to the third objective function, we associate the production of pollution and noise with the total time the aircrafts keep the engine on, therefore our aim is to minimize such total time. The constraints of the problem are given by the safety rules concerning the moving of the airplanes in the terminal. We consider the ASP as a job shop scheduling problem with additional constraints. We model the problem by an alternative graph [9] and we propose some heuristic procedures producing fast feasible solutions able to face the real time nature of the problem. The paper is organized as follows. In Section 2 reader can find the detailed description of the problem that is modeled as a job-shop scheduling problem with additional constrains. In Section 3 authors propose a model for the ASP based on the alternative graph formulation [9]. Solution heuristic procedures are described in Section 4 and experimental results are reported in Section 5. Section 6 is dedicated to the conclusions.
Limiting Pollution in Ground Control Optimization
2
43
Problem Description
The case study we deal with is related to an aircraft scheduling problem (ASP ) in the Terminal Maneuvering Area (T M A) of Malpensa Airport. A schema for the layout of the T M A is depicted in Figure 1. The T M A has two parallel runways, namely 35R and 35L, two yards, two aprons, and a taxiway network. The runways are divided into segments, each between two consecutive intersections with the taxiway network. Yards are areas positioned at the beginning of the runways, in which aircrafts wait before departing. Aprons include parking bays in which the aircrafts are parked. Stop bars regulate the access to the cross points. As depicted in Figure 1, runway 35L has to be crossed by aircrafts departing/landing on runway 35R and coming from/going to apron A1. This peculiarity of the T M A makes the safety a crucial aspect while modeling and optimizing problems related to the ground control. We consider both arriving and departing aircrafts, in a given time interval. Each arriving aircraft has associated a fixed ground route from its current position to the parking bay and each departing aircraft has associated a fixed ground route from its current position to the runway. We are given a nominal landing time and an arrival time for the arriving aircrafts. The nominal landing time is the minimum time instant in which the aircraft would be able to land. The landing time is a variable of the problem, since in practice the landing instant could be postponed for optimization scopes. The arrival time represents the time instant in which the aircraft should reach the parking bay. For each departing aircraft we are given a departing time that is the time instant in which the aircraft should take-off. The arrival times and departing times are considered as due dates for the aircrafts. Problem constraints are described in Section 6 and correspond to the safety rules regulating the movings of the aircrafts in the T M A. The problem briefly consists in scheduling the movings of the aircrafts through the T M A, in order to avoid deadlocks and collisions, subject to the safety constraints. We consider three objective functions in lexicographical order: (i) the minimization of the number of tardy aircrafts; (ii) the minimization of the mean waiting time at the stop bars close to runway 35L; (iii) the minimization of pollution and noise. The first objective function gives a measure of performance of the management and control operations. An aircraft is a tardy aircraft if its arrival or departing time does exceeds its due date. When evaluating the quality of a solution we are also interested in considering some other performance indices, such that then average tardiness and absolute average lateness. The second objective function concerns with the safety and aims to limit the event in which two aircrafts are physically close, by minimizing the mean waiting time at the stop bars regulating the crossing of the runway 35L. The third objective function is evaluated by associating the production of pollution and noise with the total time the aircrafts keep the engine on, therefore our aim is to minimize such total time.
44
L. Adacher and M. Flamini
Fig. 1. Resources of the T M A
2.1
Problem Constraints
ASP can be modeled as a job-shop scheduling problem with additional constraints. Jobs are represented by aircrafts and resources by parts of the T M A. An operation is the occupation of a resource by an aircraft, therefore the processing time of an operation corresponds to the time necessary to run/occupy a certain resource. Constraints implied by safety rules, typically regulating spatial or temporal security distances, hold for each pair of aircrafts moving in the T M A. We model the T M A as a set of resources of limited capacity. The resources we consider are runway segments, taxiway segments, parking bays, stop bars, yards. All such resources but the yards have unitary capacity. Yards are assumed to have unlimited capacity. Each route associated to an aircraft corresponds to a list of resources. Standard job-shop constraints hold, namely: (i) precedence constraints: resources composing a routes have to be run in a precise order; (ii) capacity constraints: resources with unary capacity can be occupied at most by an aircraft at a time; (iii) preemption constraints: operations can not be interrupted. Additional constraints, that is no-wait, blocking and incompatibility constraints, are introduced to model real aspects of the problem related to the safety rules. No-wait constrains state that a given set of consecutive resources in a route has to be occupied without interruption. This is the case, for instance, of segments composing a runway. Blocking constraints model the absence of buffer between two resources, therefore the occupation of a resource of unary capacity by an aircraft makes such resource unavailable for other aircrafts for the entire occupation time interval. Incompatibility constraints hold when two different resources can not be occupied at the same time. In this case the two resources are said incompatible. For instance, all the segments of a runway can be occupied only by an aircraft at a time. This make each pair of segments of the same runway incompatible. A conflict arises when two aircrafts have to
Limiting Pollution in Ground Control Optimization
45
run the same resource or two incompatible resources at the same time. A conflict is solved by fixing a precedence between the two aircrafts. Therefore, a feasible solution for ASP consists in solving all the conflicts among aircrafts, avoiding deadlocks. ASP , as the majority of the problems belonging to the class of jobshop scheduling problems, is hard to resolve. Our aim is both to design a valid model, representative of most of the practical aspects and to develop fast heuristic algorithms, based on such model, in order to face the real time nature of the problem.
3
The Alternative Graph Model
In this section we describe a graph model to represent ASP as a job-shop scheduling problem with additional constraints. We model ASP by the alternative graph formulation [9], that is a generalization of the disjunctive graph, proposed by Roy and Sussman in [10] to represent the standard job-shop scheduling problem. The alternative graph is an effective model for representing complex scheduling problems arising in several sectors, such as in manufacturing [11] or in railway traffic control [12]. In our problem the route of an aircraft corresponds to the running of an ordered list of resources, which can be represented by a sequence of operations. An alternative graph is an oriented graph G(N, F, A), in which N denotes the set of nodes, F is the set of fixed arcs and A is the set of alternative arcs. We denote by R the set of problem resources, reported in Figure 1: - runways intersections {35R0, 35R1, . . . , 35R5} for runway 35R and {35L1, . . . , 35L6} for runway 35L; - taxiway cross points {X0, X1, C0, . . . , C10, W0, . . . , W7, K0, . . . , K7}; - parking bays {P0, P1, . . . , P7}; - stop bars {sb1, sb2, . . . , sb10}. Let nji ∈ N be the node associated to the occupancy of resource i ∈ R by aircraft j. For sake of simplicity we use the notation nji , both to denote a node of the alternative graph and the associated operation. Set N includes two dummy nodes, s and t associated to time zero and to the completion of the last operation, respectively. A fixed arc (nji , njk ) ∈ F , between two consecutive nodes in an aircraft route represents the precedence constraint that aircraft j cannot start operation njk before it completes operation nji . The arc weight pji indicates the processing time of operation nji , that is equal to the minimum occupation time of the resource i. The minimum occupation time for a runway intersection is equal to the running time of the runway segment succeeding the intersection. The minimum occupation time for a taxiway cross point is equal to the running time of the taxiway succeeding the cross point. The minimum occupation time for stop bars and parking bays is fixed to zero. Example 1. We are given one landing aircraft a and one departing aircraft b. Routes are Ra = {35R5, 35R4, 35R3, sb7, C1, sb2, 35L2, W 0, K1, P 1} and Rb = {P 2, W 1, W 0, sb9, 35L3, C1, C2, C3, C4, C5, C8, 35R5, . . ., 35R0} for a and b respectively. In Figure 2 the two routes are depicted as chains including fixed arcs. For sake of simplicity, we label the nodes only with the name of the resources.
46
L. Adacher and M. Flamini
Fig. 2. Example for fixed arcs of the alternative graph model for two aircrafts
A conflict occurs each time two aircrafts have to occupy the same resource or two incompatible resources. Two resources are defined incompatible if they can not be occupied at the same time due to safety rules. Each conflict is modeled by an alternative pair that is composed by two alternative arcs. An alternative pair models the two possible precedences between aircrafts involved in the conflict. Conflict arcs have a weight equal to ε → 0. A feasible solution S for ASP consists in solving all possible conflicts among aircrafts, avoiding deadlocks. In terms of alternative graph, it corresponds to construct an acyclic graph by selecting exactly one arc for each alternative pair. Such graph is called precedence graph. The head of a node nji ∈ N is denoted by hji and is equal to the length of the longest path from the dummy node s to node nji . It represents the earliest starting time of operation nji in the feasible solution, i.e. the earliest starting time in which the aircraft j can enter resource i. A simple forward visit of the precedence graph allows to compute the head of each node. The waiting time of an aircraft at a specific resource is computed by considering the heads of the nodes. In the Example 1 a conflict occurs in the occupation of resource W 0. In Figure 3 the alternative pair modeling the two possible precedences is represented by the unbroken and dotted arcs between the two chains. One of the feasible solutions for the Example 1 consists in selecting the unbroken arc (naK1 , nbW 0 ) and canceling the dotted arc (nbsb9 , naW 0 ). In such feasible solution aircraft a precedes b in the of resource W 0. The head of node nbW 0 b occupation b b a + p is equal to hW 0 = max hW 1 W 1 , hK1 + ε. The waiting time of aircraft b at W 1 is equal to the difference between hbW 0 and hbW 1 + pbW 1 that is the time instant in which b arrives in W 1 plus the running time from W 1 to W 0. In order to compute the value of a feasible solution S associated to a certain precedence graph, we denote by: - ND ⊂ N the set of nodes representing the occupation of the parking bays or of the first segment of the take-off runway by the aircrafts. - NSB ⊂ N the set of nodes representing the occupation of the stop bars adjacent to the runway 35L by the aircrafts. - NP ⊂ N the set of nodes representing the occupation of resources in which aircrafts could wait in order to give precedence to other aircrafts. The number of tardy aircrafts derives by the tardiness values. Let Tj the tardiness associated to aircraft j, it is computed as Tj = max{0, hji − ddj } where i ∈ ND and ddj is the due date of aircraft j. The formulation of the second and third objective functions is the following:
Limiting Pollution in Ground Control Optimization
47
Fig. 3. Example for the alternative graph model for two conflicting aircrafts
- min -
K
j=1 K min j=1
j j j i∈NSB (hσ(i) − (hi + pi )); j j j i∈NP (hσ(i) − (hi + pi ));
where K is the total number of aircrafts and σ(i) is the resource succeeding the resource i in the route associated to an aircraft. 3.1
Conflicts Models
In the following we illustrate the alternative graph model for some typical conflicts arising in ASP . Conflict on a unary capacity resource. Each resource but the yards can host at most one aircraft at a time. Let i the requested resource and {nai , nak } and {nbi , nbz } the partial routes associated to aircrafts a and b. The conflict on resource i is modeled by inserting the alternative pair < (nak , nbi ), (nbz , nai ) >. The first arc models the precedence of a over b and implies that aircraft b can not reach resource i before aircraft a is not in resource k. The second one models the precedence of b over a and implies that aircraft a can not reach resource i before aircraft b is not in resource z. Runway conflict. Each runway can host only one aircraft at the time, that is each pair of runway segments are incompatible. We model the incompatibility among the runway segments with a conflict pair for each pair of aircrafts requesting the runway. Let {nai , nal , . . . , nak } and {nbi , nal , . . . , nbz } be the partial routes representing the occupation of a runway by aircraft a and aircraft b, respectively. Let x and y be the first resources occupied by a and b after the occupation resources k and z, respectively. The conflict on the runway is modeled as depicted in Figure 4: if a precedes b, b can start the runway operations only once a is in x, that is when a has completely left the runway. The precedence of a over b is modeled by the alternative arc (nax , nbi ). Similarly, if b precedes a, we introduce the alternative arc (nby , nai ). Furthermore, no-wait constraints subsist among runway segments, that is runway segments have to be occupied consecutively without interruption. Hence a coherent model forbids arcs ending in one of the nodes between nal and nak for aircraft a and nal and nbz for aircraft b. Incompatibility between two sets of resources. The definition of incompatibility can be extended to sets of resources representing the same path run in opposite directions. The two sets of resources are incompatible since they can not be occupied at the same time (this could cause a deadlock). Let be Sa = {nai , nal , . . . , nam }
48
L. Adacher and M. Flamini
Fig. 4. Conflict on an unary capacity or runway
Fig. 5. Incompatibility arcs for conflict on sets of resources
and Sb = {nbm , nbg , . . . , nbi } two incompatible sets of resources representing partial routes of aircrafts a and b. The incompatibility between the two sets can be modeled by inserting the alternative pair < (nbk , nai ), (naz , nbm ) >, where k and z, k = z, are the resources succeeding the last resources of Sa and Sb , respectively (see figure 5(a)). This is the case of two aircrafts a and b running Sa = {C9, sb6, 35L4, W 4} and Sb = {W 4, sb4, 35L4, C9}, respectively. The sets of resources occupied by a and b are not identical since a considers sb6 and b considers sb4, but they represent the same physical path. In this example k = K5 and z = C4. The incompatibility between Sa and Sb can be modeled by introducing only one alternative pair, namely < (naK5 , nbW 4 ), (nbC4 , naC9) > (see figure 5(b)).
4
Heuristics
Due to the real nature of the problem we first compute different fast initial solutions, then we try to improve the quality by applying local search heuristics based on the alternative graph AG representation. Any potential conflict on
Limiting Pollution in Ground Control Optimization
49
resources between landing and departing aircrafts must be detected and solved. We consider a list of real dispatching criteria to assign the precedences (see Fig.6) to find a feasible solution. List of real criteria LP – criterion 0 : when we consider to different landing (departing) airplanes we select in AG the arc of the alternative pair on the basis of FIFO order. – criterion 1 : in runway, when we consider a landing and a departing aircraft, we always select the arc that gives the precedence to the landing airplane. – criterion 2 : in taxiway, stop bar, parking bay, when we consider a landing aircraft and a departing aircraft we always select the arc that gives the precedence at the departing aircraft.
Fig. 6. List of precedence LP
The Arc Greedy Heuristic (AGH) is based on an iterative arc selection procedure. At each step, AGH selects all the alternative arcs involving a chosen aircraft, so that the sequencing of the operations of this aircraft with respect to the others is fixed. Note that at each step the relative order of remaining aircrafts with respect to previously selected aircrafts is already fixed, so that it only remains to decide the relative order of unselected aircrafts. Once ordered all the aircrafts according to the F IF O rule with respect to nominal landing/departing time, the precedence between two consecutive landing (departing) aircrafts is given on F IF O rule. If a conflict occurs in the runway a landing aircraft always precedes a departing aircraft and if occurs in taxiway, stop bars, parking bays, a departing aircraft precedes a landing one. We also implement the EDD rule, instead F IF O, for the arc selection. The EDD rule solves aircraft conflict situations by assigning each conflicting resource to the aircraft whit minimum due date. We apply the EDD rule to optimize the first objective function, the other two types of criteria represent safety constrains. The AGH based on F IF O rule represents a good estimation of the solution currently produced by controllers in terms of both safety and quality. Note that the AGH based on EDD is implemented to reduce the number of tardy aircrafts since the precedence is given first to the aircraft with the most pressing due date. Once a feasible solution x has been constructed, it is modeled by the alternative graph and local search procedures are applied. The alternative graph, is a useful tool to rapidly estimate the effect produced by modifying the structure of a solution. The Local Greedy Heuristic (LGH) is a family of heuristic algorithms (see Fig 7). The family is based on the idea of repeatedly choose an arc at a time from set A and select the other arc of the alternative pair until an improvement is found. The exchange is not accepted if a cycle is detected or the solution does not improve. At each step the arc is selected in an ordered list S constructed on a local rule (LR). Every time an improvement is obtained the list S and
50
L. Adacher and M. Flamini
the solution x are updated. The LGH considers only the first objective function (minimization of tardy aircrafts) but we can notice that even early flights could cause coordination discomforts in the T M A management. Obviously, a tardy aircraft causes major costs with respect to an early aircraft, but we are also interested in maximizing the number of on time aircrafts (neither tardy, noor early). Hence, we implement two different local rules LR, one to improve the number of tardy aircrafts and the other to optimize the number of on time aircrafts. Local Greedy Heuristic Input: Alternative graph G = (N, F, A) given a feasible solution x from AGH S : set of selected alternative arcs constructed on the basis of a local rule (LR) begin while S = ∅ do an arc (u, v) ∈ A is select on the basis of LR(·) A := A − {(u, v)} + {(v, u)} if G(A) , x’ is not improved solution then A := A + {(u, v)} − {(v, u)} else x = x’ and update S end end. Fig. 7. LGH algorithm
The basic idea is to try and iteratively invert precedences between two aircrafts. After each inversion a forward visit of the graph detects the acyclicity of the graph and updates the nodes heads. An inversion is accepted only if the new solution is feasible and improves. The heuristics in the LGH family differ from each other for the evaluation criterion applied to choose the arc from A. Given a feasible solution from AGH, we calculate the lateness for each aircraft, comparing the due date with the heads of nodes representing (i) the arrival to the parking bay for the arriving aircrafts, and (ii) the arrival to the first segment of runway for departing aircrafts. Naturally, if the lateness is negative we have an early aircraft, if it is positive we have a tardy aircraft and if it is equal to zero we have an on time aircraft. Note that it is impossible to meet exactly the due date, for this reason we have introduced a time interval for each aircraft in which it is considered on time. On the other hand, this really small interval is trivial respect to the whole flight. Obviously, the LGH inverts precedence between aircrafts if and only if an early aircraft precedes a tardy aircraft, otherwise it is not possible to improve the solution. In fact, we can improve the first objective function only if we delay an early aircraft or if anticipate a tardy aircraft. We develop two heuristic procedures based on two different LR: mM L (maximum lateness-minimum lateness) heuristic inverts precedence between the aircraft with the minimum absolute value of lateness preceding the
Limiting Pollution in Ground Control Optimization
51
aircraft with the maximum absolute value of lateness, to reduce the number of tardy aircrafts; ET (earliness-tardiness) heuristic inverts precedence between the aircraft with minimum earliness preceding the aircraft with maximum tardiness, to improve the number of on time aircrafts. In practice, M mL detects the aircraft aM with maximum absolute value of lateness and the aircraft am with minimum absolute value of lateness; if there exists an arc from aM to am then M mL selects the other arc of the alternative pair. If this exchange does not improve the solution, or a positive length cycle is detected, the M mL heuristic continues with the second minimum and maximum absolute value of lateness and so on. Heuristic ET detects the aircraft with minimum earliness and the aircraft with maximum tardiness. If there exists the arc from early to tardy aircraft then ET selects the other arc of the alternative pair; if this exchange does not improve the solution, or a positive length cycle is detected, the ET continues with the second minimum early and the maximum tardy aircrafts, then with the third minimum early and so on. If the solution never improves ET heuristic tries with the aircraft with the second maximum tardiness and first minimum early aircraft then with the second minimum early aircraft and so on. These two types of exchange are done on the AGH feasible solution, when a change improvements the solution the LGH rules are applied on this new solution, and the scheme is repeated until a new improvement is found or a feasible solution does not exist. Given the LGH solution (calculated on the basis of ET /M mL heuristic) we try, only for the departing aircrafts, to anticipate to the parking bay the total waiting time (or a fraction of it) that an aircraft accumulates along the route (Safety-Pollution Heuristic SP H). We calculate the waiting time at the stop bars for departing aircrafts and we try to shift a fraction of such waiting time to the parking bay, utilizing the binary research. We start the research by transferring the total waiting time at the stop bar to the parking bay. If SP H does not find a feasible solution SP H we try with half waiting time, and so on. If a feasible solution is constructed SP H has reduced the total waiting time at the stop bars, improving the safety, and, at the same time, it has increased the time with the engines turned off, reducing the pollution. This change on the waiting time with the engines turned off is approved only if the number of tardy aircrafts does not increase.
5
Computational Experiments
Experiments are carried out considering as a reference test case one busy hour of arrivals and departures at the Malpensa international airport. We have tested different instances (denoted as n m x t) based on four parameters (n,m,x,t ): – – – –
n: number of departures (n ∈ {4, 5, 6, 8, 10, 15}) m: number of arrivals (m ∈ {4, 5, 6, 8, 10, 15}) x: number consecutive arrivals/departures (x ∈ {2, 3, 4, 5, 6}) t: simulation constant (t ∈ {4, 5, 6, 8, 10, 12, 20})
52
L. Adacher and M. Flamini
The simulation constant t and the T M A average throughput time X define the simulation time interval T = t ∗ X. The routing problem is solved off-line in a preliminary step and the main focus is on real-time scheduling decisions with fixed routes (we have tested only real routing). In particular, we deal with the problem of scheduling airplanes moving on ground,with the objective of minimizing the number of tardy aircrafts (or of maximizing the number of on time aircrafts). In AGH the EDD rule gives better results in comparison to F IF O: if we consider the number of tardy aircrafts the EDD improvement is around 25%, while the average tardiness improves of 60%. If we consider the number on time aircrafts the improvement is obviously inferior and it is attested around 5%, and with respect to the average lateness it is equal to 30%. The main results are shown in the following tables, where only the EDD rule is considered. The ET heuristic (based on the exchange between tardy and early aircrafts) gives better improvement respected to the minimization of the number of tardy aircrafts, and the M mL heuristic (based on the exchange between maximum lateness and minimum of jobs) gives better improvement with respect to the maximization of on-time aircrafts. But the behavior of these two types of heuristic is more or less the same. Table 1. ET improvement related to the minimization of tardy aircrafts.The results are given in percentage. Class 4444 4448 5555 5 5 5 10 6446 4646 6666 6 6 6 12 8448 4848 10 5 5 8 5 10 5 8 10 5 3 8 5 10 3 8 10 10 5 10 10 10 5 20
# Tardy AGH 29 42 48 55 40 45 52 54 37 65 44 72 44 73 68 73
aircrafts Improvement Average ET Tardiness [%] 25 28 39 9 44 8 46 15 36 9 45 5 47 10 50 7 33 8 63 7 37 9 71 4 37 10 70 5 68 2 65 7
In Table 1 the improvement of ET compared to the found feasible solution by the AGH is reported. When the number of tardy aircrafts is the same there is an improvement of the average tardiness. The number of tardy aircraft is calculated in parentage considering the number of tardy aircrafts in the solution (AGH first column and ET second column) divided by the total number of aircrafts. The last column represents the improvement of average tardiness obtained applying
Limiting Pollution in Ground Control Optimization
53
Table 2. M mL improvement related to the maximization of the number of on time aircrafts. The results are given in percentage. Class 4444 4448 5555 5 5 5 10 6446 4646 6666 6 6 6 12 8448 4848 10 5 5 8 5 10 5 8 10 5 3 8 5 10 3 8 10 10 5 10 10 10 5 20
# On time aircrafts Improvement Average AGH M mL Lateness [%] 28 34 1 11 17 7 16 22 5 12 17 4 10 16 5 17 23 3 11 14 4 11 16 5 9 17 5 30 34 3 7 13 4 8 11 2 12 18 5 9 14 9 12 19 8 3 7 4
Table 3. Local search based on the waiting times imposed at the parking bay. The results are given in percentage. Class 4444 4448 5555 5 5 5 10 6446 4646 6666 6 6 6 12 8448 4848 10 5 5 8 5 10 5 8 10 5 3 8 5 10 3 8 10 10 5 10 10 10 5 20
On time aircrafts absolute lateness 0,8 0,8 2,5 0,8 4,2 2,0 2,3 3,1 3,8 0,6 6,0 2,1 5,0 1,0 0,0 0,0
1,9 4,1 -1,1 1,2 2,0 0,4 -1,3 1,1 1,3 1,1 2,6 -1,0 1,7 -2,1 0,2 0,0
Safety ET M mL 78 39 88 39 77 28 80 21 72 0 84 38 68 8 64 6 73 12 68 21 68 10 70 12 62 5 58 8 45 21 62 0
Pollution ET M mL 95 11 85 11 75 30 84 17 88 19 74 29 74 18 72 15 72 15 57 12 82 26 63 12 58 14 62 15 57 17 52 10
the ET heuristic. Note that in these tables we have only considered the AGH solution based on EDD rule that gives an improvement of 25% compared to AGH solution. In Table 2 the improvement of M mL compared to the AGH solution is reported. The first column reports the percentage of on time aircrafts for AGH
54
L. Adacher and M. Flamini
and the second for M mL. The last column represents the absolute lateness improvement due the local search. Given the LGH solution (calculated by ET /M mL rule) we try, only for the departing aircrafts, to transfer the waiting time from the stop bars to the parking bay (Safety Pollution Heuristic SP H). The results of SP H are reported in Table 3. When we consider tardy aircrafts, the SP H improves only the safety and the pollution. It is important to notice that the local search SP H produces an improvement of the safety at least of 50% in all cases, and for the pollution an average reduction of 20%. When we consider the on time aircrafts, the SP H produces an improvement of the safety at least of 45% in all the cases and for the pollution an average reduction of 15%, but it is also obtained a small improvement for on time aircrafts and absolute average lateness (see first and second column).
6
Conclusion
In this paper we introduced the alternative graph model for Aircraft Scheduling Problem in the Terminal Meneuvring Area of Malpensa airport. We show that even a simple greedy heuristic is able to reduce the number of tardy aircrafts (improve on time aircrafts) and the average delay (average absolute lateness) when compared to commonly adopted policies. We observe that an advanced real-time scheduling system may be useful to optimize the traffic conditions, improving the safety and the pollution on ground. We are investigating if changing the lexicographic order could lead to an improvement of the objective functions or of the performance indices. Other different policies will be considered to reduce the time with the engine on, for instance by transferring the waiting time from the taxyways to the parking bays.
References 1. Anagmostakis, I., Clarke, J., Bohme, D., Volckers, U.: Runway Operations Planning and control:Sequencing and Scheduling. Journal of Aircraft 38(6) (2001) 2. Beasley, J.E., Krishnamoorthy, M., Sharaiha, Y.M., Abramson, D.: Scheduling aircraft landings - the static case. Transportation Science 34, 180–197 (2000) 3. Bianco, L., Dell’Olmo, P., Giordani, S.: Scheduling models and algorithms for TMA traffic management. In: Bianco, L., et al. (eds.) Modelling and simulation in air traffic management, pp. 139–168. Springer, Heidelberg (1997) 4. Adacher, L., Pacciarelli, D., Paluzzi, D., Pranzo, M.: Scheduling arrivals and departures in a busy airport. In: Preprints of the 5th Triennial Symposium on Transportation Analysis, Le Gosier, Guadaloupe (2004) 5. Dear, R.G., Sherif, Y.S.: An algorithm for computer assisted sequencing and scheduling of terminal area operations. Transportation Research A 25, 129–139 (1991) 6. Neuman F., Erzberger.: Analysis of Sequencing and Scheduling Methods for Arrival Traffic. NASA Technical Memorandum 102795 (April 1990)
Limiting Pollution in Ground Control Optimization
55
7. Neuman F., Erzberger.: Analysis of Delay reducing and Fuel saving sequencing and spacing algorithms for arrival spacing. NASA Technical Memorandum 103880 (October 1991) 8. Bianco, L., Dell’Olmo, P., Giordani, S.: Aircraft Flow Scheduling in the Terminal Maneuvering Area. In: Proceedings of the Triennial Symposium on Transportation Analysis (TRISTAN IV), Sao Miguel, Portugal, pp. 281–286 (2001) 9. Mascis, A., Pacciarelli, D.: Job shop scheduling with blocking and no-wait constraints. European Journal of Operational Research 143(3), 498–517 (2002) 10. Roy B., Sussman B, Les probl`em d’ordonnancement avec contraintes disjonctives. Note DS No. 9bis, SEMA, Paris (1964) 11. Pacciarelli D., M. Pranzo, Production Scheduling in a Steelmaking-continuous Casting Plant, Report DIA-50-2000, Dipartimento di Informatica e Automazione, Universit` a Roma Tre, Roma, Italy (2000) 12. Mascis, A., Pacciarelli, D., Pranzo, M.: Train scheduling in regional railway networks. In: Proceedings of the Triennial Symposium on Transportation Analysis (TRISTAN IV), Sao Miguel, Portugal, pp. 487–492 (2001)
A Simulation Environment for Smart Charging of Electric Vehicles Using a Multi-objective Evolutionary Algorithm Maryam Ramezani, Mario Graf, and Harald Vogt SAP Research, Karlsruhe, Germany {maryam.ramezani,mario.graf,harald.vogt}@sap.com
Abstract. Integration of the electric vehicles (EV) into the power grid is one of the most important efforts to reduce CO2 emissions in the transport sector. Electric vehicles can put significant stress on sections of the distribution grid while charging. In order to maintain grid availability, it is essential that the individual charging schedules are aligned with each other such that the total load does not exceed the grid’s maximum capacity. In addition to this hard constraint, user preferences, constraints enforced by the battery, other grid loads, market prices, consumer tariffs, and possibly other factors have to be considered when creating charging schedules. In this paper, we present the design of a simulation environment, which produces charging schedules using a multi-objective, evolutionary optimization algorithm.
1
Introduction
In the last decades, due to emission reduction policies, researchers have focused on developing large-scale sustainable energy systems. Among those, researchers have studied approaches to support integration of electric vehicles (EV) into the power grid. The focus on EVs and the infrastructure to support them should also take into account renewable energy resources. Since today’s inexpensive and abundant renewable energy resources have fluctuating output, we must learn to maintain a balance between demand and supply. Previous studies on the impact of charging electric vehicles on distribution grids have shown that uncoordinated charging of the batteries can have considerable impact on the performance of the distribution grid in terms of power losses and power quality [1]. While electric vehicles (EVs) can be considered a challenge to the power grid’s stability, EVs can also be used as a means for balancing supply and demand, thus contributing to grid stability as well as price stability. For example, charging loads could be increased if cheap power is available. Also, power could be transferred back into the grid through vehicle-to-grid services (V2G) [2]. In addition to constraints and benefits associated with the grid, a smart charging infrastructure should take into account other constraints and goals. For example, constraints and requirements of the batteries, the preferences of the D. Kranzlm¨ uller and A M. Tjoa (Eds.): ICT-GLOW 2011, LNCS 6868, pp. 56–63, 2011. c Springer-Verlag Berlin Heidelberg 2011
A Simulation Environment for Smart Charging of Electric Vehicles
57
users, and the market players. In this paper, we propose an intelligent charging controller that employs a multi-objective evolutionary algorithm to derive an optimized schedule for charging of batteries based on several tunable objectives. This controller is embedded within a simulation environment that allows the exploration of different scheduling strategies. There are two basic scenarios for EV battery charging that largely determine the classes of scheduling strategies: public and private charging infrastructures. In the case of public charging, different public parkings such as shopping malls, train stations, airports, corporate parking, etc can offer charging . Our goal is to provide a solution that can provide an optimized charging schedule for different environments considering various constraints and requirements. Our solution is adaptable to different scenarios based on the requirements, preferences and objectives set by the charging service provider. For example, different public parkings have various expected parking durations. A shopping mall might have an average of 3-4 hours parking duration while the average parking duration for a corporate parking might be up to 8 hours and for a train station up to 10-12 hours. Moreover, the objectives of charging providers in each parking station might be quite different. A charging station in the shopping mall might only have the objective of maximizing profit by charging as many cars as possible, while the charging provider in a company might have the objective to minimize battery degradation of the company’s car fleet. On the other hand, a charging provider in a train station or airport might have the objective of using the electric cars as capacities for stabilizing the grid. In such a scenario, the charging provider might even provide the parking spot for free to vehicles that stay there for a long time and give the permission to use their batteries as capacities for vehicle to grid purposes. The contributions of this paper are two-fold. First, we present a simulation environment where different charging scenarios are defined and parameters are set. Second, we propose a multi-objective evolutionary algorithm for smart charging of electric vehicles. This paper is a preliminary presentation of our ongoing research and does not provide experimental results. The rest of this paper is organized as follows. We review the related work in section 2. Next, in section 3 we define the problem context in terms of the constraints, objectives, and fitness functions. Section 4 outlines the multi-objective, evolutionary optimization algorithm, and describes the simulation environment in which the optimization component is embedded. Finally, section 5 concludes the paper and discusses the next steps in the work progress.
2
Related Work
Various approaches for controlling the charging of electric vehicles have been suggested in the literature. Three charge-control methods have been proposed in [3] and they are compared with a baseline case where the vehicles are assumed to be plugged in and charged as soon as they are parked. The three scenarios include
58
M. Ramezani, M. Graf, and H. Vogt
price signal-based charging, load-signal-based charging, and renewable-energysignal charging. In the price-signal-based charging the charging rate is decided based on the real time prices and in the load-signal-based charging scheme the charging rates are defined by the real time load. Renewable-energy-signal charging is based on the premise that the cars are charged only using renewable energy. When RE availability is high (e.g. in windy or sunny conditions), the cars are charged with a higher rate while they are charged at a lower rate when less RE resources are available. However, the controller ensures that all vehicles will be able to fully charge within certain time (e.g 6 hours) even when no RE resources are available. Researchers have studied approaches for optimized charging of EVs at home [1,4]. Mets et al. [4] introduce two optimization strategies and compare them with a baseline scenario where cars are charged fully as soon as they are plugged in. The first method is a local strategy where only information of one residential home where the car is charged is taken into account. Thus, the charging is optimized for local loads. The second method is a global strategy which controls the charging of multiple vehicles based on global load information over a residential area. Both strategies control the duration and rate of charging and result in charging schedules for each vehicle. The results of this study show that control strategies can lower peak load and smooth the overall load profile as a result of shifting the demand. Similarly, [1] proposes stochastic programming to compute optimal charging schedule for plug-in hybrid electric vehicles by minimizing the power losses. Our work in this paper is different from the ones mentioned above in several aspects. First, we propose an optimization algorithm that is applicable to public charging scenarios as well as a private one. Moreover, we design a multi-objective algorithm which can take into account several hard and soft constraints for optimization. Our suggested algorithm is flexibly tunable based on the preferences and requirements of the charging service provider.
3
Problem Definition
In this section we describe the hard constraints and objectives that our optimization algorithm takes into account. 3.1
Hard Constraints
Hard constraints are restrictions and limitations that must be taken into account in any schedule. There is no acceptable solution that violates the hard constraints while objectives are soft constraints. Grid Capacity. We consider the grid capacity as a hard constraint in all our scenarios. Our assumption is that the charging service provider will get updates about the available grid capacity in regular intervals, e.g. every 15 minutes. The charging controller plans the charging schedule based on the prediction of available capacity in the future. However, it reacts in real time to the deviations
A Simulation Environment for Smart Charging of Electric Vehicles
59
between the actual available capacity and the predicted once. At any time, the sum of charging loads should be below the grid capacity reserved for EV charging: P (i, t) < capacity(t) (1) ∀t : i
where P denotes the charging power level applied to EV battery i at time t, and capacity(t) is the grid capacity available for EV charging at time t, which is specified by the grid operator. For determining this value, other loads connected to the grid are taken into account. Battery Constraints. Different types of batteries have certain constraints which have to be taken into account by the charging controller, especially regarding their charging curves that have to stay within given bounds. In addition, we consider two further important constraints for the batteries: (1) the maximum amperage and (2) the possibility of intermittent charging. Only batteries that are compatible with intermittent charging will be assigned an intermittent schedule. All batteries not capable of this are assigned continuous schedules. 3.2
Optimization Objectives
We consider several objectives for the evolutionary algorithm. Each objective can be weighted according to the preferences of the charging service provider. The optimization algorithm should consider the different objectives and provide the solution that maximizes the fitness function of the objectives. Maximize Provider Profit. The provider profit is determined by the difference between the sales price and the procurement cost of the charging power. Basically, procurement takes place on two different markets. On the first market, large amounts of base load are traded for securing the long-term supply in response to determined base demand. On the second market, smaller and short-terms loads are traded, possibly at real-time prices. The cost of transactions and the price for the purchased amounts of energy determine the provider’s procurement costs. At a given time, there is a certain cost associated with the provisioning of power to the charging infrastructure. The procurement cost is denoted as priceproc (t) for a given time interval t. The optimizer should consider dynamic prices and schedule the charging such that possibly most cars get charged when procurement costs are low, and avoid charging at peak prices. In addition, we define pricecust (i, t) as the individual price value for customer i within time interval t. Charging prices might be different for different customers based on various kinds of tariffs or contracts. For example, a specific customer might have a contract that guarantees a fixed price at specific times of day. Thus, the provider profit can be calculated as: #cars
R=
(charge(i, t) × (pricecust (i, t) − priceproc (t)))
(2)
i=1 t∈T
where T is a set of mutually disjoint but continuous time intervals, and charge (i, t) is the amount of electricity charged by car i at time interval t.
60
M. Ramezani, M. Graf, and H. Vogt
Minimize Battery Degradation. The effects of combined driving and vehicleto-grid (V2G) usage on the lifetime performance of different type of batteries for EVs have been studied by several researchers including [5,6]. In our optimization algorithm we consider two different adverse influences to battery lifetime. First, impact of discontinuous charging, second the impact of charging itself. The latter depends on the used charging curve (the amperage value) of a specific battery type. We expect less Battery degradation when lower amperage is used compared to high amperages. We define degradation factors for different battery types which represent the degree of adverse influences to battery lifetime. fdisc represents the degradation factor of a specific battery for discontinuous charging and fcharge (c) represents the degradation factor of that battery when charged with charging curve c. In a real scenario, these degradation factors can be determined by long term experiments for different battery types. The overall degradation D(i) of a charging process for a car i is calculated as the sum of all degradation values: D(i) =
fcharge (c) × charge(c) + fdisc × n
(3)
c∈C
where n is the number of times the charging has been stopped and restarted during one charging process, C is the set of different charging curves used in one charging process and charge(c) is the scale of energy for a charging curve c. Maximize User Satisfaction. We assume that users specify the minimum requested charging level and the departure time. These factors are considered as hard constraints for the algorithm while the other objectives discussed so far are weighted based on user priorities. If the user has not explicitly specified his preferences regarding the significance of cheaper price, faster charging, or low battery degradation, then the algorithm considers equal weights for each objective.
4
A Simulation Environment for Smart Charging
A simulation environment for EV charging serves multiple purposes: – It can be used to evaluate user tariffs in various scenarios, determining the expected costs for EV charging under different market conditions and in different locations. The individual cost for each user can be determined, from which statistics can be derived. From this, market acceptance of tariffs can be assessed. – The power provider can use the simulation environment to estimate the amount of the base load at different times, and the level of fluctuations. This helps him to procure the required amounts of energy at low prices. Furthermore, by setting dynamic price profiles, the provider can give incentives to make use of renewable energy when possible.
A Simulation Environment for Smart Charging of Electric Vehicles
61
– The presented optimization goals are partially contradictory by nature, therefore not all possible user preferences can be fulfilled. Simulations can help to determine reasonable and meaningful user preferences, thereby providing a foundation to design tools that help users to define their preferences according to their expectations. We design a simulation environment that builds on a multi-objective optimization algorithm. Within the simulation environment, scenarios are defines and parameters are set. The optimization algorithm employs an evolutionary scheme that is able to handle contradictory optimization objectives. 4.1
Simulation Environment Properties
This simulation environment is capable of generating a scenario based on several parameters that describe a specific situation. These parameters specify minimum, maximum and average values as well as standard deviation values of Gaussian distributions, which are used to calculate realistic scenario data. In addition, several uncertainties will be considered within a scenario. For example, it is not realistic that car owners can exactly specify the fetching time of their cars prior to charging. The same applies for predictions of maximum capacity curves or car arrivals. Therefore we use Gaussian distributions to simulate deviations of what we call “expected” and “real” data. The following sections will present the most important scenario information. Scenario Meta Information. Each scenario has its unique properties, a specified time interval and a number of charging stations. In addition, it is possible to set different points in time at which scenario parameters (e.g. capacity curve) change. Location Specific Information. We consider each location to have an expected number of car arrivals during each simulation period. Moreover, we simulate the capacity curve predictions. Capacity predictions may change over time and are simulated more accurate for closer points in time relative to simulation progress. Car Owner Behavior. Cars have a specific time of arrival as well as a specific parking duration depending on the scenario. Arrivals and departures are precisely simulated. Besides, each car battery has a certain charge level on arrival and a requested charge level. Battery Information. Each car is simulated with a specific battery type for which we assume to have technical data. Characteristics of a concrete manifestation of such a battery type may differ slightly from its specification because of degradation and environmental conditions. We consider each battery to have a limited set of charging curves with different maximum amperage rates.
62
M. Ramezani, M. Graf, and H. Vogt 100.000
0,020
90.000
0,019
Power [W]
0,017
70.000
0,016
60.000
0,015 0,014
50.000
0,013
40.000
0,012
30.000
0,011
20.000
0,010
Electricity price [Cent/Wh]
0,018
80.000
0,009
10.000
0,008
0 00:00 02:00 04:00 06:00 08:00 10:00 12:00 14:00 16:00 18:00 20:00 22:00 00:00
Maximum power
Used power
Electricity price
Fig. 1. Simulation environment shows the electricity price, maximum grid capacity and the used power for charging. The charging schedule is given by an evolutionary algorithm which considers different factors.
4.2
Optimization Algorithm
As a first step of optimization, several solutions that hold all hard constraints are generated. A solution contains the charging schedule for the all the cars, specifying the start and end time of the charging as well as the used charging curve. We develop a hybrid evolutionary algorithm using a local search technique. Thereby all cars are rescheduled one after the other in a specific order until an optimum is reached and no further improvement is possible. A mutation operator that exchanges the starting charging time of several cars is used during evolution in order to escape local optima. In addition, a One-Point-Crossover is applied that combines existing charging schedules. New solutions that are generated by mutation or recombination are subsequently optimized with local optimization. To realize the charging optimization of a continuous simulation scenario, the optimizer has to be called every time planning circumstances change. For example, when a new car arrives or when the available grid capacity is different from the existing prediction. Figure 1 shows an screenshot of the simulation environment. We can see that the charging schedules are optimized so that more cars are charged when the price is cheaper.
5
Conclusion and Future Work
In this paper, we presented a simulation environment and a multi-objective evolutionary algorithm for smart charging of electric vehicles. Our suggested charging controller, with the optimization algorithm at its core, could be used in a real-world setting for creating charging schedules. This requires that the simulation environment is substituted with interfaces to real-world devices and systems.
A Simulation Environment for Smart Charging of Electric Vehicles
63
As current work in progress, we have designed benchmark scenarios to compare our evolutionary algorithm results with other baseline approaches such as first in first out, greedy algorithm and local optimization. As future work, several evaluation scenarios will be generated and stored in a database. Each scenario will be tested with all scheduling approaches and the results of a full simulation run will be evaluated based on the introduces objectives and the assigned weights to each objective. In addition, we will experiment with different levels of uncertainty to identify the impact of uncertainty on our approach. This will show the requirements of accurate predictions for a reasonable usage of multi-objective evolutionary algorithms for charging of EVs. In addition, future work can focus on better understanding the requirements. The operator of the charging infrastructure may be different from the power provider, which again may differ from the grid operator. Depending on who is the operator of the charging controller, a different set of optimization weights may be necessary.
References 1. Clement-Nyns, K., Haesen, E., Driesen, J.: The impact of charging plug-in hybrid electric vehicles on a residential distribution grid. IEEE Transactions on Power Systems 25(1), 371–380 (2010) 2. Kempton, W., Tomi´c, J.: Vehicle-to-grid power fundamentals: Calculating capacity and net revenue. Journal of Power Sources 144(1), 268–279 (2005) 3. Markel, T., Kuss, M., Denholm, P.: Communication and control of electric drive vehicles supporting renewables. In: Vehicle Power and Propulsion Conference, VPPC 2009, pp. 27–34. IEEE, Los Alamitos (2009) 4. Mets, K., Verschueren, T., Haerick, W., Develder, C., de Turck, F.: Optimizing Smart Energy Control Strategies for Plug-In Hybrid Electric Vehicle Charging. In: IEEE/IFIP Network Operations and Managament Symposium Workshops (2010) 5. Ritchie, A., Howard, W.: Recent developments and likely advances in lithium-ion batteries. Journal of Power Sources 162(2), 809–812 (2006); special issue including selected papers from the International Power Sources Symposium 2005 together with regular papers 6. Gross, S.: Review of candidate batteries for electric vehicles. Energy Conversion 15(3-4), 95 (1976)
Furthering the Growth of Cloud Computing by Providing Privacy as a Service David S. Allison and Miriam A.M. Capretz The University of Western Ontario London, ON, Canada {dallison,mcapretz}@uwo.ca
Abstract. The evolution of Cloud Computing as a viable business solution for providing hardware and software has created many security concerns. Among these security concerns, privacy is often overlooked. If Cloud Computing is to continue its growth, this privacy concern will need to be addressed. In this work we discuss the current growth of Cloud Computing and the impact the public sector and privacy can have in furthering this growth. To begin to provide privacy protection for Cloud Computing, we introduce privacy constraints that outline privacy preferences. We propose the expansion of Cloud Service Level Agreements (SLAs) to include these privacy constraints as Quality of Service (QoS) levels. This privacy QoS must be agreed upon along with the rest of the QoS terms within the SLA by the Cloud consumer and provider. Finally, we introduce Privacy as a Service (PraaS) to monitor the agreement and provide enforcement if necessary. Keywords: Cloud Computing, Privacy, Quality of Service, Privacy as a Service.
1 Introduction Cloud Computing represents an evolution of both computer hardware and software, as businesses and individuals alike no longer need to design, purchase, setup or maintain their own systems. Both hardware and software can be virtually maintained on the Cloud by a provider. Cloud Computing is desirable due to its cost effectiveness; the computing resources Cloud Computing can provide are often offered as a pay-as-yougo plan. In order for new computing evolutions, such as Cloud Computing, to gain widespread acceptance, the concerns consumers have in the technology must be addressed. Cloud Computing has shown success with consumers in some areas, such as delivering Web based email and online documents. These results, as seen in Google's Gmail [1] and Google Docs [2], are just a few of the possible uses for Cloud Computing. In order for Cloud Computing to continue its initial success and gain more widespread acceptance, major areas of consumer concern must be found and addressed. A 2010 survey of 100 IT professionals found that security was the top Cloud related concern, cited by 73% of the respondents [3]. Security is a far reaching topic in Cloud Computing and e-services, and includes such topics as authentication, authorization, auditing and privacy. D. Kranzlmüller and A M. Tjoa (Eds.): ICT-GLOW 2011, LNCS 6868, pp. 64–78, 2011. © Springer-Verlag Berlin Heidelberg 2011
Furthering the Growth of Cloud Computing by Providing Privacy as a Service
65
Privacy is a difficult topic with many unique problems. Privacy is subjective, as what can be considered private is unique to each individual. Providers prefer little consumer privacy, as the more information about a person a provider knows, the better it can create direct advertising. Due to these problems, of all the different topics in security, privacy is the least addressed [4]. Privacy is a particular concern to Cloud Computing, as Cloud providers necessarily have access to all of a consumer's data, and can use or disclose that information for unauthorized purposes, either accidentally or deliberately [5]. By addressing the issues of privacy, Cloud Computing will further gain the trust of consumers. This increase of consumer trust will give Cloud Computing a wider acceptance and will lead to its further growth as a technology. It is important for the adoption of Cloud Computing to increase not only for economic reasons, but environmental as well. Cloud Computing advocates the better management of resources, resulting in the reduction of carbon emissions and the environmental impact of IT [6]. The environment impact of IT is substantial, accounting for 2% of all global carbon emissions [7]. A 2010 study commissioned by Microsoft [8] and conducted by Accenture [9] and WSP Environment & Energy [10], found that moving business applications from in-house to the Cloud can save a substantial percentage of carbon emissions, depending on the size of the business. Smaller businesses show the greatest benefit, reducing carbon emissions by up to 90 percent. Medium businesses are able to produce a 60 to 90 percent reduction, and large businesses a 30 to 60 percent reduction [11]. These reductions in carbon emissions were in large part thanks to four key aspects of Cloud Computing: the reduction of over-allocation of infrastructure, the sharing of application instances between consumers to reduce peak loads, the increased utilization of server infrastructure, and the improved efficiency of data centers to reduce the power required for cooling and maintenance [11]. In this work the ideas and issues surrounding privacy in Cloud Computing will be discussed, and the beginning of a framework to address Cloud Computing privacy will be presented. The goal of this work is to increase the adoption of Cloud Computing by providing privacy protection, in order to increase the economic and environment benefits Cloud Computing provides. We have previous experience in developing a privacy framework containing a Privacy Service and privacy policies in the related field of Service-Oriented Architecture (SOA) [12]. This work has the additional goal of being the first step towards a larger privacy framework for Cloud Computing. Section 2 discusses the current growth of Cloud Computing, and how the public sector and privacy can increase this growth. Section 3 provides an introduction to privacy, by first defining privacy, and then defining the different classifications of private information. Section 4 extends current SLAs with privacy quality of service (QoS) parameters. To this end, privacy constraints are developed from general privacy guidelines. These privacy constraints are defined, and then introduced into the SLA as QoS level parameters. Section 5 discusses the need for monitoring and legislation related to privacy in the Cloud. It is in section 5 that the concept of Privacy as a Service (PraaS) is introduced. This PraaS adds an extra level to the Cloud, which monitors the agreed upon privacy terms of the SLA. If any infractions are detected, the PraaS will provide alerts and enforcement if necessary. Section 6 discusses related work in the field of Cloud Computing privacy. Finally, Section 7 presents conclusions and future work.
66
D.S. Allison and M.A.M. Capretz
2 Cloud Computing Growth Cloud Computing has shown much growth since its inception less than a decade ago. However there is still much room available for continued expansion. In this section the abilities of Cloud Computing that have lead to its initial success are discussed, along with the Cloud's potential future growth and the role the public sector needs to play in that growth.
Fig. 1. Services available in the Cloud
2.1 Current Reasons for Growth The main advantage of Cloud Computing is its ability to provide an infinite amount of computer resources on demand, scaling to fit each individual need [13]. This relieves the Cloud Computing consumer from the task of planning ahead for future hardware and software requirements. Each Cloud consumer is charged for only what they are using, creating a renting structure for computer resources. Cloud Computing has been successful since its inception due to the large variety of services it provides. These services, as shown in Figure 1, range from low to high complexity and allow for a wide assortment of solutions to consumer needs. •
•
Software as a Service (SaaS): SaaS allows a consumer to access the functionality of a software application over the Internet or any computer network. SaaS has the benefits of not requiring a consumer to install any software on their own computer, allowing the application to be accessed easily from multiple devices. SaaS is also economically friendly, as consumers do not have to purchase an expensive software license, but rather lower priced access bundles based on access time or number of uses [14]. Infrastructure as a Service (IaaS): IaaS allows a consumer to gain access to a bare but complete hardware computing package. This includes hardware (HaaS), data storage (DaaS), network connectivity, and some fundamental software (SaaS), such as an operating system [15].
Furthering the Growth of Cloud Computing by Providing Privacy as a Service
•
•
•
67
Hardware as a Service (HaaS): HaaS is made available through the virtualization of computer hardware over a network [16]. Access to physical hardware is made available to the Cloud consumer, who is charged based on the amount of processing power they utilize. Hardware virtualization allows the provider to use as many pieces of physical hardware as required to satisfy the demand of the consumer, while from the perspective of the consumer, only one piece of hardware is being used. HaaS provides a consumer with hardware flexibility and scalability not possible with on-premise hardware. The consumer always has access to the correct amount of hardware to meet their needs [16]. Data as a Service (DaaS): DaaS, also known as Storage as a Service, allows consumers to send and retrieve their data on externally provided storage. DaaS is uniquely defined as providing a consumer with the ability to create, read, update and delete data, rather than providing computation on data [17]. Through the use of DaaS, consumers have access to a virtual, scalable hard drive that will theoretically never run out of disk space. From the perspective of the consumer, their data is available just as if it were available on a local disk [16]. Platform as a Service (PaaS): PaaS is a remote computing environment delivered by Cloud Computing through the combination of HaaS, DaaS and SaaS [16]. PaaS builds on top of IaaS, by adding a layer of abstraction to automate the system, typically an application environment [15]. Consumers can subscribe to PaaS and gain access to a virtual platform for application development and deployment [18].
2.2 Future Growth and the Public Sector The ability of the Cloud to provide remote, scalable, on-demand services at varying levels of complexity has lead to its initial success and growth. This growth has been so strong, that some leading technologists have predicted that within the decade upwards of 90% of the world's computing and data storage will take place in the Cloud [19]. While it has become easier to predict how Cloud Computing will be used in the future, there are still many unanswered questions about the Cloud's future legal, economic and security details [19]. Privacy is one large aspect of security that needs to be addressed. In order to achieve a privacy solution, help from the public sector will be required. The public sector can adopt not only Cloud Computing, but standards and laws for providing privacy in the Cloud as well. This adoption by the public sector will also add to consumer trust of Cloud Computing technologies, leading to its further growth. The public sector's involvement in Cloud Computing can produce a significant impact on the pace of the technology's development. Governments have shown the ability to provide this impact in examples such as the adoption of telecommunication standards and the investment in needed infrastructure. As well, governments are often the largest economic entity in their country, and provide an example for other sectors of business [19]. For another example of the impact governments and public sectors can have on the growth of a new technology, one can look at the rapid growth and success of the Internet. Through the Internet's roots as the research of the United
68
D.S. Allison and M.A.M. Capretz
States Department of Defense, to the United States federal government's early adoption of Web sites and Internet Protocol [19], the public sector of the United States fueled the widespread growth of the Internet. Similar interest from public sectors around the world in Cloud Computing along with privacy protection, will greatly increase the technology's growth and adoption.
3 Privacy In order to address privacy in Cloud Computing environments, one must first address the problem of defining privacy. Privacy as a concept is subjective, and has no single definition. In this section a definition for privacy will be given, which defines how privacy is viewed in this work. Also, the different types of private information one can expose on the Cloud will be defined. 3.1 Definition of Privacy Security in computing is a large subject consisting of many different areas, such as authentication, authorization, auditing and privacy. Of these security concerns, privacy is the most difficult to define. Authentication is the process of determining that someone is who they claim to be. Authorization is the act of determining that a person or thing has the right to access a particular resource. Auditing is the task of recording the actions of a person or thing, ensuring that this person or thing cannot perform an act, and then later claim that it did not happen. These definitions are simple and unambiguous. Privacy is unique in that it has no one definition, the idea of privacy has changed and evolved over time. In 1888, privacy was defined as "the right to be left alone" by Justice Thomas M. Cooley [20]. This definition evolved into the ability to control the release of information about oneself. In the modern era, new technologies such as Cloud Computing have made releasing information about oneself often not an option, but a necessity of communication. In many cases this release of information is done without an individual's knowledge or consent. For this reason, in this work privacy is defined as the ability to protect information about oneself, and to also have some level of control over any information that has already been released. 3.2 Private Information It is impossible to universally identify all information that should be considered private. What one person considers private may not be considered private by another. For example, some people freely list their telephone number in directories, while others withhold this information. In lieu of a list of all forms of private information, it is important to identify different classifications of private information. As privacy is subjective and often relies on a given context, the classification definitions given in this section are not meant to be universal, but to apply in context to this work. •
Personally Identifiable Information (PII): Personally identifiable information is any single piece or combination of information that can uniquely be traced to an individual. Some examples of a single-piece PII include credit card
Furthering the Growth of Cloud Computing by Providing Privacy as a Service
•
•
69
numbers, social insurance numbers, license plate numbers and fingerprints. Combination type PII include any grouping of information that together are associated with a single person. For example a name and a birthday individually may each point to several people, while together they can be used to find a specific person. Sensitive Information: Sensitive information is a classification that can be associated with a large number of people, but is still considered private by many due to personal concerns or personal preference. Examples of sensitive information include wage, age, sex, religion, and sexual preference. It is important to note that sensitive information can become PII if used in combination, or even by itself if the sample size is small or not diverse. For example in a city of people, knowing the age of a person would not be enough to identify that person. However in a workplace, there may only be a single person of a given age and thus age becomes PII. Usage Information: Usage information is gathered by tracking the history of any activity of an individual. Today, this is most commonly done through the tracking of an individual's activities on the Internet. When collected in small amounts, usage information cannot be traced to an individual. However when collected in large amounts over a period of time, even usage information can be used to deduce the identify of a person [21], thus it can become PII.
4 Extending the SLA with Privacy The first step that is required to provide privacy in a Cloud Computing environment is a formal agreement between the Cloud consumer and provider, outlining how private information of the consumer will be handled by the provider. The privacy specifications of the Cloud consumer and Cloud provider will often be different and in conflict with one another. Therefore a negotiation process will need to be completed between the two parties. Once negotiations have been completed, the agreed upon privacy details will form a privacy contract. Cloud Computing currently contains a contract known as a Service Level Agreement (SLA). The SLA details the quality of service agreements between a Cloud consumer and provider, outlining the conditions under which a service can be provided to a consumer [22]. Typically, these SLAs describe technical details such as availability, accessibility, throughput, and response time. SLAs rarely, if ever, discuss privacy. Thus we propose the current standard of Cloud Computing SLAs should be expanded to include privacy terms and conditions. 4.1 Developing Privacy Constraints In order to determine what privacy constraints should be added to the SLA, it is important to look at the current state of privacy legislation. The Organisation for Economic Co-operation and Development (OECD) has developed a set of Fair Information Practices (FIP) [23] which have been used as the basis for most of the privacy legislation throughout the world [24]. The FIP outlined by the OECD are a set of standards that govern the issues of privacy, both for the gathering and usage of personal information. The OECD guidelines produce eight basic privacy principles:
70
D.S. Allison and M.A.M. Capretz
1.
2.
3.
4.
5.
6.
7.
8.
Collection Limitation Principle: Limits should be placed on the collection of any personal data. Data that is collected should be gathered legally with the knowledge or permission of the data subject. Data Quality Principle: Personal data can only be collected if it is relevant to the purposes for which it is required. The collected data must also be current, whole and accurate. Purpose Specification Principle: Any and all purposes for which the personal data is being collected should be specified at or before the time of collection. Any future changes of purpose must also be reported to the data subject. Use Limitation Principle: Any personal data that is collected will not be made known or used for any purposes other than those specified by the Purpose Specification Principle. Exceptions to this are if consent is given by the data subject, or if the request is made with the authority of law. Security Safeguards Principle: Collected personal data must be protected against dangers by reasonable security safeguards. Examples of dangers are: unauthorized access, alteration, removal, use and data leaks. Openness Principle: Data controllers should provide transparency to their data collection by providing information regarding any data related practices, policies or developments. Data subjects should be provided the means to inquire about the existence of any personal data, the type of data, the purpose of use, the identity of the data collector and the location of the data. Individual Participation Principle: Data subjects should be able to determine if any of their information has been gathered by a data controller. If any data has been collected, the data subject can request to be sent the data in an understandable format and in a reasonable amount of time. If the controller refuses either of these requests, the decision must be communicated to the subject and be challengeable. Data subjects should be able to challenge the information that has been gathered about them and if proven correct, have that data changed, removed or amended. Accountability Principle: Accountability should be present to ensure the data controller is fulfilling all the above principles.
It is from these eight principles that the information that should be negotiated as part of a Cloud Computing SLA can be gathered. The process of selecting privacy constraints from these eight principles is shown in Figure 2 and is described in detail below. We have also used the same OECD guidelines in previous work to develop similar privacy policies for SOA [25]. •
Recipient: The Use Limitation and Openness principles require the identity of the party who is allowed access to the private data be specified. This allows the proper party to not only gain access to the data, but also be available for further questions and challenges related to their data collection. Similarly, the Use Limitation principle states that there should be limits to whom the data can be disclosed. While the Openness principle requires the data controller be able to state the identities of all parties who have access to the data. From these two principles it was determined that the recipients of the data must be disclosed. This could be the single provider alone, or include parties the provider may pass information to. The recipient constraint allows this information to be known.
Furthering the Growth of Cloud Computing by Providing Privacy as a Service
71
Fig. 2. Extracting privacy constraints from OECD principles
•
•
•
What: Not surprisingly, the most common theme throughout the OECD guidelines is dealing with the data itself. The Collection Limitation principle expresses that the data subject must know what parts of their information are being collected. The Data Quality principle states that the data must be complete and accurate, while the Openness principle dictates that the nature of the data must be made available. Finally, the Individual Participation principle lists challenges the data subject should be allowed to make in regards to their own private data. From these principles it becomes clear that what type of data will be collected must be defined. Only after this has been agreed upon between Cloud consumer and provider will these privacy principles be satisfied. Retention: Another requirement seen in multiple privacy principles deals with the idea of time. Collection Limitation states that there should be limits placed on the data collection, time being one such limit. Similarly, in order to keep the data up-to-date, as specified in the Data Quality principle, the age of the data must be specified. An agreed upon retention time would allow the appropriate length of time for storage of the collected data to be specified. Purpose: The Data Quality, Purpose Specification and Openness principles all require the reasons for which the data is collected be detailed. By outlining a purpose for the data collection, it can be assured that the possible uses of the data are known to both the Cloud consumer and provider.
72
D.S. Allison and M.A.M. Capretz
Not every principle outlined in the OECD guidelines has been addressed by the requirements outlined above. This is because a privacy solution can only fulfill every privacy concern when included within a larger security framework. The Security Safeguards principle states that the data must be protected against unauthorized access and release. These concerns are addressed through the use of traditional security techniques, such as authentication, authorization and encryption. The Accountability principle states the more abstract concern of holding the Cloud provider responsible for complying with all the other principles. Accountability presents a unique problem for Cloud Computing as the ability to provide enforcement is difficult and often nonexistent. This problem must be addressed through the combination of effective legislation and a Cloud monitoring system. 4.2 Privacy Quality of Service Levels Cloud Computing environments implement SLAs in order to control the delivery and use of computing resources from a Cloud provider to a Cloud consumer. An SLA is defined by a schema containing Quality of Service (QoS) parameters. We propose the expansion of traditional SLA schemas to include a QoS privacy parameter. This privacy parameter will consist of four ordered levels of service. These levels can be organized by the provider to meet their needs. An example set of QoS levels is shown in Table 1. Each privacy constraint as defined in section 4.1 has a different value for each level of service. This expansion of the SLA with QoS privacy parameters was inspired by our previous work in creating metadata for Quality of Security Service (QoSS) for SOA [26]. The constraints in each QoS level are flexible, and can be changed to meet the requirements of any Cloud Computing environment. The constraints in each QoS level are also expandable and can be further defined. For example, the Cloud consumer and provider can create a further definition for the Data Category constraint. The data could be classified into the three categories of personal data: PII, Sensitive Information, and Usage Information. Each of these categories can contain whatever type of information is desired, and this determination is dependent on the perspective of the consumer and provider. With this extension, the consumer and provider can outline fine-grained privacy for specific types of data. Table 1. Example QoS privacy levels
Level
Recipient
Data Category
Purpose
High
Local
Moderate
Trusted
Low
Enterprise
Guest
Anyone
Consumer Specified Consumer Specified Provider Specified Not Specified
No Collection & No Distribution Collection & No Distribution Collection & Limited Distribution Collection & Distribution
Retention Time 7 days 30 days 365 days Indefinitely
Furthering the Growth of Cloud Computing by Providing Privacy as a Service
73
To help illustrate the example shown in Table 1, the Cloud consumer could select the moderate level of service from the provider. This selection would mean that the consumer allows the recipient to be anyone trusted by the consumer, meaning any other service the provider includes in the Cloud. The data category is consumer specified, meaning the Cloud consumer chooses what types of data they will allow to be collected. The purpose is for collection and no distribution, meaning the provider can read their data, but not share it with anyone. Finally the retention time outlines that the data can be held for a maximum of 30 days. The QoS privacy parameters should be added to the schema in the same format as the current schema implementation. With the addition of the new privacy constraints, when the SLA is negotiated between consumer and provider, privacy will now be considered. The sophisticated process of SLA management and negotiation [6] is outside the scope of this work, but since the privacy QoS data is added to the schema in the same format as the preexisting SLA conditions, whichever negotiation process is currently applied should be easily convertible to handle the new constraint.
5 Monitoring and Legislation While the negotiation of privacy terms within an SLA is necessary, it is not enough to provide adequate privacy in Cloud Computing environments. There must be a system in place to both monitor the status of the SLA, and to provide enforcement of its terms. In this section, we discuss how this monitoring can be done, and how legislation is required for enforcement. 5.1 Monitoring Privacy with Privacy as a Service We propose a new Privacy as a Service (PraaS) to handle the monitoring of the privacy agreement between the Cloud consumer and provider. The PraaS will ensure the agreement that was reached between Cloud consumer and provider is being adhered to. The PraaS must be created and introduced into the Cloud by a trusted third party (TTP). The PraaS will be monitoring the situation with regards to privacy within the Cloud, as well as making decisions that affect both the Cloud consumer and provider. Trust in the provider of the PraaS is required in order to ensure both the Cloud consumer and provider that this monitoring and decision making process is being done without bias. This TTP could be an established standard organization, such as the OECD [27] or World Wide Web Consortium (W3C) [28], a public sector organization, or a not-for-profit organization. The PraaS is illustrated in Figure 3. Once the PraaS is introduced into the Cloud, it will be required to monitor the system. Monitoring in a Cloud environment is more difficult and complex than compared to an enterprise application due to the large amounts of data created over a distributed environment [29]. Compounding the problem is the lack of standardization in Cloud Computing [6]. The implementation of a monitoring system within PraaS is outside the scope of this work, but there are several existing Cloud monitoring tools which can provide examples of how such a system can be done [30] [31]. As many copies of the PraaS as required to efficiently monitor the system will be deployed in the Cloud. This will be done to avoid the PraaS becoming a single point of failure and to avoid creating a bottleneck in the Cloud.
74
D.S. Allison and M.A.M. Capretz
SLA Negotiation and Agreement Consumer Communicates
Cloud PaaS PraaS Provides
SaaS
IaaS DaaS
Trusted Third Party
HaaS
Communicates
Provides
Provider
Fig. 3. Privacy as a Service Deployment
5.2 Legislation and the Public Sector If a privacy violation is detected by the PraaS, both the Cloud consumer and provider should be informed. The TTP that deploys the PraaS can perform this action, as shown in Figure 3. The communication can be handled automatically by the PraaS, or another type of service developed by the TTP. If no quick resolution to the problem can be found, or the violation is severe, enforcement will be required. Enforcement of any technology that operates over networks such as the Internet is a challenging problem. In order to provide accountability, governing bodies must create legislation addressing privacy in a Cloud environment. This legislation would assist the PraaS by providing tools for enforcement, such as an enforcement body to report to and punishments for infractions. Legislation is notoriously late when addressing problems in technology. Further research will be required to compare the differences between legislation that has already been adopted around the world, and what areas and topics still require new laws. Creating and abiding by legislation over a distributed environment is a massive topic, as different countries have different, and often conflicting laws. These problems can be compounded if information is sent across international borders. As such, determining exactly what legislation is required falls outside the scope of this work, and is an ongoing field of research [32].
6 Related Work Research into privacy for Cloud Computing is still in its infancy, and as such, there are no set guidelines or benchmarks. HP Labs Singapore has recently begun work on
Furthering the Growth of Cloud Computing by Providing Privacy as a Service
75
a service called Trust Cloud [33] to address concerns of data protection and security. The goal of this Trust Cloud is to monitor any information or file a user places in the Cloud and notify that user if any of their data has been accessed, moved or modified by the Cloud provider [33]. The monitoring proposed by HP's Trust Cloud project is similar to the monitoring required in this work, however there are currently no details available on how HP achieves this monitoring as it is still in early research. The idea of Privacy as a Service has been mentioned before in a few works, but never in the same context as presented here. Itani, Kayssi and Chehab [34] presented Privacy as a Service to provide data storage and processing in Cloud Computing architectures. This approach treats privacy as a strictly encryption based problem, where Privacy as a Service provides secure storage and processing of users' confidential data by utilizing tamper-proof cryptographic coprocessors. Private information is divided into three levels: full trust, compliance-based trust, and no trust. At the full trust level, there is no encryption applied to the data. At the compliance-based trust level, encryption is applied by the Cloud provider once the data has been sent by the consumer. At the no trust level, encryption is handled by a trusted third party before it is sent to the Cloud provider. This approach is very different from the approach presented in this work, as no privacy conditions are set, only varying methods of encryption are utilized. There is another example of Privacy as a Service [35], however this work details a framework, service, model and algorithm to address shortcomings in social platforms, specifically Facebook. This work did not attempt to provide privacy in a greater Cloud Computing environment, and shares very little with our work. The work by Pearson [36] discusses the importance of considering privacy while designing a Cloud Computing environment. This work discusses the privacy challenges presented by Cloud Computing environments, and outlines nine privacy principles which closely resemble the eight privacy principles used by the OECD. It provides guidelines to follow to mitigate the risks of privacy, but does not provide a framework for protecting privacy.
7 Conclusions and Future Work In order for computer software and hardware systems to evolve successfully, new technologies must not only be created, but also grow and gain the acceptance of consumers. Cloud Computing represents a large step forward in the evolution of software and hardware. Consumers are no longer forced to install their own copy on a single machine. With Cloud Computing, a consumer will have access to the same application using the same data from virtually anywhere. There are several issues Cloud Computing must address before it can truly become a widely accepted technology. Privacy is one of the biggest unaddressed issues Cloud Computing currently faces. It is important for Cloud Computing to gain a wider acceptance in order to take advantage of the many economic and environmental benefits it provides. The public sector also has a role to play in Cloud Computing privacy, by providing the legislation required for enforcement of privacy, and by providing an example by adopting the Cloud itself. In this work we introduced the first steps in creating a privacy solution for Cloud Computing. This solution involved identifying key aspects of privacy that must be represented in a formal agreement between the Cloud consumer and provider. These
76
D.S. Allison and M.A.M. Capretz
privacy aspects are derived from privacy legislation used throughout the world [24]. We created quality of service levels from these privacy constraints, in order to incorporate privacy into the Cloud SLA. This novel solution provides a mechanism for creating a contract between Cloud consumer and provider that outlines how private information can be used. To the best of our knowledge, this is the first attempt at incorporating privacy agreement terms into a Cloud Computing SLA. Finally this work introduced a new Privacy as a Service (PraaS). This PraaS is hosted by a trusted third party and tasked with the job of both monitoring for privacy violations and creating accountability through enforcement. Enforcement is only effective when coupled with appropriate legislation, which also must be addressed. This work is intended to be the first of many steps towards providing privacy protection in Cloud Computing environments. As such, there are many future directions for this research: •
• •
• •
The proposed SLA privacy extension will be further researched to determine if any refinements need to be done. This can be carried out through different case studies, with interest taken into how the current design of the SLA privacy terms handles different scenarios. A study into the different ways Cloud SLAs are formatted will be completed. If necessary, a standard SLA will be selected for the privacy extension. More studies will be conducted into current legislation from around the world that pertains to Cloud Computing and privacy. This research will help to identify how governments are approaching the problem, and to better develop monitoring and enforcement of the PraaS. Further research will be done to identify the best monitoring solution for the PraaS. There are many Cloud monitoring options available, and the most efficient and effective will be selected. The PraaS will first be developed in a laboratory setting, where simulations can be run to test its effectiveness and performance. Following this, the ultimate plan for this research is to implement the PraaS in a real world scenario. There is the chance that the state of local legislation at the time of the PraaS development will not allow the PraaS to provide effective enforcement. In this case, the PraaS will focus on monitoring and reporting, allowing for the future expansion of enforcement when possible.
In order for Cloud Computing to achieve widespread long term success, fundamental issues such as privacy must be addressed. This work takes the first steps towards this goal, with the hope that it will lead towards greater success and acceptance of Cloud Computing technology.
References 1. Google Mail - Gmail: Email from Google, http://mail.google.com 2. Google Docs - Online Documents, Spreadsheets, Presentations, Surveys, File Storage and More, http://docs.google.com 3. SolarWinds Cloud Survey Press Release, http://www.solarwinds.com/Company/Newsroom/Press_Releases/Ye ars/2010/21474837235.aspx
Furthering the Growth of Cloud Computing by Providing Privacy as a Service
77
4. Yee, G.: Privacy Protection for E-Services. IGI Publishing, Hershey (2006) 5. Ryan, M.: Cloud Computing Privacy Concerns on Our Doorstep. Communications of the ACM 54(1), 36–38 (2011) 6. Patel, P., Ranabahu, A., Sheth, A.: Service Level Agreement in Cloud Computing, http://knoesis.wright.edu/library/download/OOPSLA_Cloud_wsla _v3.pdf 7. Gartner Estimates ICT Industry Accounts for 2 Percent of Global CO2 Emissions Press Release, http://www.gartner.com/it/page.jsp?id=503867 8. Microsoft Corporation, http://www.microsoft.com 9. Accenture, http://www.accenture.com 10. WSP Environment & Energy, http://www.wspenvironmental.com 11. Cloud Computing and Sustainability: The Environmental Benefits of Moving to the Cloud, http://www.microsoft.com/click/services/Redirect2.ashx?CR_EA C=300012377 12. Allison, D., EL Yamany, H., Capretz, M.: A Privacy Service for Comparison of Privacy and Trust Policies within SOA. In: Gupta, M., Walp, J., Sharman, R. (eds.) Strategic and Practical Approaches for Information Security Governance: Technologies and Applied Solutions. IGI Global, New York (2011) 13. Zhou, M., Zhang, R., Xie, W., Qian, W., Zhou, A.: Security and Privacy in Cloud Computing: A Survey. In: Proceedings of the Sixth International Conference on Semantics, Knowledge and Grids, Ningbo, China (2010) 14. Sun, W., Zhang, K., Chen, S.-K., Zhang, X., Liang, H.: Software as a Service: An Integration Perspective. In: Krämer, B.J., Lin, K.-J., Narasimhan, P. (eds.) ICSOC 2007. LNCS, vol. 4749, pp. 558–569. Springer, Heidelberg (2007) 15. Durkee, D.: Why Cloud Computing Will Never Be Free. Queue 8(4) (2010) 16. Wang, L., Tao, J., Kunze, M.: Scientific Cloud Computing: Early Definition and Experience. In: Proceedings of the 10th IEEE International Conference on High Performance Computing and Communication, Dalian, China, pp. 825–830 (2008) 17. Truong, H., Dustdar, S.: On Analyzing and Specifying Concerns for Data as a Service. In: Proceedings of the 2009 IEEE Asia-Pacific Services Computing Conference, Biopolis, Singapore, pp. 87–94 (2009) 18. Lawton, G.: Developing Software Online with Platform-as-a-Service Technology. Computer 41(6), 13–15 (2008) 19. Nelson, M.: The Cloud, the Crowd, and Public Policy. Issues in Science and Technology 25(4), 71–76 (2009) 20. Cooley, T.: A Treatise on the Law of Torts or the Wrongs Which Arise Independent of Contract, 2nd edn. Callaghan & Co., Chicago (1888) 21. Kanneganti, R., Chodavarapu, P.: SOA Security. Manning Publications Co., Greenwich (2008) 22. Comuzzi, M., Kotsokalis, C., Spanoudakis, G., Yahyapour, R.: Establishing and Monitoring SLAs in Complex Service Based Systems. In: Proceedings of the 2009 IEEE International Conference on Web Services, Los Angeles, CA, USA, pp. 783–790 (2009) 23. Organisation for Economic Co-operation and Development.: OECD Guidelines on the Protection of Privacy and Transborder Flows of Personal Data, http://www.oecd.org/document/18/0,3343,en_2649_34255_1815186 _1_1_1_1,00.html 24. Cavoukian, A., Hamilton, T.: The Privacy Payoff: How Successful Businesses Build Customer Trust. McGraw-Hill Ryerson Limited, Whitby (2002)
78
D.S. Allison and M.A.M. Capretz
25. Allison, D., EL Yamany, H., Capretz, M.: Metamodel for Privacy Policies within SOA. In: The Proceedings of the 5th IEEE International Workshop on Software Engineering for Secure Systems in conjunction with the 31st IEEE International Conference of Software Engineering, Vancouver, BC, Canada (2009) 26. EL Yamany, H., Capretz, M., Allison, D.: Quality of Security Service for Web Services within SOA. In: The Proceedings of the 2009 IEEE International Conference on Cloud Computing, Los Angeles, CA, USA (2009) 27. Organisation for Economic Co-operation and Development, http://www.oecd.org 28. World Wide Web Consortium, http://www.w3.org 29. Mathew, J.: Monitoring Applications in the Cloud, http://www.infosysblogs.com/cloudcomputing/2010/05/cloud_bas ed_monitoring_tools.html 30. Nagios - The Industry Standard in IT Infrastructure Monitoring, http://www.nagios.org 31. Hyperic - Systems Monitoring, Server Monitoring & Systems Management Software, http://www.hyperic.com 32. Pearson, S., Charlesworth, A.: Accountability as a Way Forward for Privacy Protection in the Cloud. In: Jaatun, M.G., Zhao, G., Rong, C. (eds.) Cloud Computing. LNCS, vol. 5931, pp. 131–144. Springer, Heidelberg (2009) 33. HP Labs Singapore Aims for the Clouds: Research Focuses on Customer Co-Innovation and Democratizing the Cloud, http://www.hpl.hp.com/news/2011/aprjun/hp_labs_singapore.html 34. Itani, W., Kayssi, A., Chehab, A.: Privacy as a Service: Privacy-Aware Data Storage and Processing in Cloud Computing Architectures. In: Proceedings of the Eight IEEE International Conference on Dependable, Autonomic and Secure Computing, Chengdu, China, pp. 711–716 (2009) 35. Maximilien, E., Grandison, T., Sun, T., Richardson, D., Guo, S., Liu, K.: Privacy-as-aService: Models, Algorithms, and Results on the Facebook Platform. In: Proceedings of Web 2.0 Security and Privacy, Oakland, CA, USA (2009) 36. Pearson, S.: Talking Account of Privacy when Designing Cloud Computing Services. In: Proceedings of the Workshop on Software Engineering Challenges in Cloud Computing in conjunction with the 31st IEEE International Conference of Software Engineering, Vancouver, BC, Canada (2009)
The Concept of a Mobile Cloud Computing to Reduce Energy Cost of Smartphones and ICT Systems Majid Altamimi and Kshirasagar Naik Department of Electrical and Computer Engineering University of Waterloo, Waterloo, ON, Canada {maltamim,snaik}@uwaterloo.ca
Abstract. In spite of the dramatic growth in the number of smartphones in the recent years, the energy capacity challenge for these devices has not been solved satisfactorily. Moreover, the global demand for green Information and Communication Technology (ICT) motivates the researchers to consider cloud computing as a new computing paradigm that is promising for green solution. In this paper, we propose new green solutions that save smartphones energy and at the same time achieve the green ICT goal. Our green solution is achieved by what we call Mobile Cloud Computing (MCC). The MCC migrates the content from the main cloud data center to local cloud data center temporary. The Internet Service Provide (ISP) provides the MCC, which holds the required contents for the smartphone network. Our analysis and experiments show that our proposed solution significantly reduces the ICT system energy consumption by 63% - 70%. Keywords: Green ICT, Energy Saving, Cloud Computing, Mobile Cloud Computing, Data Center, Mobile, Handheld, Smartphones.
1
Introduction
The number of handheld devices is growing dramatically. Most of these devices are smartphones with WiFi, and 3G that give Internet access capability. With the success of PC-like applications on the smartphones, new constraints and challenges are introduced in design and implementation of these devices. One of the major challenges is the low and limited energy capacity of the device’s battery since the handheld devices should be lightweight. On the other hand, the improvement in battery capacity has less pace than the advances in the semiconductor technologies. To overcome this unique challenge, new approaches from other smartphones technologies, such as communication technology, should consider this challenge. Global warming encourages many technologies to become environment friendly. As Information and Communication Technology (ICT) is one of the most growing technologies, it is important to involve the green goal in ICT current and future design [1]. Cloud computing (CC) is a new computing paradigm that is D. Kranzlm¨ uller and A M. Tjoa (Eds.): ICT-GLOW 2011, LNCS 6868, pp. 79–86, 2011. c Springer-Verlag Berlin Heidelberg 2011
80
M. Altamimi and K. Naik
promising in different aspects such as environment friendliness. Cloud computing provides its resources as processing, networking, and storage capabilities to the end user with less impact on the environment because of it has high utilization of its resources [8,3,2,9]. Moreover, much has been reported in the literature for saving energy in smartphones [6]. For example, the handheld device could save its battery lifetime by offloading energy consumer task to the CC [5,4]. Therefore, the CC is the best candidate for our system. This work proposes new green solution that save smartphones energy and at the same time achieve the green ICT goal. This solution is call Mobile Cloud Computing (MCC). The MCC provides all cloud computing functionalities: (i) Software as a Service (SaaS), (ii) Platform as a Service (PaaS), and (iii) Infrastructure as a Service (IaaS). In this work, we focus on IaaS functionality where the MCC saves the ICT system energy by migrating the contents from the main CC data center to a local cloud. This migration reduces the traffic on the Internet. That is only one transfer for the requested content is made from the CC to MCC. In addition, the handheld devices save their energy by using this MCC. This paper makes the following contributions: – Introduce the concept of a Mobile Cloud Computing (MCC). – Consider the entire ICT system energy cost for green ICT technology. – Analyze and experimentally measure smartphone energy consumption. The order of the paper is as follows. Our system model is described in Section 2. The detail analysis of our system are shown in Section 3. Section 4 shows our system evaluation, and this paper is concluded in Section 5.
2
System Model
Our system consists of four major parts: handheld devices network, MCC data center, Internet, and CC data center, as depicted in Figure 1. Each handheld device is considered as a smartphone in this paper. Hereafter, we use smartphone and handheld device alternatively for the same meaning. Second, the data center provides the cloud computing functionality. This center has a LAN network, servers, and storage hard-disk arrays. There are two types of data center in our system: local and main data center. The local data center represents the infrastructure for the MCC where the main data center is for the public CC. The MCC is called by this name because of it exists to service mobile devices and its content is roaming and not static as in the case of public CC. Finally, the Internet is a set of high-speed routers and links.
3
Energy Cost Evaluation
Assume that we have N users forming the smartphones network. The users use smartphones that can access the Internet through an access point (AP) that is either Wireless Local Area Network (WLAN) or cellular 3G network. The users have the same interests and activities such as in conferences, museums,
The Concept of a Mobile Cloud Computing to Reduce Energy Cost Broadband Access Network
81
WLAN Access Network
oth
Blueto
Bluetooth
Smartphones Networks Cellular/ WiMAX
WiFi
Ethernet Switch
SaaS
PaaS IaaS WDM
Internet ISP
Core Router
Mobile Cloud
Internet Core Cloud Gateway Server and Router
Cloud Computing Data Center
Cloud LAN
Cloud Servers
SaaS PaaS IaaS
Hard-Disk Arrays
Fig. 1. System model
and academic lectures. These users have the same desired contents that they want to have at that place. The desired contents are saved originally on the CC data center by an external source of data such as sensor network, network administrator, or computation result from the cloud itself. There are two possible scenarios to download the contents from the CC as follows. 3.1
Download from the CC Data Center
In this scenario, all users download the contents from the CC through the Internet. The energy cost of downloading the contents from the CC for the entire ICT system can be divided into three parts according to our system model: (i) energy consumed in smartphones to download the new contents; (ii) energy consumed in the Internet to transport the downloaded contents; and (iii) energy consumed in the data center to store the contents and process the download requests. In the following, we investigate the energy cost for each of these parts. (i) Smartphones Network: The smartphone consumes energy in joules (J) that equals to the power consumption in watts (W) to do a specific task multiplied by the time elapsed in seconds (s) to complete this task. Based on this concept, if the contents update has size F bits, the energy cost for a smartphone to download this update is given by Ed = Pd
F Bap
(1)
where Pd is the power consumed in watts by the smartphone to download the update from the AP, and Bap represents the bandwidth in bits per second of the wireless link between the smartphone and the AP.
82
M. Altamimi and K. Naik
Consequently, the total energy cost (Esn ) for a network of N smartphones is given by: F Esn = N × Pd (2) Bap (ii) Internet Network: Measuring or analyzing the energy consumption on the Internet is very sophisticated due to the complexity of Internet topology and the variety of Internet equipments and their supplementary utilities. Moreover, the pieces of TCP packets don’t follow the same route for the same file, which makes the energy cost to transfer each packet is different from other. Therefore, the energy cost of the Internet can be estimated with sensible facts and assumptions. To the best of our knowledge, the best study investigates the Internet energy cost is the work of Baliga et al. [2]. Based on Baliga et al. work, the energy consumption of the Internet to deliver one bit can be calculated as in Eq. (3). 3Pes Pbg Pg 2Ppe 18Pc 4Pw Ei = 6F + + + + + (3) Ces Cbg Cg Cpe Cc Cw where Pes , Pbg , Pg , Ppe , Pc , and Pw are the power consumed in the ethernet switches, provider broadband gateway routers, data center gateway, provider edge router, core router, and high-capacity wavelength division multiplexed (WDM) fiber links transport equipments, respectively. Ces , Cbg , Cg , Cpe , Cc , and Cw are the capacities of the corresponding equipment in bits per second. In this scenario, the energy cost for the Internet to serve N users is calculated as in Eq. (4). EIcc = N × Ei (4) where EIcc is the energy cost for the Internet in CC scenario. (iii) CC Data Center: The cloud data center consumes energy in two major sections: cloud servers, and hard-disk arrays. In this part, the energy consumed in the cloud computing data center network is included in the Internet network since both networks have the same characteristics. The energy consumption of the cloud data center to store a file and response to N download requests in one hour is given as in Eq. (5) [2] that includes the cloud data center supplement utilities such as cooling system. 1.5Psr Pst Ecc1 = 1.5F N + 7200 (5) Csr Cst where Ecc1 is the energy cost for the main CC, Psr and Pst are the power in watts consumed by the content server and hard-disk array, respectively, and Csr and Cst are the capacity in bits per seconds of the corresponding equipments. 3.2
Download from the MCC Data Center
After we made the analysis for the system in previous scenario, we discover that the Internet is the major energy consumer. For this reason, we proposed the Mobile Cloud Computing (MCC) to avoid this consumption in our system. In
The Concept of a Mobile Cloud Computing to Reduce Energy Cost
83
this scenario, the contents update is downloaded by the Internet Service Provider (ISP) from the main CC data center to local MCC data center that is the nearest to the smartphones network. This local data center provides the MCC its cloud functionalities. This MCC could be used in several ways as SaaS, PaaS, IaaS. In this paper, we are interesting in the IaaS service to storage the content for the smartphones network. The ISP downloads the contents file based on predefined strategies. We don’t provide the possible strategies at this time because they are out of the scope of this paper. When the contents file is available on the MCC, the smartphones are able to download this file from the MCC. This scenario reduces the download traffic on the Internet as much as the number of users on the smartphones network. The ISP operates the MCC which is a new energy consumer component. However, the ISP gains two advantages from this. First, the Internet traffic is much reduced on the ISP’s routers and core Internet gateway. Second, the ISP contributes to a green ICT. The energy cost for each system part in this scenario is calculated as follows. (i) Smartphones Network: Using similar approach of previous scenario, the energy cost for the smartphones is the same a given in Eq. (2) . (ii) MCC Data Center: In these scenarios, we proposed the MCC as a new component in the ICT system. For simplicity and without loss of generality, we assume that the MCC has the same structure as the main CC. However, the size of the MCC is debatable; consequently, the energy efficiency of this data center is also debatable. The MCC could have similar CC equipments but not utilized as much as the CC. Thus, the energy cost would be higher than the energy cost of the CC. In contrast, if the MCC is equipped with small and efficient equcpments, the energy cost would be much lower than what it is for the CC. For this reason, we introduce a factor (R) that represents the ratio of the energy cost of the MCC to the CC. The energy cost of the MCC is what we have in Eq. (5) multiply by ratio R as follows. Emcc = REcc1 (6) (iii) Internet Network: The contents file is downloaded by the ISP only once. As a result, the energy cost is given as in Eq. (3) if we assume that the MCC is close to the users network where no extra energy equipments exit between the MCC and the smartphones network. (iv) CC Data Center: The main cloud data center is used to originally update and release the contents, and process ISP request. For these functions, the energy cost will be for one download as given in Eq. (7). 1.5Psr Pst Ecc2 = 1.5F + 7200 (7) Csr Cst
84
4
M. Altamimi and K. Naik
Performance Evaluation
In this section, we present a case study for our system to evaluate our approach for saving ICT system energy and validate our assumptions. We setup experiments on BlackBerry Bold 9700 and measure the actual energy consumed on this device in case of download from the cloud data center. For further detail about our experiments setup and configuration, we refer the reader to our work in [7]. For the Internet and cloud data center, we use the equipments’ companies datasheet since it is not practical to measure the energy consumption for these two parts. Table 1 shows our system parameters that we use in this case study where our experiments provide the entries of rows 2 and 3. Table 1. System parameters and their values Parameter Value Parameter Value Parameter F 1 MB N 20 nodes – Pd (W iF i) 818 mW 1 Pd (3G) 1147 mW 1 Pbtu = Pbtd Bap (W iF i) 166.15 KB/s 1 Bap (3G) 130.28 KB/s1 Bbt Pes 3.8 KW Pbg 3.3 KW Pg Ppe 4.21 KW Pc 10.9 KW Pw Psr 255 W Pst 4.9 KW Csr Ces = Cpe 160 Gb/s Cbg 60 Gb/s Cg Cc 640 Gb/s Cw 40 Gb/s Cst 1 From our experimental results
Value – 464 mW 1 100 KB/s1 5.1 KW 136 W 800 Mb/s 660 Gb/s 604.8 Tb
Using Eqs. (2)-(7), Figure 2 shows ICT total energy consumption and the energy consumed by each part of the system, which are Cloud Computing (CC) data center, Mobile Cloud Computing (MCC) data center when R = 1 , Internet, and smartphones network. The smartphones’ energy consumption is studied for the WiFi and 3G network. As a result, the total energy for the ICT system is plotted according to the network that is used by the smartphones to access the Internet. We notice that the smartphones network consumes more energy if the 3G interface is used for all scenarios because the WiFi interface supports high data rate even when it consumes more power. Based on our experiments, the WiFi, and 3G support 615pJ/b, and 1100pJ/b, respectively. In addition, this figure shows that the Internet is the major energy consumer part. If the Internet is avoided as much as possible as in MCC scenario, the ICT system energy consumption is significantly reduces by 63% - 70%. We study the effect of the ratio (R) on the total energy consumed by the system. Figure 3 illustrates the total energy consumption for both WiFi and 3G networks versus the ratio R. The MCC becomes not efficient if the ratio is greater than or equal to (R ≥ 8) for both networks. This means that the ISP could operate eight MCCs in the same scale of the CC (i.e. R = 1) with the same impact on the ICT energy and the environment.
The Concept of a Mobile Cloud Computing to Reduce Energy Cost
85
800 Smartphones MCC Internet CC
700
Energy Consumption (Jules)
600
500
400
300
200
100
0
WiFi−CC
3G − CC
WiFi−MCC
3G − MCC
Scenarios
Fig. 2. Energy consumption on system parts for CC and MCC scenarios 2000 WiFi−CC 3G−CC WiFi−MCC 3G−MCC
1800
Total Energy Consumption (Jules)
1600
1400
1200
1000
800
600
400
200
0 −1 10
0
10
1
10
Ratio (R)
Fig. 3. Total energy consumption vs. MCC to CC ratio (R)
5
Conclusion
In this work, we study the promise of the cloud computing to save smartphones energy and minimize the impact on the environment to produce a green ICT. Our study evaluates by experiments the energy cost for the smartphones, and
86
M. Altamimi and K. Naik
provides an extensive analysis to evaluate the energy consumption on the ICT system parts. It was shown that the MCC with WiFi network provides the minimum possible energy consumption on the ICT system. As we do this study for the cloud storage service (IaaS), similar studies are needed for other cloud services. Acknowledgments. This research was supported by a scholarship from King Saud University, and the Natural Sciences and Engineering Research Council (NSERC) of Canada.
References 1. IT Professional (January/February 2011) 2. Baliga, J., Ayre, R.W.A., Hinton, K., Tucker, R.S.: Green Cloud Computing: Balancing Energy in Processing, Storage, and Transport. Proceedings of the IEEE 99(1), 149–167 (2011) 3. Deng, J., Hu, J.L., Wu, J., Chi, H.: Application and Technology of Generalized Green Computing. Advanced Materials Research 34-35, 727–731 (2010) 4. Kelenyi, I., Nurminen, J.K.: CloudTorrent - Energy-Efficient BitTorrent Content Sharing for Mobile Devices via Cloud Services. In: Proc. 7th IEEE Consumer Communications and Networking Conf. (CCNC), pp. 1–2 (2010) 5. Kumar, K., Lu, Y.H.: Cloud Computing for Mobile Users: Can Offloading Computation Save Energy?. Computer 43(4), 51–56 (2010) 6. Naik, K.: A Survey of Software Based Energy Saving Methodologies for Handheld Wireless Communication Devices. Tech. Rep. 2010-13, Dept. of ECE, University of Waterloo, Waterloo, ON, Canada (2010) 7. Palit, R., Arya, R., Naik, K.: Selection and Execution of User Level Test Cases for Energy Cost Evaluation of Smartphones. Accepted in ACM/IEEE International Workshop on Automation of Software Testing (2011) 8. Ren, L., Zhang, L.: An Efficient IT Energy-Saving Approach Based on Cloud Computing for Networking Green Manufacturing. Advanced Materials Research 139-141, 1374–1377 (2010) 9. Yuan, C.-C.J.H., Kuo, Ahmad, I.: Energy Efficiency in Data Centers and CloudBased Multimedia Services: An Overview and Future Directions. In: Proc. Int. Green Computing Conf., pp. 375–382 (2010)
A Model for Sequence Based Power Management in Cyber Physical Systems Andreas Barthels1 , Florian Ruf2 , Gregor Walla3 , Joachim Fr¨oschl4 , Hans-Ulrich Michel5 , and Uwe Baumgarten1 1
Institute for Informatics Institute for Energy Conversion Technology 3 Institute for Integrated Systems Technical University of Munich, Germany {barthels,baumgaru}@in.tum.de, {florian.ruf,gregor.walla}@tum.de 4 BMW Group 5 BMW Group Research and Technology Munich, Germany {joachim.froeschl,hans.michel}@bmw.de 2
Abstract. This paper develops a model for operating system level power management in cyber physical systems. The core part is a transducing mechanism, forming physical inputs into functional state sequences. Each functional state transition then is allowed to switch in between power management plans. A power management plan is modeled as a directed graph over power states and functional jobs together with timing conditions. Different optimization problems for designing these plans according to scheduling requirements, and for maximizing energy savings under both constrained management complexity and constrained supply voltage stability are presented. Keywords: cyber physical systems, power management, transducing machine, combinatorial optimization.
1
Introduction
With the miniaturization and reduction in cost of computer systems, they are being employed in more and more devices. These devices often are designed to interact with the environment and are driven by such interactions. They feature a new class of embedded systems which is called cyber physical [14]. The systems control attached sensors and actuators, which often require substantial amount of energy compared to the computation involved. Of special interest in this paper are systems that come equipped with their own power supply and storage units, like automotive vehicles or aircrafts. Nowadays, fuel combustion engines have reached a high level of efficiency, thus additional efficiency increases are hard to achieve. With increasing awareness and political commitment to fight global warming, the industries are forced to look at electric loads in the system as a means to meet their energy saving goals. D. Kranzlm¨ uller and A M. Tjoa (Eds.): ICT-GLOW 2011, LNCS 6868, pp. 87–101, 2011. c Springer-Verlag Berlin Heidelberg 2011
88
A. Barthels et al.
Typically, the systems are distributed in nature, meaning they consist of multiple subsystems on the inside but behave like one coherent system to the outside. Given a high degree of inter-dependability of the subsystems, a significant need for coordination in power management arises. This coordination itself of course also consumes energy, thus there exists a trade-off between the complexity of the coordination mechanism and the energy savings that can be yielded. In modern vehicles there are numerous interconnected subsystems which must maintain functional in all situations. Due to the electrification of more and more components, voltage stability becomes an issue even more important than energy saving. When a power consumption peak incurs in the system, the system wide supply voltages might drop to critical levels implying malfunctioning of safety critical systems. For the aforementioned systems, methods for effective power management are yet to be defined. These power management mechanisms must account for two main domains: 1. energy efficiency meaning reduction of fuel combustion and thus CO2 exhaustion, 2. voltage stability, due to dynamic loads with high peak currents, like dynamic stability control or electric power steering, in critical driving situations. In the future, with the advent of hybrid or fully electrically powered cars, there are a lot of different technical architectures to consider. Power managing these systems is increasingly important since lowering power consumption equals extending range. 1.1
Related Work
Modern computer hardware features a lot of different power states and allows switching to idle modes which help saving a significant amount of energy. Besides the actual computing elements, power managing a computer’s peripherals (sensors and actuators) adds in to the energy balance of a computing system. On the topic of system level power management, there exist multiple related contributions. Benini et al., for example, have written a survey paper on system level dynamic power management [3]. Another survey paper, focusing on efficiency in cloud computing, was written by Berl et al. [4]. For specific power state mechanisms like dynamic frequency/voltage scaling, there are papers discussing energy minimization and optimal operating points [10,6]. For different algorithms on choosing power states, one can distinguish online [9], and offline methods [15]. The latter use knowledge about the tasks at hand prior to running them while the others adapt to job properties at runtime. For distributed systems, the previous approaches focused on completely shutting down subsystems. The necessary hardware support for waking complete hardware subsystems from deep-sleep states is discussed, e.g. by Schmutzler et al. [18]. Increasing electrification implies increasing consumption of subsystems which in turn might impair stability. Modeling the hardware and simulating the voltage
A Model for Sequence Based Power Management in CPS
89
stability is the concern of a contribution by Gehring et al. [8]. The voltage stability problem can be tackled by employing “active power distribution” [12]; management of power supply and storage units making up for all peaks, or by lowering the peaks through managing the actual functionality. Since distributed systems are often heterogeneous in nature, there is a need for architectural standards. For the automotive domain, the automotive open system standard architecture was was started [1]. This evolving standard includes the specification of a operating systems which aim to run on all types of subsystem hardware. For software engineering targeted at these systems, there are different model-based tool chains [11], like PREEvision by aquintos [2]. 1.2
Contribution
The paper presents a novel model for sequence-based operating system level power management. It involves switching in between predefined power management plans upon functional state changes, thus transducing physical input sequences to power management plan sequences. For the power management mechanisms, different optimization problems are stated, keeping both energy efficiency and voltage stability in mind. An abstract view to power management plan generation is presented. Moreover, an approach to achieve a bounded target complexity in power management while maximizing energy savings is described.
2
Modeling
In this section, a model for power management in cyber physical systems is presented. To begin with, cyber physical systems as a whole are defined and subsequently, the constituent elements are explained in more detail. 2.1
Cyber Physical System
For the power management, cyber physical systems are assumed to be driven by environmental interaction. Functions and thus power states are activated due to sensorial inputs. These inputs are produced by any entity, which might be a user interacting with the system, as well as any other physical influence. Figure 1 shows the processing of a cyber physical system. Typically, all computation (solid lines) is done because of physical input and to perform a physical output (both dashed lines). The scheme is quite similar to that of autonomous systems, despite it is perfectly okay to have a sensor allowing direct input of human control. Thus, the human operator is seen as part of the environment. A cyber physical system S consists of sub-systems E which are interconnected by different network segments N , a wiring harness W, power supply and energy storage units C, S = (E, N , W, C). Detailed models of wiring harnesses [7] and batteries [5] can be found in the literature. It follows an abstraction of the sub-systems E ∈ E.
90
A. Barthels et al.
Cyber Physical System Power Storage
Power Supply
Sensors
Computation
Actors
Environment
IT Network
Wiring Harness
Fig. 1. Logical interaction scheme of cyber physical systems. Solid lines represent internal communication, while dashed lines represent physical processes.
Sensors
Application Layer
Actuators
Power Management
Computational Units
I/O, Networking
Network Interfaces
Device Drivers
Power Supply Units
Hardware
Fig. 2. Abstraction of isolated cyber physical (sub-)system
2.2
Cyber Physical Sub-system
When it comes to distributed systems, every component is assumed to be potentially able to sense, act and compute. The abstraction of these components along with their operating system architecture is illustrated in figure 2. A subsystem E ∈ E is a quintuple E = (A, S, C, I, P) of actuators A, sensors S, computational units C, network interfaces I, and power supplies P. There must be at least one computational unit, one network interface and one power supply on a subsystem, and there can be arbitrary many actuators and sensors. Each subsystem E also comes equipped with a specification of the minimum supply voltage level Umin (E) it can operate at. Umin : E → U Guaranteeing this minimum at all times and all subsystems is the goal of the voltage stability analysis; dropping supply voltages might otherwise lead to temporary malfunction [12]. The power management is part of the operating system. It allows for reacting on inputs and switching states. The operating system is illustrated as a layered architecture, indicating that the power management layer must be passed for all I/O operations to and from the application layer of the processing unit. This is
A Model for Sequence Based Power Management in CPS
91
α0 : .25W 140ms
80ms 120ms α1 : 2.5W
90ms
40ms 60ms
α2 : 12W
Fig. 3. Exemplary power state machine. Depicted are three states along with their power consumption and transition times in between.
chosen because all computation is assumed to be closely connected to physical processes. Thus, the physical process of power consumption can be influenced by all communication events to and from the subsystem. Power State Machine. The hardware of each subsystem can be run in different power states. For describing the transition properties of power states, a model called power state machine was crafted. The survey paper by Benini et al. [3] describes the underlying concept (see figure 3). The power state machine thus consists of edges connecting the power states α ∈ AE of each subsystem contained element. Each edge is annotated with transition times. Together with idle times, a local power management instance can choose to switch power states autonomously. During the transition times ttrans : AE × AE → t of power states, no actual computational, actuatorial, or sensorial work can be done. Thus unnecessary transitions in between power states should be avoided. Next up is a discussion of the logical software architecture, based on which the power management is to be implemented. 2.3
Functional Chains and Realization
For the software engineering, an actor oriented design [13] approach is assumed. Thus, the functionality of a cyber physical system is given by directed graphs over abstract job descriptions “acting” (possibly concurrently) in the sense of program flow. Definition 1 (Job) A job j ∈ J is a template for an action within the cyber physical system S. The following types of jobs are valid: – Sampling sensor input: This job yields outputs interfacing processing jobs or actuator driving jobs. – Processing: A processing job has at least one and possibly multiple inputs and outputs
92
A. Barthels et al.
each. Processing typically means aggregation and state estimation as an input for the next processing or acting job. – Acting: Acting jobs only have inputs and can incorporate two types: 1. Acting as a self-parameterization of the system (Power Supply, Sensors, ...) 2. Acting as driving an actuator to perform manipulation of the environment. Each job is considered having requirements on cyclic scheduling, meaning they feature a cycle period p, a cycle offset o, and a deadline d p, o, d : J → R>0 Since each job must be runnable, it must include computations, bus communication and control properties of sensors and actuators. For defining the functionality of a cyber physical system, jobs have to interact in a predefined way. This is modeled through so-called functional chains which are encoding the communication patterns of the underlying jobs. Definition 2 (Functional Chain) A functional chain F is a directed Graph F = (JF , EF ) linking jobs JF with edges EF . Since a functional chain itself needs an implementation, it has to be equipped with mapping information, making it possible to assign job instances to hardware elements of the cyber physical system. Definition 3 (Mapped Functional Chain) A mapped functional chain over a cyber physical system S is a functional chain F together with a function MF mapping jobs to components of cyber physical subsystems MF : JF → A ∪ S ∪ C. Sensor input jobs are mapped to specific sensors, processing jobs to computational units, and actuator driving jobs to specific actuators. The edges of the functional chain are later-on assumed to be canonically and uniquely mapped to network segments by knowing the corresponding job map. Figure 4 depicts a functional chain together with a mapping onto cyber physical subsystems. The information flow can be intra-subsystem or seamlessly involve the IT network. Mapping is a significant constraint which might enable the power management to achieve more savings / stability with less effort in status management. The impact of adjusting mappings is yet to be investigated. Logically, different functional chains form a function of the cyber physical system:
A Model for Sequence Based Power Management in CPS
93
Compute1 Sense1
Compute3 Compute2
Act1 Compute4
Subsystem1
Subsystem2 IT Network Wiring Harness Power Storage
Power Supply
Fig. 4. Functional chain together with mapping onto system components. Dashed lines indicate mapping to hardware.
Definition 4 (Function) A function F consists of a set of mapped functional chains F = {(F, MF )}. A functional chain may be contained in multiple functions. A function F is called active, if and only if all its chains are active. If a job is to be run on a certain hardware, it must be instantiated. Also, active job instances need to be retrievable for each subsystem. Definition 5 (Job Instance) A job instance is denoted ¯j : Ij → Oj , j ∈ J, computing an output given an input. It is inherently mapped to hardware, M : J¯ → A ∪ S ∪ C. For the model to be runnable; each job instance must be equipped with start time tstart (¯j) and machine status ρ(¯j) (hardware registers, memory contents, instruction pointer). Definition 6 (Active Job Retrieval Function) For each subsystem E ∈ E, define a function yielding the set of active job instances or a universal idle job ¯jidle given a time value: ¯ ∪ {¯jidle } ζE : t → P(J) 2.4
Power Management Planning
In order to be able to build correct power management plans, the transition properties in between power states must be accounted for. Different power management plan definitions are discussed next. Fixed Cycle Planning. The simplest form of a power management plan is the use of fixed cycle scheduling, like in AUTOSAR [1]. Figure 5 depicts a fixed cycle schedule of a job j according to its offset and cycle period requirements o(j) and p(j). Busy times are indicated in dark gray, while idle times in between
94
A. Barthels et al.
0
o(j)
o(j) + 1 · p(j)
o(j) + 2 · p(j)
o(j) + 3 · p(j)
Fig. 5. Scheduling with fixed cycles, not exploiting knowledge about function termination
instantiations are shown in light gray. It can be seen, that different job instances show different completion times. Nevertheless, the schedule is unable to adapt to these variations. The fixed cycle schedule always has to be dimensioned for worst case execution times, thus potentially giving away energy efficiency. Since switching power states is costful, unnecessary switching should be avoided. Depending on the underlying hardware, it might be that chaining together all job instances and having a larger coherent idle time at the end would induce greater energy savings. In order for a plan to be able to chain job instantiations with another, a broader definition of power management plans follows next. Plan Construction. A power management plan specifies scheduling of power state transitions and job instantiations. Power state transitions refer to hardware states, e.g. frequency and voltage scaling or sleep modes. Thus, each plan refers to a schedule in terms of a graph of timed actions. Definition 7 (Power Management Plan) Denote a power management plan for subsystem E by γE ∈ ΓE . γE is a graph linking jobs and power states describing their temporal sequence. γE = (M−1 F (E) ∪ AE , H), H → {Concurrently, After Completion} × tstart-up condition . Where start-up conditions are time values either relative to job instantiation / job completion, or to the start of the schedule. Relativity to a job instance is indicated by +. A power management plan is valid if and only if all resources are assigned exclusively to one job at a time (actuator to act job, cpu core to compute job, sensor to sense job). Figure 6 depicts an implementation of fixed cycle scheduling on all jobs on Subsystem1 in figure 4. At first the hardware is assigned an adequate power state, and later on the different jobs are instantiated at certain offsets and cycles. These values must of course be chosen with worst case execution times in mind, thus the scheme is not optimal in respect to power saving. Improving power management plans is the topic of section 3. How each inand output of job instances can affect power management planning is described in the next subsection.
A Model for Sequence Based Power Management in CPS
95
α ac, +0ms
ac, +20ms
ac, +90ms
Sense1
Compute1
Compute2
c, +300ms
c, +300ms
c, +300ms
Fig. 6. Fixed cycle scheduling as a power management plan. ac stands for after completion, c for concurrently.
2.5
Power Management as a Transducing Machine
The power management is to choose from different power management plans on functional state transitions. In order to describe these mechanisms, the respective state sets must first be defined. Global Notation. Assume the subsystems Ei of the cyber physical system S to be numbered Ei ∈ E, 1 ≤ i ≤ n. Definition 8 (Power Management Plan Space) The space of power management plans Γ of a cyber physical system S is given through the composition of all sub-system plan spaces ΓEi . Γ := ΓE1 × ΓE2 × · · · × ΓEn . Definition 9 (Power Management Module) Consider each power management module in each subsystem P MEi a transducing finite state (i.e. Moore’s) machine [16]: P MEi = (ΣEi , ΓEi , SEi , (s0 )Ei , δEi , ωEi ), where ΣEi is the set of receivable input characters, ΓEi is the set of power management plans, and, SEi is the set of functional states. Let (s0 )Ei be the initial state, δEi be the transition function δEi : SEi × ΣEi → SEi , and ωEi be the output function ωEi : SEi → ΓEi . Input Characters ΣEi . Functional input characters are those generated by local job instances ΣEi := MF (JF )∈Ei IJF ∪ OJF due to the processing of physical inputs. They are used as input to the transition function and are able to trigger functional state changes, which then might imply changing of power management plans.
96
A. Barthels et al.
Functional State Space SEi . The functional state set SEi determines the set of active functions F which in turn consist of chained jobs which have to be scheduled. The functional state also determines how the power management is done in choosing a plan. Transition Function δEi . The transition function δEi is allowed to switch functional states due to input characters. It is essential, that all subsystems E ∈ E which are affected by equal functions F have consistent functional states by their input characters. Thus the transition function needs to be carefully crafted and there might be need for additional jobs / communication for this to be accomplished. Also, not all functional chains or communications therein affect power management plan selection. In fact there might be just some dedicated chains responsible for this. Output Function ωEi . The output function associates a power management plan with each functional state the subsystem is in. 2.6
From Jobs to Physical Properties (Simulation)
In order to be able to iteratively improve the power management, a model yielding physical implications of choosing power states for job instances is needed. Definition 10 (Completion Time Model ) Takes in cyber physical subsystems E, along with the IT network N , and a job instance ¯j. It deduces instance completion times dependent on power states. The function φE,N simulates job instances (compare, e.g. [19]) and yields the completion times depending on the power state of the system components: φE,N : J¯ × A → tcompletion If a job instance is complete, the model returns 0. If a power state α ∈ AM(¯j) violates the requirements of the job ¯j, the completion time is defined as ∞. Let {(α(ti ), ti ) | α(ti ) ∈ AM(¯j) , ti ∈ R>0 , ti ≤ ti+1 ∀i} be the sequence of power state transitions over time relative to job instance startup. The total time needed for job instance completion is then given by: ti+1 − ti − ttrans (α(ti ), α(ti+1 )), ΦE,N (¯j) := min φE,N (¯j, α(ti )) ¯ i∈N, φE,N (j,α(ti ))>0
Besides the completion time properties, the energy consumption over time together with the voltage levels in the system need to be modeled. Definition 11 (Energy Consumption Model ) An energy consumption model takes in a cyber physical system S and job instances together with corresponding deduced completion times φE,N .
A Model for Sequence Based Power Management in CPS
97
It is a function yielding the amount of current in amps given a job instance, the power states over time, and the input voltage ψC,W,χS (E, t) at the corresponding subsystem E ∈ E as input. χS : J¯ × AE × U × t → I The actual consumption is then given by the integral XS (¯j) :=
ΦE,N (¯ j)+tstart (¯ j)
tstart (¯ j)
χS (¯j, α(t), ψC,W,χS (E, t), t) ψC,W,χS (E, t)dt
Analogously, by employing definition 6, the drawn current of each subsystem can be deduced as: χS (E, t) := χS (¯j, α(t), ψC,W,χS (E, t), t) ¯ j∈ζ(E,t)
Voltage stability is an important factor in power management. For deducing this value over time, a model needs to determine the supply voltage levels within the wiring harness of the cyber physical system, or more specifically at each cyber physical subsystem. Definition 12 (Voltage Stability Model ) Using the energy consumption over time in terms of drawn current in amps of each subsystem, a model of the power supplies/storage units [5,17] and the wiring harness [7] can yield the voltage stability at critical points E ∈ E in the system. ψC,W,χS : E × t → U Event-based Simulation. Besides the actual simulation of job instances, the simulator must also implement power management plans according to definition 7. To be able to do this, the simulation needs to feature events indicating job instance completion and satisfaction of conditions.
3
Building a Model Instance
This section deals with building an instance of the previously presented power management model. Choosing the state spaces and power management plans along with the transition functions is what is done in the design phase of the power management. This design phase is assumed to be offline, i.e. the respective transducing machines are not changed during the runtime of the system.
98
A. Barthels et al.
α1
α3
ac, +0ms c, 300ms
c, +10ms
Sense1
c, 290ms α1
ac, +0ms
Compute1
ac,< 270ms α2
ac, +0ms
Compute2
ac,< 280ms α4
Fig. 7. Adapted power management plan, compare figure 6
3.1
Building up Power Management Plans
For power management plan construction, each job is assumed to have cyclic scheduling requirements. Thus, a graph like in figure 6, which takes care of worst case execution times, can always be constructed. The power management plan can be improved by employing knowledge coded in the logical architecture depicted in figure 4; knowing which job interfaces to which other job, the schedule can be chained, and few short idle times can be replaced with long ones at the end of the cycle. Figure 7 shows the result of such a refinement. After starting up the system to an adequate state α1 , a cyclic sense job is scheduled. It is ensured that the computational unit is ready even for minimal sensing completion time (α3 ), then the computations are done after completion of each other, maximizing the idle (α2 , α4 ) times at the end of the cycle. The power management plan is changed in a way where jobs are potentially scheduled earlier, no later. This kind of modification is safe to implement without coordinated changes in any other subsystem, since the operating system is assumed to buffer inputs which arrive too early. Choosing to lower power states is also safe, as long as the deadline requirements are held. Thus, an energy consumption minimization program can be put in place which is choosing power states for jobs alone. Choosing power states. For specific sub domains, like dynamic voltage and frequency scaling, the optimization problem of power state selection was already solved [10]. In general, it can be termed as a combinatorial problem. For plan generation, choose power states which minimize total energy consumption under constrained deadline requirements and voltage stability for all jobs J¯γ instantiated by running the schedule γ. ΦE,N (¯j) + tstart (¯j) ≤ d(j), ∀¯j ∈ J¯γ , min XS (E), subject to α(t) ψC,W,χS (E, t) ≥ Umin (E), ∀E ∈ E, ∀t E∈E It follows an optimization program on how to reach a target complexity for the transducing machines.
A Model for Sequence Based Power Management in CPS
99
v = [5, 30)
v = [30, ∞)
s2 ⇒ γ 2
v = [0, 5)
s3 ⇒ γ 3
s3 ⇒ γ 4
v = [30, ∞)
s1 ⇒ γ1
v = [30, ∞)
v = [0, 5)
v = [30, ∞)
v = [5, 30) v = [0, 5) (a)
v = [0, 5)
v = [30, ∞) s1 ⇒ γ1
v = [5, 30)
v = [30, ∞)
s2 ⇒ γ 4
v = [0, 5)
v = [5, 30) v = [0, 5) (b)
s2 × s3 × ◦
=⇒
v = [0, 5)
s1
s 1 ⇒ γ1
v = [5, 30)
s4 ⇒ γ 4
v = [5, 30), v = [30, ∞)
v = [30, ∞)
s1 s2 s3
v = [0, 5) (c)
Fig. 8. Management complexity reduction through unifying plan generation
3.2
State Space / Transducing Machine
Building a state space along with the corresponding input character set should be driven by the goals of the power management. The state space encodes the functional status of the system, like a vehicle driving at a certain speed range, having activated a set of additional functions, like air conditioning or driver assistance systems. Due to the limited resources on such a subsystem, it is desirable that the complexity of the management is constrainable. Complexity meaning the amount of different plans and internal states. Figure 8 depicts the steps of the following algorithm: 1. For all pairs of plans, generate unifying plan satisfying all requirements: Feasibly schedule all jobs contained in any of each two plans according to the constrained optimization problem stated in the previous subsection. 2. Select new plan (γ4 ) with lowest increase of energy consumption: Use energy consumption model as in definition 11, for comparing systemwide consumption impacts of plan unification.
100
A. Barthels et al.
3. Assign new plan to the respective states (see figure 8b): Prepare for complexity reduction in limiting the diversity of the power management output. 4. Reduce transducer using Moore’s algorithm [16] (figure 8c): Merge states which are indistinguishable by in- and output sequences. 5. Repeat steps 1–4 until target complexity is reached.
4
Conclusion
A model for sequence based power management in cyber physical systems was presented in this paper. The power management is designed in a way that is deeply connected to the processing of physical system inputs. Thus, the physical properties of the system, together with the processing again reflect on the physical properties in terms of power consumption. An optimization program maximizing energy savings under constrained management complexity and voltage stability was presented. Future work include the instantiation of the model with sophisticated energy consumption and voltage stability models for real world scenarios both in simulation and in a demonstrator testbed. This involves construction of power management plans for real world hardware as well as implementation and evaluation of the transducing mechanism in real world operating systems. Moreover, the impact of mapping jobs to subsystems has to be examined. Acknowledgments. This work is part of an interdisciplinary research project of the Technical University of Munich and BMW Group Research and Technology. It is organized under the CAR@TUM initiative, where the decades long-standing cooperation between the Technical University of Munich and the BMW Group is intensified and restructured.
References 1. Automotive open system architecture, http://www.autosar.org/ (last access on March 21, 2011) 2. Preevision, http://www.aquintos.com/ (last access on March 21, 2011) 3. Benini, L., Bogliolo, A., De Micheli, G.: A survey of design techniques for systemlevel dynamic power management. IEEE Transactions on very large scale integration (VLSI) Systems 8(3) (June 2000) 4. Berl, A., Gelenbe, E., Di Girolamo, M., Giuliani, G., De Meer, H., Dang, M.Q., Pentikousis, K.: Energy-efficient cloud computing. The Computer Journal 53(7), 1045–1051 (2010), http://comjnl.oxfordjournals.org/content/53/7/1045.abstract 5. Ceraolo, M.: New dynamical models of lead-acid batteries. IEEE Transactions on Power Systems 15(4), 1184–1190 (2000) 6. Cho, Y., Chang, N., Chakrabarti, C., Vrudhula, S.: High-level power management of embedded systems with application-specific energy cost functions. In: DAC, San Francisco, California, USA (July 2006)
A Model for Sequence Based Power Management in CPS
101
7. Gehring, R., Fr¨ oschl, J., Kohler, T., Herzog, H.G.: Modeling of the automotive 14 v power net for voltage stability analysis. In: Vehicle Power and Propulsion Conference, pp. 71–77 (September 2009) 8. Gehring, R., Herzog, H.G.: Simulation der spannungsstabilit¨ at im 12 v energiebordnetz bei komplexen e/e-architekturen. In: Moderne Elektronik im Kraftfahrzeug, Tagung Elektronik im Kraftfahrzeug, Haus der Technik e.V., Dresden (June 2009) 9. Irani, S., Shukla, S., Gupta, R.: Online strategies for dynamic power management in systems with multiple power-saving states. ACM Transactions on Embedded Computing Systems 2(3), 325–346 (2003) 10. Jejurikar, R., Gupta, R.: Dynamic voltage scaling for systemwide energy minimization in real-time embedded systems. In: ISLPED, Newport Beach, California, USA (August 2004) 11. Karsai, G., Sztipanovits, J., Ledeczi, A., Bapty, T.: Model-integrated development of embedded software. Proceedings of the IEEE 91(1), 145–164 (2003) 12. Kohler, T., Wagner, T., Thanheiser, A., Bertram, C., Buecherl, D., Herzog, H.G.: Experimental investigation on voltage stability in vehicle power nets for power distribution management. In: Vehicle Power and Propulsion Conference (2010) 13. Lee, E.: Model-driven development - from object-oriented design to actor-oriented design. In: Workshop on Software Engineering for Embedded Systems: From Requirements to Implementation (September 2003) 14. Lee, E.: Cyber physical systems: Design challenges. In: 11th IEEE International Symposium on Object Oriented Real-Time Distributed Computing (ISORC), pp. 363–369 (May 2008) ˇ 15. Lu, Y., Chung, E., Simuni´ c, T., Benini, L., De Micheli, G.: Quantitative comparison of power management algorithms. In: Design Automation and Test In Europe, pp. 20–26 (2000) 16. Moore, E.: Gedanken-experiments on sequential machines. Automata studies 34, 129–153 (1956) 17. Polenov, D., Probstle, H., Brosse, A., Domorazek, G., Lutz, J.: Integration of supercapacitors as transient energy buffer in automotive power nets. In: European Conference on Power Electronics and Applications, pp. 1–10 (September 2007) 18. Schmutzler, C., Kruger, A., Schuster, F., Simons, M.: Energy efficiency in automotive networks: Assessment and concepts. In: 2010 International Conference on High Performance Computing and Simulation (HPCS), pp. 232–240 (2010) ˇ 19. Simuni´ c, T., Benini, L., De Micheli, G.: Cycle-accurate simulation of energy consumption in embedded systems. In: Proceedings of the 36th annual ACM/IEEE Design Automation Conference, DAC 1999, pp. 867–872. ACM, New York (1999), http://doi.acm.org/10.1145/309847.310090
A System for Energy Savings in an Ambient Intelligence Environment* Thanos G. Stavropoulos1,2, Dimitris Vrakas1,2 Alexandros Arvanitidis1, and Ioannis Vlahavas1,2 1
Department of Informatics, Aristotle University of Thessaloniki, AUTH campus, 541 24 Thessaloniki, Greece 2 School of Science and Technology, International Hellenic University, 14th km Thessaloniki – Moudania, 670 01 Thermi, Greece {athstavr,dvrakas,arvanian,vlahavas}@csd.auth.gr
Abstract. This work presents an Ambient Intelligence system that targets energy consumption awareness and savings. The system was deployed at the School of Science and Technology of the International Hellenic University and follows a three-layer approach. The first layer hosts devices (currently smart plugs, sensor boards and smart clampers) suited for the purpose. The second layer, namely the aWESoME middleware (a WEb Service MiddlewarE), resolves interoperability issues on the first layer, by universally exposing all actuator functions and sensor data through Web Services. Finally, a prototype application, named iDEALISM, has been developed to reside on the topmost layer. iDEALISM presents and manages all heterogeneous devices in the same place, enabling users to make comparisons, and take informed decisions on saving energy. Keywords: wireless sensor networks, ambient intelligence, middleware, energy efficiency.
1 Introduction Ambient Intelligence (AmI) and ubiquitous computing are among the dominating technological paradigms of the near future. Mark Weiser has foretold this tendency: users surrounded by computing devices in the so-called pervasive or ubiquitous computing [1]. Indeed, nowadays, objects with increasing computing capabilities are penetrating the market and everyday life: Smartphones, internet-browsing and streaming-enabled TVs and motion detecting gaming controllers. Smart devices have also widely spread due to affordability and the arising awareness for the environmental change. Many protocols, wired or wireless, have been designed to balance energy-efficiency and fulfill device networking requirements of Smart Spaces in small scale (i.e. smart homes, smart offices etc.) or large scale (i.e. smart buildings, smart cities). Domains of application range from home to health applications, government or agriculture. *
This project is funded by Operational Program Education and Lifelong Learning, OPS 200056 (International Hellenic University, Thessaloniki, Greece).
D. Kranzlmüller and A M. Tjoa (Eds.): ICT-GLOW 2011, LNCS 6868, pp. 102–109, 2011. © Springer-Verlag Berlin Heidelberg 2011
A System for Energy Savings in an Ambient Intelligence Environment
103
A popular approach for AmI applications is the Service Oriented Architecture (SOA) in general, and, in some cases, a Web Service middleware. Web Services can expose data and functions in a universal way, forming the so-called Internet of Things. This work presents an AmI application that aims, initially, at energy awareness and consumption reduction in the smart building domain. It was designed for a University, so it is suited for large scale distributed set-up, but also for small scale, e.g. smart homes. Architecture and fundamental ideas were previously presented in [2]. This work contributes the complete development of a middleware and a client application (aWESoME and iDEALISM respectively). The novelty resides in the fact that it targets energy savings in real life and large scale. Also, it builds upon ideas never applied to this domain, as reviewed in the next section. The next section reviews related work and performs a short comparative analysis. The third section briefly reviews relevant hardware and presents the bottom layer of our system, which is a network of smart devices and sensors. The fourth section presents the middle layer of our system, e.g. the aWESoME middleware, while the fifth section presents the iDEALISM application on the topmost layer. The final two sections list future efforts and conclude our work.
2 Related Work Home AmI applications either concern multimedia and/or home automation, as shown on Table 1. Otherwise, the system employs abstract/generic services. Multimedia applications always employ UPnP/DLNA services to stream media from and to various dynamically changing endpoints. However, that is irrelevant to our work, as energy savings can hardly profit from home entertainment. The most relevant of works, from this aspect, are home automation systems [9] and [11]. Home SOA [9], unifies multimedia services like UPnP, Bonjour etc. with home automation protocols like ZigBee [12] and X10 [13], by building drivers for them. However, there is no strategy to save energy, unlike in our work. The Hydra middleware [11] is an FP7 project (soon to be renamed to LinkSmart) which also unifies heterogeneous home automation devices, by forming a Web Service Middleware. Our work differs in that Hydra doesn’t propose some specific energy saving strategy. It also doesn’t rely on composition to provide intelligent behavior. We specifically propose an application that exploits our middleware and presents consumption side by side with environmental data to raise awareness and enable informed decisions that save energy. We also plan to employ intelligent service composition in the future to improve results. Most of the systems form a middleware. The rest of them do not or at least do not mention so. Moreover, some of the systems rely on Web Services and some not. Indeed, Web Services are sometimes redundant, like in the case of multimedia and UPnP. For example Interplay [8] composes UPnP actions-called ‘Tasks’, instead of Web Services, to obtain complex Tasks. Some of the systems attach semantic annotations to Web Services. This is a popular approach to render descriptions machine-interpretable and benefit from reasoning, automatic service discovery and matching. Finally, almost all systems employ intelligent service/task composition to provide users with complex functions in a hassle-free, automatic way.
104
T.G. Stavropoulos et al. Table 1. Related work comparative table
System [3] MEDUSA [4] Mokhtar et al. [5] Paluska et al. [6] ResCo [7] Kalofonos et al. [8] InterPlay [9] Home SOA [10] Mingkhwan et al. [11] Hydra Middleware
Domain Middleware W. Services Semantic Composition Yes Yes Yes Yes Yes Yes Yes Yes No No No Yes Yes No No Yes Multimedia Yes Yes Yes Yes Multimedia Yes No No Yes Mult./Autom. No No No Yes Multimedia Yes Yes Yes Yes Automation Yes Yes Yes No
3 Smart Device Network Devices encountered in modern home automation can be classified as wired or wireless. Wired ones make use of power line cables (PLC technology) and belong mainly to the X10 family or its successor, the INSTEON[14] family. INSTEON devices are basically smart power consumption meters or controllers (switches) that are also backwards compatible with X10 devices. Like all PLC products, they utilize existent power cabling. Advantages of INSTEON, are router-free installation, interoperability of wireless and wired INSTEON nodes, unlimited number of nodes in a single network and highest reliability. However, INSTEON offers limited programmability and limited variety of devices (e.g. sensors). Wireless products belong mainly to the ZigBee or the Z-Wave[15] family and are widely used in research and actual homes. Advantages include energy saving operation (thus, long battery life), forming of self-organizing mesh networks and adequate range. Their most important asset is the vast variety of devices, including environmental sensors (e.g. CO2 meters), smart power meters, motion detectors, and actuators like motors for doors or windows, TV and STB controllers, light dimmers and more. Other devices used in ambient applications are RFID tags and cameras. RFID tags can be utilized to identify or locate persons or objects. Cameras together with Computer Vision algorithms can detect motion, identify persons or even classify their mood. Both trigger reactive automations. Finally, wireless devices have been selected for our current implementation. Selecting incompatible products or adding more in the future is not an issue, given that the system’s middleware provides the desired interoperability. Devices chosen can be classified as: Smart Plugs, Sensor Boards and Smart Clampers. They indeed belong to different manufacturers and do not interoperate out-of-the-box. Smart Plugs. Smart Plugs can be regarded as sensors, as they measure the power consumption of appliances attached to them, and simultaneously as actuators, as they can switch the power supply of these devices on or off. Each plug is normally placed in a socket intersecting between an appliance and the socket. Then, that appliance can be switched on or off and its power consumption can be read. For any non-pluggable appliances (e.g. ceiling lamps or air conditioning), there are versions of the plugs that intersect cables (a fairly simple procedure).
A System for Energy Savings in an Ambient Intelligence Environment
105
We chose a ZigBee bundle of around sixty Smart Plugs by Plugwise[16]. They form a dynamic mesh network of up to around thirty nodes. We chose to experimentally form three networks. Each one can be managed from a single PC equipped with a USB stick. As a bonus, some wall switches were also bundled, so users can control the devices in a traditional way. That improves overall user comfort and eliminates the constant need for a PC. Sensor Boards. To broaden the variety of data, the system should support the use of different sensors, environmental or not. Again, many kinds of sensors are available in the market. In contrast to Smart Plugs, sensors are not a current trend but have been of interest long ago. Requirements are however, that the sensors can form networks and are energy efficient themselves. We chose a sensor board platform by Prisma Electronics[17]. The platform consists of a ZigBee gateway that currently supports four sensor boards. The sensor boards operate in a long range, consume fairly a few energy and measure Luminance, Humidity and Temperature. More sensors can possibly be attached to the sensor boards. Sensor data is collected by the Gateway and can be accessed over Wi-Fi, on a PC application. As a bonus, the code of the client application as well as a debugging kit for the boards comes with the bundle. That helps low-level configuring of the boards e.g. for sampling frequency, and greatly facilitates embodying the sensors in the middleware. Smart Clampers. Up to this point, the system lacks large scale measurements of the power consumption. Smart Plugs can control appliances, in addition to measuring, but introduce a huge hassle and cost to connect every single power-draining appliance in the building. Even in the much simpler case of a home, using less than twenty appliances would probably result in leaving out appliances of critical consumption. The solution to this problem is fairly simple and low-cost and involves installing one or more Smart Clampers. They simply clip around the main power supply cables of a building or apartment and, using an RF transmitter, send the data to a compact monitor and/or a PC application. The monitor offers an added, friendly interface and eliminates the constant need for a PC. As a result, no appliance is left unmeasured. In the case of a single household, a single 3-phase or 1-phase clip suffices. We connected three 3-phase smart clampers by CurrentCost [19] plus their transmitters on the buildings power supplies. One of them corresponds to the university’s data center and the other two correspond to the rest of the building. We also chose to support and test a set of three 3-phase OWL transmitters [18], and fully integrated them too. This process is described in the next section.
4 The aWESoME Web Service Middleware aWESoME (a WEb Service MiddlewarE) has been developed for two purposes: to lift limitations on the first layer (devices) and to serve as a basis for AmI research, web or desktop applications. As they became apparent in the previous section, the most restraining limitations of devices are client PC placement, limited number of nodes per network, heterogeneity and incompatibility (e.g. a device only works in 32-bit OS etc). aWESoME resolves all issues as it allows any client placement , unifies networks, and
106
T.G. Stavropoulos et al.
Fig. 1. Abstract aWESoME topology, adapted from [2]
integrates all data and platforms. As a result, any number of PC or microcomputer Gateways, Web Servers of aWESoME, can be assigned to serve devices within its range as shown on Figure 1. Application Logic (even Web Service Composition) can reside on local nodes (an IHU Agent, smartphone etc) or remote nodes via the Internet. Smart Plugs. Smart Plugs are sensors and actuators at the same time. Requirements are to collect their data and be able to control them. We re-engineered their functions and built services that: get current usage in Watts, total usage in kWh, switch their power supply on and off, get status, and some low-level information like calibration data, device info firmware, buffer data and internal clock. Sensor Boards. Regardless the preconfigured sampling frequency of the sensors, services have been developed to always return temperature, humidity and luminance from a sensor along with timestamp of the reading, as well as averages, mimimum and maximum values for these readings in a given timespan. Smart Clampers. Like Sensor Boards, Smart Clampers are sensors too, so data exposure suffices for integrating them in aWESoME. OWL Clamps are read through the company’s API while CurrentCost Clampers dump data in XML. In both cases, services include getting consumption data, average, maximum and minimum values.
5 The iDEALISM Application The iDEALISM application (DEsktop AppLIcation for Smart Management) has been developed to fully exploit and showcase aWESoME’s capabilities, which doesn’t have a user-friendly UI, to preserve its generality. All in all, its novelty and energy saving
A System for Energy Savings in an Ambient Intelligence Environment
107
Fig. 2. iDEALISM GUI: The device tree is shown at the left pane and the corresponding chart and functions of the selected device at the right pane
potential lies in the fact that heterogeneous devices can be managed via the Web, and in the same place. The user can view live consumption and environmental data, and take informed decisions, even remotely. Also, subtracting plug consumption from clampers can help the user possibly locate an unwanted power waste. These are all functions that the bundles do not natively support. iDEALISM is shown on Figure 2. Nodes can be configured to operate locally or remotely, via Web Services. They can be viewed in an intuitive tree hierarchy per type, room or groups, so that even a large number of nodes can be managed easily. Data is stored in a local database and viewed in charts. Functions include switches, a handy lock and schedules. These can be extended in the future to add e.g. dimmer switches. There is also a status indicator for Smart Plugs. Finally, devices in the same group or room can be managed collectively. User Evaluation. To evaluate the application’s usability and effectiveness, thirty undergraduate computer science students tested it, having only little information about its function. In practice, users seem to quickly adapt to the interface and find what they were looking for. They completed different tasks and filled up a questionnaire, based on their experience. Table 2 shows some statistics in detail. Apparently, the application’s look is very satisfying and testers consider the application to be effective in enabling energy save. Comments and suggestions on functionality didn’t reveal any major missing functions. The on/off function, remote control over Web and schedules stood out as the most important functions for home use.
108
T.G. Stavropoulos et al. Table 2. Evaluation statistics: user satisfaction ratings from one to five
Aspect Overall Look Layout usability Amount of information/data Functionality Would you use it at home? Would it make you save energy?
Average 4.3 4.1 4.1 4.0 4.2 4.3
Minimum 3 3 3 3 2 2
Maximum 5 5 5 5 5 5
6 Future Work Being the first deployment and implementation of this system, this work has much room for improvement. We plan to integrate many more sensors (e.g. CO2) and actuators, of Z-Wave or any other protocol, to enrich the variety and functions. Microcomputers are also investigated to replace PC gateways, to severely cut down the system’s consumption. aWESoME and iDEALISM should support these new devices and present new ways to manage that data. Then, a better method for service discovery should be utilized. The development of an ontology for the Web Service descriptions in this domain, would greatly contribute to this. Semantic annotations would render descriptions machine-interpretable and enable reasoning, automated service matching, and hence better discovery. Finally, better matching would further facilitate automated composition using A.I. Planning. This is a well-known approach, as mentioned in section 2, that would provide the users with solutions to complex tasks and increase comfort of use of the AmI system.
7 Conclusion This work presents both a middleware for AmI (aWESoME) and a client application (iDEALISM) that targets energy savings. Sets of devices like Smart Plugs, Sensor Boards and Smart Clampers have been deployed in large scale, in our University. aWESoME unifies these heterogeneous device sets and lifts all limitations regarding gateway placement and nodes per network. Devices can now be managed via the Web by a variety of desktop or web applications and Service Composition can be supported. iDEALISM is a desktop application of that kind, that breakthroughs in presenting and managing the sets of incompatible devices all in the same place. That allows comparisons and motivates users take informed decisions to save energy. All in all, there is much room for improvement by supporting more device classes and automating tasks. Acknowledgments. This project is funded by Operational Program Education and Lifelong Learning, OPS 200056 (International Hellenic University, Thessaloniki, Greece).
A System for Energy Savings in an Ambient Intelligence Environment
109
References 1. Weiser, M.: The computer for the 21st century. ACM SIGMOBILE Mobile Computing and Communications Review 3(3), 3–11 (1999) 2. Stavropoulos, T.G., Tsioliaridou, A., Koutitas, G., Vrakas, D., Vlahavas, I.P.: System Architecture for a Smart University Building. In: Diamantaras, K., Duch, W., Iliadis, L.S. (eds.) ICANN 2010. LNCS, vol. 6354, pp. 477–482. Springer, Heidelberg (2010) 3. Davidyuk, O., Georgantas, N., Issarny, V., Riekki, J.: MEDUSA: Middleware for EndUser Composition of Ubiquitous Applications. In: Handbook of Research on Ambient Intelligence and Smart Environments: Trends and Perspectives. IGI Global (2010) 4. Ben Mokhtar, S.: Semantic Middleware for Service-Oriented Pervasive Computing. Doctoral dissertation, University of Paris 6, Paris, France.K. Elissa (2007) (Title of paper if known unpublished) 5. Paluska, J.M., Pham, H., Saif, U., Chau, G., Terman, C., Ward, S.: Structured decomposition of adaptive applications. International Journal of Pervasive and Mobile Computing 4(6), 791–806 (2008) 6. Lagesse, B., Kumar, M., Wright, M.: ReSCo: A middleware component for Reliable Service Composition in pervasive systems. In: PerCom Workshops, pp. 486–491 (2010) 7. Wisner, P., Kalofonos, D.N.: A Framework for End-User Programming of Smart Homes Using Mobile Devices. In: Proceedings of the 4th IEEE Consumer Communications and Networking Conference CCNC 2007, pp. 716–721. IEEE Computer Society, Washington, DC (2007) 8. Messer, A., Kunjithapatham, A., Sheshagiri, M., Song, H., Kumar, P., Nguyen, P., Yi, K.H.: InterPlay: A Middleware for Seamless Device Integration and Task Orchestration in a Networked Home. In: Proceedings of the Annual IEEE International Conference on Pervasive Computing PerCom 2006, pp. 296–307. IEEE Computer Society, Washington, DC (2006) 9. Bottaro, A., Gérodolle, A.: Home SOA - Facing Protocol Heterogeneity in pervasive Applications. In: 5th IEEE International Conference on Pervasive Services (ICPS 2008), Sorrento, Italy (July 2008) 10. Mingkhwan, Fergus, P., Abuelma’Atti, O., Merabti, M., Askwith, B., Hanneghan, M.B.: Dynamic service composition in home appliance networks. Multimedia Tools and Applications 29(3), 257–284 (2006) 11. Hydra Middleware, http://www.hydramiddleware.eu 12. The ZigBee Alliance, http://www.zigbee.org/ 13. X10, http://kbase.x10.com/ 14. INSTEON, http://www.insteon.net/ 15. The Z-Wave Alliance, http://www.z-wavealliance.org/ 16. Plugwise, http://www.plugwise.com/ 17. Prisma Electronics, http://www.prismaelectronics.eu/ 18. 2SE – OWL, http://www.theowl.com/ 19. CurrentCost, http://www.currentcost.com/
Profiling Power Consumption on Desktop Computer Systems Giuseppe Procaccianti, Antonio Vetro’, Luca Ardito, and Maurizio Morisio Dipartimento di Automatica e Informatica Politecnico di Torino Torino,Italy
[email protected] {antonio,luca,maurizio}.{vetro,ardito,morisio}@polito.it http://softeng.polito.it
Background. Energy awareness in the ICT has become an important issue: ICT is both a key player in energy efficiency, and a power drainer. Focusing on software, recent work suggested the existence of a relationship between power consumption, software configuration and usage patterns in computer systems. Aim. The aim of this work was collecting and analysing power consumption data of a general-purpose computer system, simulating common usage scenarios, in order to extract a power consumption profile for each scenario. Methods. We selected a desktop system running Windows XP as a test machine. Meanwhile, we developed 11 usage scenarios, classified by their functionality, and automated by a GUI testing tool. Then, we conducted several test runs of the scenarios, collecting power consumption data by means of a power meter. Results. Our analysis resulted in an estimation of a power consumption value for each scenario and software application used, obtaining that each single scenario introduced an overhead from 2 to 11 Watts, corresponding to an increase of about 12%. Conclusions. We determined that software and its usage patterns impacts consistently on the power consumption of computer systems. Further work will be devoted to evaluate how power consumption is affected by the usage of specific system resources, like processors, disks, memory etc. Keywords: Green Software, Energy Aware, Energy Profiling, Power Consumption.
1
Introduction
Energy efficiency is finally becoming a mainstream goal in a limited world where consumption of resources cannot grow forever. ICT is both a key player in energy efficiency, and a power drainer. The Climate Group reported that the total footprint of the ICT sector was 830 MtCO2e and that the ICT was responsible for 2% D. Kranzlm¨ uller and A M. Tjoa (Eds.): ICT-GLOW 2011, LNCS 6868, pp. 110–123, 2011. c Springer-Verlag Berlin Heidelberg 2011
Profiling Power Consumption on Desktop Computer Systems
111
Fig. 1. The 2020 global footprint by subsector
of global carbon emissions [4]. Even if the efficient technology was developed and implemented, this figure will still grow up at 6% each year until 2020. Recently, much of the attention in green IT discussions focuses on data centers. However, it is foreseen [4] that data centers will only add up to less than 20 percent of the total emissions of ICT in 2020. The majority (57 percent) will come from PCs, peripherals, and printers, as shown in Figure 1 [4]. This is because of the enormous number of machines used by individuals and businesses: it is estimated there will be 4 billion PCs in the world by 2020. So the vast number of PCs is going to dominate ICT energy consumption. It is essential to have precise figures of the current energy consumption of computer systems and ICT equipment to understand how to reduce their power consumption to design future energy efficient equipment. Today these figures are incomplete and not precise. Considering each IT device, it has its own energy consumption which can range from 0, when it is turned off, to X when all its internal components are used simultaneously. Through the management of each part there is a variation Δ x of its consumption that is between 0 and X. The management of system components can be done either in hardware or software. When we buy a device and it is not programmable, we can not do anything to limit its energy consumption. The designers have already made choices in terms of selection of components and in terms of resource management. On the other hand, if a system can be programmed, choices made by developers will affect the management of energy the device consumes. Looking at embedded systems, all the responsibilities in terms of management of energy resources are dependent on the hardware management and on the firmware. Firmware optimizations have immediate effects that can be verified directly by measuring the current the device consumes. If we consider a general purpose device, the hardware and the operating system have an important role in global energy management, but it is not the only one. On this type of device is it possible to install a multitude of programs that will impact on the management of energy resources. For example, if a third party software uses a particular peripheral incorrectly, it could increase its energy demand even when not needed. Motivated by this thought, we decided to run benchmarks on a common machine, simulating some typical scenarios and then measuring the energy
112
G. Procaccianti et al.
consumption in order to make some statistical analysis on results. A computer benchmark is typically a computer program that performs a strictly defined set of operations (a workload) and returns some form of result (a metric) describing how the tested computer performed. [7] In our benchmark the workload is a set of usage scenarios and the metric is the power consumption: we describe them in section 3, after a the description of the related work in section 2. Section 4 shows results, section 5 provides a discussion of the results and, finally, section 6 presents conclusions and future works.
2
Related Work
Recently a new post appeared on the MSDN Blog [8]: it concerns the energy consumption measurement of internet browsers. Authors measure power consumption and battery life of a common laptop across six scenarios and different browsers. They allow each scenario to run for 7 minutes and look at the average power consumption over that duration. The different scenarios were: Browsers navigated to about:blank (power consumption of the browser UI), loading a popular news Web sites (common HTML4 scenario), running the HTML5 Galactic experience (representative of graphical HTML5 scenario) and fish swimming around the FishIE Tank (what test is complete without FishIE). The baseline for scenarios comparison was the Windows 7 without any browsers running. Authors ran IE9, Firefox, Opera and Safari for each scenario and then they made a comparison of the obtained results. They executed the same operations with the different browsers, obtaining very different results on power consumption and laptop battery life. Hence, software can impact on energy consumption, as we also found in our previous work [11], where we monitored three servers for a whole year, observing that one of them consumed up to 75% more when used for graphical operations. Kansal et al. [5] presented a solution for VM power metering. Since measuring the power consumption of a Virtual Machine is very hard and not always possible, authors built power models to get power consumption at runtime. This approach was designed to operate with low runtime overhead. It also adapts to changes in workload characteristics and hardware configuration. Results showed 8% to 12% of additional savings in virtualized data centers. Another related work is PowerScope [3]: this tool uses statistical sampling to profile the energy usage of a computer system. Profiles are created both during the data collection stage and during the analysis stage. During the first stage, the tool samples both the power consumption and the system activity of the profiling computer and then generates an energy profile from this data without profiling overhead. During data collection, authors use a digital multimeter to sample the current drawn by the profiling computer through its external power input. After that, they modified Odyssey platform for mobile computing. When there is a mismatch between predicted demand and available energy, Odyssey notifies applications to adapt. This is one of the first examples of Energy-Aware software. Yet in 1995 people are beginning to profile the energy performance of a computer. Lorch [6] in his M.S. thesis explained that there are two aspects to consider
Profiling Power Consumption on Desktop Computer Systems
113
while measuring the breakdown of power consumption on a portable computer: I) Measuring how much power is consumed by each component, II) Profiling how often each component is in each state. Other works about profiling and measuring energy consumption are related to embedded systems. For instance, JouleTrack [9] runs each instruction or short sequences of instruction in a loop and measure the current/power consumption. The user can upload his C source code to a Web Server which compiles, links and executes it on an ARM simulator. Program outputs, assembly listing and the run-time statistics (like execution time, cycle counts etc.) are then available and passed as parameters to an engine which estimates the energy consumed and produces graphs of different energy variables. Results showed that the error of predictions was between 2% and 6%.
3 3.1
Study Design Goal Description and Research Questions
The aim of our research is to assess the impact of software and its usage on power consumption in computer systems. We define our goal through the GoalQuestion-Metric (GQM) approach. [10]. This approach, applied to our experiment, lead to the definition of the model presented in Table 1. The first research question investigates whether and how much software impacts power consumption. We will test different applications and usage patterns. The second research question investigates whether a categorization of usage scenarios with respect to functionality is also valid for power consumption figures. 3.2
Variable Selection
In order to answer our Research Questions, we planned and conducted a series of experiments, aimed at profiling how much power a computer system consumes when performing daily activities for a common user. We selected as independent variables the following 11 usage scenarios. Table 1. The GQM Model
Goal
Evaluate for the purpose with respect to from the viewpoint in the context of
Question 1
Does software impact power consumption?
Metric
Consumed Power (Watts)
Question 2
Can we introduce a classification for software usage scenarios basing upon power consumption?
Metric
Consumed Power (Watts)
software usage of assessing its energetic impact power consumption of the System User Desktop applications
114
G. Procaccianti et al.
0 - Idle. This scenario aims at evaluating power consumption during idle states of the system. In order to avoid variations during the runs, most of OS’automatic services were disabled (i.e. Automatic Updates, Screen Saver, Anti-virus and such). 1 - Web Navigation. This scenario depicts one of the most common activities for a basic user - Web Navigation. During the simulation, the system user starts a web browser, inputs the URL of a web page and follows a determined navigation path. We chose Google Chrome as the browser for this scenario because of its better performance on the test system, which allowed us to increase navigation time. The website chosen for this scenario is the homepage of our research group http://softeng.polito.it, so that we could maintain the same contents and navigation path during all the scenario runs. 2 - E-Mail. This scenario simulates sending and receiving E-Mails. For this scenario’s purpose, a dedicated E-Mail account has been created in order to send and receive always the same message. In this scenario, the system user opens an E-Mail Client, writes a short message, sends it to himself, then starts checking for new messages by pushing on the send/receive button. Once the message has been received, the user reads it (the reading activity has been simulated with an idle period), then deletes the messages and starts over. 3 - Productivity Suite. This scenario evaluates power consumption during the usage of highly-interactive applications, such as office suites. For this scenario, we chose Microsoft Word 2007, the most used Word Processor application. During the scenario execution, the system user launches the application and creates a new document, filling it with content and applying several text editing/formatting functions, such as enlarge/shrink Font dimension, Bold, Italics, Underlined, Character and background colors, Text alignment and interline, lists. Then the document is saved on the machine’s hard drive. For each execution a new file is produced, thus the old file gets deleted at the end of the scenario. 4 - Data Transfer (Disk). This scenario evaluates power consumption during operations that involve the File System, and in particular the displacement of a file over different positions of the hard drive, which is a very common operation. For this scenario’s purpose, we prepared a data file of a relevant size (almost 2 GB) in order to match the file transfer time with our prefixed scenario duration (5 minutes). The scenario structure is as follows: the system user opens an Explorer window, selects the file and moves it to another location. It waits for file transfer to end, then closes Explorer and exits. 5 - Data Transfer (USB). As using portable data storage devices has become a very common practice, we developed this scenario to evaluate power consumption during a file transfer from the system hard drive to an USB Memory Device. This scenario is very similar to the previous one, exception given for the file size (which is slightly lower, near 1.8 GB) and the file destination, which is the logical drive of the USB Device.
Profiling Power Consumption on Desktop Computer Systems
115
6 - Image Browsing/Presentation. This scenario evaluates power consumption during another common usage pattern, which is a full-screen slide-show of medium-size images, which can simulate a presentation as well as browsing through a series of images. In this scenario, the system user opens a PDF File composed of several images, using the Acrobat Reader application. It sets the Full-Screen visualization, then manually switches through the images every 5 seconds (thus simulating a presentation for an audience). 7 - Skype Call (Video Disabled). For an average user, the Internet is without any doubt the most common resource accessed via a Computer System. Moreover, as broadband technologies become always more available, we thought it would be reductive not to consider usage scenarios that make a more intensive use of the Internet than Web Navigation and E-Mails. Thus, we developed the Skype scenario, which is the most used application for Video Calls and Video Conferences among private users. For this scenario’s purposes, a Test Skype Account was created, and the Skype Application was deployed on the test machine. Then, for each run, a test call is made to another machine (which is a laptop situated in the same laboratory) for 5 minutes, which is our prefixed duration. 8 - Skype Call (Video Enabled). This scenario is similar to scenario 7, but the Video Camera is enabled during the call. This allows us to evaluate the impact of the Video Data Stream both on power consumption and on system resources. 9 - Multimedia Playback (Audio). This scenario aims to evaluate power consumption during the reproduction of an Audio content. For this scenario’s purpose, we selected an MP3 file, with a length of 5 minutes, to reproduce through a common multimedia player. We chose Windows Media Player as it is the default player in Microsoft systems, and thus one of the most diffused. 10 - Multimedia Playback (Video). Same as above, but in this case the subject for reproduction is a Video File in AVI format, same duration. 11 - Peer-to-Peer. As for the Skype scenarios, we decided to take into account also a Peer-to-Peer scenario, which we believe is a very common practice among private users. For this scenario, we selected BitTorrent as a Peer-to-Peer application, because of its large diffusion and less-variant usage pattern if compared to other Peer-to-Peer networks with more complex architectures. During this scenario, the system user starts the BitTorrent client, opens a previously provided .torrent archive, related to an Ubuntu distribution, and starts the download, which proceeds for 5 minutes. After every execution, the partially downloaded file is deleted, in order to repeat the scenario with the same initial conditions. In Table 2 we summarize all the scenarios with a brief description of each of them. The last column reports the category which scenarios belong to, from a functional point of view, according to the following: – Idle (Scenario 0): it is the basis of our analysis, evaluates power consumption during the periods of inactivity of the system.
116
G. Procaccianti et al. Table 2. Software Usage Scenarios Overview
Nr. Title
Description
Category
0
Idle
No user input, no applications running, most of Idle OS’automated services disabled.
1
Web Navigation
Open browser, visit a web-page, operate, close Network browser.
2
E-Mail
Open e-mail client, check e-mails, read new mes- Network sages, write a short message, send, close client.
3
Productivity Suite
Open word processor, write a small block of text, Productivity save, close.
4
Data Transfer Copy a large file from a disk position to another. File System (disk)
5
Data Transfer Copy a large file from an USB Device to disk. (USB)
6
Presentation
Execute a full-screen slide-show of a series of Multimedia medium-size images.
7
Skype Call (no video)
Open Skype client, execute a Skype conversation Network (video disabled), close Skype.
8
Skype Call (video)
Open Skype client, execute a Skype conversation Network (video enabled), close Skype.
9
Multimedia (Audio)
Open a common media player, play an Audio file, Multimedia close player.
10
Multimedia (Video)
Open a common media player, play a Video file, Multimedia close player.
11
Peer-to-Peer
Open a common peer-to-peer client, put a file into Network download queue, download for 5 minutes, close.
File System
– Network (Scenarios 1,2,7,8,11): it represents activities that involve network subsystems and Internet. – Productivity (Scenario 3): it is related to activities of personal productivity. – File System (Scenarios 4,5): it concerns activities that involve storage devices and File System operations. – Multimedia (Scenarios 6,9,10): it represents activities that involve audio/ video peripherals and multimedia contents. The dependent variable selected for the experiment is P i.e. the instant power consumption (W). Therefore, Pn is the average power consumption during Scenario n = 1..11 and Pidle|net|prod|f ile|MM is the average power consumption of (respectively) Idle, Network, Productivity, File System and Multimedia scenarios. 3.3
Hypothesis Formulation
Basing upon our GQM Model, we can formalize our Research Question into Hypotheses.
Profiling Power Consumption on Desktop Computer Systems
117
– RQ 1: Does Software impact Power Consumption? H10 : Pidle ≥ Pn , n ∈ [1, 11] H1a : Pidle < Pn , n ∈ [1, 11] – RQ 2: Can we introduce a classification for software usage scenarios basing upon power consumption? H20 : Pidle = Pnet = Pprod = Pf ile = PMM H2a : Pidle = Pnet = Pprod = Pf ile = PMM 3.4
Instrumentation and Experiment Design
Every scenario has been executed automatically by means of a GUI Automation Software for 5 minutes. We obtained 30 runs per scenario, each composed of 300 observations (one per second) of the instant power consumption value (W). The test machine is a Desktop PC running Windows XP, situated in the ISCBD Lab of the University of Cordoba, Escuela Politecnica Superior. In Table 2, the Hardware/Software configuration of the machine is presented. We used two different software and hardware tools to do monitoring, measurement and test automation.The Software tool we used for test automation is Qaliber [1], which is mainly a GUI Testing Framework, composed of a Test Developer Component, that allows a developer to write a specific test case for an application, by means of “recording” GUI commands, and a Test Builder Component, which allows to create complex usage scenarios by combining the use cases. The measurement of power consumption was done through a power monitoring device provided by an industrial partner, called PloggMeter [2]. This device is capable of computing Active and Reactive Power, Voltage, Current Intensity, Cosϕ. The data is stored within the PloggMeters 64kB memory and can be downloaded in a text file format via the RF wireless connection to a Windows enabled PC or Laptop or viewed as instantaneous readings on the installed Plogg Manager software. We modified the device drivers to adapt the PloggMeter recording capability to our purposes, specifically to decrease the logging interval from 1 minute (which is too wide if compared to software time) to 1 second. Table 3. HW/SW Configuration of the test machine CPU
AMD Athlon XP 1500+
Memory
768 MB DDR SDRAM
Display Adapter ATI Radeon 9200 PRO 128 MB HDD
Maxtor DiamondMax Plus 9 80GB Hard Drive
Network Adapter NIC TX PCI 10/100 3Com EtherLink XL OS
Microsoft Windows XP Professional SP3
118
3.5
G. Procaccianti et al.
Analysis Methodology
The goal of data analysis is to apply appropriate statistical tests to reject the null hypothesis. The analysis will be conducted separately for each scenario in order to evaluate which one has an actual impact on power consumption. First of all we will test the null hypothesis H10 for each scenario. Then we will group them into categories and we will test H20 for each category. Since we expect the values not to be normally distributed, we will adopt non parametric tests, in particular we selected the Mann-Whitney test [12]. The first hypothesis H10 is clearly directional, thus the one-tailed variant of the test will be applied. The second hypothesis H20 is not directional, therefore we will apply the two sided variant of the test. We will draw conclusions from our tests based on a significance level α = 0.05, that is we accept a 5% risk of type I error – i.e. rejecting the null hypothesis when it is actually true. Moreover, since we perform multiple tests on the same data – precisely twice: first overall and then by category – we apply the Bonferroni correction to the significance level and we actually compare the test results versus a αB = 0.05/2 = 0.025. 3.6
Validity Evaluation
We will classify threats of experiment validity in two categories: internal threats, derived from our treatments and instrumentation, and external threats, that regard the generalization of our work. There are three main internal threats. The first concerns the measurement sampling: our measurements were taken with a sampling rate of 1 second. This interval is a compromise between our power Table 4. Scenarios Statistics Overview Mean Median S.E. C.I. Variance
σ
Var.Co. VMR
0 - Idle
86.81
86.69
0.007 0.013
0.424
0.650
0.007
0.005
1 - Web
89.09
88.57
0.011 0.022
3.372
1.836
0.021
0.038
2 - E-Mail
88.03
87.11
0.024 0.047
5.195
2.279
0.026
0.059
3 - Prod
90.12
89.40
0.025 0.500
5.862
2.421
0.027
0.065
4 - Disk
94.12
97.21
0.048 0.095
21.12
4.595
0.049
0.224
5 - USB
96.41
97.10
0.024 0.046
5.047
2.246
0.023
0.052
6 - Image
91.97
91.48
0.041 0.081
15.474
3.934
0.043
0.168
7 - Skype
91.87
91.69
0.015 0.029
1.981
1.407
0.015
0.022
8 - SkypeV 95.40
95.75
0.020 0.040
3.844
1.960
0.020
0.040
9 - Audio
88.14
87.94
0.013 0.025
1.429
1.195
0.013
0.016
10 - Video
88.61
88.57
0.009 0.017
0.677
0.823
0.009
0.008
11 - P2P
88.46
88.25
0.010 0.019
0.842
0.917
0.010
0.009
Profiling Power Consumption on Desktop Computer Systems
119
metering device capability and our software logging service. However, it could be a wide interval if compared to software time. Subsequently, we could have network confounding factors: as we included in our treatments several usage scenarios involving network activity and the Internet, the unpredictability of the network behaviour could affect some results. Another confounding factor is represented by OS scheduling operations: the scheduling of user activities and system calls is out of our control. This may cause some additional variability in our scenarios, especially for those that involve the File System. Finally, the main external threat concerns a possible limited generalization of results: this is due to the fact that it was conducted on a single test machine. 3.7
Preliminary Data Analysis
We present in Table 4 the following descriptive statistics about measurements for each scenario. Table 4 reports in this order mean (Watts), median (Watts), standard error on the mean, 95% confidence interval of the mean, variance, standard deviation (σ), variation coefficient (the standard deviation divided by the mean), index of dispersion (variance-to-mean ratio, VMR). Power consumptions vary from a minimum median of 86.89 W of the Idle scenario up to a maximum median of 97.21 W of the Disk scenario. Therefore the excursion is about 11 W. Moreover, the different samples for each scenario are homogeneous because variability indexes are very low.
4
Results
We provide results of hypotheses testing of the two research questions. Table 5 and 6 report the scenarios tested, the p-value of Mann-Whitney test and the estimated difference of the medians between Idle scenario and the other ones. Question 1: Does software impact power consumption? H1 : Pidle = Pn ∀n ∈ [1, 11]. Question 2: Can we introduce a classification for software usage scenarios basing upon power consumption? H2 : Pidle = Pnet = Pprod = Pf ile = PMM
5
Discussion
The collected data shows us several facts, and gives us the answers for our Research Questions. As we can observe in Table 5, every usage scenario consumes more power than the Idle Scenario. This difference rises up to 10.41 Watts, which represents 12% of the total Idle Power Consumption. Thus, we can undeniably affirm that software has a relevant impact upon Power Consumption, which was our first Research Question. As regards, however, our second RQ, Scenarios
120
G. Procaccianti et al. Table 5. Hypothesis H1 Test Results Scenario Comparison 0 - Idle vs. 1 - Web Navigation 0 - Idle vs. 2 - E-Mail 0 - Idle vs. 3 - Productivity Suite 0 - Idle vs. 4 - IO Operation (Disk) 0 - Idle vs. 5 - IO Operation (USB) 0 - Idle vs. 6 - Image Browsing 0 - Idle vs. 7 - Skype Call (No Video) 0 - Idle vs. 8 - Skype Call (Video) 0 - Idle vs. 9 - Multimedia Playback (Audio) 0 - Idle vs. 10 - Multimedia Playback (Video) 0 - Idle vs. 11 - Peer-to-Peer
p-value Est. Diff < 0.0001 -1.87 < 0.0001 -0.52 < 0.0001 -2.71 < 0.0001 -10.41 < 0.0001 -10.41 < 0.0001 -4.69 < 0.0001 -5.10 < 0.0001 -9.05 < 0.0001 -1.25 < 0.0001 -1.87 < 0.0001 -1.66
Table 6. Hypothesis H2 Test Results Scenario Category Comparison Idle vs. Network Idle vs. Productivity Idle vs. File System Idle vs. Multimedia Network vs. Productivity Network vs. File System Network vs. Multimedia Productivity vs. File System Productivity vs. Multimedia File System vs. Multimedia
p-value Est. Diff < 0.0001 -2.08 < 0.0001 -2.71 < 0.0001 -10.41 < 0.0001 -1.67 < 0.0001 -0.31 < 0.0001 -6.97 < 0.0001 0.31 < 0.0001 -6.87 < 0.0001 0.73 < 0.0001 8.53
Classification, results are not homogeneous: for instance, we observe in Figure 2 that Network Category has a very wide range if compared to the others. Moreover, the comparison not always gives a clear distinction between the profiles. This suggests that a Classification based on functionality can be inadequate for Power Consumption. Another classification may arise from the analysis of every single Scenario. As we can see from Table 4 and 5, the most power-consuming scenarios are those that involve File System, followed by Skype (both with and without Video Enabled) and Image Browsing. From the hardware point of view, these scenarios are also the most expensive in terms of system resources. Thus, classifying our scenarios basing upon resource utilization can be a more accurate way to estimate their power consumption. For instance, the power consumption profile of Skype is very different (about 4-5 Watts in average) with and without enabling the Video Camera. Finally, another interesting question that arises from our analysis is, in case of applying these Scenarios in groups, if their power consumption would follow a linear composition rule (thus summing up the values). That is, for example, if we imagine a composed Usage Scenario S that involves a Skype Call, a Web Navigation and a Disk Operation performed simultaneously,
121
86
88
90
92
94
96
98
100
Profiling Power Consumption on Desktop Computer Systems
Idle
Network
Productivity
FileSystem
Multimedia
86
88
90
92
94
96
98
100
Fig. 2. Box Plot of Scenario Categories
0
1
2
3
4
5
6
7
8
9
10
11
Fig. 3. Box Plot of per-run Power Consumption values
their linear composition would give an estimated Power Consumption per second of Pidle + ΔPS = 86.81W + 21.33W = 108.14W , introducing about a 25% overhead power consumption.
G. Procaccianti et al.
86
88
90
92
94
96
98
100
122
0
1
2
3
4
5
6
7
8
9
10
11
Fig. 4. Box Plot of global Power Consumption values
6
Conclusions
Our experiment let us assess quantitatively the energetic impact of software usage. We built up common application usage scenarios (e.g.: Skype call, Web Navigation, Word writing) and executed them independently to collect power consumption data. Each single scenario introduced an overhead from 2 to 11 Watts (corresponding to an increase of about 12%): if their power consumption would follow a linear composition rule, the impact could be even higher. Moreover, results set the basis for future works and research projects. First of all, our experiment will be replicated on different machines, thus making it possible for us to generalize our results. Meanwhile, we will proceed with the analysis of resource usage data, searching for statistical correlations between these values and the power consumption values. This analysis will hopefully help us to understand the relationships between resource utilization and power consumption. Our idea is that re-factoring applications by considering a more efficient resource utilization, the impact of software on power consumption could be easily reduced. Acknowledgements. The authors of this article would like to thank Antonino Fiume for his precious help in the handling of the Plogg monitoring device, prof. Miguel-Angel Gomez Nieto and the ISCBD Group of the University of Cordoba (UCO) - Escuela Politecnica Superior for providing the test machine and the laboratory in which the experiment was performed.
Profiling Power Consumption on Desktop Computer Systems
123
References 1. Qaliber - GUI Testing Framework, http://www.qaliber.net/ 2. Youmeter - Plogg Technologies, http://www.youmeter.it/youmeter, http://www. plogginternational.com/ 3. Flinn, J., Satyanarayanan, M.: Powerscope: A tool for profiling the energy usage of mobile applications. In: IEEE Workshop on Mobile Computing Systems and Applications, vol. 2 (1999) 4. Group, T.C.: Smart 2020: Enabling the low carbon economy in the information age. Tech. rep., GeSi (2008) 5. Kansal, A., Zhao, F., Liu, J., Kothari, N., Bhattacharya, A.A.: Virtual machine power metering and provisioning, http://research.microsoft.com/apps/pubs/ default.aspx?id=120435 6. Lorch, J.: A complete picture of the energy consumption of a portable computer. Tech. rep. (1995) 7. Marcu, M., Vladutiu, M., Moldovan, H., Popa, M.: Thermal benchmark and power benchmark software. ArXiv e-prints (September 2007) 8. Microsoft, C.: Browser Power Consumption - Leading the Industry with IE 9, http://blogs.msdn.com/b/ie/archive/2011/03/28/ browser-power-consumption-leading-the-industry-with-internet-explorer -9.aspx 9. Sinha, A., Chandrakasan, A.: Jouletrack-a web based tool for software energy profiling. In: Proceedings Design Automation Conference, pp. 220–225 (2001) 10. Van Solingen, R., Berghout, E.: Goal/Question/Metric Method. McGraw-Hill Inc., US (1999) 11. Vetro’, A., Ardito, L., Morisio, M., Procaccianti, G.: Monitoring it power consumption in a research center: 7 facts. In: CPS, I. (ed.) Proceedings of Energy 2011 (2011) 12. Hollander, M., Wolfe, D.A.: Nonparametric Statistical Methods. John Wiley & Sons, Chichester (1973)
GAINS – An Interactive Tool for Assessing International GHG Mitigation Regimes Thanh Binh Nguyen, Fabian Wagner, and Wolfgang Schoepp International Institute for Applied Systems Analysis (IIASA) Schlossplatz 1 A-2361 Laxenburg, Austria Tel.: (+43 2236) 71 327 {nguyenb,wagnerf,schoepp}@iiasa.ac.at
Abstract. Mitigating greenhouse gases (GHGs) is key to reducing the longterm impacts of climate change. In this paper we present the GAINS system, i.e. a data warehouse with an online integrated assessment model that is already used in various international policy fora as a tool to quantify the costs and environmental benefits of reducing emissions of greenhouses gases and air pollutants. We explain the basic concepts and requirements of the system and illustrate how short-term co-benefits for local pollution can motivate GHG mitigation as a response of the otherwise intangible long-term and global risk of climate change. Hereafter, GAINS can be used as a common framework to make available and to compare the implications of the outputs of different energy system models working at different spatial and temporal scales. Furthermore, outputs of GAINS can be used as input for other models. Finally, we thus illustrate how integrated data management as implemented in the GAINS system supports the development of science-driven policies in term of case studies. Keywords: GAINS, Data Warehouse.
1 Introduction The GAINS model is a scientific tool developed to aid policy makers in designing effective and cost-efficient policies on GHG mitigation and air pollution [1,2,9]. It can be used to calculate the implications and costs for a wide range of policy proposals [2], and it is already being used by a number of organizations and governments, and in particular by the European Commission and EU member states, in a variety of policy processes [2,9,14]. One of the key strengths of the GAINS model is that it can not only calculate costs for GHG mitigation and provide very detailed data on technology options, but also quantify the co-benefits of GHG mitigation on local air pollution [2,3,14]. This is of particular relevance as GHGs and air pollutants often stem from the same sources and the improvement of local air pollution can be a powerful incentive for implementing GHG mitigation policies even in the absence of a global agreement. The GAINS model estimates emissions, mitigation potentials and costs for five air pollutants (SO2, NOx, PM, NH3, VOC) and for the greenhouse gases included in the D. Kranzlmüller and A M. Tjoa (Eds.): ICT-GLOW 2011, LNCS 6868, pp. 124–135, 2011. © Springer-Verlag Berlin Heidelberg 2011
GAINS – An Interactive Tool for Assessing International GHG Mitigation Regimes
125
Kyoto protocol. Historic emissions of air pollutants and GHGs are estimated for each country based on information collected by available international emission inventories and on national information supplied by individual countries. It brings together information on future economic, energy and agricultural development, emission control potentials and costs, atmospheric dispersion and environmental sensitivities towards air pollution [14]. In addition, data warehouse and business intelligence (BI) [6,7,8,12,13,17,18,19] are the processes of gathering enough of the right information in the right manner at the right time, and delivering the right results to the right people for decision-making purposes so that they can continue to yield real business benefits, or have a positive impact on business strategy, tactics, and operations. In our previous papers [3,4,5], we developed the business intelligent system called as GAINS-BI (GAINS Business Intelligent) that enables analysis and reporting. In this context, we introduced mathematical models used to calculate emission and cost [14] for a given pollutant, a given GAINS region, and a given year within a given GAINS scenario. These mathematical sound concepts enable us to specify the GAINS-BI conceptual data model as well as to calculate emission and costs in the ETL (Extract-Transform-Load) processes and data cube generation. In this paper, the GAINS model is presented as a data warehousing system with an interactive web-based software tool to quantify the costs and environmental benefits of reducing emissions of greenhouses gases and air pollutants. First, we introduce GAINS concepts, which can be used to explain the basic workings of the model and illustrate how short-term co-benefits for local pollution can motivate GHG mitigation as a response of the otherwise intangible long-term and global risk of climate change. In this context, the reduction of GHGs also reduces the amount of local air pollution and thus can lead to significant improvements in people’s health, and GAINS calculates these co-effects. Furthermore, the GAINS can be considered as a common framework to make available and to compare the implications of the outputs of different energy system models working at different spatial and temporal scales, and the GAINS system architecture illustrates the data interfaces of GAINS with two of such models and the general data flows. Finally, outputs of GAINS can be used as input for other models, and we illustrate this briefly for the cases (a) of a model for calculating cost-benefit ratios of specific policy proposals, and (b) of a simple economic-demographic growth model that uses the estimates of positive health effects of GHG mitigation to calculate the positive feedbacks on the economy as a whole. In sum we thus illustrate how integrated data management as implemented in the GAINS system and its implementation results. The rest of this paper is organized as follows: section 2 introduces some approaches and projects related to our work; in section 3, after an introduction of GAINS concepts, a GAINS data warehouse system architecture is presented. Section 4 will present our implementation results in term of three typical case studies. At last, section 5 gives a summary of what have been achieved and future works.
2 Related Work To assess and compare mitigation potentials and costs, IIASA has employed its GAINS model [1,2,9], an extension of its flagship integrated assessment model
126
T.B. Nguyen, F. Wagner, and W. Schoepp
RAINS. The GAINS approach provides a framework for a coherent international comparison of the potentials and costs for emission control measures, both for GHGs and air pollutants. It estimates with which measures in which economic sector the emissions of the six greenhouse gases could be reduced to what extent, as well as the costs for such action [4,14]. There are several specific questions that the GAINS model [1] can answer, like “How much would a migration from one technology to another, more effective one, cost and how much emissions would it save?”, or “What is the most effective way in terms of use of technologies to save emissions within a given budget?”. Questions like this are answered with the help of the GAINS optimization module [14]. Furthermore, the GAINS model incorporates aspects that constitute important interactions between air pollution reduction and GHG mitigation strategies. The characters of the proposed approach can be rooted in several research areas of BI, including the trends and concepts of BI solutions, the combined use of mathematical models and data warehousing technologies for supporting BI, as well as the utilization of BI in GAINS. In this context, the GAINS-BI system [5] is implemented with various data analysis and decision support components, and is designed to provide efficient ways of obtaining valuable information and knowledge [7,15,16]. This paper describes the concepts of the GAINS model and its components. It presents a recent policy analysis that explores the likely future development of emissions and air quality in the absence of further policy measures, and assesses the potential and costs for further environmental improvements.
3 GAINS Concepts and Modeling In this section first we introduce the GAINS concepts and requirements, i.e. the GAINS brings together information on future economic, energy and agricultural development, emission control potentials and costs, atmospheric dispersion and environmental sensitivities towards air pollution [2]. Based on this background, the system architecture is designed and specified. 3.1. Concepts and Requirements Integrated assessment models, such as the GAINS, have been developed to identify portfolios of measures that improve air quality and reduce greenhouse gas emissions at least cost [2]. Such models bring together scientific knowledge and qualitycontrolled data on future socio-economic driving forces of emissions, on the technical and economic features of the available emission control options, on the chemical transformation and dispersion of pollutants in the atmosphere, and the resulting impacts on human health and the environment. In order for a scientific tool such as GAINS to be useful for national experts and decision makers (the latter of whom typically are not experts) in a much broader international policy process, a computer simulation model has to meet a number of requirements that other scientific models typically do not face [2]. The model needs to be: •
accessible, i.e. both the typically inputs and outputs of the analysis need to be publically available at all times;
GAINS – An Interactive Tool for Assessing International GHG Mitigation Regimes
• • • • •
127
transparent, i.e. in addition the model rationale and mathematical relations need to be comprehensible even to non-experts; participatory, i.e. national experts need to be able to have an influence on the model design; able to deliver results promptly as needed; able to store large amounts of data and produce them even after years; able to interact with a variety of other, specialized modeling tools.
This system allows not only to calculate emissions, environmental impacts and costs in real time and online, but also to download, modify and upload all relevant underlying data. Furthermore, the GAINS model addresses threats to human health posed by fine particulates and ground-level ozone, risk of ecosystems damage from acidification, excess nitrogen deposition (eutrophication) and exposure to elevated levels of ozone, as well as long-term radiative forcing. These impacts are considered in a multi-pollutant context, quantifying the contributions of sulfur dioxide (SO2), nitrogen oxides (NOx), ammonia (NH3), non-methane volatile organic compounds (VOC), and primary emissions of fine (PM2.5) and coarse (PM2.5-PM10) particles as showed in table 1. Table 1. The multi-pollutant/multi-effect approach of the GAINS model (open circles indicate linkages that are not yet considered in GAINS)
Health impacts ambient particulate matter -ground-level ozone
PM
SO2
NOx
VOC
NH3
●
●
●
●
●
●
●
¤
●
● ● ●
¤
¤
¤
Vegetation and ecosystems damage -ground-level ozone - acidification - eutrophication Climate impacts - Long-term forcing (GWP100)
¤
●
● ●
¤
¤
CO2
●
CH4
●
N2O
HFCs PFCs SF6
●
●
3.2. Modeling and Interaction with Other Models In GAINS scenarios for future emissions are made of essentially three building blocks: (a) activity projections, such as energy use in different sectors, economic output, etc. (b) control strategies, i.e. application rates of control/mitigation technologies (these control strategies represent the various environmental policies), and (c) sets of emission factors and cost factors. A scenario is a combination of a dataset for each of these three components, and a scenario can be configured not only for different countries, but also certain classes of macro sectors individually. In this
128
T.B. Nguyen, F. Wagner, and W. Schoepp
way we can generate rather large numbers of scenarios from a relatively compact set of components. According to [5], mathematical models used to calculate emission, and cost [14] for a given pollutant, GAINS region, and year within a given GAINS scenario have been introduced. These mathematic sound concepts enable to specify the GAINS conceptual multi dimensional data model as well as used for calculating emission and costs in the ETL process and data cube generation. In this context, as described in figure 1, the GAINS data warehousing system architecture and its concepts have been introduced as an application framework.
Fig. 1. GAINS system architecture
To fulfill regional specific as well as global requirements of the GAINS model, an integrated approach, i.e. a cloud intelligent service system for calculating emissions and costs for reducing emissions has been studied and presented in [4]. In this top down approach, first, a global data warehouse, namely GAINS World DWH, is developed by integrating data from international emission inventories and national information supplied by individual countries. For example, pathways of future energy use typically originate from global or national energy system models, while projections in the agricultural sector (such as animal numbers and agricultural areas) are provided by detailed agriculture models. These scenario data need to be assimilated and imported and we have developed interfaces for automated upload already for a number of models (such as PRIMES, IEA, FAO and CAPRI). Then, each new regional data warehouse is built and administrated by using the GAINS data warehouse platform services. The regional data warehouse is then used for regional data analysis and cost optimization by using the GAINS business intelligent services. The utilization of the cloud intelligent approach provides a feasible and effective method to improve the ability of building, managing as well as analysis of multi-regional data warehouses. Similarly, GAINS outputs are being used by other tools downstream from GAINS, which is why we are constantly developing new applications for users (illustrated in
GAINS – An Interactive Tool for Assessing International GHG Mitigation Regimes
129
figure 2)[16]. A simple example is an option to export Java-generated tables into Excel for further analysis in a rather ad-hoc fashion, but there are also established protocols for exporting data to, e.g. atmospheric chemistry models or impact valuation tools. Another challenge that arises is that changes in the structure and data of the model are essentially made in real time, and sometimes the need to technical updates interferes with the requirements of providing a constant setup for a particular policy process. Often we walk a thin line between offering on the one hand a dynamic tool and on the other hand a stable framework.
Fig. 2. GAINS and its related models
4 GAINS Implementation Results The GAINS model is implemented as an interactive web-based software tool that communicates with an ORACLE databases. Access is freely available over the Internet (http://gains.iiasa.ac.at). The interface allows the user to display all calculation results, such as emissions and costs (to various levels of aggregation) for alternative scenarios. Impacts can be displayed in tabular or graphical form (maps), and all results can be exported into different formats, e.g. Excel, Graphical Charts, PDF, RTF, etc for further analysis. Next sections will show some typical case studies of GAINS. 4.1 Modeling Air Quality The anticipated decline in air pollutant emissions will have profound impacts on future air quality and alleviate harmful effects of air pollution. In particular, the GAINS model estimates that the average loss in statistical life expectancy that can be attributed to exposure to fine particulate matter (PM2.5) will decline between 2005 and 2020 from 7.4 months to 4.4 months in the EU-27 and to 6.1 months in the nonEU countries (figure 3). Particularly high threats to human health occur in industrial areas, where air pollution is estimated to shorten life expectancy by more than a year.
130
T.B. Nguyen, F. Wagner, and W. Schoepp
Fig. 3. Loss in statistical life expectancy attributable to exposure to PM2.5 from anthropogenic sources (in months). Left panel: 2000; right panel: 2020.
Fig. 4. Impact indicators estimated for 2005 (top row) and for the baseline scenario in 2020 (bottom rows)
GAINS – An Interactive Tool for Assessing International GHG Mitigation Regimes
131
In addition to health damage, air pollution also threatens the sustainability of natural and managed ecosystems. High levels of deposition of air-borne nitrogen compounds impose a serious threat to the biodiversity of ecosystems throughout Europe. In 2005, about 50% of the ecosystems area in Europe (and 72% of the EU ecosystems) experienced nitrogen deposition in excess of their critical loads, i.e., the threshold levels that can be dealt with by ecosystems without causing damage in the long run [2]. The baseline development will improve this situation by 2020, but will still leave 38% of the European ecosystems area exposed to excess deposition (Figure 4). Excess nitrogen deposition can be linked to reduced species richness, which is most threatened in the eastern UK, in the Benelux countries and Brittany, in northern Germany and Bavaria, and in northern Italy. While acidification of forest soils and freshwater bodies was a widespread phenomenon in Europe, the steep reductions in SO2 and NOx emissions that are implied by the baseline projection will profoundly reduce deposition and bring it below critical loads in many European forests. As a consequence, excess deposition is only expected for rather limited areas in a few countries. Excess ozone exposure is highest in Mediterranean countries. 4.2 Mitigation Efforts Calculator We have developed an interactive online tool – the Mitigation Efforts Calculator (MEC) [3] – that allows users to compare the costs for different mitigation strategies and to explore the implications of different concepts of equity in GHG mitigation. This information proves useful in discussions of post-Kyoto mitigation regimes, as the relative efforts needed to achieve certain targets (for example the mitigation pledges described in the Copenhagen Accord) can be compared across countries (figure 5).
Fig. 5. Calculating the internal trading framework to find the minimum cost solution with the option of allowing for trade of emission permits between Annex-I parties
132
T.B. Nguyen, F. Wagner, and W. Schoepp
Fig. 6. GHG mitigation cost for the mitigation pledges as percentage of GDP across the Annex 1 countries
For example, with the MEC one can answer the question of how far GHG could be reduced if all industrialized countries spent, say, 0.1% of their GDP on GHG mitigation. For the very concrete case of the climate change negotiations in Copenhagen in 2009 and in Cancun 2010 we have analyzed a related question, namely what would be the cost implications of the voluntary GHG emission reductions (‘emission reduction pledges’) proposed by the so-called Annex 1 countries. Each of these countries proposed a mitigation target for itself, and one of the key questions we wanted to answer with the GAINS model and the MEC was whether these pledges would be comparable in their ambition across the Annex 1 countries. Figure 6 shows the result of this analysis. 4.3 Co-Benefits of GHG Mitigation on Local Air Pollutants in the EU-27 Countries As can be seen overall the costs for GHG mitigation in line with the pledges are small, if not negative. Naturally there is a large variation across countries, in particular there will be some countries that would see a net benefits from such a climate change mitigation regime, as these would be able to sell emission rights to the markets. There are also large cost saving potentials from energy efficiency measures in most countries which would keep overall costs relatively low. GHG mitigation is still considered a costly business and the fact that climate change will happen in the future and not necessarily where the GHGs are emitted makes it hard to find compelling arguments for mitigation here and now. This is where the GAINS model offers further motivation. Figure 7 shows how the amount of local pollution will change as the emissions of GHGs are being reduced. As can be seen, there is a strong correlation between the local environmental conditions and the mitigation of the global climate change problem. In fact, every percentage point of emission reduction of GHG will also reduce the amount of SO2 emissions by a more than a percentage point. Thus, policy
GAINS – An Interactive Tool for Assessing International GHG Mitigation Regimes
133
Fig. 7. Co-benefits of GHG mitigation on local air pollutants in the EU in the year 2020
makers who are interested in immediate and visible benefits from their environmental policies, rather than the more intangible benefits of GHG mitigation sometime in the future somewhere far off, may be induced to take action on GHG emissions for very selfish reasons. There are many other examples of how the GAINS Model can be used to illustrate the impacts of local or national policies on the regional or global scale.
5 Conclusions and Future Work We have noted that Mitigating greenhouse gases (GHGs) is key to reducing the longterm impacts of climate change. In this context, GAINS model, a data warehouse with an online integrated assessment model that is used as a tool to quantify the costs and environmental benefits of reducing emissions of greenhouses gases and air pollutants has been presented. We have introduced GAINS concepts, which can be used to explain the basic workings of the model and illustrate how short-term co-benefits for local pollution can motivate GHG mitigation as a response of the otherwise intangible long-term and global risk of climate change. This sound concepts [2,3,4,5,14] allow us to study, design and implement GAINS. Furthermore, we also explained that the reduction of GHGs also reduces the amount of local air pollution and thus can lead to significant improvements in people’s health, and GAINS calculates these co-effects. In sum we thus illustrate how integrated data management as implemented in the GAINS system and its implementation results. In the near future we will use data warehouse and semantic technologies - such as representation of data combination and constraints - to enhance the efficiency and agility of the GAINS/MEC system. Moreover, the mathematical optimization and data mining algorithms will be adapted for multidimensional analysis of integrated data from heterogeneous sources. It is hoped that the GAINS model will continue to improve the transparency of strategic decision making in the international context on the basis of scientific analysis with multiple levels of information requirements.
134
T.B. Nguyen, F. Wagner, and W. Schoepp
References 1. Amann, M., Asman, W., Bertok, I., Cofala, J., Heyes, C., Klimont, Z., Harrison, R., Posch, M., Schöpp, W.: Cost-optimized reductions of air pollutant emissions in the EU Member states to meet the environmental targets of the Thematic Strategy on Air Pollution. In: NEC Sceanrio Analysis Report No. 3. International Institute for Applied Systems Analysis (IIASA), Laxenburg, Austria (2007) 2. Amann, M., Bertok, I., Cofala, J., Heyes, C., Klimont, Z., Binh, N.T., Posch, R., Rafaj, M., Sandler, R., Schöpp, W., Wagner, F., Winiwarter, W.: Cost-effective control of air quality and greenhouse gases in Europe: modeling and policy applications. International Institute for Applied Systems Analysis (IIASA), Laxenburg (2010) 3. Binh, N.T., Wagner, F., Hoglund-Isaksson, L.: Mitigation Efforts Calculator (MEC): An online calculator for interactive comparison of mitigation efforts between UNFCCC Annex 1 Countries. In: Proc. of the International Organization for Information Integration and Web-based Application and Services, IIWAS 2010, Paris (2010) 4. Binh, N.T., Wagner, F., Schoepp, W.: Cloud Intelligent Services for calculating Emissions and Costs of Air Pollutants and Greenhouse Gases. In: Nguyen, N.T., Kim, C.-G., Janiak, A. (eds.) ACIIDS 2011, Part I. LNCS, vol. 6591, pp. 159–168. Springer, Heidelberg (2011) 5. Binh, N.T., Wagner, F., Schoepp, W.: GAINS-BI: Business Intelligent Approach for Greenhouse Gas and Air Pollution Interactions and Synergies Information System. In: Proc. of the International Organization for Information Integration and Web-based Application and Services, IIWAS 2008, Linz (2008) 6. Gangadharan, G.R., Swami, S.N.: Business Intelligence Systems: Design and Implementation Strategies. In: Proc. of the 26th International Conference Information Technology Interfaces ITI 2004, Croatia, pp. 139–144 (2004) 7. Grant, A., Luqi, J.: Intranet Portal Model and Metrics: A Strategic Management Perspective. IT Professional 7, 37–44 (2005) 8. Hugh, J.W., Barbara, H.W.: The Current State of Business Intelligence. Computer 40, 96– 99 (2007) 9. Klaassen, G., Amann, M., Berglund, C., Cofala, J., Höglund-Isaksson, L., Heyes, C., Mechler, R., Tohka, A., Schöpp, W., Winiwarter, W.: The Extension of the RAINS Model to Greenhouse Gases. An interim report describing the state of work as of (April 2004) IIASA IR-04-015 10. Lou, A.: Data Warehousing in the Clouds Making Sense of the Cloud Computing Market. White paper (2009), http://www.b-eye-network.com/view/8702 11. Michael, A., Armando, F., Rean, G., Anthony, D., Randy, K., Andy, K., Gunho, L., David, P., Ariel, R., Ion, S., Matei, Z.: Above the Clouds: A Berkeley View of Cloud Computing. University of California, Berkeley (2009) 12. Ta’a, A., Bakar, M.S.A., Saleh, A.R.: Academic business intelligence system development using SAS® tools. In: Alpuente, M., Vidal, G. (eds.) SAS (2008) 13. Tvrdikova, M.: Support of Decision Making by Business Intelligence Tools. In: Proc. of the 6th International Conference on Computer Information systems and Industrial Management Applications, pp. 364–368 (2007) 14. Wagner, F., Schoepp, W., Heyes, C.: The RAINS optimization module for the Clean Air For Europe (CAFE) Programme, Interim Report IR-06-029, International Institute for Applied Systems Analysis (IIASA) (September 2006) 15. Wang, L., Laszewski, G., Kunze, M., Tao, J.: Cloud computing: A Perspective study. In: Grid Computing Environments, GCE (2008)
GAINS – An Interactive Tool for Assessing International GHG Mitigation Regimes
135
16. Website: EC4MACS, http://www.ec4macs.eu/home/overview_new.html?sb=4 17. Website: Wikipedia, http://en.wikipedia.org/wiki/Cloud_computing. 18. Wei, X., Xiaofe, X., Lei, S., Quanlong, L., Hao, L.: Business intelligence based group decision support system. In: Proc. of the International Conferences on Info-tech and Infonet ICII 2001, Beijing, China, pp. 295–300 (2001) 19. Zeng, L., Shi, Z., Wang, M., Wu, W.: Techniques, Process, and Enterprise Solutions of Business Intelligence. In: Proc. of the IEEE Conference on Systems, Man, and Cybernetics, Taipei, Taiwan, pp. 4722–4726 (2006)
Role of Context-Awareness for Demand Response Mechanisms Pari Delir Haghighi and Shonali Krishnaswamy Centre for Distributed Systems and Software Engineering, Monash University, 900 Dandenong Rd, Caulfield East, VIC, 3145, Australia {Pari.DelirHaghighi,Shonali.Krishnaswamy}@monash.edu
Abstract. Recently due to major changes in the structure of electricity industry and the rising costs of power generation, many countries have realized the potential and benefits of smart metering systems and demand response programs in balancing between the supply and the demand. DR mechanisms are capable of controlling the user energy consumption according to load conditions and providing effective energy management. However, they are typically performed regardless of user’s situation and current activities. Factoring in the user’s contextual information which is relevant to their current or future energy consumption can significantly increase the effectiveness of DR programs and enable adaptive and personalized execution of DR control actions. In this paper, we review current DR techniques and discuss the state-ofthe-art smart energy management approaches that take into account contextual information. An overview of context reasoning and learning techniques for smart homes are presented to demonstrate how knowledge of user activities can be utilized in context-aware DR mechanisms. Our aim is to provide a better understanding of DR programs and highlight the importance of the contextawareness in improving smart energy management. Keywords: Demand Response, Smart energy management, context-awareness.
1 Introduction In recent years, there have been significant changes in the electricity industry and how they operate. Deregulation and restructuring have separated the generation, transmission and distribution operations and introduced growing competition in this market [1, 2]. A reliable and efficient electricity grid depends on maintaining the balance between the demand and supply [2]. High demand can lead to blackout or require the provision of expensive generators. To alleviate the grid crisis and outages that are driven by high energy usage or low supply, there has been a great deal of attention towards smart energy management mechanisms that enable controlling the user consumption according to the changes in the electricity supply. This trend has been further encouraged by the emergence of smart meters and appliances in conjunction with advanced mobile communication technologies such as ZigBee [3] and X10 [4] that collectively provide real-time measurement of electricity usage and enable remote control of electric appliances D. Kranzlmüller and A M. Tjoa (Eds.): ICT-GLOW 2011, LNCS 6868, pp. 136–149, 2011. © Springer-Verlag Berlin Heidelberg 2011
Role of Context-Awareness for Demand Response Mechanisms
137
(e.g. turning off or dimming the devices). Demand Response (DR) as one of the major research areas in energy management capitalizes on the above-mentioned technologies to enable utility providers to cope with situations of high demand. DR aims to provide programs and strategies to enforce and/or encourage consumers to reduce their energy usage during high peak periods [2, 5, 6]. This can take the form of cooperation between utility providers and their customers who are part of a DR scheme, whereby at times of peak demand, these consumers reduce their non-essential usage and/or trim down high load appliances, for which they are rewarded by some pricing incentives [7]. Demand response programs have been successfully practised in several countries including the US, Australia, UK, Sweden, Norway, Denmark, Finland [8]. Current smart grid applications and DR programs mostly apply pre-programmed strategies to reduce the energy consumption. These techniques take into account merely the load levels or pricing. While these approaches are effective in reducing the load, they are performed regardless of the consumer’s daily activities, usage patterns or other relevant contextual information. Considering residents’ profiles and current context or environmental parameters such as the room temperature can considerably improve the effectiveness and efficiency of automatic demand response programs in residential dwellings. Such approach enables an adaptive and personalized energy management that matches DR control actions according to the consumer’s context (e.g. not dimming down the light if the user is studying). In this paper, we present the state-of-the-art in DR energy management systems for residential dwellings and discuss current energy management approaches that utilize context. Our aim is to provide a better understanding of the demand response mechanisms and highlight the importance of context-awareness in improving the effectiveness of energy saving methods. In doing so, we also present an overview of the current context reasoning and learning techniques that pertain to smart homes. The rest of the paper is organised as follows. Section 2 provides an overview of demand response and related technologies. Section 3 presents the current literature on smart energy saving projects utilizing contextual information and learning methods. Section 4 discusses how a wider view of context can improve and benefit automated DR mechanisms. The section then reviews the-state-of-the-art in context inference and learning methods is that are used in smart homes to identify user’s activity and location. This is followed by discussing the research challenges and issues. Finally Section 5 concludes the paper.
2 An Overview of Demand Response (DR) Demand response has been defined in the literature by different researchers yet in a relatively similar way. Koch and Piette [6] describe DR as “short-term changes by customers in their accustomed electric consumption patterns to reduce or shift electric load over time”. LeMay et al. [5] suggests that demand response enables electricity users to “take measures to reduce demand during times when generation is, or likely to be, expensive”. Kiliccote et al. [9] define DR as “short-term modifications in customer end-use electric loads in response to dynamic price and reliability information”. The US Department of Energy [7] describes demand response as “a tariff or program established to motivate changes in electric use by end-use customers
138
P.D. Haghighi and S. Krishnaswamy
in response to changes in the price of electricity over time, or to give incentive payments designed to induce lower electricity use at times of high market prices or when grid reliability is jeopardized". Kiliccote et al. [9] defines DR as one of the dimensions of their proposed framework for changing electric loads in buildings named, Demand-Side Management framework (DSM). The DSM framework consists of the following dimensions and properties: • Efficiency and conservation - this needs to be implemented locally and operated via integrated system operations. The motivations include utility bill savings and environmental protection. • Peak load management – it is performed locally yet through demand limiting and shifting. The motivations include TOU (Time-Of-Use) savings, peak demand charges and grid peak. • Demand response – it is applied remotely by demand shedding, shifting and limiting. The motivations consist of price, reliability and emergency. Demand Response can be achieved in three different ways as follows [10]: 1. Manual DR - the demand reduction is performed manually whenever a signal is received. The method does not involve the use of any pre-programmed strategies. Compared to the other methods, manual DR is difficult to maintain due to constant changes of real-time prices. 2. Semi-automated DR - a human operator initiates the pre-programmed DR strategies rather than an external event thus it allows human intervention up to a certain extent. 3. Fully automated DR - an external signal initiates the pre-programmed DR strategies which aim to reduce the electric load by dimming or turning off noncritical lights, change comfort thermostat set points, or turn off non-critical equipment. This method does not support human intervention but the DR event could be overridden by the user or facility manager. Automated DR systems typically operate by having alerts communicated to consumers, who have an appliance monitoring and controlling unit with communication capabilities to receive signals from the utility provider and initiate control actions on the various appliances. Customer participation in DR programs can be classified in three ways: i) on/off services in which the electricity usage is restricted or shut down; ii) reducing the consumption by dimming the lights or changing the settings of the heater or air conditioner; iii) shifting the high demand loads from peak hours to off-peak period [2, 10]. Examples of DR programs and research practised around the world including the method, country and year are as follows. • • • • • •
Regulatory Market incentives (USA 2008); Automated Peak Reduction and Pricing Signals (USA, 2007; Denmark 2004); Load reduction and in-house displays (Sweden 2007); Peak clipping, Load reduction and pricing (Norway, 2004); Cost benefit Studies (Finland 2007, Australia 2007); Pricing and Peak clipping (Australia 2007).
Role of Context-Awareness for Demand Response Mechanisms
139
According to Vojdani [11], while demand response has significant promise, it has considerable challenges to address. Some of these challenges are as follows. • • • • •
Communication reliability and security and control of a large number of users; Providing an error-free environment for user registration and interaction; Enabling participant bidding and interaction to prices; Scheduling and implementation of the agreed transactions; Measurement and verification protocols.
2.1 Demand Response Technologies The realization of demand response programs and smart grids heavily depends on leveraging smart devices and advanced mobile technologies. In this section we present an overview of these technologies. Smart Meters - Smart meters are digital devices that are able to measure electricity usage over short time intervals and enable two-way communication [12]. They can merge the electrical power system and a communication infrastructure and provide two-way energy flow [13]. Smart meters offer a potential foundation for a variety of intelligent energy management applications and demand response programs. LeMay et al. [5] suggest three examples of such approaches: • Advanced Meter Infrastructure (AMI) – AMI is based on AMR (Advanced Meter Reading) technology and provides intelligent metering with capability of bidirectional communication and support for Real-Time Pricing (RTP). The simple types of AMR use short range radio links and the advanced ones use mesh networks. For example, the SCE Energy$mart Thermostat program [14] uses an internet-enabled and two-way programmable thermostat that can be controlled by a radio and enables changing the setting of air conditioners. • Building Automation Systems (BASs) – BASs are deployed in the “smart buildings” to provide a network system to control functions like HVAC (Heating, Ventilating, and Air Conditioning). Kiliccote et al [9] have conducted EnergyPlus simulations of the DR strategies at the New York Times Headquarters building. The DR strategies at the Times building involved unique state of the art systems with dimmable ballasts, movable shades on the glass facade, and underfloor air HVAC. • Embedded control systems – this approach provides DR actions based on wireless monitoring of prices or reacting to external controls. The first implementation of the embedded control system is a laptop that monitors electricity price and according to changes it adjusts the battery recharging times. Alternatively, Lisovich et al. [15] focuses on two categories of demand response technologies including AMI (discussed above) and Non-Intrusive Load Monitoring (NILM). The NILM systems not only collect data (like AMI systems) but they process this data to identify the operating schedules of individual electrical loads. Smart Thermostats - Smart thermostats provide two-way communications that use wireless protocols/standards such as Zigbee. The demand response enabled thermostat is able to receive dynamic utility price signals and reduce electricity usage during high demand or price periods by changing temperature set-points or turning off
140
P.D. Haghighi and S. Krishnaswamy
appliances [16]. The system can also inform the residents about the off-peak period to use energy intensive appliances. Current smart thermostats such as Honeywell UtilityPRO [17] provide customers with current and past energy usage and billing information and enable them to perform online programming of their appliances using the Internet. They are able to send text messages to consumers regrading peak times, other conservation programs, or appreciation for their participation. Herter et al. [18] suggest two possible uses of smart thermostat-based demand response systems which include: i) a mandatory, system-operator controlled, contingency program; or ii) a voluntary, customer controlled, bill management program with rate-based incentives. The Fig. 1 depicts a summary of discussed DR technologies.
Fig. 1. An overview of demand response technologies and approaches
The first level of the figure shows the classification of the electric appliances into two groups of legacy and smart devices. The legacy appliances do not contain any embedded control and therefore are not able to carry out the demand response strategies [5]. On the other hand, smart and intelligent appliances are equipped with embedded control and capable of performing autonomous DR programs. The second level of the figure illustrates the different wireless communication standards and technologies that support DR programs and establish the two way channels of communications between appliances and utilities/users. The third layer presents mainly examples of various technologies that are required to implement an automatic and smart DR strategy according to current literature. The lowest level presents different DR strategies as discussed earlier in this section.
Role of Context-Awareness for Demand Response Mechanisms
141
3 Smart Energy Management Approaches Utilizing Context Effective power and energy management is a significant challenge in the context of the global discussions by exploring renewable energy sources, reducing consumption/wastage and improving distribution. Driven by these challenges, there is a need not only to capitalize on a multitude of sustainable sources such as wind and solar but to address smart energy distribution and management. In this section, we describe current energy saving projects and technologies (or related approaches) that take into account contextual information such as sensory data or user profiles. Studying these approaches shows the importance of context-awareness for enhancing energy management approaches. The iPower project - The iPower project [4] is an intelligent and personalized energy-conservation system that uses contextual information to identify possible electricity waste in smart rooms of a residential dwelling and then apply control actions (e.g. turning light off) according to this information. The iPower system also provides personalized energy saving services by automatically adjusting electric appliances in a room according to the user context and profile for that room. The user profiles are stored as XML files in a database. Each rule is defined for a certain user and when the time and condition are matched, the associated actions are triggered [4]. Smart Plugs - The Gator Tech Smart House [19] is a project that aims to create an assistive environment for the elderly and the disabled. It provides a programmable pervasive space such that service discovery and gateway protocols automatically integrate system components using generic middleware. As part of this project, smart plugs are developed to enable electric appliances to be controlled remotely according to the sensed context such as temperature. These devices use low cost RFID (Radiofrequency identification) readers and unlike other approaches do not need the appliance to support any protocols such as X10. Context-Aware Resource Management - Roy et al. [20] propose an informationtheoretic approach for location-aware resource optimization in smart homes that enables prediction of the inhabitant’s future location along with their most likely pathsegments. The predictions provide proactive resource management and on-demand operations of automated devices along the residents’ future paths and location thus reducing daily energy consumption such that devices like lights or air-conditioner operate proactively to reduce energy consumption during the inhabitant’s absence in certain locations in the home. In their following work, Roy et al. [21] introduces the context-aware resource management framework that uses location tracking algorithms and activity prediction for smart control of devices and minimizing unnecessary energy consumption. The framework is able to provide location prediction across multiple inhabitants in smart homes and capture the correlation and interactions of different inhabitants’ movements and their activities. This project has also developed a distributed temperature control system for energy savings that uses Newton’s Law of Cooling. Trustworthy Smart Grid - The work presented in [15] describes how power consumption data gathered from DR systems can be used to infer personal activity information. This project is conducted by TRUST (The Team for Research in
142
P.D. Haghighi and S. Krishnaswamy
Trustworthy Systems) to demonstrate that the household consumption data collected by DR programs can be exploited by third parties (e.g. criminals or marketing firms) in an unethical or illegal manner. Yet, the conducted experiments reveal how in smart grids the contextual information including user load pattern can be used to infer user’s activities and current situation. The project has developed a behaviour-extraction algorithm to reason about the household occupant’s situations including presence/absence, appliance use, sleep/wake cycle and events such as dining time, showers and parties. As results of their experiments the authors suggest that the accuracy of activity inference can be improved by increasing the number of context parameters (using additional sensors). While the purpose of this DR project is not on energy savings but it exemplifies the activity inference based on user energy consumption. Such inferred personal information can be leveraged for energy saving purposes. Table 1. A summary of energy management projects utilizing contextual information
1
Projects
Contextual information
Inference and learning methods
Devices technologies
and
iPower [4]
Light, temperature and sound User profiles
Rule-based (rules written in EBNF (Extended BackusNaur Form) recursive grammar Two-state discrete Markov model for modeling user behavior
Wireless sensor networks (WSNs), MICAz sensor nodes, X10 technology and control devices
Smart plugs by Gator Tech Smart House [19]
Different sensed context such as temperature
Reasoning engine proposed at RFID, OSGi and java the conceptual level technology
Location-Aware Resource Management Framework [20]
information-theoretic Location details, device’s state (on/off) approach (Asymptotic Equipartition and time Property) Lempel-Ziv text compression schemes
X10 ActiveHome kit and HomeSeer, deployed in the MavHome
Nash H-learning and Game Location details, Context-Aware device’s state (on/off) theory Resource Newton’s Law of Cooling Management [21] and time
X10 ActiveHome kit and HomeSeer deployed in MavHome
TRUST [15]
Resident’s energy consumption data
Behavior-extraction algorithm using edge detection and cluster matching
Brultech EML energy usage monitor1, Breaker panel, LAN
Automation Simulator and Control Strategy [22]
Motion and light
Inductive neural networks to learn user habits
Amigo environment [23] simulator, KNX [25] bus, VantagePoint [26] for visualization
http://www.brultech.com/
Role of Context-Awareness for Demand Response Mechanisms
143
Automatic Simulator and Control Strategy - The project introduced in [22] extends the Amigo framework [23] for simulating behavior of inhabitants, and employs control strategy based on inductive neural networks for learning user habits. The project provides a simple control strategy for energy savings (e.g. turning off lights when room is vacant). The above-mentioned projects highlight the significance of context-awareness in smart energy management. However, the context that they utilize is limited to individual pieces of information such as location. Context is a very broad term that encompasses different aspects and characteristics [24]. Multiple pieces of context can be combined using learning and inference technique to identify user activities such as cooking, gardening, etc. Such rich context provides a better understanding of residents‘ daily usage pattern which can drive context-aware DR mechanisms. Table 1 summarises the above-mentioned projects and their details. The next section discusses how current demand approaches can be improved by incorporating a broader view of context-awareness.
4 A Holistic View of Context Context-awareness is one the main ingredients of intelligent systems that enables applications to perform their tasks in an efficient and adaptive manner and enhance the user experience by increasing productivity and satisfaction [27]. A general definition by Dey [28] that is adopted by most of researchers describes context as “any information that can be used to characterise the situation of an entity”. Context can be sensed, derived, reasoned, computed, calculated or explicitly entered by users. Contextual information collected from every single sensor or data source represents a partial view of the real-world. Aggregation of data from multiple sensors and sources provides a wider and more general view of surrounding environment and situations (and user activities) of interest [29]. For example, in a smart home, rather than monitoring sensed context collected from light, noise and motion sensors individually, this information can be aggregated by using appropriate reasoning/learning methods to infer current situations/activities of residents such as ‘studying’, ‘having a dinner party’, or ‘sleeping’. Such rich knowledge can be leveraged to improve automatic demand response programs in residential buildings that can benefit both consumers and energy suppliers. Context-awareness enables the DR control actions to be performed in a more personalized and adaptive manner [29]. The user’s rich context can obtain information from various sources. As shown in Fig. 2, these sources can be mainly categorised into static data such as user profile and calendar, and dynamic data including sensory data originated from environmental sensors (e.g. temperature, light, noise and motion) and/or the sensors built in smartphones (e.g. accelerometer), as well as user’s online presence in social networks [30]. Multiple pieces of contextual information can be aggregated by learning and reasoning techiques to infer high-level context such as user activities and situation. With regards to the energy usage level, user activities of residents can be classified into three level of low, moderate, high. Associating an activity with a level of electricity usage enables load estimation and prediction. For instance, if the predicted
144
P.D. Haghighi and S. Krishnaswamy
Fig. 2. Different categories of context for automated demand response mechanisms
activity for a residential dwelling is ‘a trip’, a significant reduction in the electricity load is expected during their planned time. On the other hand, if the inferred or scheduled activity indicates ‘a birthday party’, it means the user energy consumption will increase. Learning user activities and prediction of their energy consumption in residential dwelling enables power suppliers to regulate the supply according to the requirement of each building and improve balancing between the load and the supply in a more effecient and personalized manner. As shown in Fig. 2, we also identify four categories of electrical appliances that can be considered during DR programs. These categories are as follows. 1. Smart devices – these devices already include smart technologies that support smart energy management. 2. Entertainment devices – these devices need to be controlled by DR actions based on their current importance which will be a value assigned to the device according to the user’s profile and inferred situation. For example, when the resident’s favourite show or sports game is on, the context-aware DR approach needs to assign a higher value of importance for TV than other devices. However, when the resident is studying, cooking or showering its importance reduces to minimum. 3. Rechargeable appliances – an example of these devices is a laptop which provides an opportunity for implementation of shifting load strategies. They can be programmed to recharge themselves automatically from grid during low peak/price periods [5].
Role of Context-Awareness for Demand Response Mechanisms
145
4. Household electrical appliances – this category includes electrical appliances that are used for tasks such as cooking and cleaning. The electrical appliances mentioned above can be further classified into control and non-control devices. Control devices can be turned on or off, or regulated automatically and remotely by DR programs. Non-control devices can only be controlled manually. However, providing residents with real-time awareness and knowledge of their energy usage (which can be achieved using technologies like smart meters) can assist them to use non-control appliances more efficiently. For example, a resident can use the washing machine or dryer during off-peak times. The context-aware DR system can provide load shifting suggestions to the user based on the current load and their context. This section presented an overview of how contextual information can be combined into rich context and enable more effective and personalized context-aware energy management systems. As discussed earlier, one of the important contextual information is the knowledge of user’s current activity/situation. The next section presents an overview of current reasoning and learning approaches applied in smart home projects for activity recognition.
5 Activity Recognition in Smart Homes Identifying the current activity of users provides the knowledge that is useful and beneficial for various applications. In the context of smart energy management, this knowledge can be used to enable the effecting of context-aware control of appliances for more efficient energy management. To infer residents‘ activities (such as ‘Cooking’ and ‘Sleeping’), there is a need to employ activity recognition and learning methods. One of the main daily activities in any residential dwelling is the food preparation that usually leads to the dining activity. Barger et al. [31] uses the sensory data collected from temperature sensors above the stove and motion sensors in the kitchen (detecting movement and opening of cabinets and appliances) to identify meal preparation activities. Preparation of food has been also studied in the work discussed in [32]. This work also aims to recognize activities such as bathing, toileting and grooming using classification methods over sensory data. Chen et al. [33] mainly use sound (collected by microphones) as the main context to recognize and classify major activities occurring within a bathroom. The project proposed in [34] focuses on identifying time-related events and anticipating potential or actual hazardous situations, for example if the cooker is on for a long period of time it can be identified and trigger an action. Wilson et al. [35] introduces STAR (Simultaneous Tracking and Activity Recognition) for automatic health monitoring which performs tracking and activity recognition for multiple people in a home environment. Their experiments showed that learning about a single occupant is more straightforward compared to learning about a group of occupants and also using additional sensors increases accuracy of learning regardless of the number of inhabitants. To improve adaptivity of DR strategies according to the residents’ needs, it is important that context-aware DR approaches incorporate predicting methods. Rao and
146
P.D. Haghighi and S. Krishnaswamy
Cook [36] use several types of Markov model to achieve prediction. The simple Markov model is utilized to predict the upcoming action (modelling as a state). These actions are categorized into abstract tasks by Task-based Markov that partitions the actions and then performs clustering on the partitions. Finally the Hidden Markov model is applied for further predictions. The next section discusses the roadmap for realising context-aware DR programs and future research.
6 Roadmap for Future Research Achieving context-aware DR mechanisms encompasses many issues and complexities. This section presents some of these research and technology-based challenges that need to be addressed in future work. •
•
•
•
•
Security and Privacy – Security and confidentiality of personal data are important concerns that need to be addressed in future work. Activity recognition and situation-awareness heavily rely on the use of personal information such as user’s presence information. There are several encryption techniques which can remedy this issue by encrypting the data as it is sent over the network [37]. The iPower[4] addresses the privacy issue by transmiting the ID of the user identification device so that the personal information would not be exposed. Activity recognition and data analysis at real-time - While current activity recognition methods in smart homes (discussed in section 5) have the potential to infer residential activities, they mostly perform data mining/learning offline or on stored/static data rather than real-time analysis of continuous sensory data. Processing data streams due to their continuous and variable rates requires different and more efficient techniques than traditional data processing approaches. To fully realize the paradigm of context-aware DR, it is important that learning is performed in real-time and on continuous data streams. A prediction model for energy usage – Context-aware automatic DR programs leverage awareness of user context for triggering appropriate strategies and automatically controlling electrical appliances. To enable context-aware DR, user activities needs to be associated with energy usage of appliances using an appropriate model. This model can also be used as a prediction model for estimation of expected load usage when user activities are known/predicted. The need for a middleware for context/situation modelling and reasoning – With the potential to leverage multiple sources of real-time contextual data comes the need for incorporating situation-awareness and context reasoning to acquire richer context. Thus, while activities may be learnt through mining/analysis, known activities can be modelled using state of the context middleware systems for faster inference. Examples include ContextSpaces [29], PACE [38] and Fuzzy Situation Inferencing (FSI) [24]. The feasiblity of such models and systems for contextual reasoning in DR programs needs to be studied. How to enrich contextual information – To improve context-ware demand response mechanisms, it is important to use rich context that integrates and leverges diverse pieces of information. Recently we have witnessed an increasing
Role of Context-Awareness for Demand Response Mechanisms
147
popularity of social networking as a medium for online communications and relationships [30]. Information gathered from sources such as twitter feeds, micro blogs, facebook posts can be used to identify the user’s online activity and presence, and provide very useful information that was not available before [30]. This knowledge can be aggregated and enriched further with other contextual information and inferred user activities to provide a holistic view of context.
7 Conclusion Demand Response (DR) provides mechanisms that manage the consumer’s electricity consumption according to supply changes. Advanced technologies such as smart meters enable DR programs to remotely control consumers’ energy usage during peak periods. However, these control actions are solely implemented based on the supply conditions and regardless of the consumer’s current situation. Inclusion of contextawareness into the DR approaches can improve the effectiveness of energy management in residential dwellings and enable DR actions to be performed in an adaptive and personalized manner. In this paper, we provided a detailed description of demand response and the related technologies and presented an overview of current smart energy management projects as well as context reasoning and learning techniques used in smart homes. DR is an emerging area of research that continues to grow. More countries are participating in implementing smart meters and this encourages researchers from different principles such as mobile and pervasive computing to develop more effective and efficient DR programs and technologies. One of the inevitable directions to which DR programs are moving is context-aware DR mechanisms.
References 1. Wang, F., Yang, J., Wu, Z., Chen, X., Yu, J.: Distributed Energy System Improving Security for City Energy Supply. In: International Conference on Management and Service Science, MASS 2009, pp. 1–4 (2009) 2. Albadi, M.H., El-Saadany, E.F.: A summary of demand response in electricity markets. Electric Power Systems Research 78(11), 1989–1996 (2008) 3. ZigBee Alliance, http://www.zigbee.org/About/AboutAlliance/TheAlliance.aspx 4. Yeh, L., Wang, Y., Tseng, Y.: iPower: an energy conservation system for intelligent buildings by wireless sensor networks. International Journal of Sensor Networks 5(1), 1– 10 (2009) 5. LeMay, M., Nelli, R., Gross, G., Gunter, C.A.: An Integrated Architecture for Demand Response Communications and Control. In: 41st Annual Hawaii International Conference on System Sciences (HICSS 2008), Waikoloa, Big Island, Hawaii, p. 174 (2008) 6. Koch, E., Piette, M.A.: Architecture Concepts and Technical Issues for an Open, Interoperable Automated Demand Response Infrastructure. Presented at the Grid Interop Forum, Albuquerque, New Mexico (November 2009)
148
P.D. Haghighi and S. Krishnaswamy
7. US Department of Energy: Benefits of Demand Response in Electricity Markets and Recommendations for Achieving Them. A Report to the United States Congress Pursuant to Section 1252 of the Energy Policy Act of 2005 (February 2006) 8. Cap Gemini Report, Demand Response: a decisive breakthrough for Europe. How Europe could save gigawatts, billions of Euros and millions of tons of CO2 (June 2008), http://www.capgemini.com/resources/thought_leadership/demand _response_a_decisive_breakthrough_for_europe/ 9. Kiliccote, S., Piette, M.A., Watson, D.S., Hughes, G.: Dynamic controls for energy efficiency and demand response: Framework concepts and a new construction study case in New York. In: ACEEE Summer Study on Energy Efficiency in Buildings, Pacific Grove, CA (August 2006) 10. Dam, Q.B., Mohagheghi, S., Stoupis, J.: Intelligent Demand Response Scheme for Customer Side Load Management. In: 2008 IEEE Energy 2030 Conference (ENERGY 2008), pp. 158–164 (2008) 11. Vojdani, A.: Smart Integration: The Smart Grid Needs Infrastructure That is Dynamic and Flexible. IEEE Power and Energy Magazine (November-December 2008) 12. Metering Industry Group (ESMIG): A Guide to Smart Metering, Empowering people for a better environment, European Smart (2009) 13. Chuang, A., Hughes, J., McGranaghan, M., Mamo, X.: Integrating New and Emerging Technologies into the California Smart Grid Infrastructure. EPRI, California Energy Commission, Palo Alto, CA (2008) 14. Martinez, M., Russell, F.: Smart thermostats getting results at SCE. Utility Automation & Engineering (July 2007) 15. Lisovich, M.A., Mulligan, D.K., Wicker, S.B.: Inferring Personal Information from Demand-Response Systems. IEEE Security & Privacy 8(1), 11–20 (2010) 16. Arens, E., Huizenga, C., Auslander, D., JaehwiJang, X., LaRue, A., Peffer, T.: http://drrc.lbl.gov/posters/DR_Thermostat.pdf 17. Smart Thermostat for Demand Response, Honeywell UtilityPRO (2007), https://buildingsolutions.honeywell.com/NR/rdonlyres/E68E9C3 7-D201-4E58-9319E516B73D0796/116822/e68e9c37d2014e589319e516b73d0796.pdf 18. Herter, K., Levy, R., Wilson, J., Rosenfeld, A.: Rates and Technologies for Mass-Market Demand Response. In: Proc. ACEEE 2002, vol. 5, pp. 161–172. American Council for an Energy Efficient Economy, Washington, DC (2002) 19. Helal, S., Mann, W.C., El-Zabadani, H., King, J., Kaddoura, Y., Jansen, E.: The Gator Tech Smart House: A Programmable Pervasive Space. IEEE Computer 38(3), 50–60 (2005) 20. Roy, A., Bhaumik, S., Bhattacharya, A., Basu, K., Cook, D., Das, S.: Location aware resource management in smart homes. In: Proc. of International IEEE Conference on Pervasive Computing and Communications (PerCom), pp. 481–488 (March 2003) 21. Roy, N., Roy, A., Das, S.K.: Context-Aware Resource Management in Multi-Inhabitant Smart Homes: A Nash H-Learning based Approach. In: Proceedings of the 4th Annual IEEE International Conference on Pervasive Computing and Communications (2006) 22. Kodrik, P., Hasaj, M., Tvrdy, M., Snorek, M.: Building Automation Simulator and Control Strategy for Intelligent and Energy Efficient Home. In: Third UKSim European Symposium on Computer Modeling and Simulation, pp. 154–159 (2009) 23. Georgantas, N., Issarny, V., Kantorovitch, J., Kalaoja, J., Roussaki, I., Papaioannou, I., Tsesmetzis, D.: Amigo: Interoperable semantic services for the smart home environment. In: At Your Service: Service-Oriented Computing from an EU Perspective (2009)
Role of Context-Awareness for Demand Response Mechanisms
149
24. Delir Haghighi, P., Zaslavsky, A., Krishnaswamy, S., Gaber, M.M.: Mobile Data Mining for Intelligent Healthcare Support. In: 42nd Hawaii International Conference on System Sciences (HICSS 2009), pp. 1–10. IEEE Computer Society Press, Big Island (2009) 25. KNX Association (2007a) KNX association-—official website, http://www.knx.org 26. Piirainen, T., Niskanen, I.: Vantagepoint: Seeing is believing (2007), http://ercimnews.ercim.org/content/view/205/364/ 27. Henricksen, K., Indulska, J., Rakotonirainy, A.: Modeling Context Information in Pervasive Computing Systems. In: Mattern, F., Naghshineh, M. (eds.) PERVASIVE 2002. LNCS, vol. 2414, pp. 79–117. Springer, Heidelberg (2002) 28. Dey, A.K., Abowd, G.D., Salber, D.: A Conceptual Framework and a Toolkit for Supporting the Rapid Prototyping of Context-Aware Applications. Computer Interaction (HCI) Journal 16(2), 97–166 (2001) 29. Padovitz, A., Zaslavsky, A., Loke, S.W.: A Unifying Model for Representing and Reasoning About Context under Uncertainty. In: 11th International Conference on Information Processing and Management of Uncertainty in Knowledge-Based Systems (IPMU), Paris, France, pp. 1983–1989 (July 2006) 30. Banerjee, N., Chakraborty, D., Dasgupta, K., Mittal, S., Nagar, S.: Saguna.: R-U-In? Exploiting Rich Presence and Converged Communications for Next-Generation ActivityOriented Social Networking. In: Tenth International Conference on Mobile Data Management: Systems, Services and Middleware, pp. 222–231 (2009) 31. Barger, T., Alwan, M., Kell, S., Turner, B., Wood, S., Naidu, A.: Objective remote assessment of activities of daily living: Analysis of meal preparation patterns Poster presentation, Medical Automation Research Center (2002) 32. Tapia, E.M., Intille, S.S., Larson, K.: Activity Recognition in the Home Using Simple and Ubiquitous Sensors. In: Ferscha, A., Mattern, F. (eds.) PERVASIVE 2004. LNCS, vol. 3001, pp. 158–175. Springer, Heidelberg (2004) 33. Chen, J., Kam, A.H., Zhang, J., Liu, N., Shue., L.: Bathroom activity monitoring based on sound. In: Pervasive Computing, pp.47–61 (2005) 34. Augusto, J.C., Nugent, C.D.: The Use of Temporal Reasoning and Management of Complex Events in Smart Homes. In: ECAI, pp. 778–782 (2004) 35. Wilson, D.H., Atkeson, C.G.: Simultaneous Tracking and Activity Recognition (STAR) Using Many Anonymous, Binary Sensors. In: Gellersen, H.-W., Want, R., Schmidt, A. (eds.) PERVASIVE 2005. LNCS, vol. 3468, pp. 62–79. Springer, Heidelberg (2005) 36. Rao, S., Cook, D.: Predicting inhabitant actions using action and task models with application to smart homes. International Journal of Artificial Intelligence Tools 13(1), 81–100 (2004) 37. Bennett, C., Cardell, J., Wicker, S.: Residential Demand Response Wireless Sensor Network. In: Fourth Annual Carnegie Mellon Conference on the Electricity Industry, March 5. Carnegie Mellon University Department of Electrical Engineering (2008) 38. Hu, P., Indulska, J., Robinson, R.: An Autonomic Context Management System for Pervasive Computing. In: PerCom 2008, pp. 213–223 (2008)
An Architecture and Methodology for a Four-Phased Approach to Green Business Process Reengineering Alexander Nowak, Frank Leymann, David Schumm, and Branimir Wetzstein University of Stuttgart, Institute of Architecture of Applications Systems, Universitätsstrasse. 38, 70569 Stuttgart, Germany {Firstname.Lastname}@iaas.uni-stuttgart.de
Abstract. Sustainability and responsible resource exposure has become a major issue in everyday life. Government, customers, and increasing social responsibility force more and more organizations to positively optimize their environmental impact towards a better, livable planet. In this paper we propose a four-layered architecture and corresponding four-phased methodology to enable organizations to (1) define ecological characteristics, (2) sense and measure these ecological characteristics, (3) identify, localize and visualize their environmental impact, and (4) help them to develop appropriate adaptation strategies in order to optimize their environmental impact without neglecting the organization’s competitiveness. Keywords: Business Processes, Process Views, Process Monitoring, Adaptation, Environmental Impact, Green Business Process Reengineering.
1 Introduction The growing interest in environmental topics and discussions reflects that sustainability in general has become a major issue for organizations over the last years. The increasing awareness of customers and the general public for sustainability and environmental impact on the one hand and legislative requirements on the other hand motivate more and more organizations to keep track on their environmental impact [1,2]. Based on this demand organizations are forced to design environmentally aware business processes and therefore trace the environmental impact caused by them. However, this first postulates that organizations know which environmental impact (e.g., carbon footprint [3]) their business processes have in order to adapt more sustainable solutions to their processes [4]. As complex business processes may consist of several hundred activities [5] it is not easy to identify the relevant parts of the process that mainly drive the overall environmental impact due to the various influence factors relevant to the processes. Therefore, organizations need adequate technologies and methodologies to make their business processes more transparent with respect to their environmental impact. Subsequently, adaptation techniques need to be employed to decrease the overall environmental impact while ensuring not to significantly worsen the organizations economic objectives. In previous work [4] we have discussed initial concepts and techniques focusing on green Business Process Reengineering (gBPR) which extends the Business Process D. Kranzlmüller and A M. Tjoa (Eds.): ICT-GLOW 2011, LNCS 6868, pp. 150–164, 2011. © Springer-Verlag Berlin Heidelberg 2011
An Architecture and Methodology for a Four-Phased Approach to Green Business
151
Reengineering (BPR) originally proposed by [6] and [7]. They describe BPR as the analysis and design of work flows and processes within and between organizations. In [7], BPR is also promoted as fundamental rethinking and radical redesign of business processes to achieve dramatic improvements in critical, contemporary measures of performance. The problem is that currently neither BPR formerly described in [6] and [7] nor modern approaches like [9] do cope with green requirements adequately. This leads to a gap of missing interconnection between existing standalone solutions for efficient resource usage and a holistic optimization of an organization’s environmental impact. In most cases, the information gathered for traditional Key Performance Indicators (KPIs) provides insufficient data with respect to environmental aspects. Consequently, there is a need for concepts and technologies to define and monitor green efficiency metrics and to provide this information for analyzing and optimizing the processes properly. Given this information these approaches are faced with a further issue. Green requirements may end up in a tradeoff with existing KPIs like costs or time and may change the current “best practices” when considering both KEI and KPI dimensions. In order to support the complex types of business objectives containing economic and ecological objectives we need to extended traditional BPR by introducing two novel perspectives in our gBPR approach. The first one contains the so called Key Ecological Indicators (KEIs). Using these KEIs allows measuring the environmental impact of business processes and parts thereof. This concerns for example the energy consumption, water consumption, CO2 emission, carbon footprint, recycling, or regulatory compliance and thus forms the motivation for changing the business processes. The second added perspective covers additional management activities emerging from the integration and interaction of the KEI, process, and infrastructure perspectives [4]. This concerns for instance the mutual influences of the process structure and its underlying infrastructure. In this paper we propose an architecture and methodology to address the current lack of supporting green requirements adequately. Consequently, the contribution of this paper is twofold: Firstly, we introduce an architecture that includes four layers to serve the different aspects of gBPR: (1) Strategy, (2) Sensing & Monitoring, (3) Analysis & Management, and (4) Adaptation. This architecture covers the proper monitoring, analysis and adaptation of green reengineering approaches and thus helps organizations to identify the relevant aspects for optimizing their environmental impact. The implementation of this architecture in a service-oriented environment is ongoing work. Secondly, we introduce a methodology to enable the process stakeholders to reduce the environmental impact utilizing the proposed architecture. The remainder of this paper is structured according to the phases of gBPR: Section 2 introduces the architecture in general. Section 3 explicitly describes the four architecture layers and their corresponding methodology support. In Section 4, the key concepts are applied to a concrete scenario. Section 5 positions our approach to the existing literature. Finally, Section 6 concludes the paper and outlines future work.
2 Architecture Business processes of organizations are dependent on various internal and external parameters, such as the organizational structure or legislative regulations. Thus, in
152
A. Nowak et al.
order to achieve best possible decrease in its environmental impact, it is essential to consider business processes from an end-to-end perspective, including their underlying infrastructure as well as the people or other resources that perform the associated activities. To best fit these requirements and to provide a holistic perspective on organizations’ processes we propose an extended BPR architecture and a four-phased methodology based on the initial gBPR concepts [4]. Our architecture comprises four major layers which are shown in Fig. 1: (1) Strategy, (2) Sensing & Monitoring, (3) Analysis & Management, and (4) Adaptation. The arrows between the different layers indicate that relevant data is provided from each layer to its successive layer. Details are explained in Section 3.
1. Strategy
Key Performance Indicators, Key Ecological Indicators
Top Management
4. Adaptation
Business/Enterprise Architect (IT) Developer / Architect (IT) Operator
Process Model Evolution
Process Instance Migration
Middleware / Deployment
Dynamic Provisioning
Manual Adaptation
…
BPR & BPM (CIP)
3. Analysis & Management Carbon1 Carbon2 Carbon3
Carbon1 Carbon2 Carbon3
Carbon1 Carbon2 Carbon3 Carbon1 Carbon2 Carbon3
Carbon1 Carbon2 Carbon3
Carbon1 Carbon2 Carbon3
Business Analyst
Carbon1 Carbon2 Carbon3
CO2
Energy
Water
…
Carbon1 Carbon2 Carbon3
2. Sensing & Monitoring
Operational Staff (IT) Developer / Architect
IT-Systems
Ecosystem
Logistics
Manufacturing Operations
Human Tasks
Facilities and Buildings
Fig. 1. Architecture of an Environmental Impact Management
The first layer “Strategy” is used to identify and define appropriate KEIs which reflect the ecological objectives and traditional KPIs which reflect the economic objectives of an organization. KEIs are defined based on a set of ecological metrics (e.g., CO2 emission, water consumption etc.) to be measured and the specific thresholds that apply for a complete process or single activity, respectively. The measurement of KEIs is performed in the “Sensing & Monitoring” layer. At this level we assume that monitoring of KPIs is done in an appropriate way using given methodologies and technologies, e.g., [11]. However, due to the wide range of
An Architecture and Methodology for a Four-Phased Approach to Green Business
153
possible KEIs that one might consider, the information gathered for determining those KPIs may be insufficient and additional information for determining the KEIs is needed. For the measurement of KEIs, the ecological characteristics of processes and activities have to be determined explicitly. In some cases, that information can be extracted from service or product specifications at design time. In the general case, however, special sensors are needed which monitor the ecological characteristics of, for instance, IT systems, manufacturing operations, human activities, ecosystems, facilities and buildings, or logistics at process runtime. That sensor information has to be correlated with process instances and activities which use the corresponding resources. As a result, the process instances and activities contained in them are annotated with sensed ecological metrics. The third layer “Analysis & Management” forms the heart of making processes “greener” as it allows us to analyze processes and subsequently identify the parts of a process that cause the highest negative environmental impact. To reveal this information, we utilize process views as introduced in [10]. By means of augmenting the process model with ecological information from layer two (Sensing & Monitoring) we are able to build virtual views on a process and identify and visualize the KEIs of either the complete process or specific activities of interest. This enables analyzing the current environmental impact of a process model, identifying the main cause of defined KEI violations, and finally revealing the room for ecological improvement. If the room for ecological improvement is identified, a business process can then be reengineered in different ways. This is represented in layer four “Adaptation”. For example, an organization may decide to use a cloud infrastructure instead of their onpremise solution, or to use a new truck (i.e., resource) performing a specific delivery activity. An organization may also decide to introduce a new structure of the process model, rethinking the existing organizational structure [7]. At this point, a very important issue concerning the reengineering of process models is to keep track on given KPIs and economic objectives. An organization mainly focusing on cost aspects, for example, may be limited in adopting different services or substituting resources. As economic KPIs are also augmented to the process model we are able to directly compare the impacts of modifications through generating different process views. Based on these different views, a decision for reengineering the process in the analyzed way can either be made automatically or manually. Consequently, the concrete restructuring of the process model can be performed. Again, based on the variety of the KEIs, the restructuring can be manifold. Depending on the kind of restructuring we can utilize approaches common in the field of adaptability, like (1) changing the flows of a process model, (2) changing the underlying infrastructure or resources, (3) add, remove or modify (groups of) activities, or (4) introduce dynamic provisioning of activities.
3 Four-Phased Environmental Impact Management To illustrate our proposed architecture and methodology we use a motivating example describing the company Auto Inc. that manufactures premium cars. Due to internal policies Auto Inc. would like to decrease their CO2 emissions caused by the manufacturing of each car of a series. Based on this information Auto Inc. must buy a
154
A. Nowak et al.
proper amount of emission permits. If they exceed these emission permits, they need to buy an additional contingent from companies that require fewer permits, otherwise if they use less they can sell their permits, respectively. This is also known as “emission trading” [12]. This regulation provides a significant economic incentive for reducing an organizations collective CO2 emission. In the following, we first use an abstract process to better describe the methodology and different steps the various process stakeholders (see Fig. 1) of Auto Inc. need to perform in order to “green” a process. A use case describing a simplified but concrete process is shown in Section 4. 3.1 Strategy and Sensing and Monitoring The environmental impact of a business process can be assessed in terms of a set of KEIs. These KEIs are defined based on so called Ecological Characteristics (ECs) such as energy consumption, water consumption, CO2 emission, recycling, or regulatory compliance. We define KEIs as a tuple consisting of an EC metric and a target value function based on the ecological goals one wants to achieve (defined by business strategy). For example, a KEI for a particular business process could be specified as “max CO2 emission (of a process instance) < X1”. Therefore, the definition of a KEI is very similar to KPIs; the difference is that the underlying metric definition is based on EC characteristics and involves new information sources, while in case of KPIs the underlying metrics concern time, quality, or cost perspectives [11]. In order to assess the KEIs, the underlying metrics have to be measured for the performed business process instances in the “Sensing & Monitoring” layer. For the calculation of an EC referring the whole business process, we need to collect the needed data of each process activity. For example, in order to assess the CO2 emission of a whole business process instance, we need to know the CO2 emissions of each executed process activity in that process instance and then sum up those emissions. The collection of the needed measurement data per activity can be performed in different ways. In the simple case, a process activity has always the same EC metric value across all process instances and that value can be obtained dynamically from a service specification or a Service Level Agreement (SLA) if, for example, the process activity implementation is provided by an external service provider. Otherwise it can also be obtained statically from previous experiences or existing know-how. In that case no monitoring is needed. If the EC metric value of an activity is not known at design time, it has to be monitored while performing the process instance. Therefore, we first have to determine the resources which are used by that activity and affect the needed EC. Then, at runtime we need to obtain and aggregate sensor data which reflects the EC consumption of those resources and correlate it with the process activity of the specific instance. A specific correlation and differentiation has to be done if resources (e.g., IT infrastructure or transportation vehicles) are shared between different process instances and different process activities. The Sensor data can be provided in an automated fashion, in particular if sensors are able to emit events to an event bus. In that case, complex event processing technology can be used to correlate sensor events with process instance events in a timely fashion. Sensor data can also be provided manually by humans who e.g. manually determine how much water an activity has consumed; this analysis can happen after the process instance is already finished (post-mortem).
An Architecture and Methodology for a Four-Phased Approach to Green Business
155
After having performed measurements for a certain number of process instances, we can determine which EC value each activity is dedicated to: (1) a static value or (2) a dynamic value, whereby the value depends on the data input to the process activity and/or the duration of the process activity, e.g., the emissions of a printer depend on the number of pages that should be printed (data input). In this case the monitoring in future can be performed on process level only, because a static factor (EC metric value / page) is combined with a dynamic factor (number of pages) obtained on the process level. The calculation function can then be determined by using regression analysis. Additionally, we have identified two more types of EC values, namely (3) a mixed value as a combination of (1) and (2), and (4) a dynamic value which depends on external factors and always should take into account appropriate sensor data. That information can be saved in a repository and used later, for example, if those activities are re-used in other processes. This would imply a change in the type of EC value of a specific activity or process fragment [13]. In order to use these different types of EC values in the subsequent analysis phase, we calculate average values based on the available process instances. 3.2 Analysis and Management The information collected in Section 3.1 provides the basis for analyzing and managing the existing organizational processes by facilitating the identification and localization of vital KEI violations. In order to localize and finally visualize the cause of a KEI violation we use the concept of process views introduced in [10]. A Process view results from one or more specific transformations applied to a process model and therefore enables the analysis of processes from different perspectives. The transformations can be of an augmentation, structural or visual type, for example. Depending on the underlying information, the use of process views is one promising approach to address various important questions: Which activities make a significant contribution to the overall carbon footprint and energy consumption? What is the overall environmental impact and how would it change due to particular modifications of the process model? Which parts of the model are allowed to change? How can inter-organizational savings be achieved? To answer these questions we combine different transformations performed in several succeeding steps. Referring to our running example, the steps and their corresponding transformations Auto Inc. needs to perform in order to analyze a specific manufacturing process are described in the following. We now assume that Auto Inc. tries to achieve a more sustainable process and therefore the top management announces the decrease of CO2 emission of Process P which consists of nine activities, A1 to A9 (see Fig. 2, left). The management has further defined the new CO2 emission thresholds X1 to X9 for each activity A1 to A9. Based on this information the process stakeholders from the architecture layer two (Sensing & Monitoring) provide the required information to support the KEI “CO2 emission”. However, the data provided comprises both, economic and ecological information that are properly correlated to the process model. So, this data can also be used for the enrichment of existing business dashboards that represent the current state of the process instances and enables stakeholders to initiate proper actions when detecting KPI or KEI violations.
156
A. Nowak et al. Original Process
Augmented Process View Legend
augment process
Activity Carbon1 Carbon2 Carbon3
Carbon1 Carbon2 Carbon3
Control-Flow
Carbon1 Carbon2 Carbon3
Carbon1 Carbon2 Carbon3
Carbon1 Carbon2 Carbon3
Carbon1 Carbon2 Carbon3
Carbon1 Carbon2 Carbon3
Carbon1 Carbon2 Carbon3
Augmentation Transformation
Carbon1 Carbon2 Carbon3
Fig. 2. Process Augmentation
Now, as a first step when detecting a KEI violation the given process model needs to be augmented with related data (see Fig. 2, center). This is a fundamental step which is a prerequisite for all further steps or view transformations in general. The augmented process model now contains all relevant information about the processes’ KPIs and KEIs to proceed with the next step. In our example we will first use the information provided by the KEI data in order to identify which activities exceed the thresholds defined from the management. To visualize the activities with the highest amount of CO2 emission we perform another transformation. First, we use a visual transformation that omits all activities where the augmented CO2 emission is below their dedicated threshold Xn. As a next step, we additionally omit all activities that cannot be changed or outsourced per se. This can, for instance, be due to privacy concerns or legislative requirements and varies in each particular use case. The result of the omission of the activities is shown in Fig. 3 (center). Augmented Process View
Visually Transformed View 1 omit activities
Carbon1 Carbon2 Carbon3
Carbon1 Carbon2 Carbon3
Carbon1 Carbon2 Carbon3
Visually Transformed View 2 adjust visualization
Carbon1 Carbon2 Carbon3
Carbon1 Carbon2 Carbon3
Carbon1 Carbon2 Carbon3
Carbon1 Carbon2 Carbon3
Carbon1 Carbon2 Carbon3
Carbon1 Carbon2 Carbon3
5
Carbon1 Carbon2 Carbon3
Carbon1 Carbon2 Carbon3
Carbon1 Carbon2 Carbon3
8 7
Carbon1 Carbon2 Carbon3
Carbon1 Carbon2 Carbon3
3
15 9
Fig. 3. Visual Process Transformation
Based on the activities left, Auto Inc. can begin to identify and localize the activities with the highest amount of CO2 emission. We can support the human readability by generating a so called heat-map, for example. This visual transformation changes the color of the shapes of the process view depending on their augmented CO2 emission. A dark red color is equivalent to a high CO2 emission and a light orange is equivalent to a lower CO2 emission, respectively. Within this transformation step, we can also change the size of the activities and add the percentage value each activity exceeds their threshold. The performed transformation steps and corresponding views are shown in Fig. 3. Auto Inc. can now locate the activities with the highest CO2 emission, represented by the corresponding colors, the size of the shape, and the CO2 emission values inside the shapes. However, it might be feasible to “zoom in” deeper, i.e. to collapse activities for allowing to view or directly change the interior of an activity. As an example, we want to have a more detailed look at the big red activity in the left side of Fig. 4 which exceeds their CO2 threshold by 15 percent. After performing the
An Architecture and Methodology for a Four-Phased Approach to Green Business
157
drill-down transformation the right side of Fig. 4 shows the sub-activities that are performed within the big red activity on the left side and their contribution to the overall CO2 emission. Of course, the sub-activities can also be further sub-processes that are again shown in an aggregated way. Note that a viewing scenario that supports collapsing requires the augmentation of the process with runtime or deployment information about the actual implementation of an activity. Consequently, the visualization function could then visualize the information about the interior in resulting graph-like structures (see Fig. 4) or even drill down to the bits (in case of an IT process). An important issue concerning the drill-down methodology is to provide sufficient technologies for disaggregating and aggregating the overall KEI or KPI values. First approaches in this area are proposed by [14,15]. Drill-Down View Visually Transformed View 2 drilldown
8 7 3 5
8
7
8
7
15
3 5 9
9
Fig. 4. Activity Drill-Down
3.3 Adaptation Knowing the most dissipative activities with respect to the observed KEIs we can develop appropriate adaptation strategies that optimize these KEIs. In market environments, however, we need to ensure the competitiveness of an organization beyond the adaptations for “greener” and more sustainable processes. Ecological characteristics are often in sharp contrast to strategic and economic objectives. However, there may also occur situations that influence traditional KPIs, i.e., cost, quality, and time in a positive manner, sometimes even without extensive upfront investments. Using a computer-based e-Fax solution for supplier contact, for example, makes Auto Inc. reduce their CO2 emission due to the abdication of extra hardware, but at the same time reduce their costs and time using this service. So, this trade-off is no novel appearance and can also be found at traditional KPI research, but now we have to consider a fourth dimension: the environment. In our approach, process views also provide the means to develop and visualize different adaptation strategies. Within the development of adaptation strategies we first want to distinguish between structural and non-structural adaptations. A nonstructural adaptation does not influence the structure or logic of an observed process model, but has influence on the augmented information (e.g., the attributes, resources, or underlying infrastructure of the activities). The change to a supplier of electric energy providing green electricity, for example, may lower the CO2 emission of particular activities without changing or restructuring them. However, the attributes augmented to the activities change. Structural adaptations on the other hand are dependent on the range and characteristics of the planned reengineering. Thereby, several process optimization techniques known from BPR are feasible to optimize the
158
A. Nowak et al.
KEIs of the observed process. These include, but are not limited to: (1) New binding of services implementing a process activity, (2) changing the underlying infrastructure which better adapts the process characteristics, (3) changing the flows of a process model, (4) rearrange activities, i.e., add, remove or modify (groups of) activities, or (5) introduce dynamic provisioning of activities. Utilizing these techniques provides a wealth of opportunities for making a business process more sustainable and can therefore be fully applied to our approach. So, the adaptation strategies we may use here can constitute either of a complete reengineering approach including the creation of a new process model, the modification of specific activities or resources, or an arbitrary combination in-between. Furthermore, structural and non-structural adaptations can also be combined. Variant 1 Original Process View
CO2=90 Cost=105 Time=98
modify structure
CO2=100 Cost=100 Time=100 Variant 2 CO2=85 Cost=95 Time=110
Fig. 5. Adaptation Strategies
In order to determine the impact of an adaptation strategy we need to calculate the aggregated values of both, the corresponding KEIs as well as the corresponding KPIs for each adaptation strategy. The KPI values can be determined in an analogous manner and provide the means to compare the different adaptation strategies. In our running example, Auto Inc. decided to substitute the activities with the highest CO2 emission by activities from external providers with a lower CO2 emission. In this case, we may also consider constraints when exchanging activities. For example, a specific activity that improves the CO2 emission might exceed a given cost threshold and therefore cannot be used as substitute. Two different adaptation strategies are shown in Fig. 5. The upper one substitutes the two activities identified at the drilldown, the lower one substitutes the complete activity identified before drill-down. The numbers shown exemplarily depict the impact of each adaptation strategy based on KEIs and KPIs. In these adaptation scenarios, the information needed for the augmentation of the substitute activities needs to be provided either by previous analysis, certain knowhow, information provided by business partners offering the alternative service (SLA), or other estimations. Note, that the comparison of different adaptation strategies is only as valid as its underlying estimations. Therefore, it is crucial that the data used for the augmentation is as accurate and current as possible. When comparing different strategies with one another, equivalent data is necessary for both processes in question. Otherwise, the comparison might lead to non-representative results. If the information concerning KEIs and KPIs is in a proper shape, a concrete
An Architecture and Methodology for a Four-Phased Approach to Green Business
159
adaptation strategy can be chosen. Considering the given thresholds for economic and ecological objectives an organization, for instance, can choose a strategy that satisfies the economic and even optimizes the ecological objectives. So, in our running example, Auto Inc. compares their adaptation strategies from Fig. 5 to one another, deliberates about which strategy best fits their overall economic and ecological objectives (i.e., their business strategy) and finally decides in which way to adapt the observed process model. Depending on the process characteristics (i.e., whether the observed process is an automated process or an undocumented process, for example) proper adaptation mechanisms may be selected to support the adaptation strategy in detail. In general, we are faced with similar issues known from Life Cycle Assessment (LCA) [17]. LCA is also a methodology for analyzing commensurable aspects of quantifiable systems. However, not every KEI value can be reduced to a number and augmented to a process model. In our approach this holds for recycling aspects or soil pollution, for example.
4 Use Case To illustrate the practicability of our approach we use a concrete business process example from a car manufacturer. In order to apply our methodology, we use the car finishing process depicted in BPMN notation [18] in Fig. 6. This process is performed every time a new car has been assembled and leaves the assembly line. In the first step of the finishing process the car is put into operation making sure all systems are working. Then, in the regular case a quick check based on a predefined checklist is performed. In some cases a detailed check is performed. This part of the process first includes the transportation of the car to the test center and the preparation of the test procedure. The test procedure then starts with an engine test which is followed by a detailed visual check of interior and exterior. After the test run on a test track in the next process step, the water density is checked and the car gets cleaned and prepared for delivery or refinishing, respectively. Finally, in both cases a detailed report of the test results is created and sent to the operations management. Performing the finishing process either with a quick or a detailed test run results in different cost, quality, and duration characteristics of the complete process depending on the specific weights of those dimensions, e.g. the percentage of detailed tests that can be managed.
Fig. 6. Car Finishing Process
160
A. Nowak et al.
Now, an additional dimension, namely KEIs, is added. In the first step towards improving the environmental impact of this process we need to monitor and sense the required information in order to analyze and subsequently achieve the strategic objectives of decreasing both the CO2 emissions and the water consumption by a certain percentage. The CO2 emission can be estimated by identifying the means for the car transport to the test center, the fuel burned during the engine test and the test run, the electricity needed for light and apparatus of the visual check and during the water density check and cleaning, for example (note that concrete measuring methods are out of the scope of this paper). The water consumption can be estimated by water meters, respectively. The complete environmental information, beside other KPIs like cycle time and process costs, is then augmented to the process model and can be used for further process analysis.
Engine Test
Visual Check
Test Run
Check Water Density and Clean Car
Put Car into Operation
Create Report
Fig. 7. Augmented and Re-Shaped Process View
Analyzing the augmented data we are noticing that our KEI targets are not reached with this process. To identify the activities that cause the main environmental impact we create a new process view. Therefore, we first omit those activities that must be performed as modeled according to internal guidelines. This includes the activities Prepare Detailed Check and Perform Quick Check. In order to provide a better readability we also perform a transformation that repaints the shapes depending on their CO2 emission and water consumption. The result is depicted in Fig. 7. The intensity of the background colors indicates the amount of CO2 emissions caused by the corresponding activity. The thickness of the blue border line indicates the total water consumption of the corresponding activity. In Fig. 7 we can see, that the Engine Test as well as the Test Run activities produce a high amount of CO2 emissions while the Check Water Density and Clean Car activity indicates both, a high CO2 emission and water consumption. The information sign in the bottom right corner of each activity is used to display all information augmented to this activity (mouse-over). Based on this information we can identify the problematic activities and derive potential process alternatives.
An Architecture and Methodology for a Four-Phased Approach to Green Business
161
Fig. 8 Process Alternative
In order to achieve the strategic objectives we decide to perform a structural adaptation of the process as depicted in Fig. 8. We include a new test run activity which performs the test at an existing roller dynamometer test bench and is executed as an alternative to the original test run activity. The test run is now performed in equal parts at both the test track and at the existing roller dynamometer test bench. The latter one allows a more efficient test run with respect to the test run duration and therefore reduces the fuel burned, for example. The alternative test run also eliminates the transport of the cars to the test track. Additionally, the cars are just handled indoors which reduces the amount of water and cleaning supplies for washing the cars. In order to visualize the total environmental impact of this process alternative, the augmented information of the related activities is overwritten, i.e. a new process view containing the new process model and its related information is generated. Within this use case, the information can be gathered either by some test runs of the specific activities or based on existing knowledge. Next, we also need to consider the process costs of the restructured process as well as the corresponding time and quality impacts. Before, the roller dynamometer test bench has not been used within the finishing process because it had worse impact on the KPI dimension cost and quality than the other test types. This now changes with adding the KEI dimension because we are faced to a new trade-off situation. Within the new case, the costs will slightly increase due to the higher costs of a test run at the roller dynamometer test bench. On the other side, we will save a significant amount of time for not transporting the car to the test track and the more efficient test run. What is important now is that we can also achieve savings at the water consumption and CO2 emission. Based on the weights strategically set for those four dimensions we can try to determine the percentage of tests which should go to the new roller dynamometer test activity and configure the branching activity accordingly.
5 Related Work Within the cross-cutting concern of this work different approaches considering the specific parts and areas of interest of this approach can be found in literature. Following [8], these approaches can be distinguished in Green IT and Green IS approaches. The green information technology (IT) is mainly focused on energy efficiency and resource utilization. Here, we can distinguish different approaches
162
A. Nowak et al.
considering two main perspectives: (1) the hardware perspective [19,20] that covers the efficient use of resources, e.g., proper allocation of resources, and (2) the infrastructure perspective [21,22] that covers the efficient and target-oriented usage of an underlying infrastructure, e.g., proper management of cloud environments. Green information systems (IS), in contrast, “refer to the design and implementation of information systems that contribute to sustainable business processes” [8]. Consequently, the literature considers the software and process perspective. In [23] and [16] the authors have developed first concepts on how business processes can be optimized in a green manner. They focus on a classification of resources that influence the environmental impact and how they can be reduced during design-time of a business process. Additionally, they introduced a formal model dealing with the combination of quantitative and qualitative QoS in order to also consider nonnumbered QoS. Subsequently, in [24] they focus on how these resources can be modeled. This approach contains interesting aspects regarding the green optimization of processes, however, considers only design time and is not focusing on an organization’s complete environment including the organizational structure, the processes, and the used infrastructure and resources. A more general approach to assess environmental and social damages assignable to products and services is Life Cycle Assessment (LCA) [17] which is part of the ISO 14000 family “environmental management standards” [25]. It provides a technique to assess all impacts of a process from cradle-to-grave, i.e. from raw material to disposal or recycling. While it covers the whole product lifecycle, it can be used to optimize the environmental impact of a product or of a whole company. LCA provides a good basis for optimizing the environmental impact of an organization, however, does not focus on business processes in particular and the underlying infrastructure in general. Another interesting viewpoint is the research work done in “ecological information science” (in Germany this research area is called “Umweltinformatik”). Ecological IS deals with the modeling, simulation and analysis of ecosystems. They provide a lot of information on how harmful substances may spread or how control systems should behave to minimize the impact on ecosystems, for example. They also provide first ideas on business information systems considering ecological information in order to support operational decisions. However, so far they lack in applying their research results to the (IT) business processes layer and especially how business processes can be designed or adapted in order to prevent a negative impact on ecosystems.
6 Conclusion The architecture presented in this paper describes fundamental layers needed to achieve more sustainable organizational environments in the cross-cutting concern of green Business Process Reengineering. We described each layer in detail, identified the roles within an organization responsible for each layer and sketched the main issues of each layer. Moreover, the corresponding methodology presented in this work describes a walk through this architecture. It helps organizations to plan and define their ecological objectives in form of Key Ecological Indicators (KEIs) and to identify and localize the most dissipative parts of their processes based on these KEIs. To realize the Analysis & Management as centerpiece layer of the architecture we used the approach of “process views” that enables a proper visualization of the process
An Architecture and Methodology for a Four-Phased Approach to Green Business
163
model utilizing so-called view transformations. Consequently, in the Adaptation layer organizations can derive adaptation strategies to optimize their collective environmental impact while considering both, their ecological and economic objectives. Finally, we presented a use case from automotive industry that shows the practicability of the proposed architecture and methodology. Our approach bridges the gap of missing interconnection between existing Green IT and Green IS approaches towards a holistic environmental impact analysis and optimization in organizational structures. In our future work we will investigate a classification for KEIs and their application in intra-organizational and cross-partner environments. Within this work we will also address the problem of how to sense and monitor the environmental influence factors on a per task basis. We will further develop different process view patterns that allow organizations the application of process views in a re-usable fashion and will devise algorithms that support the trade-off between KPIs and KEIs. Acknowledgments. Parts of this work were funded by the 7th FP EU-Project S-Cube (Grant Agreement No. 215483) and the Cluster of Excellence in Simulation Technology (EXC 310/1) at the University of Stuttgart. We also would like to thank our colleagues at the IAAS for the fruitful discussions.
References 1. Gartner Research, http://www.gartner.com/it/page.jsp?id=1210613 2. GreenBiz.com, http://www.greenbiz.com/blog/2010/12/29/how-will-sustainabilitychange-your-company-2011 3. Carbon Footprint, http://www.carbonfootprint.com/carbonfootprint.html 4. Nowak, A., Leymann, F., Mietzner, R.: Towards Green Business Process Reengineering. In: Proc. of the 1st Intl. Workshop on Services, Energy, and Ecosystem. Springer, Heidelberg (2011) 5. Vanhatalo, J., Völzer, H., Leymann, F.: Faster and More Focused Control-Flow Analysis for Business Process Models Through SESE Decomposition. In: Krämer, B.J., Lin, K.-J., Narasimhan, P. (eds.) ICSOC 2007. LNCS, vol. 4749, pp. 43–55. Springer, Heidelberg (2007) 6. Davenport, T.H., Short, J.E.: The new industrial engineering: Information technology and business process redesign. Sloan Management Review 31(4), 11–27 (1990) 7. Hammer, M., Champy, J.: Reengineering the Corporation: A Manifesto for Business Revolution. HarperBusiness, New York (1993) 8. Watson, R., Boudreau, M.-C., Chen, A., Huber, M.: Green IS: Building Sustainable Business Practices. In: Watson, R. (ed.) Information Systems, Atlanta, Georgia (2008) 9. Niedermann, F., Radeschütz, S., Mitschang, B.: Deep Business Optimization: A Platform for automated Process Optimization. In: Proc. of ISSS and BPSC, Leipzig, Germany (2010) 10. Schumm, D., Leymann, F., Streule, A.: Process Viewing Patterns. In: Proc. of 14th IEEE Intl. EDOC Conf., pp. 89–98. IEEE Computer Society, Los Alamitos (2010) 11. Wetzstein, B., Strauch, S., Leymann, F.: Measuring Performance Metrics of WS-BPEL Service Compositions. In: Proc. of the 5th Intl. Conf. on Networking and Services (ICNS 2009), Valencia, Spain (2009)
164
A. Nowak et al.
12. Stavins, R. N.: Experience with Market-Based Environmental Policy Instruments. Discussion Paper of Resources of the Future, Washington D.C. (2001) 13. Schumm, D., Leymann, F., Ma, Z., Scheibler, T., Strauch, S.: Integrating Compliance into Business Processes: Process Fragments as Reusable Compliance Controls. In: Proc. of the Multikonferenz Wirtschaftsinformatik (MKWI 2010), Göttingen, Germany (2010) 14. ul Haq, I., Huqqani, A., Schikuta, E.: Aggregating Hierarchical Service Level Agreements in Business Value Networks. In: Dayal, U., Eder, J., Koehler, J., Reijers, H.A. (eds.) BPM 2009. LNCS, vol. 5701, pp. 176–192. Springer, Heidelberg (2009) 15. Unger, T., Leymann, F., Mauchart, S., Scheibler, T.: Aggragation in service level agreement in the context of business processes. In: Proc. of 12th IEEE Intl. EDOC Conf., Munich, Germany (2008) 16. Hoesch-Klohe, K., Ghose, A.K.: Business Process Improvement in Abnoba. In: Proc. of the 1st Intl. Workshop on Services, Energy, and Ecosystem, SEE 2010 (to appear, 2011) 17. Azapagic, A.: Life cycle assessment and its application to process selection, design and optimization. Chemical Engineering Journal 73(1), 1–21 (1999) 18. Object Management Group (OMG) Business Process Model and Notation (BPMN). OMG Available Specification, Version 2.0 (2011) 19. Petricci, V., Loques, O., Mosse, D.: A dynamic optimization model for power and performance management of virtualized clusters. In: Proc. of the 1st Intl. Conf. on EnergyEfficient Computing and Networking, New York, NY, USA, pp. 225–233 (2010) 20. Tudor, C., Salomie, I., Anghel, I., Chira, I., Cocian, A., Henis, E., Kat, R.: A Dynamic Power Management Controller for Optimizing Servers’ Energy Consumption in Service Centers. In: Proc. of the 1st Intl. Workshop on Services, Energy, and Ecosyste, Springer, Heidelberg (2011) 21. Berl, A., Gelenbe, E., Girolamo, M., Giuliani, G., Meer, H., Dang, M., Pentikousis, K.: Energy-Efficient Cloud Computing. The Computer Journal 53(7), 1045–1051 (2010) 22. Liu, L., Wang, H., Liu, X., Jin, X., He, W., Wang, Q., Chen, Y.: GreenCloud: A New Architecture for Green Data Center. In: Proc. 6th Intl. Conf. on Autonomic Computing and Communications (industry session), New York, pp. 29–38 (2009) 23. Ghose, A.K., Hoesch-Klohe, K., Hinsche, L., Le, L.-S.: Green business process management: A research agenda. The Australasian Journal of Information Systems 16(2) (2009) 24. Hoesch-Klohe, K., Ghose, A., Le, L.-S.: Towards Green Business Process Management. In: Proc. of the IEEE Intl. Services Computing Conf (SCC 2010), Miami, USA (2010) 25. ISO 14040: Environmental management – Life cycle assessment – Principles and framework, International Organisation for Standardisation (ISO), Geneve (2006)
ADSC: Application-Driven Storage Control for Energy Efficiency Cinzia Cappiello1 , Alicia Hinostroza1 , Barbara Pernici1 , Mariagiovanna Sami1 , Ealan Henis2 , Ronen Kat2 , Kalman Meth2 , and Marcello Mura3 1
Politecnico di Milano, Dip. di Elettronica e Informazione Via Ponzio 34/5, 20133 Milano, Italy {cappiell,pernici,sami}@elet.polimi.it 2 IBM Haifa Research Lab Haifa University Campus, Mount Carmel, Haifa, Israel 31905 {ealan,ronen,meth}@il.ibm.com 3 University of Lugano Via G. Buffi 13, Lugano, 6904, Switzerland
[email protected]
Abstract. While performance and quality of service are the main criteria for application data management on storage units, energy efficiency is increasingly being stated as an additional criterion for evaluation. Due to the increasing energy consumption of storage subsystems, improving their energy efficiency is an important issue. In this paper we present a novel approach to storage management whereby both mid-level (file placement) and low level (disk mode) aspects are controlled, in a tiered storage architecture. The proposed mechanism is based on policies, and it is implemented via fuzzy logic rules, in contrast to attempting to build a model of the storage subsystem. The inputs to the storage management system are high level (application), mid level (file system) and low level (disk access patterns) information. The effectiveness of our approach has been validated by means of a case study using a TPC-C benchmark modified to access file level data. Results from this simulation are presented.
1
Introduction
Reducing energy consumption of IT systems and data has been recognized as an important issue for data centers. Current means to reduce energy consumption include optimizing cooling system utilization, turning off unused lights and devices and enabling low-power modes. As shown in [1], among the various components of a data center (e.g., processors, memory chips, disks and network hardware), storage is a considerable consumer of energy. Storage demand is also growing by 60% annually [2], hence storage systems energy minimization is important. For data center storage systems energy may be saved through disk spin down/up (e.g., [3]) or storage cache management (e.g., [2]). The goal of this paper is to present an approach to energy aware storage management in data centers, based on energy saving policies. This paper focuses on D. Kranzlm¨ uller and A M. Tjoa (Eds.): ICT-GLOW 2011, LNCS 6868, pp. 165–179, 2011. c Springer-Verlag Berlin Heidelberg 2011
166
C. Cappiello et al.
two aspects of storage management: data placement and disk operation mode. Nowadays, large storage subsystems have a tiered architecture, whereby each tier has different performance and energy consumption characteristics. It is also common that data centers contain a huge amount of storage devices of diverse kinds, having different energy consumption characteristics. Consequently, data placement within the tiers and disks can have a considerable impact on the system energy consumption. The analysis of disks’ acoustic modes (see [4]) has shown that the relationship between power consumption and energy consumption for disk access depends on the data usage characteristics. In this paper we propose an approach to dynamic management of storage, which is based on policies and rules, and exploits information regarding applications and data usage. The administrator may adapt the policies and rules without performing specific management decisions. This method differs from standard optimization approaches define and optimize a utility function. In our method we control both the acoustic modes of disks and data placement. We migrate files to consolidate storage data, and enable switching unused disks to stand by mode, without any performance penalty. The energy savings may be significant, and further enhanced if the storage system is over-provisioned to meet peek access demands. Although we manage data at the file level, the obtained results are applicable to other levels of data granularity (database, volume, array, block), provided that data access information is available at the relevant level of granularity. This research has been carried out in the EU-FP7 GAMES Project1 . The goal of the project is to develop a set of methodologies, software tools and services, and innovative metrics for an energy-aware design and management of the service centers [5]. The paper is structured as follows. In Section 2 adaptation strategies for storage management are described. Section 3 presents our approach and adaptive mechanism, based on fuzzy rules, to manage data placement in storage. Section 4 describes the case study that we have used to validate our approach, the simulation tool employed and the results obtained. Next, we review relevant works in Section 5, and finally conclude in Section 6.
2
Disk Adaptations
Disk drives provide the primary medium for online application storage. Current disk technology offers several adaption strategies. In this paper we take advantage of disk operation modes to reduce energy consumption, and utilize disk technologies to maximize storage utilization while reducing energy consumption. 2.1
Disk Modes
Spinning disks are either active handling workload, or idle, waiting for workload. When a disk is idle, spinning the disk down to either off or standby will save 1
GAMES (Green Active Management http://www.green-datacenters.eu/
of
Energy in IT Service centers):
ADSC: Application-Driven Storage Control for Energy Efficiency
167
energy. However, spinning it up again for data access incurs several seconds delay and a large amount of energy. Some disks support a low energy (about half) RPM idle. However, spinning up to the data access higher RPM incurs a time delay and consumes energy. The prolonged response time prevents enterprise systems from spinning disks down. Disks that support the Automatic Acoustic Management (AAM) defined in ATA/ATAPI-6 [6] can move the disk head and perform seek operations at different speeds and accelerations. Moving the disk head using the lower power (and noise) ”quiet” acoustic modes, results in a lower power profile of the disk, trading off performance and power. When the disk head moves in the highest power mode, the disk is said to be in ”normal” acoustic mode. Further details on the differences between these modes can be found in [4]. 2.2
Storage Tiers
Traditionally, storage is divided into online storage, disk drives, and offline storage, tape drives. In this paper we focus on online storage, divided into tiers based on disk types, commercially available in various capacities and performance characteristics. In our design we focus on enterprise disks that are available in two classes, high performance, associated with high tier storage, and high capacity disks (typically lower performance), associated with low tier storage. High performance disks provide high throughput, faster response time, and high availability, but are typically limited in capacity (currently, up to 600GB). They usually spin at 15K or 10K RPM, and provide fast seek time (disk head movements). These result in a relatively high energy consumption. Such disks usually have a Fibre Channel (FC) or Serial Attached SCSI (SAS) interface (sometimes refereed by their interface name). High capacity disks provide very large capacity (currently, up to 3T B) at a lower performance. A high capacity disk typically spins at 7.2K RPM or less. They provide acceptable seek time, and consume a relatively small amount of energy. In recent years, Solid State Drives (SSD) based on flash technology have created a new storage tier, called tier 0, with very high performance, small capacity and low energy consumption. Figure 1 shows an example of a system with three storage tiers, with applications (on top) accessing the storage system. Often an application has no knowledge on which disk or volume its data resides. The storage management (on the right) is responsible for data placement in the storage tiers. The management can perform migration actions, moving data among tiers2 , and packing actions which consolidate data on a smaller number of disks within a tier. The latter allow to switch disks to stand-by mode, when the disk is empty. Additionally, the management can switch disks into normal or quiet mode. The storage management receives ”hints” (information) from the application management layer regarding the desired performance (response time, throughput,...), and applies the defined policies for data allocation, migration, packing and disk mode selection. 2
A migration action to/from the tape tier is called backup/restore.
168
C. Cappiello et al.
APIs
Application 1
Application 3
Application 2 Server
Server
Energy Aware Application Management
Data Access quiet mode
Stand-by mode
Storage Management normal mode
Energy aware policies Assign policy to application
Tier 1 – High performance
migrate
Allocate storage volumes manage Using placement rules: Periodically execute rules
p ku Tier 2 – High capacity ac e b or st e r
Pack
Periodically pack tiers Using disk mode rules: Set acoustic mode Set disks to stand-by
Tier 3 - Tape
Fig. 1. A system with storage tiers
3
A Design Approach for Storage Control
In the following, we propose an adaptive mechanism to manage data placement for file storage with the goal of reducing storage energy consumption. The mechanism exploits the characteristics of enterprise disk (Section 2), and data access characteristics of the data center applications. We assume that storage is organized in two tiers (low and high), although the approach can be extended to multiple tiers. In both tiers disks can be used in acoustic modes, and standby/off states. As explained in Section 2 regarding latency and energy consumption when spinning disks down/up, only unused disks are allowed to be switched off. In our approach, we make file level decisions – files are the data units. We use files to demonstrate our adaption rather than data blocks, since it is simpler to collect file performance data than for blocks, and easier to implement file based migration decisions. Future work may use data blocks as the units of data. The files are accessed by applications, and the latter provide metadata describing data usage and desired quality of service (QoS). Alternatively, data usage can be derived at run time by monitoring the system. The parameters required are the access pattern (sequential or random), and the frequency of accessing the data item (file). Quality of service of applications is usually described in terms of various parameters (e.g., response time, availability). In our approach, we assume that QoS requirements are specified and ranked according to the customer type, for example, gold, silver, or bronze. Our approach supports dynamic disk control, based on the actual usage of data and disk characteristics. The goal is to improve the storage energy efficiency, while maintaining the desired quality of service for the applications. Storage management is obtained by (a) controlling the disk acoustic modes, and by (b) migrating data units to the most appropriate location (tier and disk) taking into account the cost of the migration itself.
ADSC: Application-Driven Storage Control for Energy Efficiency
3.1
169
Storage Management
In order to reduce energy consumption, we aim to maintain the data in the storage subsystem such that the most suitable disk acoustic mode will be selected, and the least amount of disks will be used (maximizing the amount of unallocated disks). We organize the disks according to their usage levels (data of similar usage profiles are kept together), and pack the data into the smallest amount of disks possible. Note that, in contrast, general performance practices attempt to spread disk usage among the disks. Storage management is guided by policies that during the application workload execution are able to exploit disk modes and data migration for energy consumption minimization. For example, disk quiet mode is exploited to operate disks with a lower power seek profile, when response time is not critical or the system is overloaded. Figure 2 illustrates the state machine representing the general storage management system. It is composed of two controllers: the mode operation controller, and the migration controller. The time scales of the two control operations are different. In general, the mode controller is executed repeatedly with a short time period (in the order of several seconds), whereas the migrating controller is activated periodically with a longer time period (in the order of several days). It generates a migration plan that can be enacted pending management approval. The policies specify high level indications to the two controllers of appropriate actions to be taken. The policies are implemented via rules that handle specific cases and circumstances. Init Initialization()
Operation Migrating Wait Migrate()
checkmodeFC() h k d FC()
Fig. 2. Storage management controller state machine
3.2
Policies
A summary of the policies we used is presented below. Two sets of policies are needed for the two controllers (i.e., disk modes and migration controllers). Additionally, we need to decide which is the most suitable disk to store new files. Hence, three groups of policies are defined: – policies for space allocation for newly created data; – policies for disk acoustic modes; – policies for existing data migration.
170
C. Cappiello et al.
The latter are further divided into migration between tiers (vertical migration) and migration within a tier (horizontal migration). The general characteristics of each policy are discussed below. Space allocation for newly created data: The allocation of newly created data is performed on the basis of its expected usage. The policies have been defined considering that this information can be gathered from application metadata or can be unknown. If the applications that generate new data provide effective metadata representing its expected usage, new data will be stored in a disk where data with similar usage is already resident. If information about expected usage of new data is not available, new data will be stored in the high tier. Disk mode: As previously described, we consider two possible acoustic modes (namely quiet and normal mode) and we design the policies to manage the switching mode operations. A disk that has a long IO request queue and with expected non-sequential accesses pattern will operate in quiet mode. In any other case, the disk will operate in normal mode. Data migration: The migration policy is based on application and usage characteristics, and on the quantity and type of available storage resources. Vertical migration depends on QoS and usage. Concerning QoS, if data in the low tier does not meet its expected QoS (e.g., non acceptable response time), it will be marked for migration to the high tier. Concerning usage, data in the high tier is expected to be more frequently accessed than in the low tier. In Horizontal migration, data will be stored in disks according to their usage (similar usage in the same disk), and consolidated (up to a limit) in order to free (unallocated) disks, if possible. As will be described below in Section 4, all policies were translated into specific fuzzy logic rules, and formal meanings will be assigned to the fuzzy terms used (e.g., ‘significantly bigger’, ‘significantly smaller’, ‘big’, ‘small’, etc.). The rules are illustrated in Section 3.3. 3.3
Fuzzy Controller
The policies defined in the previous section have been implemented by means of fuzzy rules. The fuzzy approach was chosen since we considered that most of the defined policies are based on expert rules of thumb and ballpark rather than exact values. In many cases the relative change is also of interest. Is there any difference between one file that has been accessed 50 times and another that has been accessed 40 times? The answer depends on the absolute average access rates and the relative importance of a 40-50 difference. Other characteristics of the system, such as the disks performance and maximum accesses are also relevant. In our work, we refer to normalized parameter values. There is always the need to understand the ranges for which changes in the values are insignificant to the system. Fuzzy logic is well suited to handle such policies, and we chose to formalize the policies by means of fuzzy rules. These fuzzy conditional statements are able to handle absolute as well as relative values, and at the same time they are robust, easy to implement and flexible. Moreover, an accurate model alternative for a complex storage subsystem is not available.
ADSC: Application-Driven Storage Control for Energy Efficiency
171
Table 1. System Variables for controlling disk modes I/0
Variable
Description
Input ARx :
Normalized rate of sequential accesses on disk Dx .
Input QLx
Average length of the queue at disk Dx
Input AQoSpm
Actual quality of service associated with the file Fp in tier Tm
Input QoSpm
The quality of service desired by the user of file Fp in tier Tm
Input ATx
The minimum time between two consecutive accesses to disk Dx
Input Ax
If disk Dx is allocated or free
OutputDMx
Acoustic mode at which the disk Dx is operating
The design of the fuzzy storage controller requires (i) to identify the system variables, (ii) to identify the fuzzy set for the input/output variables, and (iii) to formalize the rule set. The input variables are those that affect the system’s energy consumption. The output variables will define the actions needed to be taken in order to save energy. Note that definition of a fuzzy set is not required in case a variable is already discrete. In the following, in order to better explain our approach, we provide details about the fuzzy rules designed to manage the disk operation mode controller. Considering at the policies definition, it seems that the most important factors that influence the disk mode are the amount of concurrent IO requests and the data access mode (random/sequential). For a detailed example, let us assume that the file Fp is located in the disk Dx positioned in the storage tier Tm . It is possible to identify the system input and output variables listed in Table 1. Following variables specification the fuzzy sets for these variables need to be defined. For example, for the ARx variable that is the amount of sequential accesses to disk Dx relative to the total amount of accesses on the same disk, it is possible to assign two different values: sequential/non-sequential. Similarly, the length of the queue QLx , calculated as the average queue length taken during the last five seconds of sampling, can be represented by using the values: short/long. Adequate/inadequate are the values assigned to the ATx variable defined as the time difference between two consecutive accesses. Finally, the values of QoSpm and AQoSpm do not need the identification of fuzzy set since they can be considered as discrete values (i.e., bronze, silver, gold, and platinum) as well as the Ax variable that can define the state of the disk by using two values: free/allocated. The output variable (disk mode) is already discrete and therefore it is not necessary to define any membership function or related fuzzy set. In fact, the output value DMx specifies the current recommended operation mode, using four values: normal acoustic mode, quiet acoustic mode, stand by, or switched off. For some rules, the DMx variable current value will also be used as an input variable. Note that the identification of the numerical thresholds used to assign values to the described variables depends on the characteristics of the considered system. Thresholds can be initially determined by using benchmark values derived by previous experiments. For example, in our approach, criteria to identify
172
C. Cappiello et al. Table 2. Examples of fuzzy rules for controlling disk modes Fuzzy rules IF (ARx is sequential) THEN (DMx is normal) IF (ARx is non-sequential AND QLx is big) THEN (DMx is quiet) IF (QLx is small) THEN (DMx is normal) IF (DMx is quiet AND AQoSp m is bronze|silver|gold AND QoSp m is platinum) THEN (DMx is normal) IF (DUx is light AND ATm is adequate ATx is FREE) THEN (DMx is stand by) IF (DMx is stand by AND ATx is ACCESSED) THEN (DMx is normal)
the threshold related to length of the queue has been defined by referring to the results described in [4]. Having the system variables, the fuzzy sets and the desired behavior of the system(policies), it is possible to define the fuzzy rules that translate the policies into an operational management engine that periodically switches among the disk modes. In Table 2 the most representative rules for controlling disk modes are listed.
4 4.1
Validation Case Study
The e-business process used as a case study concerns an online bookstore. The case study is derived from the TPC-C benchmark [7]. The considered process is composed of three main parts: catalogue visualization, order management, and payment. The user can browse the catalogue to find the products that s/he would like to purchase. After this activity the user can place an order and pay or abandon the purchase process. The user has also the possibility to cancel the order before the payment. In order to manage storage access at the file level, the first activity, which is the one mostly executed in the process (only a small fraction of visitors of the system actually purchase a book) has been modified to provide access to book information stored in files. 4.2
Experimental Data
The approach presented in Section 3 has been validated by simulation in order to test its effectiveness. The designed storage controller has been implemented and applied to the case study described in Section 4.1 by using a simulator based on the Finite State Machine (FSM) formalism. Such a formalism is suitable for power modeling and estimation at system level [8]. We used a hierarchical modelling approach, originally studied for Wireless Sensor Networks and proved efficient in a wider set of contexts [9]. The model is expressed in terms of concurrent FSMs (we use the StateCharts formalism), the bottom layer FSM is
ADSC: Application-Driven Storage Control for Energy Efficiency
173
responsible for annotating power consumptions depending on the path through its states. Higher layer FSMs (e.g., the disk controller model shown in Figure 2 in our case) drive the bottom layer machine notifying events that trigger transitions, or by setting values of variables that are used by the bottom level FSM. The tool we use (i.e., SC 2 [10]) is capable of generating executable code starting from StateCharts model representations; the FSM models refer to simulation classes, the tool allows generating multiple objects of each class and make them interact in a global scenario. In the simulations, disks properties and their energy consumption levels imitate real data. The storage controller implementation included two tiers, the high tier used fast 10K RPM, 300GB 2.5” disks, and the lower tier used 7.2K RPM, 1T B 3.5” disks. The energy consumption details of the disks is illustrated in Table 3 and power consumption (expressed in Joule/ms) for normal and quiet modes is derived from [4]. The summary of the disks performance characteristic is shown in Figure 3. More details are available in [4]. The 2.5” disk is a high performance enterprise class disk, and also energy efficient, as it uses a smaller platter size. The 3.5” disk is a high capacity enterprise level storage, and is cheaper than the 2.5” disk. During the experimental phase, the process for the Table 3. Tier disks characteristics in the simulation Idle cons Startup time Switch off Max files (J/ms) time High tier disks 4.4 ∗ 10−4 8 0.5 16680 Low tier disks 8.3 ∗ 10−4 10 0.5 25000
case study has been implemented and executed, both with and without the storage controller. In order to assess the energy efficiency of the proposed approach, the energy consumption of the two executions (controller enabled or disabled) has been compared as described in the next sections. 4.3
Simulation Results
In order to validate the proposed approach, a set of simulation tests has been performed on the two-tiered architecture, with a variable number of disks. In test set A, we set the number of available disks to a wider capacity than needed to store the data. In this test set we are able to see how the adaptation policies can help to dynamically manage storage by controlling the amount of active disks, also for the case when the data usage profiles are not known in advance. In test set B, we reduced the number of disks, therefore mainly testing how data are distributed between the two tiers for better energy efficiency, while satisfying QoS constraints. In both test sets, we assume that one disk in the high tier is reserved for the database. Simulation executions ran for two hours. We also ran for each test set five different types of tests, subdivided in two groups. In the first group, we assume that file access rates have a random profile,
C. Cappiello et al.
15
15
14
14
13
13
12
12
11
11 Power (W)
Power (W)
174
10
10
9
9
8
8
7
7
6
6
5
5 0
20
40
60
80
I/O per second Quiet mode
Normal mode
100
120
0
50
100
150
200
250
300
350
I/O per second Quiet mode
Normal mode
Fig. 3. Power consumption of the high-end tier and lower tier for different performance levels
not linked to application data. For this group different load characteristics are represented: for highly active systems (Scenario 3 - High load), a TPC-C result for > 200,000 users in the system was considered, with 20 239, 633 transactions; not highly active systems (Scenario 1 - Light load), users become < 50,000 with 2 239, 633 transactions; for intermediate active systems (Scenario 2 - Medium load), the range is between the two ranges mentioned above. All these loads are characterized by intensive access to information stored in files, even for those files that are accessed less frequently, given the high number of accesses to the system. The second group has an access profile linked to the application. We assume that some items are accessed more often than others, based on the ranking of items per sales data. Also in this case we ran simulations under high and low loads. The loads were derived from a study on Amazon’s access patterns [11]. This group of tests allows us to analyze the effect of highly variables number of accesses to files, with some files rarely accessed. A sketch of the file access patterns in the second group of tests is shown in Figure 4. For each simulation we consider two cases: random and ordered. In the ”random” case the files are allocated randomly to the disks, whereas in the ”ordered” case the files are allocated to the disks taking into consideration their sales rank, so that frequently accessed files are allocated to disks in the High performance tier. The load considered in this case is very light, around 1/5 of the Light load. In the simulations we assume that the disk mode controller is activated every 5 seconds and that the migration controller is activated every two hours. In all cases 50,000 files were allocated on the disks. Test set A. In Test set A, initially 8 of the 10 high tier disks are allocated, and 2 of the low tier disks. The results derived from test set A both for disk mode and migration control are illustrated in Table 4. Given the availability of resources in the high tier, after migration all files are stored in four disks in the high tier.
ADSC: Application-Driven Storage Control for Energy Efficiency
175
Numberofaccessees
x104
FileNumberID l b
Fig. 4. Amazon Workload obtained from Amazon’s Sales Rank
As can be seen in Table 4, disk modes have an impact on reducing energy consumption mainly when the load is considerable, while no reduction is obtained with low loads. When considering migration, the results obtained are mainly due to the high capacity of the high tier, allowing to receive migrated files. Following the controller actions, response time and its variance are also improved (reduced), due to the better allocation of data with respect to incoming requests. Table 4. Test set A - disk mode and migration Disk mode with- Energy Cons. with Fuzzy Rules [J] High Load 668,495 566,868 Medium Load 609,453 544,071 Light Load 488 391 488 390 Booksales 92,912 92,712 random Booksales or- 92,904 92,904 dered Load
Energy out [J]
Migration with- Energy Cons. Diff. with Fuzzy (%) Rules [J] -15.2 668,495 278,390 -58 -19 609,453 247,787 -54 0 488,390 204,678 -58 -0.02 92,912 74,434 -20 Diff. Energy (%) out [J]
0
92,904
74,627
-20
Test set B. In Test set B, initially all the 3 high tier disks and the 2 low tier disks are allocated. The results derived from test set B both for disk mode and migration control are illustrated in Table 5. Given the limited capacity of the High tier, after migration all disks are still used in all cases. To visualize the effect of migration, we can see the effect of migration on disk modes in Figure 5. In most of the Test set B cases, we see a limited advantage of using the rules, given that the system is overloaded for its capacity. After migration one of the disks of the high tier operates mainly in quiet mode. Concerning response time, performance in the High load case of Test set B is influenced by the scarcity of storage resources, which is observed already in the simulation without fuzzy rules, since some of the disks in the initial allocation have an average response time in the order of seconds. The effect of the reorganization of
176
C. Cappiello et al. Table 5. Test set B - disk mode and Migration
Disk mode with- Energy Cons. with Fuzzy Rules [J] High Load 411,089 387,710 Medium Load 386,901 367,200 Light Load 334,812 323,600 Booksales 80,223 79,503 random Booksales or- 80,212 79,697 dered Load
Energy out [J]
Disk Number
Normal mode
-6 -5 -3 -1
Migration with- Energy Cons. Diff. with Fuzzy (%) Rules [J] 411,089 407,011 -1 386,901 375,838 -3 334,812 274,067 -18 80,223 79,451 -1
-1
80,212
Diff. Energy (%) out [J]
79,646
-1
Quiet mode
5 4 3 2 1 Time Before Migration
After Migration
Fig. 5. Disk mode of disks before and after migration (light load)
files after migration is a higher response time, again in the order of seconds, in the first disk which is the mostly accessed one and therefore runs in quiet mode, while the other disks improve their response times.
5
Related Work
Tiers for data placement have been used in memory and storage. Optimized data structures in memory were suggested for (multiple) cache and RAM hierarchies. Developers’ guidelines for recent architectures propose re-organizing both data and algorithms to minimize cache misses and even the risk of cache thrashing [12] and inter-processor communication management of shared-memory multiprocessors [13]. In both instances, a low level of abstraction is targeted, in-depth knowledge of the memory hierarchy is assumed, and (often massive) reworking of the application with respect to both data organization and operating algorithms, is required. Exploiting storage hierarchy is well studied. Hierarchical Storage Management (HSM), whereby storage is arranged in tiers and data is moved among the tiers has been used commercially. e.g., [14]. In HSM, less frequently used data is (automatically) moved to lower storage tiers, and are (sometimes automatically) retrieved to higher tiers when re-accessed.
ADSC: Application-Driven Storage Control for Energy Efficiency
177
One approach to energy reduction is spinning down disks. However if data on an inactive disk is accessed, spinning up the disk induces a significant increases in response time. Massive Arrays of Idle Disks (MAID) [15],[16] take advantage of of disk spin down for energy reduction. In caching based MAID [15] active disks hold (cache) frequently accessed data, for the majority of inactive disks. In migration based MAID [16] data with similar access patterns and frequencies are placed on the same disks to minimize the number of active disks. Our placement policies, similarly, attempt to place on the same disk data of similar access patterns. However, to avoid performance penalties, we do not spin down a disk that contains application data. Storer et al. [17] propose to use (often powered off) disks, rather than tapes, as a long term storage medium, by adding a small NVRAM at each node that supports deferred writes. Otoo et al. [18] translated file allocation strategy into disk allocation strategy, allowing spinning down of disks that are not likely to be used soon. Caching is used to increase disk idle time and spin down duration [19]. Since the spin-up operation consumes more energy than that required to keep the drive spinning, this extra cost offsets some of the spin down savings. Douglis et al. [20] dynamically vary the spin-down threshold on mobile computers by adapting to the users’ access patterns and priorities. Li et al. [21] investigated the use of disk low power modes. Leveraging higher level (e.g., file system, database management) information to improve disk performance and reliability (rather than energy) were adopted in Semantically Smart Disks [22]. An alternative disks spin-down is the Dynamic RPM (DRPM) [3] technique, whereby various speeds that consume different amounts of energy are employed. Such disks are not manufactured today due to technical and cost issues. Another approach without spin down is leveraging disk acoustic modes for power savings [4]. The idea is to use different disk head speed profiles for characterized I/O workloads that lead to power and energy savings. In the current work we leveraged this approach by implementing it into the fuzzy rules that control disk modes.
6
Concluding Remarks
Due to increasing energy consumption of ever larger data centers storage, improving the energy efficiency of storage subsystems operation is an important issue. In this paper we have presented a novel approach towards energy efficient storage management, whereby both mid-level (file placement) and low level (disk mode) aspects are controlled, in a tiered storage architecture. In our approach active storage units are never spun down, to avoid the associated performance penalty. The storage management decision system is based on policies and implemented via fuzzy logic rules, in contrast to modelling the storage subsystem, defining a utility function and optimizing that utility. The rationale for using this approach is twofold: a) accurate models for storage subsystems are hard to find, and b) in real scenarios the behaviour of the storage subsystem and workload frequently change, hence modeling and optimization are of little advantage. The inputs to the storage management system are high level (application), mid level (file system) and low level (disk access patterns) information. The
178
C. Cappiello et al.
outputs used to improve energy efficiency are disk acoustic mode commands, on/off states and file allocation and movement commands. The input information is not readily available from today’s systems, and requires new, special purpose monitoring and application extensions. Some of the required information, however, may be derived from business level information. Although the lack of this information in legacy settings presents a limitation on the applicability of our approach, the energy savings results that we presented may serve as motivation for future system and application writers to include the additional information future applications. Our approach also allows to consider data usage of applications in addition to the low level data usage analysis. Our work showed that the fuzzy control approach to storage management can result in significant energy savings. Although our experimental system and design are rudimentary and are file based, the results reported here demonstrate the validity of the control approach for energy efficiency in general. Possible future directions include extension of the policies and refining the rules towards a finer grained control of disks and tiers, and taking into consideration additional application performance requirements. Acknowledgments. This work has been partially supported by the GAMES project (http://www.green-datacenters.eu/) and has been partly funded by the European Commission’s IST activity of the 7th Framework Program under contract number ICT-248514. This work expresses the opinions of the authors and not necessarily those of the European Commission. The European Commission is not liable for any use that may be made of the information contained in this work.
References 1. Poess, M., Nambiar, R.O.: Energy cost, the key challenge of today’s data centers: A power consumption analysis of tpc-c results. In: VLDB (2008) 2. Zhu, Q., David, F.M., Devaraj, C.F., Li, Z., Zhou, Y., Cao, P.: In: Proc. of HPCA 2004. IEEE Computer Society, Washington, DC, USA (2004) 3. Gurumurthi, S., Sivasubramaniam, A., Kandemir, M., Franke, H.: DRPM: dynamic speed control for power management in server class disks. SIGARCH Comput. Archit. News 31, 169–181 (2003) 4. Chen, D., Goldberg, G., Kahn, R., Kat, R.I., Meth, K.: Leveraging disk drive acoustic modes for power management. In: MSST (2010) 5. Bertoncini, M., Pernici, B., Salomie, I., Wesner, S.: GAMES: Green Active Management of Energy in IT Service centres. LNBIP. Springer, Heidelberg (2010) 6. INCITS 361-2002 (1410D): AT attachment - 6 with packet interface (ATA/ATAPI - 6) (2002) 7. Transaction Processing Performance Council: Tpc benchmark - standard specification, revision 5.11. Technical report (2010) 8. Benini, L., Bogliolo, A., De Micheli, G.: IEEE Transactions on Very Large Scale Integration (VLSI) Systems 9. Mura, M., Paolieri, M., Negri, L., Sami, M.G.: Statecharts to SystemC: a high level hardware simulation approach. In: Proc. of GLVLSI, pp. 505–508. ACM Press, New York (2007)
ADSC: Application-Driven Storage Control for Energy Efficiency
179
10. Mura, M., Paolieri, M.: SC2: State Charts to System C: Automatic executable models generation. In: Proc. of FDL, Barcelona, Spain (2007) 11. Rosenthal, M.: Sales ranks for Amazon self publishing and trade books (2010), http://www.fonerbooks.com/surfing.htm 12. Intel IA-64 Application Developer’s Architecture Guide 13. Culler, D.E., Singh, J.: Parallel Computer Architecture, a hardware-software approach. Morgan-Kauffman, San Francisco (1998) 14. Tivoli Storage Manager HSM for Windows 15. Colarelli, D., Grunwald, D.: Massive arrays of idle disks for storage archives. In: Proc. of ACM/IEEE conference on High Performance Networking and Computing, pp. 1–11 (2002) 16. Pinheiro, E., Bianchini, R.: Energy conservation techniques for disk array-based servers. In: Proc. of ICS, pp. 68–78 (2004) 17. Storer, M.W., Greenan, K.M., Miller, E.L., Voruganti, K.: Pergamum: replacing tape with energy efficient, reliable, disk-based archival storage. In: Degano, P., Guttman, J., Martinelli, F. (eds.) FAST 2008. LNCS, vol. 5491, pp. 1–16. Springer, Heidelberg (2009) 18. Otoo, E., Pinar, A., Rotem, D., Tsao, S.C.: A file allocation strategy for energyefficient disk storage systems 19. Zhu, Q., Chen, Z., Tan, L., Zhou, Y., Keeton, K., Wilkes, J.: Hibernator: helping disk arrays sleep through the winter. In: Proc. of SOSP, pp. 177–190 (2005) 20. Douglis, F., Krishnan, P., Bershad, B.: Adaptive disk spin-down policies for mobile computers. In: Proc. of the 2nd USENIX Symposium on Mobile and LocationIndependent Computing, pp. 121–137 (1995) 21. Li, X., Li, Z., David, F., Zhou, P., Zhou, Y., Adve, S., Kumar, S.: Performance directed energy management for main memory and disks. In: Proc. of ASPLOS, pp. 271–283. ACM Press, New York (2004) 22. Arpaci-Dusseau, A.C., Arpaci-Dusseau, R.H., Bairavasundaram, L.N., Denehy, T.E., Popovici, F.I., Prabhakaran, V., Sivathanu, M.: Semantically-smart disk systems: past, present, and future. SIGMETRICS Perform. Eval. Rev. 33, 29–35 (2006)
Utilization-Aware Redirection Policy in CDN: A Case for Energy Conservation Saif ul Islam1 , Konstantinos Stamos2 , Jean-Marc Pierson1, and Athena Vakali2 1
IRIT, University of Toulouse 118 Route de Narbonne, F-31062 Toulouse CEDEX 9, France 2 Aristotle University of Thessaloniki 54124, Thessaloniki, Greece {islam,pierson}@irit.fr {kstamos,avakali}@csd.auth.gr
Abstract. Due to the gradual and rapid increase in Information and Communication Technology (ICT) industry, it is very important to introduce energy efficient techniques and infrastructures in large scale distributed systems. Content Distribution Networks (CDNs) are one of these popular systems which try to make the contents closer to the widely dispersed Internet users. A Content Distribution Network provides its services by using a number of surrogate servers geographically distributed in the web. Surrogate servers have the copies of the original contents belonging to the origin server, depending on their storage capacity. When a client requests for some particular contents from a surrogate server, either this request can be fulfilled directly by it or in case of absence of the requested contents, surrogate servers cooperate with each other or with the origin server. In this paper, our focus is on the surrogate servers utilization and using it as a parameter to conserve energy in CDNs while trying to maintain an acceptable Quality of Experience (QoE). Keywords: CDNs, Energy conservation, QoE.
1
Introduction
The investigation of new techniques and technologies for the protection of environment is considered one of the most prominent and urgent issues of the 21st century [1]. The governments and environmental agencies are active to face the challenge of global warming. Internet traffic is increasing very rapidly. Internet vendors are obliged to enlarge their networks to provide their services to a maximum number of users. This change caused a trend towards the grand, geographically distributed systems. These systems can have a huge amount of servers and many data centers. In order to provide quick and better services, Internet vendors are forced to install energy-hungry devices to cope with the intensive requirements for the traffic e.g. real time media [2]. Industries and customers are interested in less cost options. Reduction in energy consumption may play an important role to decrease over all cost [2]. D. Kranzlm¨ uller and A M. Tjoa (Eds.): ICT-GLOW 2011, LNCS 6868, pp. 180–187, 2011. c Springer-Verlag Berlin Heidelberg 2011
Utilization-Aware Redirection Policy in CDN
181
A popular type of such a network is a Content Distribution Network (CDN) [3] which is responsible to manage large amounts of content traffic originating from Web users through geographically distributed set of servers. With this approach, content is located near to the user yielding low response time and high content availability since many replicas are distributed. The origin server is relieved from requests since the majority of them are handled by the CDN, whereas, Quality of Service (QoS) and efficiency are guaranteed in a scalable way. Our key motivation lies on finding a delicate balance between users’ satisfaction and reduction in infrastructure energy consumption. We aim at defining an energy-aware forwarding strategy that enhance previous work [3] for energy savings, relying on utilization model of the surrogate servers. In the next section, we discuss some previous related work. Section 3 describes the utilization of the surrogate servers, a model proposed to calculate the surrogate servers’ utilization and our proposed energy-aware policy for the redirection of the client requests to the surrogate servers. In section 4, simulation testbed and results are presented. Section 5 concludes the paper.
2
Related Work
In CDN setup, several issues and decisions are involved to manage and distribute the contents. Till now, different policies have been defined in order to distribute the contents in CDNs. In [4], cooperative and uncooperative push-based policies are presented. [5], [6], [7] describe cooperative and uncooperative pull-based policies. In cooperative policies surrogate servers cooperate with each other on the cache miss while in uncooperative policies surrogate servers don’t cooperate with each other. In push-based policy, the content is pushed from the origin server to the surrogate servers. In pull-based policy, clients’ requests are directed (through DNS redirection) to their closest (in terms of geographic proximity or load, etc.) surrogate server. In recent years, substantial research is carried out to propose and to develop energy-aware solutions in networks. Some of them can be described as follows, a) dynamically changing the link rate, adapting to the utilization of the network, in order to reduce energy consumption [8], b) to put the idle end devices in sleeping mode and to use proxy to maintain Internet connectivity [1], c) diverting the network traffic towards fewer links during less activity period and to enable, the network devices (e.g. routers and switches) connected to the idle links, to sleep [9], d) frequency change and Dynamic Voltage Scaling (DVS) for energy reduction of integrated circuits [10], e) greening P2P protocols i.e. Green BitTorrent [11], f) to change the network architecture for energy-efficient content dissemination e.g. Content Centric Networking (CCN) [12]. Our work is related to the above cited works. Main inspiration is taken from the concept to divert the load to the fewer devices to reduce the energy consumption.
182
3 3.1
S.U. Islam et al.
Surrogate Servers’ Utilization and Energy Surrogate Servers’ Utilization
In a CDN, when a client sends a request for some particular contents, the request is forwarded to a surrogate server according to the redirection policy. When a surrogate server s1 receives a request for an object from client c1 . s1 locks a resource. It checks for the demanded object in its cache. If s1 has the requested object in the cache, it sends the contents to the client c1 and unlocks the resource. In other case, if s1 doesn’t have the requested contents in its cache, it can get the object from another surrogate server s2 or from origin server (depending upon the redirection policy). At the reception of the requested object, surrogate server s1 stores the object in its cache and sends it to the client c1 . We first propose a simple utilization model based on computing the connections duration that reflects the usage of the server over the time. 3.2
Utilization Model
Our utilization model for surrogate servers is composed of three main parts: a) Dark areas b) Maximum number of connections c) Total execution time Dark Areas. As shown in Figure 1, surrogate server s1 gets three locks (connections) l1 , l2 and l3 because of requests for some contents from the clients at time t1 , t2 and t3 respectively. Then at time t4 , t5 and t6 , server s1 gets unlocks u1 , u2 and u3 respectively and then it doesn’t have any lock until it gets a lock at t7 and this lock is unlocked at t8 . So as shown in the Figure 1, DA1 (Dark Area One) can be calculated as DA1 = (t2 −t1 )1+(t3 −t2 )2+(t4 −t3 )3+(t5 −t4 )2+(t6 −t5 )1 and the DA2 can be calculated as DA2 = (t8 − t7 )1. Finally, the surrogate servers’ utilization can be written as follows in the equation form, U si =
Σj DAj LockM axi × T
(1)
Where U si is the utilization of the surrogate server si , DAj is the dark area j and LockM axi are the maximum number of locks server si can have at the same time and T the total execution time. From this utilization model one could derive an energy consumption model linking the utilization to the consumed energy. 3.3
Energy-Aware CDNs Redirection
In this context, the purpose is to identify the following research question and to introduce the means of exploring possible solutions. How a CDN can redirect the users’ requests for content to its surrogate servers in such way that the energy consumption is minimized while trying to maintain an acceptable Quality of Service (QoS)? In order to answer this question, a set of discrete milestones have been achieved, starting from theoretical definitions leading to actual implementations.
Utilization-Aware Redirection Policy in CDN
183
Fig. 1. Surrogate server’s utilization
The traditional approach is to shut down the under-utilized surrogate servers in order to reduce the energy consumption. The logic behind this statement is that not all surrogate servers are usually necessary in normal traffic conditions. Therefore we can approach the problem in a manner that causes purposely underutilization in surrogate servers. When some surrogate servers are underutilized they can be switched-off completely or their processor frequency can be adjusted accordingly. This leads to the need of defining a tunable mechanism for causing such an under-utilization. Proposal of Client Redirection Policy. The following client redirection policy has been defined. We consider the Zipfian distribution with the parameter z ∈ {0, .., 1}. For the value 0 we get the uniform distribution and for the value 1 we get an exponential distribution where only a small percentage gathers the majority of the distribution. Then, the client redirection algorithm works like this a) sort the surrogate servers by their current utilization, b) set the parameter z, and c) pick a random surrogate server according to a probability drawn from the respective Zipfian distribution with slope parameter z. The obvious advantages of the proposed method are the generation of under-utilized servers and the ability to smoothly balance the energy consumption vs. the surrogate servers availability.
4
Simulation Testbed and Results
We used CDNsim [3] as a simulation environment that simulates a main CDN infrastructure and is implemented in the C++ programming language. It is based on the OMNeT++ library which provides a discrete event simulation environment. All CDN networking issues, like surrogate server selection, propagation, queuing, bottle-necks and processing delays are computed dynamically via
184
S.U. Islam et al.
CDNsim, which provides a detailed implementation of the TCP/IP protocol, implementing packet switching, packet retransmission upon misses, freshness, etc. One of the central features of CDNsim is the ability to add new client redirection policies which is fitting in our case. In this case, we consider the 100 geographically distributed homogenous CDN surrogate servers where each server is capable of handling 500 connections simultaneously. We used a real Internet topology of AS-level, having 3037 routers, that consists of routing data collected from 7 BGP peers dispersed at different locations. A synthetic but realistic website having 50000 objects of 1GB total size, is generated. A generator is used to generate requests stream that shows the access patterns close to realistic ones. Table 1 shows the summary of the parameters used in two sets of experiments. Table 1. Summary of simulations parameters Parameter Experiment 1 Experiment 2 Website 50000 objects, size 1GB 50000 objects, size 1GB Number of requests 1000000 1000000 Mean interval time of requests 0.01sec 0.01sec Distribution of the interval time exponential exponential Link speed 6Mbps 6Mbps Network topology backbone type AS, 3037 routers type AS, 3037 routers Number of surrogate servers 100 100 Number of client groups 100 100 Number of contetn providers 1 1 Cache size percentage of the website’s size 40% 40% Load-unbalancing paramter z value 0, 1 0, 0.25, 0.50, 0.75, 1
4.1
Surrogate Servers Utilization vs. Load-Unbalancing
Discussion. For simulation setup, see experiment 1 in Table 1. Figure 2 and 3 describe the relation between the load-unbalancing parameter z (see Section 3.3) and the utilization of the surrogate servers. The x-axis presents the surrogate servers from 1 to 100 and axis y shows their average utilization. The value 0 of the load-unbalancing parameter z shows the uniform distribution and the requests are sent to the servers randomly as shown in Figure 2. It shows no peaks and most of the utilization values almost reside in the same region (about 4 − 10% utilization). Figure 3 shows the extreme of this pattern as it has the maximum value of the load-unbalancing parameter z, where only a small number of surrogate servers get most of the requests as shown the high peaks in the start. The surrogate servers with more load have the more probability to get the requests and they become the bottle necks. It is noticed that with the increase in the parameter z value there is an increase in the utilization of a small percentage of the surrogate servers and decrease in the utilization of the rest ones. Our purpose is to get the under-utilized servers that gives a way to massive energy savings: Figure 3 shows that 80% of the surrogate servers have less than 5% utilization and can be considered to be powered-off, after serving the present
Utilization-Aware Redirection Policy in CDN
185
Fig. 2. Surrogate servers utilization vs. Load-unbalancing parameter z = 0
Fig. 3. Surrogate servers utilization vs. Load-unbalancing parameter z = 1
requests and the frequency of the processors of the other 20% servers (which have the utilization from 5% and 90%) can be adjusted according to the load. 4.2
Load-Unbalancing vs. Mean Response Time
Discussion. For dataset see Table 1, Experiment 2. Figure 4 shows the relation between mean response time and the load-unbalancing parameter z. It shows how the change in load-unbalancing parameter z value affects the time for the clients to get their requested contents. Axis x presents the different values of load-unbalancing parameter z from 0 to 1, with a step of 0.25. The y-axis
186
S.U. Islam et al.
Fig. 4. Load-unbalancing parameter z vs. Mean response time
shows the mean response time values. Not surprisingly, it can be noticed in the Figure 4 that with the increase in the value of the load-unbalancing parameter z, the mean response time is increased. For the values of z from 0 to 0.25, the difference is very small but as the z value increases mean response time also increases. So by saving energy to make the surrogate servers underutilized we have a cost of increase in response time. Knowing which level of satisfaction or degradation the user accepts would guide us towards an acceptable value of the load-unbalancing parameter z.
5
Conclusion and Future Work
This paper has presented that there is a significant potential to save energy in Content Distribution Networks. Surrogate servers’ utilization can be used as a parameter to cope with the energy savings opportunities in CDNs. We show that energy savings can be achieved by diverting the load to fewer surrogate servers with a small penalty of performance in increased response time. Our next step is to enable the underutilized surrogate servers to be switchedoff dynamically and to adapt the frequency of processors of the active surrogate servers according to the load. Also we will propose and implement an energy consumption model in the context of Content Delivery Networks.
References 1. Jimeno, M., Christensen, K., Nordman, B.: A Network Connection Proxy to Enable Hosts to Sleep and Save Energy. In: IEEE International Performance, Computing and Communications Conference, Austin, Texas, pp. 101–110 (2008)
Utilization-Aware Redirection Policy in CDN
187
2. Vasic, N., Kostic, D.: Energy-aware traffic engineering. In: Proceedings of the 1st International Conference on Energy-Efficient Computing and Networking, pp. 169– 178 (2010) 3. Stamos, K., Pallis, G., Vakali, A., Katsaros, D., Sidiropoulos, A., Manolopoulos, Y.: CDNsim: A Simulation Tool for Content Distribution Networks. ACM Transactions on Modeling and Computer Simulation 20, 10:1–10:40 (2010) 4. Pallis, G., Vakali, A.: Insight and perspectives for content delivery networks. Communications of the ACM 49, 101–106 (2006) 5. Annapureddy, S., Freedman, M.J., Mazires, D.: Shark: Scaling File Servers via Cooperative Caching. In: Proceedings of the 2nd USENIX/ACM Symposium on Networked Systems Design and Implementation (NSDI), pp. 129–142. IEEE, Los Alamitos (2005) 6. Vakali, A., Pallis, G.: Content Delivery Networks: Status and Trends. IEEE Internet Computing 7, 68–74 (2003) 7. Yu, H., Vahdat, A.: Minimal replication cost for availability. In: Proceedings of the twenty-first annual symposium on Principles of distributed computing, Monterey, California, pp. 98–107 (2002) 8. Anand, H., Reardon, C., Subramaniyan, R., George, A.D.: Ethernet Adaptive Link Rate (ALR): Analysis of a MAC Handshake Protocol. In: Proceedings of the 31st IEEE Conference on Local Computer Networks, Tampa, FL, pp. 533–534 (2006) 9. Gupta, M., Singh, S.: Greening of the Internet. In: Proceedings of the 2003 conference on Applications, technologies, architectures, and protocols for computer communications, Karlsruhe, pp. 19–26 (2003) 10. Zhai, B., Blaauw, D., Sylvester, D., Flautner, K.: Theoretical and practical limits of dynamic voltage scaling. In: Proceedings of the 41st annual Design Automation Conference, San Diego, CA, pp. 868–873 (2004) 11. Blackburn, J., Christensen, K.: A Simulation Study of a New Green BitTorrent. In: Proceedings of the First International Workshop on Green Communications, Dresden, pp. 1–6 (2009) 12. Lee, U., Rimac, I., Hilt, V.: Greening the internet with content-centric networking. In: Proceedings of the 1st International Conference on Energy-Efficient Computing and Networking, Passau, pp. 179–182 (2010)
Author Index
Abdelkader, Tamer 26 Adacher, Ludovica 41 Allison, David S. 64 Alsabaan, Maazen 26 Altamimi, Majid 79 Ardito, Luca 110 Arvanitidis, Alexandros 102 Auweter, Axel 18 Barthels, Andreas Baumgarten, Uwe Bode, Arndt 18 Brehm, Matthias
87 87 18
Cappiello, Cinzia 165 Capretz, Miriam A.M. 64 Da Costa, Georges
10
Flamini, Marta 41 Fr¨ oschl, Joachim 87 F¨ urlinger, Karl 1 Graf, Mario
56
Leymann, Frank
Meth, Kalman 165 Michel, Hans-Ulrich 87 Morisio, Maurizio 110 Mura, Marcello 165 Naik, Kshirasagar 26, 79 Nayak, Amiya 26 Nguyen, Thanh Binh 124 Nowak, Alexander 150 Pernici, Barbara 165 Pierson, Jean-Marc 10, 180 Procaccianti, Giuseppe 110 Ramezani, Maryam Ruf, Florian 87
Kat, Ronen 165 Khalifa, Tarek 26 Klausecker, Christof 1 Kranzlm¨ uller, Dieter 1, 18 Krishnaswamy, Shonali 136
56
Sami, Mariagiovanna 165 Schoepp, Wolfgang 124 Schumm, David 150 Stamos, Konstantinos 180 Stavropoulos, Thanos G. 102 ul Islam, Saif
Haghighi, Pari Delir 136 Henis, Ealan 165 Hinostroza, Alicia 165 Huber, Herbert 18
150
180
Vakali, Athena 180 Vetro’, Antonio 110 Vlahavas, Ioannis 102 Vogt, Harald 56 Vrakas, Dimitris 102 Wagner, Fabian 124 Walla, Gregor 87 Wetzstein, Branimir 150