Problem formulation - dspace.sliit.lkdspace.sliit.lk/bitstream/123456789/531/1/IT14026430.docx  ·...

10
Enhancing FET for better use M.H.J.S. Wickramarathne Department of information technology Sri Lanka institute of information technology Sri Lanka [email protected] K.A.A.K.R. Amarasinghe Department of information technology Sri Lanka institute of information technology Sri Lanka [email protected] N. Kodagoda Department of software engineering Sri Lanka institute of information technology Sri Lanka [email protected] K.V.S.S. Vidyarathne Department of information technology Sri Lanka institute of information technology Sri Lanka [email protected] A.M.A.S. Dulanjika Department of information technology Sri Lanka institute of information technology Sri Lanka [email protected] T. K. Suriyawansa Department of information technology Sri Lanka institute of information technology Sri Lanka [email protected] AbstractFET is an AGPL licensed, free time tabling software for automatically scheduling the timetable of a school, high-school or university written in C++ using the Qt cross-platform application framework. The existing system has Localized to many languages, Automatic generation algorithm, semi- automatic or manual allocation, platform independent implementation, flexible modular XML format for the input file and output in CSV format. Although FET facilitates many features, it has some major limitations when creating the timetables such as time table modification issues, less user friendliness, more repetitive activities, low learnability. This research focuses on the how we can overcome these existing limitations in FET application.. To attain the objective of our research we used Domain specific language, Human computer interaction methodologies, C++, Qt and Scalar technologies. Key words FET-existing software name DSL-domain specific language Introduction An educational timetabling is a multi- dimensional and highly constrained problem. Generating educational timetables manually, often involves numerous rounds of changes before they can be on a satisfactory level. Usually such a process takes several days, and often the quality of the timetables is compromised due to the pressure to release the timetables on time. Thus, automatic generation of timetables then seems to be an attractive approach. This

Transcript of Problem formulation - dspace.sliit.lkdspace.sliit.lk/bitstream/123456789/531/1/IT14026430.docx  ·...

Page 1: Problem formulation - dspace.sliit.lkdspace.sliit.lk/bitstream/123456789/531/1/IT14026430.docx  · Web viewAnd generated time tables are saving with the HTML format, it doesn’t

Enhancing FET for better use

M.H.J.S. WickramarathneDepartment of information technology

Sri Lanka institute of information technologySri Lanka

[email protected]

K.A.A.K.R. AmarasingheDepartment of information technology

Sri Lanka institute of information technologySri Lanka

[email protected]

N. KodagodaDepartment of software engineering

Sri Lanka institute of information technologySri Lanka

[email protected]

K.V.S.S. VidyarathneDepartment of information technology

Sri Lanka institute of information technologySri Lanka

[email protected]

A.M.A.S. DulanjikaDepartment of information technology

Sri Lanka institute of information technologySri Lanka

[email protected]

T. K. SuriyawansaDepartment of information technology

Sri Lanka institute of information technologySri Lanka

[email protected]

Abstract—FET is an AGPL licensed, free time tabling software for automatically scheduling the timetable of a school, high-school or university written in C++ using the Qt cross-platform application framework. The existing system has Localized to many languages, Automatic generation algorithm, semi-automatic or manual allocation, platform independent implementation, flexible modular XML format for the input file and output in CSV format. Although FET facilitates many features, it has some major limitations when creating the timetables such as time table modification issues, less user friendliness, more repetitive activities, low learnability. This research focuses on the how we can overcome these existing limitations in FET application.. To attain the objective of our research we used Domain specific language, Human computer interaction methodologies, C++, Qt and Scalar technologies.

Key words

FET-existing software name

DSL-domain specific language

Introduction

An educational timetabling is a multi-dimensional and highly constrained problem. Generating educational timetables manually, often involves numerous rounds of changes before they can be on a satisfactory level. Usually such a process takes several days, and often the quality of the timetables is

compromised due to the pressure to release the timetables on time. Thus, automatic generation of timetables then seems to be an attractive approach. This research is to introduce enhancements for existing FET timetable management system which is one of the outstanding open source application to automate the timetabling process. Target of this research is to overcome major problems those exist in current FET software by introducing new DSL / mobile application / attractive data insertion and querying methods etc.

I. PROBLEM FORMULATION

