首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到20条相似文献,搜索用时 546 毫秒
1.
Sidle系统是运行在SUN工作站网络上的一组实用程序,利用空闲的处理机资源进行大粒度的并行计算.同其它远程执行设备相比,它能支持程序内部并行和嵌套的远程执行,允许一个服务员机接受多个远程执行任务.本文介绍了这些特点和透明性的实现方法.  相似文献   

2.
Much of research in intelligent programming systems for users has been polarized towards two opposite domains: active and passive approaches to diagnosis. The advocates of the active approach claim that much of the effectiveness of intelligent program systems is contributed to having strong control over the behavior of the users and providing immediate feedback on errors and misconceptions. Opponents of this approach, on the other hand, have argued that active approach through its interventionist style does not provide users the flexibility needed to observe their own behavior and discover their own errors, hence the users are not given an opportunity to selfdebug their solutions. This paper covers the engineering of intelligent program diagnosis systems and reports an empirical evaluation which attempts to get some insights into the superiority of active approach over passive approach or vice versa. The evaluation is conducted using our prototype system DISCOVER. The system provides a visualization-based environment which supports both active and passive modes of intelligent program diagnosis.  相似文献   

3.
Abstract When computer programs are designed to elicit problem solving skills by the user, this basic premise should be tested in an objective manner. The Health and Fitness Assessment program was evaluated as an interactive program with a substantial emphasis on the problem solving process. A method of analysis known as protocol analysis was used to demonstrate that 72% of the interpretive statements made by users verified the use of higher level mental functions to interact with the computer. Other evaluative data aided in improving the design of the program.  相似文献   

4.
修复软件缺陷是软件工程领域一个无法回避的重要问题,而程序自动修复技术则旨在自动、准确且高效地修复存在缺陷的程序,以缓解软件缺陷所带来的问题.近年来,随着深度学习的快速发展,程序自动修复领域兴起了一种使用深度神经网络去自动捕捉缺陷程序和其补丁之间关系的方法,被称为神经程序修复.从在基准测试上被正确修复的缺陷的数量上看,神经程序修复工具的修复性能已经显著超过了非学习的程序自动修复工具.然而,近期有研究发现神经程序修复系统性能的提升可能得益于测试数据在训练数据中存在,即数据泄露.受此启发,为进一步探究神经程序修复系统数据泄露的原因及影响,更公平地评估现有的系统,本文(1)对现有神经程序修复系统进行了系统的分类和总结,根据分类结果定义了神经程序修复系统的数据泄露,并为每个类别的系统设计了数据泄露的检测方法;(2)依照上一步骤中的数据泄露检测方法对现有模型展开了大规模检测,并探究了数据泄露对模型真实性能与评估性能间差异的影响以及对模型本身的影响;(3)分析现有神经程序修复系统数据集的收集和过滤策略,加以改进和补充,在现有流行的数据集上基于改进后的策略构建了一个纯净的大规模程序修复训练数据集,并验证了该数据集避免数据泄露的有效性.实验结果发现:本次调研的10个神经程序修复系统在基准测试集上均出现了数据泄露,其中神经程序修复系统RewardRepair的数据泄露问题较为严重,在基准测试集Defects4J(v1.2.0)上的数据泄露达24处,泄露比例高达53.33%.此外,数据泄露对神经程序修复系统的鲁棒性也造成了影响,调研的5个神经程序修复系统均因数据泄露产生了鲁棒性降低的问题.由此可见,数据泄露是一个十分常见的问题,且会使神经程序修复系统得到不公平的性能评估结果,以及影响系统本身的性质.研究人员在训练神经程序修复模型时,应尽可能避免出现数据泄露,且要考虑数据泄露问题对神经程序修复系统性能评估产生的影响,尽可能更公平地评估系统.  相似文献   

