Collaborative Research: Expeditions in Computer Augmented Program Engineering (ExCAPE): Harnessing Synthesis for Software Design

协作研究:计算机增强程序工程探险 (ExCAPE):利用综合进行软件设计

基本信息

项目摘要

Computers have revolutionized our daily lives, and yet the way we program computers has changed little in the last several decades. Software development still remains a tedious and error-prone activity. ExCAPE aims to change programming from a purely manual task to one in which a programmer and an automated program synthesis tool collaborate to generate software that meets its specification. A distinguishing feature of the ExCAPE approach is that the program description can involve a wide range of artifacts that are best-suited to the particular development task: incomplete programs; declarative specifications of high-level requirements; positive and negative examples of desired behaviors; and optimization criteria for selecting among alternative implementations. This diversity is aimed at allowing a programmer flexibility to express insights through a variety of formats, leading to a more intuitive and less error-prone way of programming.The synthesis tool uses a range of computational approaches and developer interaction to compose these different views about the structure and functionality of the system into a unified, concrete implementation. The computational techniques include decision procedures for constraint-satisfaction problems; iterative schemes for abstraction and refinement; and data-driven learning. The methodology for programmer interaction moves verification from the back-end of the design cycle to the front-end, with the promise of a more reliable software product.To develop the theory and practice of the proposed paradigm, the ExCAPE team brings together expertise in theoretical foundations (computer-aided verification, control theory, program analysis), design methodology (human-computer interaction, model-based design, programming environments), and applications (concurrent programming, network protocols, robotics, system architecture). Research will focus on developing new computational engines for transformation and integration of synthesis artifacts, and effective methods for programmer interaction and feedback. While the benefits of the ExCAPE approach will apply broadly to software development, the ExCAPE team will focus its efforts by initially targeting four challenge problems: developing efficient concurrent data structures; developing protocols for on-chip interconnection networks; developing distributed routing network protocols; and end-user programming for autonomous robots. The ExCAPE approach will be a radical departure from the way these problems are solved today. For example, for the challenge problem on concurrent programming, the planned design tool will provide smart assistance for expert programmers to produce efficient and correct code, while the proposed tool for the robotics challenge problem will let end users program robots by demonstrating example behaviors. As ExCAPE aims to affect industrial practice, design tools for all four challenge problems will be developed and evaluated in close collaboration with industrial partners.The technology developed by ExCAPE also has the potential to revolutionize the way computing concepts are taught. Building on the core technology used in program synthesis, the ExCAPE team plans to develop smart tutoring software that can analyze students? answers for conceptual errors and generate additional problems tailored to that student.. This tutoring software will be developed for representative high-school and undergraduate courses and will be made widely available. This outreach effort is aimed at attracting more students to computing disciplines by promoting a new and more appealing vision of what it means to program. ExCAPE will also nurture an inter-disciplinary community of researchers in computer-augmented programming, via an annual workshop, a biannual summer school, and a competition for synthesis tools, with associated challenge problems and benchmarks.For more information visit http://excape.cis.upenn.edu
计算机已经彻底改变了我们的日常生活,但在过去的几十年里,我们对计算机编程的方式几乎没有改变。软件开发仍然是一个乏味和容易出错的活动。ExCAPE旨在将编程从纯手工任务转变为程序员和自动程序合成工具协作生成符合其规范的软件的任务。ExCAPE方法的一个显著特征是,程序描述可以涉及最适合特定开发任务的各种工件:不完整的程序;高级需求的声明性规范;所需行为的正面和负面示例;以及用于在备选实现中进行选择的优化标准。这种多样性旨在允许程序员灵活地通过各种格式表达见解,从而实现更直观、更少出错的编程方式。综合工具使用一系列计算方法和开发人员交互,将这些关于系统结构和功能的不同视图组合成统一的具体实现。计算技术包括约束满足问题的决策程序;抽象和细化的迭代方案;以及数据驱动的学习。程序员交互的方法论将验证从设计周期的后端移到前端,并承诺提供更可靠的软件产品。为了开发所提出的范例的理论和实践,ExCAPE团队汇集了理论基础方面的专业知识(计算机辅助验证、控制理论、程序分析)、设计方法学(人机交互、基于模型的设计、编程环境)和应用(并发编程、网络协议、机器人、系统架构)。研究将集中于开发新的计算引擎,用于合成工件的转换和集成,以及程序员交互和反馈的有效方法。虽然ExCAPE方法的好处将广泛应用于软件开发,但ExCAPE团队将集中精力,首先针对四个挑战性问题:开发高效的并发数据结构;开发片上互连网络协议;开发分布式路由网络协议;以及自主机器人的最终用户编程。ExCAPE方法将彻底偏离今天解决这些问题的方式。例如,对于并发编程的挑战问题,计划的设计工具将为专家程序员提供智能帮助,以生成有效和正确的代码,而机器人挑战问题的建议工具将让最终用户通过演示示例行为来编程机器人。由于ExCAPE旨在影响工业实践,因此将与工业合作伙伴密切合作,开发和评估所有四个挑战问题的设计工具。ExCAPE开发的技术也有可能彻底改变计算概念的教学方式。在程序合成中使用的核心技术的基础上,ExCAPE团队计划开发智能辅导软件,可以分析学生?答案的概念错误,并产生额外的问题,为学生量身定制。这一辅导软件将为具有代表性的高中和大学课程开发,并将广泛提供。这项推广工作的目的是通过推广一种新的、更有吸引力的编程理念来吸引更多的学生学习计算学科。ExCAPE还将通过一年一度的研讨会、一年两次的暑期学校以及合成工具竞赛以及相关的挑战问题和基准来培养计算机增强编程领域的跨学科研究人员社区。欲了解更多信息,请访问http://excape.cis.upenn.edu

