| Improving the adaptability of multi-mode systems via program steering |
| Full text |
Pdf
(195 KB)
|
| Source
|
International Symposium on Software Testing and Analysis
archive
Proceedings of the 2004 ACM SIGSOFT international symposium on Software testing and analysis
table of contents
Boston, Massachusetts, USA
SESSION: Program analysis II
table of contents
Pages: 206 - 216
Year of Publication: 2004
ISBN:1-58113-820-2
Also published in ...
|
|
Authors
|
|
| Sponsors |
|
| Publisher |
|
| Bibliometrics |
Downloads (6 Weeks): 0, Downloads (12 Months): 17, Citation Count: 3
|
|
|
ABSTRACT
A multi-mode software system contains several distinct modes of operation and a controller for deciding when to switch between modes. Even when developers rigorously test a multi-mode system before deployment, they cannot foresee and test for every possible usage scenario. As a result, unexpected situations in which the program fails or underperforms (for example, by choosing a non-optimal mode) may arise. This research aims to mitigate such problems by creating a new mode selector that examines the current situation, then chooses a mode that has been successful in the past, in situations like the current one. The technique, called program steering, creates a new mode selector via machine learning from good behavior in testing or in successful operation. Such a strategy, which generalizes the knowledge that a programmer has built into the system, may select an appropriate mode even when the original controller cannot. We have performed experiments on robot control programs written in a month-long programming competition. Augmenting these programs via our program steering technique had a substantial positive effect on their performance in new environments.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
 |
1
|
|
 |
2
|
|
| |
3
|
Brad Calder , Peter Feller , Alan Eustace, Value profiling, Proceedings of the 30th annual ACM/IEEE international symposium on Microarchitecture, p.259-269, December 01-03, 1997, Research Triangle Park, North Carolina, United States
|
| |
4
|
B. Calder, P. Feller, and A. Eustace. Value profiling and optimization. Journal of Instruction Level Parallelism, 1, Mar. 1999. http://www.jilp.org/vol1/.
|
| |
5
|
|
| |
6
|
J. Chapin. Personal communication. CTO, Vanu Inc., 2002.
|
 |
7
|
|
 |
8
|
|
| |
9
|
|
 |
10
|
|
 |
11
|
|
| |
12
|
|
| |
13
|
L. Lin and M. D. Ernst. Improving reliability and adaptability via program steering. In ISSRE Supplementary, pages 313--314, Nov. 2003.
|
 |
14
|
|
 |
15
|
David W. Miller , Jinhua Guo , Eileen Kraemer , Yin Xiong, On-the-fly calculation and verification of consistent steering transactions, Proceedings of the 2001 ACM/IEEE conference on Supercomputing (CDROM), p.1-17, November 10-16, 2001, Denver, Colorado
[doi> 10.1145/582034.582044]
|
 |
16
|
K. Richter , D. Ziegenbein , R. Ernst , L. Thiele , J. Teich, Representation of function variants for embedded system optimization and synthesis, Proceedings of the 36th ACM/IEEE conference on Design automation, p.517-522, June 21-25, 1999, New Orleans, Louisiana, United States
[doi> 10.1145/309847.309990]
|
 |
17
|
|
| |
18
|
R. K. Weiler. Automatic upgrades: A hands-on process. Information Week, Mar. 2002.
|
CITED BY 3
|
|
|
|
|
Jinlin Yang , David Evans , Deepali Bhardwaj , Thirumalesh Bhat , Manuvir Das, Perracotta: mining temporal API rules from imperfect traces, Proceeding of the 28th international conference on Software engineering, May 20-28, 2006, Shanghai, China
|
|
|
Michael D. Ernst , Jeff H. Perkins , Philip J. Guo , Stephen McCamant , Carlos Pacheco , Matthew S. Tschantz , Chen Xiao, The Daikon system for dynamic detection of likely invariants, Science of Computer Programming, v.69 n.1-3, p.35-45, December, 2007
|
|