Instructional Material
Pedagogical Explorations in Computational Perception for Performance
O' (Bard College) | Hara, Keith
Experience using computational perception within the context of art and performance is reported. Four different types of pedagogical projects are presented: a new non-majors introductory computing course, an upper-level course covering computer vision and graphics inan integrated manner, an interactive dance piece, and a peer-led tele-workshop outreach series.
An Undergraduate Course in the Intersection of Computer Science and Economics
Conitzer, Vincent (Duke University)
In recent years, major research advances have taken place in the intersection of computer science and economics, but this material has so far been taught primarily at the graduate level. This paper describes a novel semester-long undergraduate-level course in the intersection of computer science and economics at Duke University, titled โCPS 173: Computational Microeconomics.โ
Teaching Problem-Solving in Algorithms and AI
Torrey, Lisa A. (St. Lawrence University)
This paper suggests some teaching strategies for Algorithms and AI courses. These courses can have a common goal of teaching complex problem-solving techniques. Based on my experience teaching undergraduates in a small liberal-arts college, the paper offers concrete ideas for working toward this goal. These ideas are supported by relevant studies in cognitive science and education. Together, they provide a plan for structuring lessons and assignments to help student become better problem-solvers.
Automatically Generating Algebra Problems
Singh, Rohit (Massachusetts Institute of Technology) | Gulwani, Sumit (Microsoft Research) | Rajamani, Sriram (Microsoft Research)
We propose computer-assisted techniques for helping with pedagogy in Algebra. In particular, given a proof problem p (of the form โLeft-hand-side-term = Right-hand-side-termโ), we show how to automatically generate problems that are similar to p. We believe that such a tool can be used by teachers in making examinations where they need to test students on problems similar to what they taught in class, and by students in generating practice problems tailored to their specific needs. Our first insight is that we can generalize p syntactically to a query Q that implicitly represents a set of problems [[Q]] (which includes p). Our second insight is that we can explore the space of problems [[Q]] automatically, use classical results from polynomial identity testing to generate only those problems in [[Q]] that are correct, and then use pruning techniques to generate only unique and interesting problems. Our third insight is that with a small amount of manual tuning on the query Q, the user can interactively guide the computer to generate problems of interest to her. We present the technical details of the above mentioned steps, and also describe a tool where these steps have been implemented. We also present an empirical evaluation on a wide variety of problems from various sub-fields of algebra including polynomials, trigonometry, calculus, determinants etc. Our tool is able to generate a rich corpus of similar problems from each given problem; while some of these similar problems were already present in the textbook, several were new!
Opportunities and Challenges for Constraint Programming
O' (University College Cork) | Sullivan, Barry
Constraint programming has become an important technology for solving hard combinatorial problems in a diverse range of application domains. It has its roots in artificial intelligence, mathematical programming, op- erations research, and programming languages. This paper gives a perspective on where constraint programming is today, and discusses a number of opportunities and challenges that could provide focus for the research community into the future.
Tractable Set Constraints
Bodirsky, Manuel, Hils, Martin, Krimkevich, Alex
Many fundamental problems in artificial intelligence, knowledge representation, and verification involve reasoning about sets and relations between sets and can be modeled as set constraint satisfaction problems (set CSPs). Such problems are frequently intractable, but there are several important set CSPs that are known to be polynomial-time tractable. We introduce a large class of set CSPs that can be solved in quadratic time. Our class, which we call EI, contains all previously known tractable set CSPs, but also some new ones that are of crucial importance for example in description logics. The class of EI set constraints has an elegant universal-algebraic characterization, which we use to show that every set constraint language that properly contains all EI set constraints already has a finite sublanguage with an NP-hard constraint satisfaction problem.
On Formal Specification of Maple Programs
Khan, Muhammad Taimoor, Schreiner, Wolfgang
This paper is an example-based demonstration of our initial results on the formal specification of programs written in the computer algebra language MiniMaple (a substantial subset of Maple with slight extensions). The main goal of this work is to define a verification framework for MiniMaple. Formal specification of MiniMaple programs is rather complex task as it supports non-standard types of objects, e.g. symbols and unevaluated expressions, and additional functions and predicates, e.g. runtime type tests etc. We have used the specification language to specify various computer algebra concepts respective objects of the Maple package DifferenceDifferential developed at our institute.
Software Verification and Graph Similarity for Automated Evaluation of Students' Assignments
Vujosevic-Janicic, Milena, Nikolic, Mladen, Tosic, Dusan, Kuncak, Viktor
In this paper we promote introducing software verification and control flow graph similarity measurement in automated evaluation of students' programs. We present a new grading framework that merges results obtained by combination of these two approaches with results obtained by automated testing, leading to improved quality and precision of automated grading. These two approaches are also useful in providing a comprehensible feedback that can help students to improve the quality of their programs We also present our corresponding tools that are publicly available and open source. The tools are based on LLVM low-level intermediate code representation, so they could be applied to a number of programming languages. Experimental evaluation of the proposed grading framework is performed on a corpus of university students' programs written in programming language C. Results of the experiments show that automatically generated grades are highly correlated with manually determined grades suggesting that the presented tools can find real-world applications in studying and grading.
Quasi-Newton Methods: A New Direction
Hennig, Philipp, Kiefel, Martin
Four decades after their invention, quasi-Newton methods are still state of the art in unconstrained numerical optimization. Although not usually interpreted thus, these are learning algorithms that fit a local quadratic approximation to the objective function. We show that many, including the most popular, quasi-Newton methods can be interpreted as approximations of Bayesian linear regression under varying prior assumptions. This new notion elucidates some shortcomings of classical algorithms, and lights the way to a novel nonparametric quasi-Newton method, which is able to make more efficient use of available information at computational cost similar to its predecessors.
Using AI Planning to Enhance E-Learning Processes
Garrido, Antonio (Universitat Politecnica de Valencia) | Morales, Lluvia (Universidad Tecnologica de la Mixteca) | Serina, Ivan (Free University of Bozen-Bolzano)
This work describes an approach that automatically extracts standard metadata information from e-learning contents, combines it with the student preferences/goals and creates PDDL planning domains+problems.These PDDL problems can be solved by current planners, although we motivate the use and benefits of case-based planning techniques, to obtain fully tailored learning routes that significantly enhance the learning process. During the execution of a given route, a monitoring phase is used to detect discrepancies, i.e. flaws that prevent the student from continuing with the original plan. In such a situation, an adaptation mechanism becomes necessary to fix the flaws, while also trying to minimise the differences between the original and the new route. We have integrated this approach on top of Moodle and experimented with 100 benchmark problems to evaluate the quality, scalability and viability of the system.