PK

P.E.F. Klop

info

Please Note

2 records found

Incorporating Natural Language Understanding for Efficient Program Synthesis

Master thesis (2023) - P.E.F. Klop, A.E. Zaidman, S. Dumančić, Gust Verbruggen
This research introduces a Language Model Augmented Program Synthesis (LMAPS) workflow to enhance traditional Programming by Example (PBE). PBE is a method to automatically generate a program that satisfies a specification that consists of a set of input-output examples. These program specifications are often defined by a few examples, which can lead to multiple programs that satisfy the given examples. In addition, PBE synthesisers have to explore a huge inefficient search space to solve these problems. The LMAPS workflow incorporates three components to overcome these limitations of PBE by using the language understanding capabilities of Large Language Models (LLM). LLMs can assist in generating a well-defined specification to mitigate the ambiguity issue inherent in PBE. The core component of LMAPS leverages the capabilities of LLMs to generate programs. These programs can be decomposed into building blocks to create a concise grammar for an inductive program synthesiser. This optimized grammar makes it able to synthesise correct programs at lower depths, make the workflow more efficient. LLMs can also aid in understanding the automatically generated programs, as these programs can be hard to interpret by humans. We compare LMAPS to a traditional PBE workflow in the task of synthesising regular expressions across four data sets. The results demonstrated that LMAPS can significantly reduce the search space for program synthesis and achieve up to 40% higher accuracy than PBE-only systems. Our research indicates that integrating LLMs into a typical PBE workflow shows significant improvements because of their combined strengths, resulting in a more accurate, efficient, and human-aligned workflow. ...
During this project, we have explored the possibilities for an algorithm that can schedule multiple visits taking into consideration constraints and KPIs. The solution we came up with has been integrated into Dropboard and is ready to be used in production by Dropboard’s clients. Our algorithm takes as input the visits to be scheduled. It then sorts these visits based on heuristics and schedules each visit in this order on its best location, using the single visit/ single resource allocation algorithm that was already present in Dropboard. Multiple plans are generated and post schedule optimised to possibly improve their rating. These plans are shown to the user with their rating in each KPI, and the user can select them to view them on the chart. Finally, a user is able to select a plan and persist it into the operational plan. ...