5.
Much of research in programming environments for novices has been polarized toward two opposite domains: guided programming environments and free programming environments. Intelligent programming tutors and systems that represent guided environments concentrate mainly on helping novices in acquiring programming skills through a series of problem-solving situations. Most of these systems tend to ignore the significance of a preproblem solving, dynamic, visualization-based, and free environment which would help novices in compiling an effective programming knowledge through a discovery-like process. Free programming environments, on the other hand, concentrate exclusively on helping novices to build correct programming knowledge through visible, exploratory, and free discovery environments. These systems generally tend to neglect the issue of supporting those aspects of intelligent diagnosis and tutoring, through which novices can transform their program knowledge into programming skill. A system has been developed called DISCOVER that occupies a unique niche between the two domains discussed above. The system emphasizes a synthesis-based framework which integrates free programming with guided programming features, and supports software visualization and immediacy of feedback to come up with an environment that facilitates learning programming through discovery and guidance. To assess the usefulness of the design framework presented in this paper, two pilot performance evaluations were conducted. The results provided a number of interesting insights into the implication of incorporating visualization and immediacy features, along with intelligent program diagnosis into the design of programming systems intended mainly for novices.  相似文献   

6.
This article develops a framework for self‐regulated digital learning, which supports for self‐regulated learning (SRL) in e‐learning systems. The framework emphasizes 8 features: learning plan, records/e‐portfolio and sharing, evaluation, human feedback, machine feedback, visualization of goals/procedures/concepts, scaffolding, and agents. Each feature facilitates or supports one or more SRL skills, including planning, monitoring and evaluating learning, applying appropriate cognitive strategies, and setting standards of products or performance. The implementation in domain‐general and ‐specific systems as illustrated by web‐based inquiry and problem‐solving are discussed. Examples and learning effects are elicited from the literature to demonstrate various designs. Approaches for designing SRL systems, educational implications, and new directions for future research incorporating SRL into digital learning are presented.  相似文献   

7.
考虑到安卓应用虚拟化技术的功能特性,精确检测安卓虚拟化程序是识别其隐藏安全风险的基础和必要前提。为此,提出了基于异质信息网络的安卓虚拟化程序检测方法,并实现了原型系统Aiplugin。根据安卓虚拟化程序的特点,提取四类静态程序特征,并将程序特征映射到异质信息网络上,以元路径的形式将不同程序关联起来。采用异质图注意力网络表征算法和OC-SVM算法,融合不同视图的程序语义信息,实现对安卓虚拟化程序的表征和分类。实验结果表明,相较于当前的代表性工具VAhunt, Aiplugin可有效检测包括平行空间等更多类型的安卓虚拟化程序。  相似文献   

8.
Program debugging is an important part of the domain expertise required for intelligent tutoring systems that teach programming languages. This article explores the process by which student programs can be automatically debugged in order to increase the instructional capabilities of these systems. The research presented provides a methodology and implementation for the diagnosis and correction of nontrivial recursive programs. In this approach, recursive programs are debugged by repairing induction proofs in the Boyer-Moore logic. The induction proofs constructed and debugged assert the computational équivalence of student programs to correct exemplar solutions. Exemplar solutions not only specify correct implementations but also provide correct code to replace buggy student code. Bugs in student code are repaired with heuristics that attempt to minimize the scope of repair. The automated debugging of student code is greatly complicated by the tremendous variability that arises in student solutions to nontrivial tasks. This variability can be coped with, and debugging performance improved, by explicit reasoning about computational semantics during the debugging process. This article supports these claims by discussing the design, implementation, and evaluation of Talus, an automatic debugger for LISP programs, and by examining related work in automated program debugging. Talus relies on its abilities to reason about computational semantics to perform algorithm recognition, infer code teleology, and to automatically detect and correct nonsyntactic errors in student programs written in a restricted, but nontrivial, subset of LISP. Solutions can vary significantly in algorithm, functional decomposition, role of variables, data flow, control flow, values returned by functions, LISP primitives used, and identifiers used. Solutions can consist of multiple functions, each containing multiple bugs. Empiricial evaluation demonstrates that Talus achieves high performance in debugging widely varying student solutions to challenging tasks.  相似文献   