Timetables management is a rigorous process for larger institutions, schools etc. When it comes to time table creating, coordinator has to think about many aspects. For an example the coordinator has to have an idea on what are the lecture rooms, what are the laboratories and the spaces available in each ones, the number of student groups and the spaces required for a specific subject because some groups are larger in size and some are smaller in size, lectures are free for the allocated slot, and also there are some slots that are fixed because visiting lectures visits on that fixed time only. After complete generating the timetables, there can be a requirement to change a slot in a timetable. In order to accommodate such requirements, timetable coordinator has to manually change the timetables which will take much effort and time. Thus institutes use many software to generate time tables. Chosen application for enhancement is FET which is an open source software that gives more functionalities for users to generate time tables. But it has some limitations and some problems associated with it. Main problems with FET is once the time

Page 2: Problem formulation - dspace.sliit.lkdspace.sliit.lk/bitstream/123456789/531/1/IT14026430.docx  · Web viewAnd generated time tables are saving with the HTML format, it doesn’t

tables are fully generated and finalized there is no direct approach to use the system to make changes to the time table. If the tool is used for it, it would regenerate all the time tables for all student groups. Hence this feature is done manually at present. UI perspective of the application is also inflexible to create a time table with the existing system. It will need a special knowledge and training to generate time table with the current system. And generated time tables are saving with the HTML format, it doesn’t facilitate for the PDF/EXCEL /WORD formats. In the current FET system, constraints deletion can only be performed one by one. And the UI of the application is not much user friendly. In addition, there is no proper way to retrieve the data efficiently.

II. ITERATURE SURVEY

Timetabling is most common topic useful system for universities, schools, etc. There are many timetabling systems are existing in the world. But no existing software can produce all the features which needs and useful in timetabling. Every system come up with at least one missed important part. Following tables shows the comparison among features of existing systems and proposed solution, as per our background study on existing timetabling systems we found 4 major systems regarding timetabling.

Table 2.0 system comparison

Existing system

Timetable Modification

Mobile App Support

DSL User Friendly GUI

FET √ × × ×Wise Timetable √ √ × √ABC Timetable × × × ×Proposed Solution √ √ √ √

Planning timetable is one of the most complex and error prone application. There are still serious problems like generation of high cost time table are occurring while scheduling and these problems are repeating frequently. [1] Therefore there is a great requirement for an application distributing the course evenly and without collisions. The aim is here to develop a simple, easily understandable, efficient and portable application which could automatically generate good quality time table with in a second. [2] .one way is using active rules and Genetic algorithm to generate the optimized solution. [3]Genetic Algorithm and Active Rules together form a complete sphere for developing a system, which needs to satisfy various constraints. [3] The second approach of the timetabling generating using Heuristic approach. Due to

complexity of the problem, most of the work done concentrates on heuristic algorithms which try to find good approximate solutions [3] Heuristic optimization methods are explicitly aimed at good feasible solutions that may not be optimal where complexity of problem or limited time available does not allow exact solution. Generally, two questions arise (i) How fast the solution is computed? And (ii) How close the solution is to the optimal one?[4]

III. SOLUTION AND TECHNIQUES

The methodologies used for course timetabling problems can be classified as sequential methods, cluster methods, constraint-based methods, and meta-heuristic methods (Burke & Petrovic 2002).[5] It is also possible to classify the timetabling problems in terms of the specific solution techniques used. The common solution techniques used in timetabling research are graph coloring heuristics, mathematical programming, tabu search, simulated annealing, genetic algorithms, network flow models, and constraint programming (Benli & Botsali 2004).[6] Among these techniques, we have chosen constraint based technique to develop the changing algorithm. We have referred the current output file which is in XML format and found the types of constraints. The current fet system is using Several types of constraints belonging to time constraints and space constraints to lock the slots.

Page 3: Problem formulation - dspace.sliit.lkdspace.sliit.lk/bitstream/123456789/531/1/IT14026430.docx  · Web viewAnd generated time tables are saving with the HTML format, it doesn’t

Figure 3.1 identified space constraintsFigure 3.2 identified time constraints

Among from the identified constraints we have selected two constraints to lock the slots that we do not want to change.

An Activity has a preferred room An Activity has a preferred stating time

Once the timetables are generated if we want to change a timeslot of an activity we are taking the current FET file, activity module name student group as the inputs to the changing algorithm. Proposed changing algorithm will automatically freeze all the other slots in the fet file except the slots to change. As the next step, system will remove all existing constraints which are related to time and space of the slots that have to be changed.. Then the modified fet file will be shown in the current fet system and can assign a new time and space for the slot that need be changed. Afterwards pressing the generate button in timetable tab will generate the new timetable without any changes other than the slot that we have mentioned to changed.

