Using distributed agents to create university course timetables addressing essential & desirable constraints and fair allocation of resources

In this study, the University Course Timetabling Problem (UCTP) has been investigated. This is a form of Constraint Satisfaction Problem (CSP) and belongs to the NP-complete class. The nature of a such problem is highly descriptive, a solution therefore involves combining many aspects of the problem. Although various timetabling algorithms have been continuously developed for nearly half a century, a gap still exists between the theoretical and practical aspects of university timetabling. This research is aimed to narrow the gap. We created an agent-based model for solving the university course timetabling problem, where this model not only considers a set of essential constraints upon the teaching activities, but also a set of desirable constraints that correspond to real-world needs. The model also seeks to provide fair allocation of resources. The capabilities of agents are harnessed for the activities of decision making, collaboration, coordination and negotiation by embedding them within the protocol designs. The resulting set of university course timetables involve the participation of every element in the system, with each agent taking responsibility for organising of its own course timetable, cooperating together to resolve problems. There are two types of agents in the model; these are Year-Programme Agent and Rooms Agent. In this study, we have used four different principles for organising the interaction between the agents: First-In-First-Out & Sequential (FIFOSeq), First-In-First-Out & Interleaved (FIFOInt), Round-Robin & Sequential (RRSeq) and Round-Robin & Interleaved (RRInt). The problem formulation and data instances of the third track of the Second International Timetabling Competition (ITC-2007) have been used as benchmarks for validating these implemented timetables. The validated results not only compare the four principles with each other; but also compare them with other timetabling techniques used for ITC-2007. The four different principles were able to successfully schedule all lectures in different periods, with no instances of two lectures occupying the same room at the same time. The lectures belonging to the same curriculum or taught by the same teacher do not conflict. Every lecture has been assigned a teacher before scheduling. The capacity of every assigned room is greater than, or equal to, the number of students in that course. The lectures of each course have been spread across the minimum number of working days with more than 98 percent success, and for more than 75 percent of the lectures under the same curriculum, it has been possible to avoid isolated deliveries. We conclude that the RRInt principle gives the most consistent likelihood of ensuring that each YPA in the system gets the best and fairest chance to obtain its resources.

[1]  Liu Xin A Service-oriented Negotiation Model Between Autonomous Agents , 2003 .

[2]  Hana Rudová,et al.  Modeling and Solution of a Complex University Course Timetabling Problem , 2006, PATAT.

[3]  Michael Sampels,et al.  A MAX-MIN Ant System for the University Course Timetabling Problem , 2002, Ant Algorithms.

[4]  Anand S. Rao,et al.  AgentSpeak(L): BDI Agents Speak Out in a Logical Computable Language , 1996, MAAMAW.

[5]  M. Golfarelli,et al.  A Task-Swap Negotiation Protocol Based on the Contract Net Paradigm , 2000 .

[6]  Michael W. Carter A Comprehensive Course Timetabling and Student Scheduling System at the University of Waterloo , 2000, PATAT.

[7]  Luca Di Gaspero,et al.  Tabu Search Techniques for Examination Timetabling , 2000, PATAT.

[8]  Zbigniew Michalewicz,et al.  Genetic Algorithms + Data Structures = Evolution Programs , 2000, Springer Berlin Heidelberg.

[9]  Damjan Strnad,et al.  A MULTI-AGENT SYSTEM FOR UNIVERSITY COURSE TIMETABLING , 2007, Appl. Artif. Intell..

[10]  Boris Galitsky Agents with adjustable autonomy for scheduling in the competitive environment , 1999 .

[11]  Edmund K. Burke,et al.  The practice and theory of automated timetabling , 2014, Annals of Operations Research.

[12]  C. D. Gelatt,et al.  Optimization by Simulated Annealing , 1983, Science.

[13]  Alain Hertz,et al.  Finding a feasible course schedule using Tabu search , 1992, Discret. Appl. Math..

[14]  Robert Gibbons,et al.  A primer in game theory , 1992 .

[15]  Michael Wooldridge,et al.  Programming Multi-Agent Systems in AgentSpeak using Jason (Wiley Series in Agent Technology) , 2007 .

[16]  A. S. Roa,et al.  AgentSpeak(L): BDI agents speak out in a logical computable language , 1996 .

