research & projects

    (pls. note that only my academic projects are listed here. i have also worked on many large-scale commercial projects whose details are protected by ndas.)

  1. c@t - A Language for Programming Massively Distributed Embedded Systems
  2. due to advances in fabrication technologies, it is becoming possible to fabricate single-chip devices that contain logic circuits, sensors, actuators and communication components. these devices are simple and tiny, and yet they can be networked together to build Massively Distributed Embedded Systems (abbreviated as MDES). these systems can enable a wide variety of distributed embedded control systems: responsive environments, environmental monitoring, inventory tracking, precision agriculture, wildlife tracking, etc. these applications are compelling, but, due to some unique issues of MDES, there are several challenges to programming and networking them.

    for my master's thesis, i developed a programming language called c@t (Computation at a point in space(@) and Time). this language attempts to address these challenges and to facilitate programming MDES.

    the c@t compiler is written in Scheme and the language runtime environment is written in C and PIC assembly language for Microchip PIC midrange microcontrollers. the completed work focuses on the basic features of the c@t language, the compiler, and the runtime environment. we are still in the early stages of acquiring experience with c@t. although c@t was used to write several simple applications, it has not been used in a full-scale project. further details can be found in the thesis document.

    for this research, i compiled a bibliography and it is available here in the bibtex format.

  3. Bertha - An Operating System for Pushpin Computing
  4. i did an independent study in operating systems with Prof. Margo Seltzer of Harvard University. for the project, i designed an operating system for the pushpin computing, an embedded computing platform.

    the *paper design* is documented in the project report .

  5. Prudent Predators
  6. i am also deeply interested in the field of complex adaptive systems. in particular, i am interested in using biological principles and techniques to solve engineering problems.

    to get a betterer understanding of this field, i attended a one-week course conducted by New England Complex Systems Institute .

    for the course project, we developed a simulation model of the evolution of prudent predators and wrote a paper based on our work.

  7. WeatherTank: A Tangible Interface using Weather Metaphors
  8. i took a class in tangible user interfaces offered by Prof. Hiroshi Ishii. as the final project, Stefan Marti and I developed WeatherTank, a tangible interface that looks like a vivarium or a diorama, and uses everyday weather metaphors to present information from a variety of domains. WeatherTank can create many different conditions such as wind, clouds, waves and rain, allowing users to not only see, but also "feel" the information.

    further details can be found in the two papers we wrote: a short version and a long version .

  9. Pairwise Preference Elicitation System
  10. i took the course "Computational Models of Decision Making" offered by Prof. Peter Haddawy . this course is on Bayesian Networks and Decision Theory and their application to AI. for the course project, i developed a UI in Java that facilitates elicitng Pairwise Preferences for recommender systems.

    unfortunately, i dont have the tech report i wrote about this work. i just have a screen shot is available and here is a brief description:
    this interface was the version 2.0 front end of DIVA ( The Decision-Theoretic Video Advisor) . this interface permits the users to specify their preferences for videos without the need for numeric ranking. that is, users can drag and drop the movie titles from the list to one of the three pre-specified ranks (like, ok and dislike). users can further refine their ranking by using dynamic levels within each of those ranks. it is important to note that it is a partial order preference system and doesnt force the user to rank all the items.

  11. A Hybrid Bayesian Network Modeling Environment
  12. i took a class in Artificial Intelligence offered by Prof. Peter Haddawy . For the class project, we developed a hybrid bayesian network modeling environment. the hybrid Bayesian networks combines the traditional quantitative formalism with that of qualitative probabilistic networks. this approach is beneficial, since it allows incremental model development and model reuse. gory details of this work is available in a paper we wrote.

  13. Engineered Genetic Oscillator
  14. i took a fascinating bioengineering class called Synthetic Biology . For the class project, we developed an oscillator built from genetic elements. soon, will put the project report here.