9.
Although most typically used in other contexts, program transformations can simplify program verification by transforming a program containing complex language features into a semantically equivalent program containing only simpler language features. The proof of the transformed program can then be performed using a set of proof rules for only the simpler features. There are tradeoffs between the transformational approach and the standard approach to program verification with regard to proof understandability and compactness of programs and assertions, establishing soundness of the program verification method, and providing mechanized support for the method. The transformational approach has clear advantages in some of these aspects. This paper illustrates this transformational approach by considering proof rules for escape statements in iterative constructs, and discusses the tradeoffs with respect to its use. It also suggests how the approach can be applied to other language constructs, including some involving concurrency, and to solving some problems connected with the development of Hoare axiomatizations. Copyright © 1999 John Wiley & Sons, Ltd.  相似文献   

10.
11.
Explanations are expected to play an important role when knowledge-based systems are used for cooperative problem solving. In this context both human and machine contribute to the procedures, constraints and strategies used in the problem-solving process. An increased need for explanations in this context is congruent with a cognitive-effort perspective and the Production Paradox observed with on-line help systems. This article describes an investigation of the role of explanations in cooperative problem solving. An experimental field study was performed with 41 users and an operational system for personal financial planning. The experiment showed a requirement for cooperative problem solving was associated with greater use of explanations. This effect was more marked with those users who had more fully explored the use of explanations during a preliminary stage of guided problem solving. The frequency of use of explanations in total was positively related to problem-solving performance. There was some evidence that the positive relationship between explanations and improved performance was more noticeable when problems requiring cooperation were undertaken.  相似文献   

12.
The understanding of core concepts and processes of science in solving problems is important to successful learning in biology. We have designed and developed a Web‐based, self‐directed tutorial program, SOLVEIT, that provides various scaffolds (e.g., prompts, expert models, visual guidance) to help college students enhance their skills and abilities in solving problems in science. An initial version of SOLVEIT was used in this study. This paper details the features of SOLVEIT that are contextualized within the biological domains of evolution and ecology. A qualitative case study was conducted to evaluate the usability of the program. Selected students were recruited from an introductory biology course at a large public university in the south‐eastern United States. Data for this study were collected through the SOLVEIT database and semi‐structured interviews. The findings of this study demonstrate the potential of the program for improving students' problem solving in biology. Suggestions for the use of SOLVEIT and its further improvement and development are discussed, along with suggestions for future research. This study also provides more general guidance for researchers and practitioners who are interested in the design, development and evaluation of Web‐based tutorial programs in science education.  相似文献   

13.
本文论述一个在Transputer环境上设计并实现的一阶谓词逻辑程序解释器IFLP,着重讨论了其核心词法分析部分与合一回溯算法部分的实现机制,并给出相庆的运行实例。IFLP具有程序动态跟踪功能,能够随时指示问题求解过程中的逻辑推理步骤和解题轨迹,有助于用户了解程序的动态行为和调试复杂的逻辑程序。  相似文献   

14.
线性递归Da taL og 程序优化算法   总被引:2,自引:0,他引:2  
提出了线性齐次DataLog逻辑程序的概念,并为该类程序设计了一个优化的求解算法。在此基础上提出了求解一般线性DataLog程序的优化算法,该算法利用带有的约束条件的递归调用方法,将线性DataLog程序求解问题变换成齐次程序的求解问题。算法简单,易于实现,可应用于任何线性DataLog程序的求解。  相似文献   

