Nov 10, 2006 - CS-213: Advanced Topics in Distributed Embedded Systems. UCLA ... CPSC 436a: Networked Embedded Systems and Sensor Networks.
Preparing Students for an Embedded Everywhere World Santosh Kumar, Lan Wang, and Qishi Wu {skumar4,lanwang,qishiwu}@memphis.edu Department of Computer Science University of Memphis November 10, 2006
Brief Project Description: This proposal seeks funding to create a computing infrastructure for educating students in the Wireless Sensor Network technology. Students will learn the new technology via new projects in five existing courses. These projects will provide the much needed hands-on experience, enabling a deeper understanding of the subject matters.
Endorsement letter from our department chairman and letters of support from three faculty members in different disciplines, who are keenly interested in using this new technology in their research, are attached.
Dr. Henry A. Kurtz, Dean, College of Arts and Sciences
Abstract This proposal seeks funding to create a computing infrastructure for educating students in the Wireless Sensor Network technology. Students will learn the new technology via course projects to be introduced in five existing courses (undergraduate and graduate level courses in networking and operating systems, and the undergraduate level course in programming languages). These projects will provide much needed hands-on experience to students in both our department and other departments (e.g. Earth Science, Biology, Sports Sciences), enabling an engaged learning experience for a deeper understanding of the subject matters. The wireless sensor network technology is enabling the realization of a wide range of futuristic applications ranging from precision agriculture to unattended battlefield surveillance. The students who become trained in this revolutionary technology will be better prepared to grab the exciting new job opportunities that are being created by this new technology. A majority of research universities in the US, and all over the world, have been training their students in this technology for a couple of years now, making our proposed project an urgently necessary one, if we are to stay competitive in this space. Wireless sensor networks are also revolutionizing research in multiple disciplines such as biological sciences, earth sciences, agriculture, medicine, etc., creating opportunities for new kinds of multidisciplinary research. By educating students in this new technology, we will make the University of Memphis campus better prepared to capitalize on these multidisciplinary initiatives, some of which are already in the discussion and proposal submission phase now in our campus.
1
Goals and Objectives
We propose to use Wireless Sensor Network (WSN) devices in class projects of five existing courses (making for a total of 80-90 students per year) to train our students in this revolutionary new computing technology and to enable a deeper understanding of the subject matter of these five courses by providing them hands-on experience. The intended outcomes of the project are as follows: 1. The students will be able to configure and use the WSN devices. Further, they will be able to develop protocols, algorithms, and applications on this platform, which will prepare them well for participating in this new wave in computing. 2. The students will gain a deeper understanding of the subject matter in the five courses. The software powering desktop and laptop computers are so big and complex that they elude a comprehensive understanding in a semester or two; the software powering WSN devices, on the other hand, are small and simple enough to allow a comprehensive understanding in a limited time frame. 3. The students will be able to adapt their programming philosophy to a new paradigm that represents a significant departure from that of traditional desktop computing; the resources available to a program (such as processing power, memory, storage, and network capacity) change from being abundant to severely scarce. This scarcity will force students to become a more careful and disciplined programmer. 4. A large base of students will become skilled to participate in multi-disciplinary campus wide and multi-university projects involving the use of WSN technology to further the research in disciplines outside of Computer Science. 5. A template will emerge that can be used to speed up the adoption of this technology in several other Computer Science courses. Our experience with these course projects will also provide 2
guidance in the design of multidisciplinary course projects, as we go forward in extending our training initiative to multiple disciplines.
2 2.1
Project Description Potential of the Wireless Sensor Network Technology
Wireless Sensor Networks (WSN) is a revolutionary new technology that has a potential to impact almost all aspects of human life in the near future. Harvard Business Review touts it as one of the top 20 breakthrough ideas for 2006 (See ”The HBR List — Breakthrough Ideas for 2006” pp. 35-67, Feb 2006). Earlier, in 1999 itself, Business Week included it in its top 21 ideas for the 21st century. Scientific American listed it in its top 50 winner technologies in its December 2003 issue. Articles have appeared in the Nature magazine [1], in Scientific American [2], and in other discipline journals such as Earth Sciences Review [3] informing the scientists in other disciplines about the immense potential that this technology possesses in helping them revolutionize their areas of research. The WSN technology not only enables a multitude of exciting new applications, it also promises to revolutionize research in several other disciplines such as earth sciences, biology, agriculture, geology, botany, environmental sciences, civil engineering, to name a few, by allowing real-time access to previously unavailable data at a granularity previously unimaginable. A recent article by Declan Butler in a 2006 issue of the Nature magazine reported [1]: What are you doing in the lab? Why aren’t you out working in the field? These are not the sorts of question you usually put to your computer. But they should be, In their current, mostly desktop, incarnation, computers used for science usually come into their own quite late into the process of inquiry. Questions are asked, the data that might answer them identified, that data gathered - and only then does the computer start to play a role. In the future, this set up could be reversed. Computers could go from being back-office number-crunchers to field operatives. Twenty-four hours a day, year-in, year-out, they could measure every conceivable variable of an ecosystem or a human body, at whatever scale might be appropriate, from the nanometric to the continental. As alluded to by the above quote, computers are now no longer confined by the input provided by a human user and output produced on the screen. The computers now have more senses than a human being — they can smell, they can detect changes in the level of nuclear radiation, they can detect movements of an intruder, they can detect changes in the soil moisture level, they can detect an increase in the pollution level in rivers and oceans, they can monitor the habitats of endangered species, they can monitor the structure integrity of buildings, and numerous others. Not only that they can detect or monitor their surroundings, they can make all the measured data of detected events available to a user in real time as opposed to monthly or yearly.
2.2
What Is This Exciting New Technology?
A Wireless Sensor Network (WSN) is a network formed by tiny, self-contained, battery-powered computers with radio links that have an ability to sense their surroundings for events of interest, and ability to store and process the sensed data. A sensor node can wirelessly communicate with its neighboring sensors to collaborate, and to propagate its decisions to a central base station. How tiny are these wireless sensor nodes? Today, they are little bigger than a quarter dollar (see Figure 1). They are expected to reduce to the size of a dust particle in future. For this reason, 3
sometimes, these wireless sensor nodes are referred to as ”smart dust” in the popular press. These wireless sensor nodes are not only expected to shrink in size but in price as well. Today, they cost $100 to $200 a piece. Over time, their price is expected to drop to less than a dollar. It is envisioned that several thousands (even millions) of these tiny computers will be deployed at a time.
(a)
(b)
Figure 1: (a) A wireless sensor platform called Mica2dot compared to the size of a quarter. (b) A wireless sensor node deployed in a crop field.
2.3
An Example Application of Wireless Sensor Network
We motivate the capability of a WSN by considering one of several applications: Imagine an aircraft (or a fleet of them) carrying several thousand of these wireless sensor nodes. These aircrafts then fly over the US-Mexico border sprinkling these sensor nodes as they fly. These sensor nodes, once they land on the ground, start looking for other similar devices in their vicinity. They all form a big network using which they can all communicate with each other. These devices monitor the border for any intrusion activity. As soon as they detect an intrusion, they will confirm that this event has indeed happened by communicating with neighboring devices. Once, confirmed, a notification of this event together with the location of intrusion will be conveyed to a remote command center which can prepare for a retaliatory action. This is not a sci-fi fiction, but a reality today. One of the PIs (Dr. Santosh Kumar) was involved in demonstrating this capability to the US Military, which is considering a real-life deployment. There are several military and non-military applications of this technology ranging from quick pinpointing of the location of a sniper, detection of intruders, and battlefield surveillance to precision agriculture, real-time monitoring of water quality, monitoring of plant equipment to predict an impending failure (by monitoring the vibration), and realization of smart structures (that dynamically adjust to changing stress and vibration to tolerate moderate earthquakes and other disturbances).
2.4
An Urgent and Emerging Need
As this revolutionary technology matures, we need an army of Computer Science students and students in other disciplines who can develop applications on this platform. This new technology represents a paradigm shift from the traditional desktop computer environment. For example, the focus of a wireless sensor device is event detection or data collection as opposed to 4
responding to human entered inputs through a keyboard. Wireless sensor nodes will be deployed outdoors (in agricultural fields, over tress, in volcanoes, under oceans, in battlefields, etc.), where they remain unattended for months or years, in contrast to the traditional computers that are regularly attended to by a human operator. Consequently, there is almost no facility to reboot these devices. A wireless sensor node deployed in the field may be gone for ever if its program crashes, or if it stamped upon by a wild animal, or if wind blows it away, etc. Also, the amount of resources available to a wireless sensor node is several orders of magnitude lower than that of a desktop computer - main memory is 4 kB which is 125,000 times lower than that available on a typical laptop, the non-volatile storage is 10,000 times lower, the processor is 500 times slower, the communication link is 50 times slower, and so on. Most importantly, a wireless sensor node deployed outdoors has no access to wall power. It runs on batteries. Once the battery is exhausted, the device fails, never to be recovered again. All of these constraints call for a paradigm shift in the way Computer Science students have traditionally been trained to think. Therefore, we need to train our students to become accustomed to this new paradigm in computing. It is becoming a matter of urgent concern to train our students in this new technology. Students are the new generation and the full potential of this new technology will not be realized unless they become skilled in it. Several universities around the world have already been training their students in this technology for a couple of years now. See Appendix B for a sample of courses offered at other universities around the world in this technology. In fact, there is even a Masters degree in a university in the United Kingdom specializing in the wireless sensor network technology. Unless we respond quickly, our students will be left behind in participating in this new phase of computing.
2.5
Our Proposal: Introducing New Projects in Existing Courses
As is known in the theory of teaching and learning, different students learn differently - some learn by listening, some learn by talking, some learn by reading, some learn by writing, and some learn by doing. Since WSN equipment are not as expensive and most of the software needed to use these are open-source (i.e. available freely over the web), WSN makes for a very effective and affordable infrastructure to allow our students to learn by doing. Since the software for traditional desktop environment are so complex (and expensive), it is almost impossible for our students to gain a comprehensive understanding of them in one semester, or even in two. Think of using Windows XP Operating system, or for that matter even Linux in a course on Operating Systems. These operating systems are too big and too complex to make for a learning and teaching tool. Given the increasing complexity and sometimes inaccessibility of equipment (such as routers and switches) and software, students and instructors have to use simulation. In fact, simulation is also quite complex and becoming even more complex with time. Using WSN equipment and associated software will make for a much simpler environment for student projects where it may be possible to gain a comprehensive understanding of the subject matter by playing with these devices. Therefore, we propose to introduce new projects based on the WSN technology in five of our existing courses — undergraduate and graduate level courses in Computer Networks and Operating systems, and Programming Languages. We describe the specific details of one project for the Operating Systems course, and brief descriptions of a couple of projects in the Networking and Programming Language courses. We will design several other projects and work out their specific details before the Spring semester begins. We subscribe to the philosophy that offering a choice to students in the project selection will make for a more enjoyable learning experience because students 5
will feel a sense control over their assignments. We understand that designing more projects than what is absolutely necessary will require extra effort on our part, but that extra effort will be worth if it enhances the learning of our students. Since the details of projects are technical in nature, we have put them in Appendix A. Our Innovation: Please note that our approach of using WSN in existing regular courses is a departure from the approach followed at most other universities, where one or a couple of courses are devoted entirely to the WSN. By this way, we will achieve two objectives — training our students in the WSN technology, and providing them with hands on experience in existing courses to gain a deeper understanding of the subject matters. An added benefit of our approach is that it reduces the risk of failure and increases the chances of success of our effort, as compared to designing a new course, since designing a new course from scratch takes significant effort and takes much longer to attract a sizeable number of students. Consequently, our approach will impact the learning of a much larger student population in a significantly shorter time frame as opposed to designing a new course. To the best of our knowledge, University of Memphis will be the first university in the world, where WSN will be introduced in five regular courses. It will be interesting to see the impact of our approach on our students. If successful, we will extend the use of WSN technology in several other courses such as Computer Architecture, Artificial Intelligence, Computer Security, and courses in other disciplines. Impact on Teaching: Using WSN equipment will allow the demonstration of key concepts right in the class when they are being discussed without having to take students to a lab. Wireless sensor nodes are highly portable, since they are meant to be deployed in unattended outdoor environments. To demonstrate the concept of, say secure message exchange, each student will be handed one wireless sensor node in class. Some nodes will be loaded with malicious programs who will try to attack communication among other nodes. By showing that some techniques of secure message exchange were able to withstand the attack while others did not will act as an engaging demonstration of the effectiveness of secure message exchange protocols. Many such demonstrations can be planned and used to make for a more effective and engaging teaching and learning.
2.6
Preparing Our Students for an Embedded Everywhere World
Wireless sensor network make it possible to realize an embedded everywhere world, where sensors will pervade most aspects of human life. These tiny computers will not ask human users for their inputs or participation. Rather, they will perceive our needs using various sensors, and then adjust our surroundings to suit our moods and preferences. This entire experience is sometimes referred to as pervasive computing or invisible computing, when the computers will fade from being in the background to being in the background. Some of these developments are already happening now, e.g. automatic turning on and off of lights. The key enabling technology for such an invisible computing world is wireless sensor networks since it allows computers to sense the environment and reach accordingly. This is high time to train our students so that they can not only participate in the development of the embedded everywhere world but play an active role in the realization of this vision. Our project represents a first step in this direction.
6
2.7
A New Revolution in Multidisciplinary Research at the University of Memphis
Wireless sensor networks open up new opportunities for multi-disciplinary and trans-disciplinary research. Such collaborations have already been taking place in several other universities. This is time that we capitalize on this great opportunity at the University of Memphis. We are currently pursuing several trans-disciplinary projects that are centered on the wireless sensor networks technology. One such effort (led by one of us) is turning into a transdisciplinary proposal to National Institute of Health (NIH). The collaborators of this project Dr. Satish Kedia (a faculty member in Medical Anthropology who directs the Institute for Substance Abuse Treatment Evaluation), Dr. Kenneth Ward (a faculty member in Health and Sports Sciences who directs the Center for Community Health), and Dr. Mustafa Al’Absi (a faculty member in Behavioral Sciences at the University of Minnesota, who holds additional appointments in the departments of Physiology/Pharmacology, Family Medicine, and Neuroscience) are all very excited with the potential of this technology. Our current proposal targeted to NIH is the first one in a series of projects that this team plans to propose around the WSN technology. Dr. Lensyl Urbano (a faculty member in Earth Sciences) is also very excited with the potential of the WSN technology in his research. He has already started planning how to leverage this technology is several of his projects. He is working with one of us to explore external funding opportunities for incorporating this technology in his research. We provide three letters of support in Appendix C from faculty members in three different disciplines (Dr. Satish Kedia, Department of Medical Anthropology, Dr. Yuhua Li, Department of Health and Sports Sciences, and Dr. Lensyl Urbano, Department of Earth Sciences) as a representative of the wide interest in the wireless sensor network technology in our campus. Having students who are already trained in the wireless sensor network technology will be highly useful in winning the above mentioned grants and in executing these and other transdisciplinary projects. Once our SIST project is successfully executed, we anticipate several more trans-disciplinary projects to emerge from this initiative of ours, providing a new thrust to multidisciplinary collaborative research in our campus.
3 3.1
Project Management Plan Project Timeline
We plan to have the projects details ready for the four courses that will be offered in the Spring 2007 semester. We will purchase all the necessary equipment before the start of Spring 2007 semester. We will collect the statistics for our project assessment during the Spring semester and seek student feedback on the projects. Accordingly, we will refine our projects for the Fall 2007 semester. We will again collect assessment data and student feedback in the Fall 2007 semester. In December 2007, we will summarize our findings and make our report available to ALC as well as to the entire university. We will also post our experiences and learning gained from this project over the web.
3.2
Personnel
This project will be executed by three faculty members, all from the Department of Computer Science. All the three faculty members have had prior experience with the wireless sensor network technology. Two of them joined the department in Fall 2006. Also, these three faculty members will teach the five courses in which this proposal proposes to introduce new projects. 7
Below, we provide their bio sketch and a brief overview of their experiences with the Wireless Sensor Network technology. • Dr. Santosh Kumar, is an Assistant Professor of Computer Science since August 2006, where he leads the WiSe MANet Labs. His research is targeted at establishing a strong foundation for Wireless Sensor Networks, currently focusing on the issues of sensor deployment and network maintenance. His research has appeared in extremely selective international conferences such as ACM MobiHoc and ACM MobiCom. He received his Ph.D. in Computer Science and Engineering from the Ohio State University in 2006. At Ohio State, he was awarded the SBC Presidential Fellowship, a highly-prestigious award that recognizes the highest standards of academic accomplishment in the Graduate Program of the Ohio State University. In years 2004-05, Santosh was involved in the ExScal project at the Ohio State University. He was responsible for the deployment of more than 1,000 wireless sensor nodes on the ground to demonstrate that a large scale wireless sensor network is feasible and that a wireless sensor network can be used for the detection, classification, and tracking of intruders crossing an international border. He was also responsible for ensuring that the wireless sensor network, when deployed on the ground, does last for the desired period of time running on batteries. • Dr. Lan Wang is an assistant professor of Computer Science at the University of Memphis. She received her Ph.D. in Computer Science from the University of California, Los Angeles in 2004. During her graduate study, Dr. Lan Wang worked on large-scale simulation of adhoc wireless networks, TCP and multimedia application performance in multi-hop wireless networks. She has been investigating various energy saving mechanisms in wireless sensor networks since 2004. She is currently leading a wireless medical sensor network project for monitoring of patients (funded by UofM’s faculty research grant). • Dr. Qishi Wu is an Assistant Professor of Computer Science since August 2006. He received his Ph.D. degree in computer science from Louisiana State University in 2003. Before joining UoM in August 2006, he had worked as a Research Associate and Research Fellow in the Computer Science and Mathematics Division at Oak Ridge National Laboratory (ORNL) from 2001 to 2006, participating in a number of DOE-, DARPA-, NSF- and LDRD-funded projects. His main research interests include computer networking, large-scale computational science, scientific visualization, distributed high-performance computing, distributed sensor networks, and algorithms. He is closely collaborating with Oak Ridge National Laboratory on the Sensor-Cyber Network project. This project is chartered to build a comprehensive incident management system for the near-real-time detection, identification, and assessment of chemical, biological, radiological, nuclear, and explosive (CBRNE) threats.
3.3
Termination Date
Funding will be spent by the end of Spring 2007, but the project is expected to terminate at the end of Fall 2007. However, we plan to purchase most the equipment before the start of the Spring 2007 semester.
8
3.4
Additional External Resources
We will need two kinds of external resources for the successful completion of our project — lab space where the wireless sensor devices will be placed, and a Graduate Assistant who can check in/out these devices to students. Our department Chairman (Dr. Sajjan Shiva) has kindly agreed to provide both of these resources. Please see his letter of support provided in Appendix C.
3.5
Risks & Concerns
We perceive one concern in our proposed effort. Very few students have worked with wireless sensor network technology in the past. Therefore, there is dearth of expertise in this technology among students. Consequently, the time taken for students to complete the projects is expected to take longer in the Spring semester than usual. In the Fall semester, though, there will be a batch of students who will already be familiar with this technology and so will be available to help new students to come up to speed in class projects. Over time, this concern will only diminish in nature as more and more students gain expertise in this technology. Another source of help can be used to address this concern. There are online forums and mailing list where students can seek assistance if needed. People from all over the world respond to these queries. Finally, a database of common difficulties that newcomers encounter in this technology and their solutions is maintained on the Internet. With these resources available to all students, we believe there is minimal risk in executing our proposal.
4
Evaluation
As mentioned in Section 1, we expect the following outcomes for our students from this initiative. With each outcome, we list the assessment methods we will use to assess the degree of their fulfilment. 1. Intended Outcome: The students will be able to configure and use the WSN devices. Further, they will be able to develop protocols, algorithms, and applications on this platform, which will prepare them well for participating in this new wave in computing. Assessment: We will use the number of course projects completed as an indicator of this outcome. For graduate level courses, we will also measure the number of published papers, Master’s projects, Master’s thesis and PhD dissertations directly or indirectly related to the WSN technology. 2. Intended Outcome: The students will gain a deeper understanding of the subject matter in the five courses. Assessment: We will use two distinct data as indicators for this outcome. The first is the comparison of median score of students in each course before and after introducing the new projects. Changes in the median score will indicate whether students are gaining a deeper understanding of the course. Since test scores are not perfect indicators of students’ understanding, we will use another complementary information. We will seek student feedback on whether the new projects helped them enhance their learning. Both positive and negative feedback will be sought; students will be asked to provide a couple of examples in support of their decisions/claims. If we get a large enrollment, we may also divide a class into two sections. One section will have the new projects while the other section will not. To control as many factors as possible, the 9
same instructor will be teaching both sections. Students will be evaluated at the beginning of the course of the level of their preparation (since we cannot do random assignment). By comparing the performance of the two sections at the end of the semester (adjusted according to the student’s background), we will know whether the course projects are effective or not in enhancing student learning. 3. Intended Outcome: The students will be able to adapt their programming philosophy to a new paradigm that represents a significant departure from that of traditional desktop computing; the resources available to a program (such as processing power, memory, storage, and network capacity) change from being abundant to severely scarce. This scarcity will force students to become a more careful and disciplined programmer. assessment: we will seek feedback from the instructor who teaches related courses, especially the Capstone Project course, on the performance of students who completed the course projects in one of the five modified courses and those who did not. In the Capstone Project course, students work in teams to develop a moderate sized commercial class software. Here also, we will explore the possibility of seeking student feedback. 4. Intended Outcome: A large base of students will become skilled to participate in multidisciplinary campus wide and multi-university projects involving the use of WSN technology to further the research in disciplines outside of Computer Science. Assessment: We will use two kinds of data as an indicator of this outcome. We will measure the number of students outside of Computer Science who enroll and satisfactorily complete at least one of the five modified courses. We will also seek feedback from the faculty members involved in multi-disciplinary projects that involve the use of wireless sensor network technology and those that use students trained via our course projects. We will also use their feedback to refine our course projects to better prepare our students to do well on multi-disciplinary projects.
4.1
Assessment of Project Implementation
Implementing our project will involve several tasks. We list the assessment methods we will use to measure the execution of each of these tasks. 1. Task: We should purchase the right equipment. Assessment: If our students are able to successfully carry out course projects without getting stuck due to the unavailability of a critical device, we will consider this task to have been carried out successfully. So, the percentage of incomplete projects due to equipment problems (over the total number of incomplete projects) will be an indicator for this task. 2. Task: We should purchase the right quantity and right mix of equipment. Assessment: Same as the previous task. Additionally, if some teams complain that they could not make progress due to the unavailability of devices, we will know that we underestimated our requirements. 3. Task: The projects we plan for our courses should be of the appropriate difficulty level. Assessment: We will use the percentage of incomplete projects due to high difficulty level and use student feedback to assess the successful completion of this task.
10
In summary, if students are able to complete their projects, their median total score in the course increases, they do well on multi-disciplinary projects, and if majority of them describe the projects as interesting and useful in their feedback, we will consider our project to have been implemented successfully.
5
Sustainability
If our project becomes successful, it will be extended to other courses in the department of Computer Science as well as in other departments. In such a case, we will require additional resources in terms of lab space, additional hardware, and manpower (for managing the lab). We plan to seek additional funding from ALC through its IEL program and from external funding agencies such as NSF under their About Undergraduate Education (DUE), Integrative Graduate Education and Research Traineeship (IGERT), and Computing Research Infrastructure (CRI) programs.
6
Budget
In one semester, four of the five courses will be offered. The total number of students in these courses are expected to be between 40 and 50. In order to allocate an average of 1 device per student, we plan to purchase 41 motes (25 TelosB motes and 16 TMote Invent motes). The TelosB motes will be purchased from Crossbow Technology and the TMote Kits from Moteiv Corporation. One TMote Invent kit consists of 8 motes. We plan to purchase two kits for a total of 16 TMote Invent motes. We are buying 16 of TMote Invent motes because they have additional sensors to detect vibration and sound. The TelosB mote can detect only temperature and humidity. TelosB motes will be used for basic experiments, and TMote Invent motes will be used for more advanced level projects. In some experiments both types of motes may be used together. We plan to purchase two low cost laptops. Laptops will be needed for programming the mote devices and for collecting sensor data from them. We plan to purchase only two in hoping that most students (or their teams) will have a laptop. We will have two laptops, just in case a team or a student does not have one. Desktop computers cannot be used in place of laptops because students may need to deploy the motes outdoors and collect data or program these in the field. We plan to use rechargeable batteries in these motes, whenever experiments will be conducted in the indoor or outdoor environment. We estimate that 100 rechargeable will be sufficient for all student experiments in both semesters. We will also purchase USB cables which are used to connect a mote to a laptop for programming or data collection purpose. The detailed budget appears in Table 1.
References [1] Butler, D. Everything, everywhere. Nature 440 (23 March 2006), 402–405. [2] Culler, D. E., and Mulder, H. Smart sensors to network the world. Scientific American 19, 4 (June 2004), 85–91. [3] Hart, J. K., and Martinez, K. Environmental sensor networks: A revolution in the earth system science? Earth Sciences Reviews 78 (July 2006), 177–191.
11
Item TelosB Mote with Sensors TMote Invent Kit Laptops Rechargeable AA batteries Battery Charger USB Cables for TelosB Motes USB Cables for TMote Invent Motes Shipping & Handling Supplies (e.g., boxes for storage) Grand Total
# Units 25 2 2 100 2 25 12
Unit Price $129.00 $1995.00 $1000.00 $1.50 $25.00 $10.00 $5.00
Total Item Price &3,225.00 $3990.00 $2000.00 $150.00 $50.00 $250.00 $60.00 $100.00 $175.00 $10,0000.00
Table 1: Budget Breakup for Our Project
7
Appendix A: A Sample of Planned Course Projects
We list some of the projects we have planned for existing courses. We will refine these projects and develop additional ones to offer a choice to students in picking projects. (Research in Education has shown that students learn better when they are offered a choice in assignments.)
7.1
An Operating System Project on CPU Scheduling Using TinyOS
Introduction: The objective of this project is to implement one of the CPU scheduling algorithms in the TinyOS environment. CPU scheduling, the allocation of CPU time to processes, is a fundamental operating-system function. Allocation scheme vary greatly from system to system. Although the CPU scheduling in the TinyOS project is not as complicated as that in a modern complex operating system, completing this project will allow you to get a good feel for how the CPU scheduling policy affects system performance. Related TinyOS Modules: In order to incorporate your CPU scheduling policy into TinyOS, you must modify and implement three basic procedures of the CPU module: 1. cpu init() sets up the initial environment for CPU scheduling; 2. insert ready() inserts a process into the ready-queue and changes the status of the process to ready. It also verifies the validity of the process. 3. dispatch() chooses a process in the read-queue and assigns it to the CPU. Scheduling Policy: In this project, you are required to implement a variation of the Multilevel Queue scheduling algorithm. The following are specific requirements of the project: 1. The ready-queue is partitioned into three separate queues, namely, the foreground, intermediate, and background queues. 2. All queues are scheduled by the Round-Robin scheduling algorithm. 3. When a new process arrives, it is put at the end of the foreground queue.
12
4. If a process in the foreground queue has been assigned to the CPU two times, and yet has not finished its execution, the process is re-allocated to the intermediate queue. If a process from the intermediate queue has not finished its execution after being assigned to CPU for four times, it is shifted to the background queue. Once in the background queue, a process remains there until it finishes executing. 5. Processes in the foreground queue always take priority over those in the intermediate and background queues. Processes in the intermediate queue always take priority over those in the background queue. In other words, processes in the intermediate queue are only run if the foreground queue is empty, while processes in the background queue are only run if both other queues are empty. Programming and Execution: Before beginning your work, read the TinyOS nesC programming manual carefully, and learn the relationships between different modules, variables, and data structures in the CPU scheduling module. After you finish programming, compile your module and link it into the rest of the modules to build a complete TinyOS system. Load the newly compiled TinyOS onto a sensor mote and test the CPU scheduling policy using different experimental parameters.
7.2
Projects for Networking Courses
In general, the hands-on experiments will help students gain a better understanding of how wireless networks work at each of the five protocol layers, i.e. physical, MAC (Medium Access Control), routing, transport and application. However, because the students in different courses are at different levels in their study, the experiments and projects should be designed based on their background. For example, COMP4310/6310 (Computer Networks and Wireless Mobile Computing), the second course in networking following a very brief introduction course, mainly serves senior undergraduate students and master students. The focus of this course is to understand existing protocols, so the experiments will emphasize the evaluation and comparison of the network protocols that students have learned in lectures. On the other hand, COMP7311/8311 (Advanced Computer Networks) is a graduate level course for both MS and PhD students, so the students should be given more freedom to experiment on their own. Below is more details on the type of experiments each course should offer. COMP4310/6310: Computer Networks and Wireless Mobile Computing: In the first half of this course, students learn general concepts that apply to both wired and wireless networks. In the second half of the course, students learn more wireless related concepts including wireless MAC protocols (e.g. IEEE 802.11 and Bluetooth), wireless ad hoc routing protocols (e.g. DSDV and AODV) and sensor network routing protocols. In the first seven weeks, there will be one or two lab sessions to teach students how to use the sensors and the related software. During the last seven weeks, each two lectures will be followed by one lab session. Students will form small teams of 2 to 3 people and each team will be assigned one protocol (either MAC or routing) to evaluate. Students will first give presentation of the protocol as well as their evaluation plan in one of the lectures. In each lab session, students will work in teams to evaluate one aspect of the protocol that they have chosen. If the protocol has been evaluated before, students can try to duplicate others’ results first. At the end of each lab session, each team needs to submit a lab report detailing what they have done and their observations. At the end of the semester, each team will submit a final report of their project. COMP7311/8311: Advanced Computer Networks: This course is offered at the MS and PhD level, so students should already have a good background in networking (if not, they should 13
take 6310 first). Students are expected to choose their own course project related to wireless sensor networking and they will form teams of 2 to 3 people to complete the project. At the beginning of the semester, there will be a few dedicated lab sessions in which students get familiar with the sensor hardware and software. Afterwards, students need to reserve their own lab slots after class to complete their project. Therefore, the lab should have at least one assistant who schedules reservations and monitors the equipments. Each team should have their own set of sensors to minimize the overhead of installing and uninstalling new software. We will plan several projects. One such project could be the following. They will be asked to pick an existing real-world application of a sensor network. For one major component of this system, they will be asked to present and implement an alternative means of accomplishing the same task. They will then be asked to evaluate the performance of their implementation compared to the existing one(s). Examples of projects might include implementing a new routing, data compression, or encryption algorithm. The teams will submit project proposal, progress report and final report. They also will need to do a short presentation each time after they submit a report. Successful projects may lead to conference publications.
7.3
Projects for the Programming Language Course
The programming domains currently discussed in a programming languages course are mainly focused on scientific applications, business applications, artificial intelligence, system programming, and web software. Embedded programming has come a long way in the last thirty years and are attracting more and more attention from both the research and industry communities due to the pervasive applications of embedded systems (see http://www.cs.washington.edu/research/chinook/links.html). Unlike a general-purpose computer, such as a personal computer, an embedded system is a special-purpose system in which a single microprocessor is completely encapsulated by the device and is dedicated to performing one or a few pre-defined tasks, usually with very specific requirements. Nowadays, embedded systems are almost everywhere in the modern life and they are adding functionalities to our everyday lives in various aspects. In a car, for example, an embedded system controlling the power train works together with other embedded systems controlling the brakes, the steering, and the suspension to respond smoothly to many rapidly changing inputs. Embedded systems can be regarded today as some of the most lively research and industrial targets. However, due to the lack of programming resources, we have not been able to offer an in-depth and hands-on education on real-time embedded system programming in our current programming languages course. The proposed sensor project will enable the project team members to start teaching and training students in this programming domain with increasing importance. Essentially, a sensor is an embedded system capable of performing three complementary tasks: sensing a physical phenomenon (temperature, image, vibration, sound, etc.), processing environment measurements, and transmitting data to a central processing element. Since TinyOS is written in the nesC programming language (a C dialect) as a set of cooperating tasks, students with a minimal knowledge on C/C++ or Java will be able to learn how to write interfaces and modules of an embedded system on the TinyOS development platform. Through carefully designed embedded programming projects using TinyOS, students will gain considerable hands-on experience on embedding programming, which certainly helps students progress toward successful employment in industrial settings that require this specialized skill.
14
8
Appendix B: A Sample of Courses in Wireless Sensor Networks Offered at Other Universities
We list a sample of courses that are offered at other universities to train students in the Wireless Sensor Network technology. A detailed description of the courses listed below can easily be found on the Internet using a search engine. We would like to point out that the list below is only a sample; a majority of doctoral research universities in the US already have a course in wireless sensor networks, several of them introduced in 2002-2003 timeframe. Also, research universities all over the world (in China, Japan, Korea, India, Europe, etc.) have courses in wireless sensor networks. University Stanford University Ohio State University Louisiana State University Harvard University USC USC USC UC Berkeley UC Berkeley UCLA UCLA Yale University Clemson University University of Washington, Seattle University of Virginia University of Iowa Purdue University University of Nebraska, Omaha University of Florida Southern Illinois University Virginia Tech Carnegie Mellon University UMASS Washington University, St. Louis LUMS, Pakistan Mid Sweden University Acadia University, Canada University of Oulu, Finland University of Bradford, UK
Course Number and Name CS 428: Information Processing in Sensor Networks CSE 788: Introduction to Wireless Sensor Networks CSC 4999: Programming Embedded Interfaces Wireless Communications and Sensor Networks CSCI 599: Multidimensional Databases CS 546: Intelligent Embedded Systems CS 694a: Networked Wireless and Sensor Systems CS 199: Sensor Network Systems CS 294-1: Deeply Embedded Network Systems CS-213: Advanced Topics in Distributed Embedded Systems EE 202A: Embedded and Real-Time Systems CPSC 436a: Networked Embedded Systems and Sensor Networks CPSC 881 001: Introduction to Sensor Networks CSE 466: Software for Embedded Systems Large Scale Deeply Embedded Networks ECE55:195: Introduction to Wireless Sensor Networks CS 590Z: Programming Sensor Networks CSCI 8620: Mobile Computing and Wireless Networks CEN 5531: Mobile Computing: Sensor Networks CS 441/591: Mobile and Wireless Computing ECE/CS 4570: Wireless Networks and Mobile Systems ECE 18748: Wireless Sensor Networks CMPSCI 791L: Sensor Networks CSE 521S: Wireless Sensor Networks CS 579: Wireless Sensor Networks Specialized Course on Wireless Sensor-Actuator Networks COMP 5113/4923: Wireless Sensor Networks Wireless Sensor Networks M.Sc. in Wireless Sensor Networks
Table 2: A Sample of Courses at Other Universities with Projects on Wireless Sensor Networks
15
9
Appendix C: Letters of Support
We provide four letters of support for our proposal. They are from the following faculty members. • Dr. Satish Kedia, Associate Professor, Medical Anthropology, and Director, Institute of Substance Abuse Treatment Evaluation • Dr. Yuhua Li, Associate Professor, Department of Health and Sports Sciences • Dr. Lensyl Urbano, Assistant Professor, Department of Earth Sciences • Dr. Sajjan Shiva, Professor and Chairman, Department of Computer Science We have discussed the wireless sensor network technology with several other faculty members around campus such as Dr. Kenneth Ward from Center for Community Health (CCH) and Dr. Stan Franklin from Institute for Intelligent Systems (IIS), who have shown a keen interest in using this new technology in their research. We are currently exploring suitable funding opportunities (both external and internal) to fund our collaborative projects.
16