[17]  Geoffrey C. Fox,et al.  A Comparison of Annealing Techniques for Academic Course Scheduling , 1997, PATAT.

[18]  Yang Lu,et al.  Agent technology for timetabling , 2002 .

[19]  Guillermo Ricardo Simari,et al.  Multiagent systems: a modern approach to distributed artificial intelligence , 2000 .

[20]  Mihaela Oprea,et al.  MAS_UP-UCT: A Multi-Agent System for University Course Timetable Scheduling , 2007, Int. J. Comput. Commun. Control.

[21]  Damien Woods,et al.  Simultaneous Satisfaction of Hard and Soft Timetable , 1999 .

[22]  José Neves,et al.  The Fabricare scheduling prototype suite: Agent interaction and knowledge base , 2003, J. Intell. Manuf..

[23]  Mehdi Dastani,et al.  2APL: a practical agent programming language , 2008, Autonomous Agents and Multi-Agent Systems.

[24]  Andreas T. Ernst,et al.  Scheduling Meetings at Trade Events with Complex Preferences , 2008, ICAPS.

[25]  Franco Zambonelli,et al.  Methodologies and Software Engineering for Agent Systems , 2004, Multiagent Systems, Artificial Societies, and Simulated Organizations.

[26]  Kate A. Smith,et al.  Hopfield neural networks for timetabling: formulations, methods, and comparative results , 2003 .

[27]  Gerhard Weiss,et al.  Multiagent systems: a modern approach to distributed artificial intelligence , 1999 .

[28]  Ehud Gudes,et al.  Limited-resource scheduling by generalized rule-based system , 1991, Knowl. Based Syst..

[29]  Siti Zaiton Mohd Hashim,et al.  Investigating Constraint-Based Reasoning for University Timetabling Problem , 2008 .

[30]  Rhyd Lewis,et al.  A survey of metaheuristic-based techniques for University Timetabling problems , 2007, OR Spectr..

[31]  Nicholas R. Jennings On Agent-Based Software Engineering" Artificial Intelligence , 2000 .

[32]  Joseph Sifakis,et al.  Specification and Development of Reactive Systems - Response , 1986, IFIP Congress.

[33]  Hanif D. Sherali,et al.  Mathematical programming models and algorithms for a class-faculty assignment problem , 2006, Eur. J. Oper. Res..

[34]  Tuomas Sandholm,et al.  An Implementation of the Contract Net Protocol Based on Marginal Cost Calculations , 1993, AAAI.

[35]  Edmund K. Burke,et al.  Applications to timetabling , 2004 .

[36]  Sanja Petrovic,et al.  A multi-agent architecture for dynamic scheduling of steel hot rolling , 2003, J. Intell. Manuf..

[37]  Edmund K. Burke,et al.  Automated University Timetabling: The State of the Art , 1997, Comput. J..

[38]  Tuomas Sandholm Contract Types for Satisficing Task Allocation:I Theoretical Results , 2002 .

[39]  D. de Werra,et al.  An introduction to timetabling , 1985 .

[40]  Amy L. Lansky,et al.  Reactive Reasoning and Planning , 1987, AAAI.

[41]  Amnon Meisels,et al.  Negotiation among Scheduling Agents for Distributed Timetabling , 2004 .

[42]  Sanja Petrovic,et al.  Recent research directions in automated timetabling , 2002, Eur. J. Oper. Res..

[43]  Sandip Sen,et al.  Developing an Automated Distributed Meeting Scheduler , 1997, IEEE Expert.

[44]  Ben Paechter,et al.  Timetabling the Classes of an Entire University with an Evolutionary Algorithm , 1998, PPSN.

[45]  Nicolas Maudet,et al.  On optimal outcomes of negotiations over resources , 2003, AAMAS '03.

[46]  S. Mizzaro,et al.  A MultiAgent Architecture for Distributed Course Timetabling , 2004 .

[47]  Ali Nosary,et al.  Constraint Programming and Multi-Agent System Mixing Approach for Agricultural Decision Support System , 2006 .

[48]  Luděk Matyska,et al.  Constraint-based Timetabling with Student Schedules , 2000 .

