An infinite set is orbit-finite if, up to permutations of the underlying structure of atoms, it has only finitely many elements. We study a generalisation of linear programming where constraints are expressed by an or...
详细信息
ISBN:
(纸本)9798350335873
An infinite set is orbit-finite if, up to permutations of the underlying structure of atoms, it has only finitely many elements. We study a generalisation of linear programming where constraints are expressed by an orbit-finite system of linear inequalities. As our principal contribution we provide a decision procedure for checking if such a system has a real solution, and for computing the minimal/maximal value of a linear objective function over the solution set. We also show undecidability of these problems in case when only integer solutions are considered. Therefore orbit-finite linear programming is decidable, while orbit-finite integer linear programming is not.
This paper presents an approach to authoring a textbook titled Interactive OpenMP programming with the assistance of Large Language Models (LLMs). The writing process utilized state-of-the-art LLMs, including Gemini P...
详细信息
ISBN:
(数字)9783031725678
ISBN:
(纸本)9783031725661;9783031725678
This paper presents an approach to authoring a textbook titled Interactive OpenMP programming with the assistance of Large Language Models (LLMs). The writing process utilized state-of-the-art LLMs, including Gemini Pro 1.5, Claude 3, and ChatGPT-4, to generate the initial structure and outline of the book, as well as the initial content for specific chapters. This content included detailed descriptions of individual OpenMP constructs and practical programming examples. The outline and content have then undergone extensive manual revisions to meet our book goals. In this paper, we report our findings about the capabilities and limitations of these LLMs. We address critical questions concerning the necessity of textbook resources and the effectiveness of LLMs in creating fundamental and practical programming content. Our findings suggest that while LLMs offer significant advantages in generating textbook content, they require careful integration with traditional educational methodologies to ensure depth, accuracy, and pedagogical effectiveness. The Interactive OpenMP programming book is developed with the framework of Jupyter Book, enabling the execution of code within the book from the web browser, providing instant feedback and a dynamic learning experience that stands in contrast to traditional educational resources. The book represents a significant step towards modernizing programming education, offering insights into practical strategies for generating the textbook through advanced AI tools.
This paper presents a method for building a programming platform for ternary optical computer(TOC). Firstly, the reasons why the existing programming platform can not be directly applied to the ternary optical compute...
详细信息
This paper presents a method for building a programming platform for ternary optical computer(TOC). Firstly, the reasons why the existing programming platform can not be directly applied to the ternary optical computer are analyzed. Then, the theoretical basis and core technologies for building the programming platform of the ternary optical computer are given, including: building a model-simple structured data type computer to express the application characteristics of the ternary optical computer, building an operation-data file containing data and computational requirements, expanding the operation-data file transfer instructions. According to our proposed theory, the implementation mechanism of the TOC programming platform is constructed. Finally, the effectiveness of the programming platform is verified by experiments. The programming platform simplifies the application of the TOC and bridges the gap between the user and the TOC.
The advent of Network Function Virtualization(NFV)and Service Function Chains(SFCs)unleashes the power of dynamic creation of network services using Virtual Network Functions(VNFs).This is of great interest to network...
详细信息
The advent of Network Function Virtualization(NFV)and Service Function Chains(SFCs)unleashes the power of dynamic creation of network services using Virtual Network Functions(VNFs).This is of great interest to network operators since poor service quality and resource wastage can potentially hurt their revenue in the long ***,the study shows with a set of test-bed experiments that packet loss at certain positions(i.e.,different VNFs)in an SFC can cause various degrees of resource wastage and performance degradation because of repeated upstream processing and transmission of retransmitted *** overcome this challenge,this study focuses on resource scheduling and deployment of SFCs while considering packet loss *** study developed a novel SFC packet dropping cost model and formulated an SFC scheduling problem that aims to minimize overall packet dropping cost as a Mixed-Integer Linear programming(MILP)and proved that it is *** this study,Palos is proposed as an efficient scheme in exploiting the functional characteristics of VNFs and their positions in SFCs for scheduling resources and deployment to optimize packet dropping *** experiment results show that Palos can achieve up to 42.73%improvement on packet dropping cost and up to 33.03%reduction on average SFC latency when compared with two other state-of-the-art schemes.
In the literature one can find various methods for solving full fuzzy linear programming problems. Very few of them fully comply to the extension principle. In the current study we extend an existing solution approach...
详细信息
ISBN:
(纸本)9798350359718;9788396960160
In the literature one can find various methods for solving full fuzzy linear programming problems. Very few of them fully comply to the extension principle. In the current study we extend an existing solution approach based on the extension principle to derive fuzzy-set optimal results to full fuzzy linear programming problems with L-R fuzzy parameters. Our approach is a twofold extension of a procedure from the literature: (i) it employs L-R membership functions in the optimization models that derive fuzzy-set optimal objective values;and (ii) it introduces new optimization models for deriving fuzzy-set optimal solution values in accordance to the extension principle and product operator. The employment of the product operator makes the derived fuzzy-set results more thinner, thus more appropriate to further decision making.
The growing use of machine learning algorithms in decisions that significantly affect people necessitate interpretable and fair approaches. Mathematical programming based machine learning models have attracted attenti...
详细信息
ISBN:
(纸本)9783031779404;9783031779411
The growing use of machine learning algorithms in decisions that significantly affect people necessitate interpretable and fair approaches. Mathematical programming based machine learning models have attracted attention because of the flexibility they provide to integrate features like interpretability and fairness, combined with high accuracy. This work introduces a mathematical programming based classification tree that uses a game theoretic approach to address group fairness. The proposed mathematical formulation is a Mixed Integer Linear programming model using a piecewise linearisation strategy based on special-ordered sets. The overall misclassification rate is the fairness metric examined and the Nash bargaining scheme is followed to balance the trade off between the misclassification error of the groups. The efficiency of the methodology is evaluated via three binary and multi-class literature datasets, which provide evidence for the fairness and accuracy of the predictions made by the model.
Automatic program repair (APR) tools are valuable for students to assist them with debugging tasks since program repair captures the code modification to make a buggy program pass the given test-suite. However, the pr...
详细信息
Automatic program repair (APR) tools are valuable for students to assist them with debugging tasks since program repair captures the code modification to make a buggy program pass the given test-suite. However, the process of manually generating catalogs of code modifications is intricate and time-consuming. This article proposes contextual error model repair (CEMR), an automated program repair tool for introductory programming assignments. CEMR is designed to learn program code modifications from incorrect-correct code pairs automatically. Then, it utilizes these code modifications along with CodeBERT, a generative AI, to repair students' new incorrect programs in the same programming assignment. CEMR builds on the observation that code edits performed by students in pairs of incorrect-correct code can be used as input-output examples for learning code modifications. The key idea of CEMR is to leverage the wisdom of the crowd: it uses the existing code modifications of incorrect-correct student code pairs to repair the new incorrect student attempts. We chose three of the most related APR tools, Refazer, Refactory, and AlphaRepair, as the baselines to compare against CEMR. The experimental results demonstrate that, on public and real classroom datasets, CEMR achieves higher repair rates than the baselines. Through further analysis, CEMR has demonstrated promising effectiveness in addressing semantical and logical errors while its performance in fixing syntactical errors is limited. In terms of time for repairing buggy programs, CEMR costs approximately half as much as AlphaRepair requires. We opine that CEMR not only be seen as a program repair method that achieves good results with incorrect-correct code pairs but also be further utilized to generate hints to better assist students in learning programming.
We evaluated the capability of generative pre-trained transformers (GPT), to pass assessments in introductory and intermediate Python programming courses at the postsecondary level. Discussions of potential uses (e.g....
详细信息
ISBN:
(纸本)9798400701382
We evaluated the capability of generative pre-trained transformers (GPT), to pass assessments in introductory and intermediate Python programming courses at the postsecondary level. Discussions of potential uses (e.g., exercise generation, code explanation) and misuses (e.g., cheating) of this emerging technology in programming education have intensified, but to date there has not been a rigorous analysis of the models' capabilities in the realistic context of a full-fledged programming course with diverse set of assessment instruments. We evaluated GPT on three Python courses that employ assessments ranging from simple multiple-choice questions (no code involved) to complex programming projects with code bases distributed into multiple files (599 exercises overall). Further, we studied if and how successfully GPT models leverage feedback provided by an auto-grader. We found that the current models are not capable of passing the full spectrum of assessments typically involved in a Python programming course (<70% on even entry-level modules). Yet, it is clear that a straightforward application of these easily accessible models could enable a learner to obtain a non-trivial portion of the overall available score (>55%) in introductory and intermediate courses alike. While the models exhibit remarkable capabilities, including correcting solutions based on auto-grader's feedback, some limitations exist (e.g., poor handling of exercises requiring complex chains of reasoning steps). These findings can be leveraged by instructors wishing to adapt their assessments so that GPT becomes a valuable assistant for a learner as opposed to an end-to-end solution.
In this work, we developed an algorithm for detecting code quality issues in the templates of online programming tasks, validated it, and conducted an empirical study on the dataset of student solutions. The algorithm...
详细信息
ISBN:
(纸本)9798400701382
In this work, we developed an algorithm for detecting code quality issues in the templates of online programming tasks, validated it, and conducted an empirical study on the dataset of student solutions. The algorithm consists of analyzing recurring unfixed issues in solutions of different students, matching them with the code of the template, and then filtering the results. Our manual validation on a subset of tasks demonstrated a precision of 80.8% and a recall of 73.3%. We used the algorithm on 415 Java tasks from the JetBrains Academy platform and discovered that as much as 14.7% of tasks have at least one issue in their template, thus making it harder for students to learn good code quality practices. We describe our results in detail, provide several motivating examples and specific cases, and share the feedback of the developers of the platform, who fixed 51 issues based on the output of our approach.
Functions containing arithmetic operations have often restrictions not expressible by standard type systems of programming languages. The division operation requires that the divisor is non-zero and the factorial func...
详细信息
ISBN:
(纸本)9789819789429;9789819789436
Functions containing arithmetic operations have often restrictions not expressible by standard type systems of programming languages. The division operation requires that the divisor is non-zero and the factorial function should not be applied to negative numbers. Such partial operations might lead to program crashes if they are applied to unintended arguments. Checking the arguments before each call is tedious and decreases the run-time efficiency. To avoid these disadvantages and support the safe use of partially defined operations, we present an approach to verify the correct use of operations at compile time. To simplify its use, our approach automatically infers non-fail conditions of operations from their definitions and checks whether these conditions are satisfied for all uses of the operations. Arithmetic conditions can be verified by SMT solvers, whereas conditions in operations defined on algebraic data types can be inferred and verified by appropriate type abstractions. Therefore, we present a hybrid method which is applicable to larger programs since only a few arithmetic non-fail conditions need to be checked by an external SMT solver. This approach is implemented for functional logic Curry programs so that it is also usable for purely functional or logic programs.
暂无评论