Figure 3.3 system diagram of changing algorithm

In the report generation algorithm the main data source will be the subgroup XML. With the xml file building, room, teacher, student group and subject details of whole institute are added to a 2 dimensional array and from that we are generating individual time tables for each teacher, subgroup, room in both PDF and Excel formats which are helpful students and timetable coordinators.

Figure 3.4 system diagram of report generator

A Domain-specific language (DSL) is a computer language specialized to a particular application domain. This is in contrast to a general-purpose language (GPL), which is broadly applicable across domains.[7]For an easy data retrieval process, a DSL is developed along with the existing FET application. The main data source is the subgroup.xml file. Data are extracted from the subgroup.xml file and stored in a formatted database with the column names of student group, teacher, module, hall, day, time and activity name. There will be

No of student groups*no of days*no of hours

Number of rows in the data table. Each cell in data table is called as activity, the empty cells or the empty cell are filled with “No result found” key word. This can be processed in DSL GUI. Once the data is loaded to the data table data retrieval querying can be done with the DSL. The query language and the grammar is well defined with studies with the existing timetabling systems. When installing the DSL is asking for a keyword customization. The specialty of this DSL is language can be customized according to any institute. That is for example if a particular institute is using the word “Module” for a subject they can use Module keyword for querying after a small configuration in configuration file. Once the configuration is done with the file it is mapped to the default keywords from the backend. And the reusable queries can be saved in the user’s directory for reuse as well. One the query is executed the output will prompt in the DSL UI in textual way that can be copied to the clipboard. Duplication values are not displayed and accuracy will be 100% for data retrieval. For the utilization we developed a pie chart generator. From that user can view the teacher, room, student group utilizations according to the academic day according to the institute. The calculation formula as follows.

X = (No of hrs.*No of Days) – YWhere,

X is free hours for room/teacher/student groupY is room/teacher/student group working hour count

Page 4: Problem formulation - dspace.sliit.lkdspace.sliit.lk/bitstream/123456789/531/1/IT14026430.docx  · Web viewAnd generated time tables are saving with the HTML format, it doesn’t

With the querying we can generate a fet that is same as the fet file generated by fet application file that can be imported to fet application and generate a timetable. The queries can be saved and can be reuse. With querying the user can add building information, rooms, teachers, student groups, activities, modules, and constrains to the fet file. The fet file generated by the DSL is same as the fet file generated by FET application. This will be easier when get fermilier with the querting than sing the FET gui. Users can crate timetables with a simple set of query execution.The following diagram explains how the DSL works.

Figure 3.5 system diagram for DSL

“Human-Computer Interaction (HCI) is about designing a computer system that supports people so that they can carry out their activities productively and safely” [8]. In order to achieve the research aims, HCI design and evaluation techniques that are been used in design and evaluation process are followed. As the initial step, a literature review was conducted. Through that the techniques and methods available and among them are identified and selected the suitable techniques that has to apply to the research. As the starting point, requirement gathering is needed in order to find out specific requirements for new system and problems of existing systems. Firstly stakeholders that need to contact in order to gather requirements are identified. Then they are interviewed. Interviews can be used to gather requirements, as they have been used in human factors to gather specific information regarding many different areas such as system design, system usability, task analysis and much more. Critical Decision Method (CDM) is used for gathering requirement. “The Critical Decision Method is a semi-structured interview technique that uses a set of cognitive probes in order to elicit information regarding expert decision making” [9].

CDM Data Gathering

According to CDM interview methodology, semi-structured interviews are conducted and used specific questions to obtain required data. Open-ended questions are used to gather more specific data on the same field and used probes to do the progressive deepening. Interviewees were asked to think back to a particular memorable major incident and that they have gone through preparation of timetable, and asked them to describe that. All the interviews were audio recorded.

Table 3.1 Set of Probes

CDM Data AnalysisSummarization of incident is the first thing performed under CDM data analysis. All the interviews are transcribed. Key decision points are identified and charted. Decision Analyze Table is used to further more identifications.

Page 5: Problem formulation - dspace.sliit.lkdspace.sliit.lk/bitstream/123456789/531/1/IT14026430.docx  · Web viewAnd generated time tables are saving with the HTML format, it doesn’t

