Seminars
The field of automated programming envisions a software design process where the programmer writes nondeterministic specifications of programming tasks in a domain-specific language, and a program synthesis algorithm is used to find correct implementations of these specifications. In this talk, I will describe my recent work in this area. Topics covered will include:
(1) A probabilistic approach to program synthesis where "beliefs" about missing elements in a program are refined based on examples supplied by the programmer.
(2) A method for synthesizing path-planning…
User interface code can be complex and buggy. Moreover, designing user-friendly interfaces can be difficult. One way around this is is to reuse interfaces others have written and tested. We are developing a framework whereby the user provides a sketch of the desired interface and we use code search over open source repositories to find existing user implementations that have an interface similar to the sketch. The tool we have developed extracts user interfaces from the open source applications, matches them against the user's sketch, lets the programmer interact with the results,…
(Joint work with Konstantinos Gatsis)
The interaction between information technology and physical world makes Cyber-Physical Systems (CPS) vulnerable to malicious attacks beyond the standard cyber attacks. This has motivated the need for attack-resilient state estimation. Yet, the existing state-estimators are based on the non-realistic assumption that the exact system model is known. Consequently, in this work we present a method for state estimation in presence of attacks, for systems with noise and modeling errors. When the estimated states are used by a state-based…
(Joint work with Miroslav Pajic)
We consider a wireless networked control system with multiple loops closing over a shared wireless medium. To avoid interferences a centralized scheduler decides which control task accesses the channel at each time step, opportunistically based on the random wireless channel conditions that systems experience. We formulate the problem of designing channel-aware scheduling and transmit power allocation mechanisms that guarantee Lyapunov-like control performance for all tasks in expectation over the channel conditions, while they also…
This talk covers several results focused on humans interacting with Cyber-Physical Systems: those systems whose computation, control, and communication aspects are tightly coupled. Human inputs to these systems has typically required significant training, which reduces the impact of these systems and the cost of their adoption. The main approach taken to mitigating issues in these systems is to utilize code generation and model based design, in order to utilize verification tools in domains for which they were not originally imagined, or whose complexity might prevent users from another…