项目成果

期刊论文数量(0)
专著数量(0)
科研奖励数量(0)
会议论文数量(0)
专利数量(0)

数据更新时间:{{ journalArticles.updateTime }}

{{ item.title }}
{{ item.translation_title }}
  • DOI:
    {{ item.doi }}
  • 发表时间:
    {{ item.publish_year }}
  • 期刊:
  • 影响因子:
    {{ item.factor }}
  • 作者:
    {{ item.authors }}
  • 通讯作者:
    {{ item.author }}

数据更新时间:{{ journalArticles.updateTime }}

{{ item.title }}
  • 作者:
    {{ item.author }}

数据更新时间:{{ monograph.updateTime }}

{{ item.title }}
  • 作者:
    {{ item.author }}

数据更新时间:{{ sciAawards.updateTime }}

{{ item.title }}
  • 作者:
    {{ item.author }}

数据更新时间:{{ conferencePapers.updateTime }}

{{ item.title }}
  • 作者:
    {{ item.author }}

数据更新时间:{{ patent.updateTime }}

Stephane Lafortune其他文献

Local Mean Payoff Supervisory Control for Discrete Event Systems
离散事件系统的局部平均支付监督控制
  • DOI:
    10.1109/tac.2021.3075186
  • 发表时间:
    2021-04
  • 期刊:
  • 影响因子:
    6.8
  • 作者:
    Yiding Ji;Xiang Yin;Stephane Lafortune
  • 通讯作者:
    Stephane Lafortune
A semi-discrete Kadomtsev-Petviashivili equation and its coupled integrable system
半离散Kadomtsev-Petviashivili方程及其耦合可积系统
  • DOI:
  • 发表时间:
    2016
  • 期刊:
  • 影响因子:
    1.3
  • 作者:
    Chun-Xia Li;Stephane Lafortune;Shou-Feng Shen
  • 通讯作者:
    Shou-Feng Shen
A general approach for optimizing dynamic sensor activations for discrete event systems
优化离散事件系统动态传感器激活的通用方法
  • DOI:
  • 发表时间:
    2019
  • 期刊:
  • 影响因子:
    6.4
  • 作者:
    Xiang Yin;Stephane Lafortune
  • 通讯作者:
    Stephane Lafortune
