Massachusetts Institute of Technology
Program steering : improving adaptability and mode selection via dynamic analysis
Abstract
dc:description.abstractA 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 training programs to select more appropriate modes during new situations. The technique, called program steering, creates a new mode selector by learning and extrapolating from previously successful experiences. Such a strategy, which generalizes the knowledge that a programmer has built into the system, may select an appropriate mode even when the original programmer had not considered the scenario. We applied the technique on simulated fish programs from MIT's Embodied Intelligence class and on robot control programs written in a month-long programming competition. The experiments show that the technique is domain independent and that augmenting programs via program steering can have a substantial positive effect on their performance in new environments.
Degree
thesis:*- Department dc:contributor.department
- Massachusetts Institute of Technology. Dept. of Electrical Engineering and Computer Science.
- Grantor dc:publisher
- Massachusetts Institute of Technology
- Year dc:date.issued
- 2004
Author and committee
dc:creator, dc:contributor.*- Author dc:creator
-
- Lin, Lee Chuan
- Advisor dc:contributor.advisor
-
- Michael D. Ernst.
Subjects
dc:subject × 1Rights
dc:rights- Statement dc:rights
-
- M.I.T. theses are protected by copyright. They may be viewed from this source for any purpose, but reproduction or distribution in any format is prohibited without written permission. See provided URL for inquiries about permission.
- Licence dc:rights.uri
- Language dc:language.iso
- eng
Identifiers
dc:identifier.*- Handle dc:identifier.uri
- http://hdl.handle.net/1721.1/33144
- OAI identifier oai:identifier
- oai:dspace.mit.edu:1721.1/33144