Figure 3.6. The CDM Decision Analysis Process

Emergent Themes Analysis (ETA)To analyze data, Emergent Themes Analysis (ETA) is used. Emergent Themes Analysis Approach is an iterative distillation process to reduce and to make sense of voluminous interview data [10]. There we figured out Broad Themes which are identified from the interview. From that Specific Themes/Sub Themes are identified. Identified specific themes and supportive data are summarized to a Summery Table. Relationships are identified through the analysis.

Figure 3.7. Emergent themes analysis process

Table 3.2 Summery Table

Figure 3.8. Conceptual model (Interactive Querying)

Figure 3.9. Relationship Diagram (Interactive Insertion)

IV EXPERIMENTAL RESULTS

The system was implemented in C++, java tested several times with different timetables

Page 6: Problem formulation - dspace.sliit.lkdspace.sliit.lk/bitstream/123456789/531/1/IT14026430.docx  · Web viewAnd generated time tables are saving with the HTML format, it doesn’t

Figure 4.1 timetable before edit Figure 4.2 timetable after edit

Figure 4.3 report PDF

Page 7: Problem formulation - dspace.sliit.lkdspace.sliit.lk/bitstream/123456789/531/1/IT14026430.docx  · Web viewAnd generated time tables are saving with the HTML format, it doesn’t

Figure 4.4 report Excel

Figure 4.5 DSL query

Figure 4.6 DSL Output

Figure 4.7 DSL Pie chart

The preferred spelling of the word “acknowledgment” in America is without an “e” after the “g.” Avoid the stilted expression “one of us (R. B. G.) thanks ...”. Instead, try “R. B. G. thanks...”. Put sponsor acknowledgments in the unnumbered footnote on the first page.

V DISCUSSION

In future changing algorithm will improve to handle any changes in FET system. Further PDF and excel repots are allowing to download through mobile application. Domain specific language is to develop with more types of queries and more data analytical retrievals. As enhanced FET system much functionalities minimize the complexity of the handing the system. The user interfaces are mainly categorized in to two sections and namely data insertion and data querying. In Fig. 5 provides simplified whole structure of the data insertion and generating timetable. The system interfaces have been

made by providing sequence of the generating time tables.

This make easy for the time table coordinators to work with the FET system. In Fig. 6 provides data querying functionality supportiveness. Data querying facilitates users to search in different manner. Free lecture halls, instructor allocation, modules …etc.

REFERENCES

[1] Alberto Colorni, Marco Dorigo “A Genetic Algorithm to solve the time table problem” Available : http://citeseerx.ist.psu.edu

[2] Evaggelos Nonas, Alexandra Poulovassilis, ”optimisation of active rule agents using a genetic algorithm approach pdf” Available : http://ebookbrowse.com/optimisation-of-active-rule-agentsusing-a-genetic-algorithm-approach-pdf-d381872402.

[3] S. Abdullah, E. K. Burke and B. McCollum, “A Hybrid Evolutionary Approach to the University Course Timetabling Problem”, Proceedings of the IEEE Congress Evolutionary Computation, Singapore, (2007).

[4] Genetic algorithm to generate the automatic time table – An overview.pdf

[5] Chapter 2 Tabu Search Michel Gendreau and Jean-Yves Potvin

[6] An Optimization-Based Decision Support System for a University Timetabling Problem: An Integrated Constraint and Binary Integer Programming Approach

[7] https://en.wikipedia.org/wiki/Domain-specific_language

[8] Preece J, Rogers Y, Sharp H (2002) Interaction design: beyond human-computer interaction.Wiley, New York

[9] Salmon, P., Stanton, N., Walker, G., & Green, D. (2004). Human factors design and evaluation methods review. Unpublished HFI DTC report to UK MoD, report reference HFIDTC/1.3, 3, 1-1.

Page 8: Problem formulation - dspace.sliit.lkdspace.sliit.lk/bitstream/123456789/531/1/IT14026430.docx  · Web viewAnd generated time tables are saving with the HTML format, it doesn’t

[10] Wong, BL William, and A. E. Blandford. "Analysing ambulance dispatcher decision making: Trialing emergent themes analysis." Proceedings of the HF2002 Human Factors Conference: Design for the whole person:

integrating physical, cognitive and social aspects. Ergonomics Society of Australia, 2002.