PainleveBacklundCheck: A Sympy-powered Kivy app for the Painlev\'e property of nonlinear dispersive PDEs and auto-B\"acklund transformations
PainleveBacklundCheck:一款由 Sympy 驱动的 Kivy 应用程序,用于非线性色散偏微分方程和自动 B"acklund 变换的 Painleve 属性
  • DOI:
  • 发表时间:
    2024
  • 期刊:
  • 影响因子:
    0
  • 作者:
    Shrohan Mohapatra;P. Kevrekidis;Stephane Lafortune
  • 通讯作者:
    Stephane Lafortune
Enforcing opacity by insertion functions under multiple energy constraints
在多重能量约束下通过插入函数增强不透明度
  • DOI:
    10.1016/j.automatica.2019.06.028
  • 发表时间:
    2019-10
  • 期刊:
  • 影响因子:
    6.4
  • 作者:
    Yiding Ji;Xiang Yin;Stephane Lafortune
  • 通讯作者:
    Stephane Lafortune

Stephane Lafortune的其他文献

{{ item.title }}
{{ item.translation_title }}
  • DOI:
    {{ item.doi }}
  • 发表时间:
    {{ item.publish_year }}
  • 期刊:
  • 影响因子:
    {{ item.factor }}
  • 作者:
    {{ item.authors }}
  • 通讯作者:
    {{ item.author }}

{{ truncateString('Stephane Lafortune', 18)}}的其他基金

Collaborative Research: Cyber-secure and Resilient Supervisory Control of Networked Discrete-Event Systems
合作研究:网络离散事件系统的网络安全和弹性监督控制
  • 批准号:
    2144416
  • 财政年份:
    2022
  • 资助金额:
    $ 50万
  • 项目类别:
    Standard Grant
SaTC: CORE: Medium: Collaborative: Bridging the Gap between Protocol Design and Implementation through Automated Mapping
SaTC:核心:媒介:协作:通过自动映射弥合协议设计与实现之间的差距
  • 批准号:
    1801342
  • 财政年份:
    2018
  • 资助金额:
    $ 50万
  • 项目类别:
    Continuing Grant
CPS: Small: Energy-Aware Formal Synthesis for Supervisory Control and Information Acquisition in Cyber-Physical Systems
CPS:小型:用于网络物理系统中的监督控制和信息采集的能量感知形式综合
  • 批准号:
    1738103
  • 财政年份:
    2017
  • 资助金额:
    $ 50万
  • 项目类别:
    Standard Grant
CPS: Breakthrough: Development of Novel Architectures for Control and Diagnosis of Safety-Critical Complex Cyber-Physical Systems
CPS:突破:开发用于安全关键复杂网络物理系统控制和诊断的新型架构
  • 批准号:
    1446298
  • 财政年份:
    2015
  • 资助金额:
    $ 50万
  • 项目类别:
    Standard Grant
TWC: Small: Intrusion Detection and Resilience Against Attacks in Cyber and Cyber-Physical Control Systems
TWC:小型:网络和网络物理控制系统中的入侵检测和攻击恢复能力
  • 批准号:
    1421122
  • 财政年份:
    2014
  • 资助金额:
    $ 50万
  • 项目类别:
    Standard Grant
RUI: Stability analysis for soliton solutions of the Vortex Filament Equation and beyond
RUI:涡丝方程及其他方程的孤子解的稳定性分析
  • 批准号:
    0908074
  • 财政年份:
    2009
  • 资助金额:
    $ 50万
  • 项目类别:
    Standard Grant
CPS: Small: Control of Distributed Cyber-Physical Systems under Partial Information and Limited Communication
CPS:小型:部分信息和有限通信下分布式信息物理系统的控制
  • 批准号:
    0930081
  • 财政年份:
    2009
  • 资助金额:
    $ 50万
  • 项目类别:
    Standard Grant
Dynamic Deadlock Avoidance in Concurrent Software via Discrete Control
通过离散控制避免并发软件中的动态死锁
  • 批准号:
    0819882
  • 财政年份:
    2008
  • 资助金额:
    $ 50万
  • 项目类别:
    Standard Grant
Collaborative proposal: Distributed and Fault-Tolerant Control of Discrete-Event Systems
合作提案:离散事件系统的分布式和容错控制
  • 批准号:
    0624821
  • 财政年份:
    2006
  • 资助金额:
    $ 50万
  • 项目类别:
    Standard Grant
