View
218
Download
0
Category
Tags:
Preview:
Citation preview
DARPA Site Visit, Feb 22nd 2012
Scalable RADAR
Jed CrandallStephanie Forrest
Melanie MosesWestley Weimer
DARPA Site Visit, Feb 22nd 2012
Clean Slate• Even with clean-slate designs, change is
inevitable– System requirements– New threats– New technologies and applications
• Focus on robust, adaptive, decentralized responses
• Take biology seriously
DARPA Site Visit, Feb 22nd 2012
Project Overview• Evolutionary program repair
– GenProg: Random variation, selection, inheritance
• Dynamic information flow tracking– Estimate similarity of program behavior on same
input• Simulate RADAR principles
– How does immune system avoid size constraints?
DARPA Site Visit, Feb 22nd 2012
Crosscutting Themes
• Distributed search– Simulations, robots– Distributing the program repair
task
• Measuring and using diversity– Mutational robustness and
proactive diversity– DIFT– Tradeoffs between optimization
and diversity
• Integration– DIFT and GenProg– GenProg on robots?– Other DARPA teams– Beyond DARPA
• Software engineering– Automatic detection of program
invariants– Repair quality---not DARPA
funded!
DARPA Site Visit, Feb 22nd 2012
What’s New?• GenProg repair benchmarks (LeGoues)• Distributed GA results (Schulte, Holtschulte)• DIFT refactoring (Espinoza)• Dynamic invariants (Nguyen)
– Nested array relations– Polynomial time algorithm for array invariants
• ScaleBOTs (Moses)• Mutational robustness
– In progress
DARPA Site Visit, Feb 22nd 2012
Biological Design Principles• Immune system response and times
are scale (size) invariant (Banerjee, dissertation)– Several models fit to (WNV) data
• Lymph nodes architecture + inflammatory signals (ABM and ODE models fit to data)– T-cell search times to scale sub-linearly
with body size • Argentine ants with multiple nests
(ABM)– Distributed foraging algorithm
implemented on 6 robots
Dynamic Invariant Generator (DIG)ThahnVu Nguyen (ICSE ‘12 – Distinguished Paper Award)
• Generate polynomial and array program invariants from execution traces automatically (not from templates)
• Complex invariants– Nonlinear relations among numerical variables, e.g. x = y3a + a, r <=
ya– Relations among multi-dim arrays and functions, e.g. A[i][ = 7B[i] +
8C[i+3] + 5, R[i] = A[B[2i]])
• Ideas/tools from several mathematical domains (e.g., theorem proving)
Recent Developments (submitted to TOSEM ’12)Polynomial Invariants: • Use geometric reasoning to represent different invariant forms (interval,
octagonal, polyhedral)• Prove several interesting properties guaranteed by DIG, but not by template-
based analyses (Daikon)– DIG never overapproximates the real invariants– With sufficient traces, can guarantee that the exact invariant is found
Array Invariants:• Support certain conditional invariants
– e.g. i=even => A[i] = B[i] + C[i]
• Polynomial time algorithm for finding nested array relations• Examples of real invs in AES generated by DIG1 rotWord R[i]=[W[1], W[2], W[3], W[0]]
2 block2State R[i][j] = T[4i + j]
3 subBytes R[i][j]= S[T[i][j]]
4 multWord R[i] = C[(L[A[i]] + L[B[i]]) % 255]
…
DARPA Site Visit, Feb 22nd 2012
Finances
DARPA Site Visit, Feb 22nd 2012
Recent Publications• E. Schulte, J. DiLorenzo, W. Weimer, S. Forrest “Automated repair of binary and assembly
programs for cooperating embedded devices” ASPLOS, to appear.• R. Buse, W. Weimer “Synthesizing API Usage Examples” ICSE 2012.• C. Le Goues, M. Dewey-Vogt, S. Forrest, and W. Weimer "A systematic study of automated
program repair: Fixing 55 out of 105 bugs for $8.00 each" ICSE 2012.• T. Nguyen, D. Kapur, W. Weimer, and S. Forrest ``Using Dynamic Analysis to Discover
Polynomial and Array Invariants" ICSE 2012. ACM SIGSOFT Distinguished Paper Award.• C. Le Goues, W. Weimer, S. Forrest “Representations and operators for Improving
Evolutionary Software Repair” GECCO 2012.Nominated for best paper.• J. Knockel and J. Crandall “ Protecting Free and Open Communications on the Internet
Against Man-in-the-Middle Attacks on Third-Party Software: We're FOCI’d” FOCI 2012 • N. Aase, J. Crandall, et al. “Whiskey, weed, and Wukan on the World Wide Web: On
measuring censors’ resources and motivations. FOCI 2012• D. Oliveira and J. Crandall. Holographic vulnerability studies: Vulnerabilities as fractures in
interpretation as information flows across abstraction boundaries. NSPW 201. (also presented at ACSAC 2012 NSPW experience panel).
DARPA Site Visit, Feb 22nd 2012
Recent Publications cont.• Hecker, J. P., K. Letendre, K. Stolleis, D. Washington and M. E. Moses. (2012).
"Formica ex Machina: Ant Swarm Foraging From Physical to Virtual and Back Again." Proceedings of the Eighth International Conference on Swarm Intelligence, Brussels in Lecture Notes in Computer Science: 7461.
• Moses, M. E., K. Letendre, T. P. Flanagan and J. P. Hecker. (2012) "In vivo, in silico, in machina}: Ants balance memory and communication to collectively exploit information." Proceedings of the 2012 European Conference on Complex Systems (in press, Lecture Notes in Computer Science as a non peer reviewed workshop paper).
• Holtschulte, N. J. and M. E. Moses. (2012) "Diversity and Resistance in a Model Network with Adaptive Software." Security Informatics 1:19, Biologically Inspired Approaches Special Issue.
• Moses, M. E. and S. Forrest. (2012) "Beyond Biology" in Metabolic Ecology: A Scaling Approach. Eds. R.M. Sibly, A. Kodric-Brown and J.H. Brown. Wiley-Blackwell. 293-301.
DARPA Site Visit, Feb 22nd 2012
Submitted Publications• C. Le Goues, S. Forrest, W. Weimer “Current challenges in automatic software
repair” Software Quality Journal, submitted.• T. Nguyen, D. Kapur, W. Weimer, S. Forrest “DIG: A dynamic invariant generator for
polynomial and array invariants” TOSEM, submitted.• E. Schulte, Z. Fry, E. Fast, W. Weimer, S. Forrest “Software mutational robustness”
GPEM, submitted.• D. Levin, S. Forrest, S. Banerjee, C. Clay, M. Mitchell, and F. Koster “Spatially explicit
model of the lymphocyte diaspora in influenza-infected lung quantifies constraints of chemokine directed migration PLoS Computational Biology, submitted.
• Letendre, K. and M. E. Moses. "Conflict and synergy in ant foraging strategies: Site fidelity and recruitment alone and in combination." submitted to GECCO 2013.
• Holtshulte, N and M. E. Moses "Should Every Man Be an Island? Island number and population size for popular benchmark functions." submitted to GECCO 2013.
DARPA Site Visit, Feb 22nd 2012
Other Publications(not directly supported by CRASH)
• P. Hooimeijer and W. Weimer “StrSolve: solving string constraints lazily” Autom. Softw. Eng. 19(4): 531-559 (2012)
• Z. Fry, B. Landau, W. Weimer “A Human Study of Patch Maintainability” ISSTA 2012.• C. Le Goues and W. Weimer “Measuring Code Quality to Improve
Specification Mining? IEEE Trans. Software Engineering 38(1): 175-190 (2012)• M. Groat, B. Edwards, J. Horey, W. He, and S. Forrest ``Enhancing privacy in
participatory sensing applications with multidimensional data” PERCOM 2012 • J. Horey, M. Groat, and S. Forrest ``Reconstructing spatial distributions from
anonymized locations’’ ICDE 2012.• M. Groat, B. Edwards, J. Horey, W. He, S. Forrest “Enhancing privacy in
participatory applications with multidimensional data” Pervasive and Mobile Computing, in press.
• B. Edwards, T. Moore, G. Stelle, S. Hofmeyr and S. Forrest. ``Beyond the blacklist: Modeling malware spread and the effect of interventions” NSPW 2012. (also presented at ACSAC 2012 NSPW experience panel).
DARPA Site Visit, Feb 22nd 2012
Plan for Today11:30 Lunch 30 minutes to collect food and review posters
12:00 Stephanie Forrest Welcome and Project Overview (30 min)
12:30 Claire Le Goues/Shirley Park
GenProg, Benchmarks, Scalability and Templates (30 min)
1:00 Zak Fry Improving GenProg Fitness Functions (20 min)
1:20 Jonathan Dorn Lifting the Test Case Assumption (20 min)
1:40 Break
1:50 Eric Schulte Repairing ASM/ELF programs with Island GA (20 min)
2:10 Claire Le Goues Phone Twitter Repair Demo (10 min)
2:20 Neal Holtschulte Improving Island GAs (20 min)
2:40 Antonio Espinoza DIFT and GenProg Integration (20 min)
3:00 Adam Brady Evolving More Efficient Graphics Programs (20 min)
3:20 Break
3:30 Westley Weimer Discussion, Integration, Next Steps
4:00 Final Discussion, Review Posters
4:30 Depart
DARPA Site Visit, Feb 22nd 2012
BACKUP SLIDES
Complexity Results for Finding Array Invs
Simple (non-nested) array relations: • Examples: R[i][j] = T[4i+j], A[i][j] = 7B[i] + 8C[i+j+3] + 5i• Complexity: O(N3), N: # of array elements• Main ideas: flattening arrays (treating arr elems as new vars) and
solving equations
Complex (nested) array relations: • Examples: R[i][j] = S[T[i[j]], A[i][j] = B[C[D[i]][3]][E[i + j + 3]]• Complexity: O(NdV), V: # of arrays, N: # of array elements, d:
highest dim among arrays– By fixing d,V (in practice, these params are small), complexity is in class P
wrt to N– NP-Complete wrt to V (reduction from Set Covering prob)
• Main ideas: use reachability analysis to enumerate nesting rels among array indices and solving equations
DARPA Site Visit, Feb 22nd 2012
Scalable RADAR: Approach
• Evolution• Diversity• Allometry
Take Biology Seriously
INPUT
OUTPUT
EVALUATE FITNESS
MUTATE
DISCARD
ACCEPT
DARPA Site Visit, Feb 22nd 2012
Schedule and Milestones
Recommended