MIT CSAIL
32 Vassar Street, Room 32-227
Cambridge, MA 02139
617-452-2852
jrb at pobox dot com
http://www.jbot.org
Ph.D., Computer Science,
University of Massachusetts, Amherst (1992)
Thesis Topic: Connectionist Modeling and Control of Finite State Environments
Thesis Advisors: Andrew Barto and David Rumelhart
M.S., Computer Science,
University of Massachusetts, Amherst (1989)
Thesis Topic: Learning to Represent State
Thesis Advisors: Andrew Barto and Richard Sutton
B.S., Computer Engineering and Cognitive Science,
University of California, San Diego (1985)
Thesis Topic: A Boltzmann Machine Solution to the Waltz Labeling Problem
Thesis Advisor: David Rumelhart
Research Scientist, MIT AI Lab (2000 - present)
Exploring the design and implementation of next generation programming languages and algorithms to support spatial computers and space time programming. Advising graduate and undergraduate students. Research includes the creation of new spatial computing platforms, distributed algorithms, adaptive methods, abstractions, and programming languages. Areas include modular robotics, swarm robotics, kinetic structures, sensor networks, programmable matter, and FPGA’s. Led MIT DARPA NEST program in sensor networks where we developed new languages, localization, threat avoidance, and target tracking software. Also help manage dynamic languages group where we explored the design and implementation of next generation programming languages to support intelligent, adaptive, complex software systems.
Researcher, IRCAM (1994 - 1996)
Assisted in development of real-time Max/FTS with Miller Puckette and David Zicarelli and assisted composer Phillipe Manoury on opera. Researched alternative text based programming languages for real-time music creation.
Postdoctoral Fellow, ICSI Berkeley (1992)
Participated in the development of a neural network supercomputer. My job was to advise the hardware designers as to the requirements of the popular connectionist algorithms and architectures. This was accomplished through rigorous analysis of algorithms and simulation studies. Participated in the design of a new object-oriented language called Sather.
Visiting Scholar, Stanford Univ. (1991 - 1992)
Developed a neural network simulator to be used by David Rumelhart and his neural network research group. Developed image-processing code for OBVIUS, an interactive image processing system.
Research Assistant, University of Mass. (1985 - 1991)
Designed and analyzed connectionist learning algorithms under the supervision of Andrew Barto.
Visiting Graduate Student, Stanford Univ. (1989 - 1991)
Developed connectionist learning architectures and algorithms for navigation under the supervision of David Rumelhart.
Summer Research Student, GTE Labs (1987)
Developed a theory for learning to represent state under the supervision of Richard Sutton.
Summer Research Student, HP Labs (1984)
Assisted in the analysis of graphics algorithms to be used to guide the design of a graphics architecture for the PA-RISC.
Research Assistant, Harold Cohen, UCSD (1980 - 1985)
Developed plotter software, vector based shading and scribbling, and rule based programming for expert drawing system.
Consultant, Configura, Sweden (2000)
Advised in development of proprietary language for complex sales software.
President and Cofounder of Functional Objects Inc (1999 - 2000)
Commercializing an advanced implementation of the object-oriented dynamic programming language called Dylan.
Principle Software Engineer and Engineering Manager, Harlequin Inc (1994 - 1999)
Assisted (Apple) in the design of a general-purpose object-oriented dynamic language called Dylan.
Wrote a large part of the Dylan compiler, runtime, and libraries. Designed and implemented class-based and orthogonal persistence based object-oriented databases, one of which is used by the Dylan compiler for separate compilation. Wrote performance monitoring, analysis, and visualization tools.
Coordinated Dylan development activities including the planning of task schedules, the supervision of developers, and the coordination and running of meetings.
Software Engineer, On Target Associates (1991)
Developed Macintosh DSP applications including a hard disk recording system and a graphical software synthesizer construction kit.
J. Bachrach, D. Qumsiyeh, M. Tobenkin. Hardware Scripting in Gel. FCCM 2008, (to appear) April 2008.
J. Bachrach, J. McLurkin, A. Grue. A Language for Programming Multi-Robot Systems Using the Amorphous Medium Abstraction. AAMAS, (to appear) May 2008
J. Beal, J. Bachrach, D. Vickery, M. Tobenkin. Fast Self-Healing Gradients. ACM Symposium on Applied Computing 2008, (to appear) March 2008.
J. Bachrach, J. Beal. Continuous Space-Time Semantics for Adaptive Program Execution. Self-Adaptive and Self-Organizing Systems, July 2007
J. Bachrach, J. Beal. Programming a Spatial Computer. MIT CSAIL TR 2007-0017, March 2007
J. Bachrach, J. Beal. Programming a Sensor Network as an Amorphous Medium . MIT CSAIL TR 2006-069, June 2006
C. Taylor, A. Rahimi, J. Bachrach, H. Shrobe, A. Grue. Simultaneous Localization, Calibration, and Tracking in a Sensor Network. IPSN, April, 2006
J. Beal, J. Bachrach. Infrastructure for Engineered Emergence on Sensor/Actuator Networks. IEEE Intelligent Systems, March/April, 2006
C. Taylor, A. Rahimi, J. Bachrach, H. Shrobe. Simultaneous Tracking and Localization in Sensor Networks. MIT AI Memo AIM-2005-016, April 26, 2005
J. Bachrach, C. Taylor. Localization in Sensor Networks. in "Handbook of Sensor Networks" book, edited by Ivan Stojmenovic, Wiley 2005.
J. Bachrach, R. Nagpal, M. Salib, H. Shrobe. Experimental Results and Theoretical Analysis of a Self-organizing Global Coordinate System for Ad Hoc Sensor Networks. Telecommunications System Journal, Special Issue on Wireless Sensor Networks, Kluwer Academic Publishing 2004.
R. Nagpal, H. Shrobe, J. Bachrach. Organizing a Global Coordinate System from Local Information on an Ad Hoc Sensor. IPSN-03 Palo Alto.
J. Bachrach, K. Playford. The Java Syntactic Extender. In ACM Proceedings of OOPSLA-01, Tampa Florida.
J. Bachrach, M. Mozer. Connectionist modeling and controlling of finite state systems in the absence of complete state information. In Yves Chauvin and David E. Rumelhart, editors, Back-propagation: Theory, Architectures and Applications. Erlbaum, Hillsdale, N.J.
J. Bachrach. A connectionist architecture for navigation. In David S. Touretzky, editor, Advances in Neural Information Processing Systems 3, San Mateo, CA, 1991. IEEE Conference on Neural Information Processing Systems Natural and Synthetic, Morgan Kaufmann Publishers.
M. Mozer, J. Bachrach. Discovering the structure of a reactive environment by exploration. Machine Learning Journal, 1991.
M. Mozer, J. Bachrach. Discovering the structure of a reactive environment by exploration. Neural Computation, 2(4), 1990.
M. Mozer, J. Bachrach. Discovering the structure of a reactive environment by exploration. In David S. Touretzky, editor, Advances in Neural Information Processing Systems 2, San Mateo, CA, 1990. IEEE Conference on Neural Information Processing Systems Natural and Synthetic.
J. Bachrach. Learning to represent state. In ICNN Conference Proceedings, page 288. International Neural Network Society, Pergamon Press, September 1988.
J. Bachrach. Connectionist learning in backgammon. In Proceedings of the Connectionist Models Summer School, Pittsburgh, PA, June 1986. Carnegie Mellon University.
Google Tech Talk, Boston (2008-02-21),
Spatial Computing in Proto
BBN Seminar, Cambridge (2008-02-05),
Spatial Computing in Proto
New Directions In Software Technology, Saint John's (2007-12-05),
Proto Physics
New Directions In Software Technology, Saint John's (2007-12-04),
Space-Time Programming in Proto
Ideas Boston, Federal Reserve Building (2007-10-04),
Computational Dance: Challenges and Opportunities
New England Programming Language Seminar, TUFTS (2007-04-11),
Spatial Programming in Proto
DARPA ISAT study on Engineered Ensembles Effects, CMU (2007-04-06),
Space-Time Programming in Proto
Animation as Installation class, Harvard (2007-03-16),
Computational Animation
Programming Languages Group Meeting, Harvard (2007-03-14),
Space-Time Programming in Proto
Self-Organizing Systems Group Meeting, Harvard (2007),
Space-Time Programming in Proto
Growth, Form, and Interaction: Artists and Engineers Look to Biology, Harvard (2006),
Proto and Gooze.
Self-Organizing Systems Group Meeting, Harvard (2005),
Neighborhood Amorphous Programming Language..
Lightweight Languages 4 Conference, MIT (2004),
Gooze: A Multimedia Stream Processing Language.
Colloquium, Center for Research in Computing in the Arts, UCSD (2003),
Alien Goo: A Lightweight C Embedding Facility
Dynamic Languages Seminar, MIT (2003),
Alien Goo: A Lightweight C Embedding Facility
Computer Science Colloquium, BBN (2002),
The Java Syntactic Extender
Programming Languages Seminar, Northeastern University (2002),
The Java Syntactic Extender
Computer Science Colloquium, Yale (2002),
The Java Syntactic Extender
Computer Science Colloquium, Harvard (2002),
Simple Dynamic Compilation with GOO
Lightweight Languages 1 Conference, MIT (2001),
Rethinking Lightweight Languages, Java Syntactic Extender and Proto
New Jersey Programming Language Seminar, AT&T (2001),
The Java Syntactic Extender
Dynamic Languages Seminar, MIT (2001),
Simple and Efficient Subclass Predicates
OOPSLA Conference (2001),
The Java Syntactic Extender
Dynamic Languages Seminar, MIT (2000),
Efficient Predicate Dispatch for Dylan
Dynamic Languages Seminar, MIT (2000),
Procedural Macros for Java
NIPS Conference (1991),
A Connectionist Architecture for Navigation
MIT 6.894 (2001),
The Design and Implementation of Dynamic Object-Oriented Languages
Velin Tzanov, MIT Masters (2006),
Distributed Area Search with a Team of Robots
Christopher Taylor, MIT Masters (2005),
Simultaneous Localization and Tracking in Wireless Ad-hoc Sensor Networks
Adam Eames, MIT Masters (2005),
Enabling Path Planning and Threat Avoidance with Wireless Sensor Networks
Michael Salib, MIT Masters (2003),
Starkiller -- A Type Inferencing System for Python
Andrew Sutherland, MIT Masters (2002),
Towards RSEAM: Resilient Serial Execution on Amorphous Machines
James Knight, MIT Masters (2002),
Parameterized Types for GOO
Aaron Ucko, MIT Masters (2001),
Predicate Dispatching in the Common Lisp Object System.
Curator, MIT Stata Center Gallery (2006 - present),
COLLISION 11-12
Curator, Axiom Gallery (2007 - present),
COLLISION:technomorph
Curator, Art Interactive (2004 - 2006),
COLLISION 6-10
Curator, Boston Art Windows Project (2005),
windowCOLLISIONone
Organizer, Cambridge (2002 - present),
Collision Collusion Art Technology Speaker Series
Curator, MIT Compton Gallery (2003),
COLLISIONfive, the next dimension
Curator, MIT Museum (2002),
hyperCOLLISION and COLLISION3, in super 3D
Organizer, MIT AI Lab, (2001),
Language Wizard Panels
Organizer, MIT AI Lab, (2000 - 2004),
Dynamic Languages Seminar Series
LEF Grant for String Beings with Snappy Dance Theater and Luci Lin, Jan 2007
NSF Bio Inspired Computation Grant, Sep 2006
Nominated for Rockefeller New Media Award, Sep 2006
Member Program Committee (2007),
Self Organization in Pervasive Distributed Systems in 2008 ACM Symposium on Applied Computing
Member of the editorial board (2004 - present),
Ad Hoc and Sensor Networks journal
Reviewer (2006 - present),
ACM Transactions on Programming Languages (TOPLAS)
Reviewer (2003 - present),
ACM Transactions on Sensor Networks
D. Paluska, J. Banks, J. Bachrach. Method for exposing film using robotic arm.
Patent Pending (2004)
Drummer, Brazilian Cultural Center, Cambridge MA (2000 - 2004),
Joh Camera's African Dance Classes
Drummer, Dance Complex Cambridge, MA (2000 - 2004),
Astou Sagna's African Dance Classes
Dancer, Troupe Sewa, MA (2002),
Joh Camera's African Dance Troupe
Computer Clubhouse, Computer Museum, Boston, MA (1999)
Mentor