[49]  Eduard Babkin,et al.  A new model for solution of complex distributed constrained problems , 2009, 2009 IEEE/ACS International Conference on Computer Systems and Applications.

[50]  Eduardo Alonso Fernández,et al.  Rules of encounter: designing conventions for automated negotiation among computers , 1995 .

[51]  Andrea Schaerf,et al.  A Survey of Automated Timetabling , 1999, Artificial Intelligence Review.

[52]  Michael Wooldridge,et al.  An Introduction to MultiAgent Systems John Wiley & Sons , 2002 .

[53]  Barry McCollum A Perspective on Bridging the Gap in University Timetabling , 2007 .

[54]  Samir Aknine,et al.  An Extended Multi-Agent Negotiation Protocol , 2004, Autonomous Agents and Multi-Agent Systems.

[55]  Andrew Lim,et al.  Multi-player game approach to solving multi-entity problems , 2002, AAAI/IAAI.

[56]  J. Clausen,et al.  Branch and Bound Algorithms-Principles and Examples , 2003 .

[57]  Helen Richardson,et al.  Researching Information Systems and Computing. Briony J. Oates. Sage Publications Ltd., London (2006) (320pp., Price £24.99, ISBN: 121290224X) , 2006, Int. J. Inf. Manag..

[58]  Amir Pnueli,et al.  Specification and Development of Reactive Systems (Invited Paper) , 1986, IFIP Congress.

[59]  Sander M. Bohte,et al.  Decentralized Online Scheduling of Combination-Appointments in Hospitals , 2008, ICAPS.

[61]  Nicholas R. Jennings,et al.  A Service-Oriented Negotiation Model between Autonomous Agents , 1997, MAAMAW.

[62]  Anand S. Rao,et al.  Modeling Rational Agents within a BDI-Architecture , 1997, KR.

[63]  Alon Itai,et al.  On the Complexity of Timetable and Multicommodity Flow Problems , 1976, SIAM J. Comput..

[64]  Gordon Vidaver,et al.  A multiagent society for military transportation scheduling , 2000 .

[65]  David C. Rich,et al.  A Smart Genetic Algorithm for University Timetabling , 1995, PATAT.

[66]  S. Murthy,et al.  Agent-Based Cooperative Scheduling , 1997 .

[67]  Kathryn A. Dowsland,et al.  A robust simulated annealing based examination timetabling system , 1998, Comput. Oper. Res..

[68]  Reid G. Smith,et al.  The Contract Net Protocol: High-Level Communication and Control in a Distributed Problem Solver , 1980, IEEE Transactions on Computers.

[69]  Slim Abdennadher,et al.  University course timetabling using constraint handling rules , 2000, Appl. Artif. Intell..

[70]  Kathryn A. Dowsland Review of Practice and theory of automated timetabling III (Third international conference, Patat 2000, Konstanz, Germany, August 2000, selected papers) by Edmund Burke and Wilhelm Erben (eds), Springer lecture notes in computer science, vol.2079, 2001 , 2003 .

[71]  Paolo Busetta,et al.  Jack intelligent agents - components for intelligent agents in java , 1998 .

[72]  Barbara Messing,et al.  An Introduction to MultiAgent Systems , 2002, Künstliche Intell..

[73]  Agostino Poggi,et al.  Developing Multi-agent Systems with JADE , 2007, ATAL.

[74]  Selim M. Selim Split Vertices in Vertex Colouring and Their Application in Developing a Solution to the Faculty Timetable Problem , 1988, Comput. J..

[75]  David C. Parkes,et al.  An auction-based method for decentralized train scheduling , 2001, AGENTS '01.

[76]  Ehl Emile Aarts,et al.  Simulated annealing and Boltzmann machines , 2003 .

[77]  Edmund K. Burke,et al.  A Genetic Algorithm Based University Timetabling System , 1994 .

[78]  Yan Yang,et al.  A multi-agent system for course timetabling , 2011, Intell. Decis. Technol..

[79]  Luigi Benedicenti,et al.  An agent based general solution model for the course timetabling problem , 2006, AAMAS '06.

[80]  Michael Sampels,et al.  A {$\cal MAX$}-{$\cal MIN$} Ant System for the University Course Timetabling Problem , 2002 .