15.
The paper is concerned with the question of whether and under what conditions active help systems with plan recognition components that have been developed in the environment of artificial intelligence research are able to prove their value in the real context of commercial application programs. The question is investigated using the development of the COMFOHELP intelligent help system as an example. COMFOHELP supports the COMFOTEX graphical text processing program and has been developed by the Linguistic Information Science Group at the University of Regensburg since 1988. The system recognizes erroneous and suboptimal plans pursued by the user by analyzing the dialog history and comparing them with the correct plan for achieving the user's goal.Section 2 discusses the research situation and elaborates on those problems which up to now prevented research concepts for plan recognition and intelligent help systems from being practically applied. Testing error situations empirically is a first prerequisite since potential erroneous plans can only be established in real-world tests. The second prerequisite is a special system architecture which counteracts the problem of ambiguities in plan recognition. Section 3 introduces a first still restricted prototype version of COMFOHELP whose efficiency was verified in a statistical hypothesis test. The users performing their text processing tasks with the support of COMFOHELP came off significantly better than members of a reference group working without the intelligent help. Section 4 shows that the proposed COMFOHELP system architecture is reconfirmed by the results of extensive empirical investigations (with more than 100 users) of erroneous plans when using a more complex version of COMFOTEX. The architecture still proves to be worthwhile even when functionality is increased by a factor of three to four.  相似文献   

16.
17.
基于编译技术的程序可视化   总被引:4,自引:0,他引:4  
程序可视化的目的是使程序的内部结构以及行为可视化更容易被理解。程序可视化工具有助于程序员理解程序的实际行为和其开发的深层的系统,以及调试程序或者测试程序所用资源。特别是对于正在学习初级编程的人,程序可视化工具能帮助他们学习一个程序是如何被编译和执行的。因此,有必要进行关于程序执行可视化的研究。介绍了一种以编译技术,主要是以词法分析和语法分析为基础的开发程序可视化工具的方法,并给出了C语言程序执行可视化工具的实例,以说明该方法的实用性。该工具是在程序执行特征测试工具的基础上,将其词法分析器和词法分析器加以修改而实现的。  相似文献   

18.
准确刻画不确定环境中复杂程序的动态特性,是传统程序分析理论和技术面临的难点,更是许多重要系统实现程序动态实时分析与控制过程亟待解决的问题。本文提出基于Q学习的复杂程序动态分析思想,构造了基于Q学习的复杂程序动态依赖性分析基本算法。并对复杂程序动态实时分析与控制技术的实现环节进行了研究,探讨了相关问题,从而使复杂程序动态分析与控制过程更精炼、更智能、更高效。  相似文献   

19.
The ParaScope Editor, an intelligent interactive editor for parallel Fortran programs, which is the centerpiece of the ParaScope project, an integrated collection of tools to help scientific programmers implement correct and efficient parallel programs, is discussed. ParaScope Editor reveals to users potential hazards of a proposed parallelization in a program. It provides a variety of powerful interactive program transformations that have been shown useful in converting programs to parallel form. ParaScope Editor supports general user editing through a hybrid text and structure editing facility that incrementally analyzes the modified program for potential hazards. It is shown that ParaScope Editor supports an exploratory programming style in which users get immediate feedback on their various strategies for parallelization  相似文献   

20.
A robust technology that automates the diagnosis of students' programs is essential for programming tutoring systems. Such technology should be able to determine whether programs coded by a student are correct. If a student's program is incorrect, the system should be able to pinpoint errors in the program as well as explain and correct the errors. Due to the difficulty of this problem, no existing system performs this task entirely satisfactorily, and this problem still hampers the development of programming tutoring systems. This paper describes a transformation-based approach to automate the diagnosis of students' programs for programming tutoring systems. Improved control-flow analysis and data-flow analysis are used in program analysis. Automatic diagnosis of student programs is achieved by comparing the student program with a specimen program at the semantic level after both are standardized. The approach was implemented and tested on 525 real student programs for nine different programming tasks. Test results show that the method satisfies the requirements stated above. Compared to other existing approaches to automatic diagnosis of student programs, the approach developed here is more rigorous and safer in identifying student programming errors. It is also simpler to make use of in practice. Only specimen programs are needed for the diagnosis of student programs. The techniques of program standardization and program comparison developed here may also be useful for research in the fields of program understanding and software maintenance.  相似文献   

设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号