Support for the 8th International Workshop on Discrete Event Systems-WODES '06. The workshop will be held on July 10-12, 2006 in Ann Arbor on the campus of University of Michigan
支持第八届离散事件系统国际研讨会 - WODES 06。
  • 批准号:
    0607076
  • 财政年份:
    2006
  • 资助金额:
    $ 50万
  • 项目类别:
    Standard Grant

相似国自然基金

Research on Quantum Field Theory without a Lagrangian Description
  • 批准号:
    24ZR1403900
  • 批准年份:
    2024
  • 资助金额:
    0.0 万元
  • 项目类别:
    省市级项目
Cell Research
  • 批准号:
    31224802
  • 批准年份:
    2012
  • 资助金额:
    24.0 万元
  • 项目类别:
    专项基金项目
Cell Research
  • 批准号:
    31024804
  • 批准年份:
    2010
  • 资助金额:
    24.0 万元
  • 项目类别:
    专项基金项目
Cell Research (细胞研究)
  • 批准号:
    30824808
  • 批准年份:
    2008
  • 资助金额:
    24.0 万元
  • 项目类别:
    专项基金项目
Research on the Rapid Growth Mechanism of KDP Crystal
  • 批准号:
    10774081
  • 批准年份:
    2007
  • 资助金额:
    45.0 万元
  • 项目类别:
    面上项目

相似海外基金

Expeditions: Collaborative Research: Global Pervasive Computational Epidemiology
探险:合作研究:全球普适计算流行病学
  • 批准号:
    2151597
  • 财政年份:
    2021
  • 资助金额:
    $ 50万
  • 项目类别:
    Continuing Grant
Expeditions: Collaborative Research: Understanding the World Through Code
探险:合作研究:通过代码了解世界
  • 批准号:
    1918839
  • 财政年份:
    2020
  • 资助金额:
    $ 50万
  • 项目类别:
    Continuing Grant
Expeditions: Collaborative Research: Global Pervasive Computational Epidemiology
探险:合作研究:全球普适计算流行病学
  • 批准号:
    1918614
  • 财政年份:
    2020
  • 资助金额:
    $ 50万
  • 项目类别:
    Continuing Grant
Expeditions: Collaborative Research: Global Pervasive Computational Epidemiology
探险:合作研究:全球普适计算流行病学
  • 批准号:
    1918626
  • 财政年份:
    2020
  • 资助金额:
    $ 50万
  • 项目类别:
    Continuing Grant
Expeditions: Collaborative Research: Understanding the World Through Code
探险:合作研究:通过代码了解世界
  • 批准号:
    1918651
  • 财政年份:
    2020
  • 资助金额:
    $ 50万
  • 项目类别:
    Continuing Grant
Expeditions: Collaborative Research: Global Pervasive Computational Epidemiology
探险:合作研究:全球普适计算流行病学
  • 批准号:
    1918784
  • 财政年份:
    2020
  • 资助金额:
    $ 50万
  • 项目类别:
    Continuing Grant
Expeditions: Collaborative Research: Understanding the World Through Code
探险:合作研究:通过代码了解世界
  • 批准号:
    1918771
  • 财政年份:
    2020
  • 资助金额:
    $ 50万
  • 项目类别:
    Continuing Grant
Expeditions: Collaborative Research: Understanding the World Through Code
探险:合作研究:通过代码了解世界
  • 批准号:
    1918889
  • 财政年份:
    2020
  • 资助金额:
    $ 50万
  • 项目类别:
    Continuing Grant
Expeditions: Collaborative Research: Global Pervasive Computational Epidemiology
探险:合作研究:全球普适计算流行病学
  • 批准号:
    1918770
  • 财政年份:
    2020
  • 资助金额:
    $ 50万
  • 项目类别:
    Continuing Grant
Expeditions: Collaborative Research: Understanding the World Through Code
探险:合作研究:通过代码了解世界
  • 批准号:
    1918865
  • 财政年份:
    2020
  • 资助金额:
    $ 50万
  • 项目类别:
    Continuing Grant
{{ showInfoDetail.title }}

作者:{{ showInfoDetail.author }}

知道了