Tensor, Collective Communication, High-Performance Computing, Functional Programming Language, Elixir, and Nx
Resumo
Managing the allocation of oral presentations in large academic events is an inherently combinatorial and computationally complex task that involves satisfying numerous hard constraints, including room availability, time slots, and evaluator expertise. This paper proposes a declarative approach using Answer Set Programming (ASP) to model and solve the scheduling problem for the University Meeting at the Federal University of Ceará (UFC). The proposed workflow introduces a clear separation between instance data and allocation rules by utilizing a pre-processing stage that translates JSON-formatted event specifications into ASP facts. By explicitly encoding institutional rules and logistical requirements as logical integrity and choice constraints, the system systematically generates valid allocations that respect authorship conflicts, balance evaluator workloads, and accommodate advisor participation. The model was evaluated on both synthetic benchmarks and a real-world instance comprising 183 presentations, successfully producing a conflict-free schedule in approximately 30 minutes. Preliminary results demonstrate that this ASP-based approach not only significantly reduces the manual effort traditionally required by organizing committees, but also scales effectively, ensuring the feasibility, modularity, and adaptability of the final scheduling system for future editions.
Palavras-chave:
Answer Set Programming, Timetabling, Academic Event Allocation, Declarative Programming, Constraint Satisfaction, Clingo
Referências
Irvi Firqotul Aini, Ari Saptawijaya, and Siti Aminah. 2017. Bringing Answer Set Programming to the Next Level: A Real Case on Modeling Course Timetabling. In 2017 International Conference on Advanced Computer Science and Information Systems. IEEE, 471–476. DOI: 10.1109/ICACSIS.2017.8355076
Mutsunori Banbara, Katsumi Inoue, Benjamin Kaufmann, Tenda Okimoto, Torsten Schaub, Takehide Soh, Naoyuki Tamura, and Philipp Wanko. 2019. teaspoon: Solving the Curriculum-Based Course Timetabling Problems with Answer Set Programming. Annals of Operations Research 275, 1 (2019), 3–37. DOI: 10.1007/s10479-018-2757-7
Mutsunori Banbara, Takehide Soh, Naoyuki Tamura, Katsumi Inoue, and Torsten Schaub. 2013. Answer Set Programming as a Modeling Language for Course Timetabling. Theory and Practice of Logic Programming 13, 4–5 (2013), 783–798. DOI: 10.1017/S1471068413000495
Edmund K Burke and James P Newall. 1995. A search methodology for examination timetabling. Practice and Theory of Automated Timetabling (1995), 279–293.
Alberto Colorni, Marco Dorigo, and Vittorio Maniezzo. 1998. A genetic algorithm to solve the timetable problem. Journal of Scheduling 1, 1 (1998), 39–53.
Ana Y. F. de Lima, Briza M. D. de Sousa, Daniel P. Cardeal, Jessica Y. N. Sato, Lorenzo B. Salvador, Renato L. Geh, and Bruna Bazaluk. 2023. LUNCH: An Answer Set Programming System for Course Scheduling. In Anais do XX Encontro Nacional de Inteligência Artificial e Computacional. Sociedade Brasileira de Computação, Porto Alegre, 954–968. DOI: 10.5753/eniac.2023.234540
Luca Di Gaspero and Andrea Schaerf. 2000. Tabu search techniques for examination timetabling. In International Conference on the Practice and Theory of Automated Timetabling. Springer, 104–117.
Christian Dohrmann, Ulrike Lucke, Torsten Schaub, and Sebastian Schellhorn. 2025. AI-Based Tool for Curriculum-Based Course Timetabling at the University of Potsdam. In Proceedings of EUNIS 2024 Annual Congress in Athens (EPiC Series in Computing, Vol. 105). EasyChair, 188–199. DOI: 10.29007/t32z
Martin Gebser, Roland Kaminski, Benjamin Kaufmann, and Torsten Schaub. 2019. Multi-shot ASP Solving with clingo. Theory and Practice of Logic Programming 19, 1 (2019), 27–82. DOI: 10.1017/S1471068418000054
Michael Gelfond and Vladimir Lifschitz. 1988. The Stable Model Semantics for Logic Programming. In Proceedings of the Fifth International Conference and Symposium on Logic Programming, Robert A. Kowalski and Kenneth A. Bowen (Eds.). MIT Press, 1070–1080.
Muhammed Kerem Kahraman and Esra Erdem. 2019. Personalized Course Schedule Planning Using Answer Set Programming. In Practical Aspects of Declarative Languages. Lecture Notes in Computer Science, Vol. 11372. Springer, 37–45. DOI: 10.1007/978-3-030-05998-9_3
Velin Kralev, Radoslava Kraleva, and Borislav Yurukov. 2016. An Event Grouping Based Algorithm for University Course Timetabling Problem. International Journal of Computer Science and Information Security 14, 6 (2016), 394–401. arXiv:1607.05601.
João Leite, José Júlio Alferes, and Belopeta Mito. 2009. Resource Allocation with Answer-Set Programming. In Proceedings of the 8th International Conference on Autonomous Agents and Multiagent Systems, Vol. 1. International Foundation for Autonomous Agents and Multiagent Systems, 649–656.
Vladimir Lifschitz. 2008. What Is Answer Set Programming?. In Proceedings of the AAAI Conference on Artificial Intelligence. 1594–1597.
Ilkka Niemelä. 1999. Logic Programs with Stable Model Semantics as a Constraint Programming Paradigm. Annals of Mathematics and Artificial Intelligence 25, 3–4 (1999), 241–273. DOI: 10.1023/A:1018930122475
Adam M. Smith and Michael Mateas. 2011. Answer Set Programming for Procedural Content Generation: A Design Space Approach. IEEE Transactions on Computational Intelligence and AI in Games 3, 3 (2011), 187–200. DOI: 10.1109/TCIAIG.2011.2158545
Potassco Team. 2025. clingo and gringo. [link]
Potassco Team. 2025. clingo Python API Documentation. [link]
Mutsunori Banbara, Katsumi Inoue, Benjamin Kaufmann, Tenda Okimoto, Torsten Schaub, Takehide Soh, Naoyuki Tamura, and Philipp Wanko. 2019. teaspoon: Solving the Curriculum-Based Course Timetabling Problems with Answer Set Programming. Annals of Operations Research 275, 1 (2019), 3–37. DOI: 10.1007/s10479-018-2757-7
Mutsunori Banbara, Takehide Soh, Naoyuki Tamura, Katsumi Inoue, and Torsten Schaub. 2013. Answer Set Programming as a Modeling Language for Course Timetabling. Theory and Practice of Logic Programming 13, 4–5 (2013), 783–798. DOI: 10.1017/S1471068413000495
Edmund K Burke and James P Newall. 1995. A search methodology for examination timetabling. Practice and Theory of Automated Timetabling (1995), 279–293.
Alberto Colorni, Marco Dorigo, and Vittorio Maniezzo. 1998. A genetic algorithm to solve the timetable problem. Journal of Scheduling 1, 1 (1998), 39–53.
Ana Y. F. de Lima, Briza M. D. de Sousa, Daniel P. Cardeal, Jessica Y. N. Sato, Lorenzo B. Salvador, Renato L. Geh, and Bruna Bazaluk. 2023. LUNCH: An Answer Set Programming System for Course Scheduling. In Anais do XX Encontro Nacional de Inteligência Artificial e Computacional. Sociedade Brasileira de Computação, Porto Alegre, 954–968. DOI: 10.5753/eniac.2023.234540
Luca Di Gaspero and Andrea Schaerf. 2000. Tabu search techniques for examination timetabling. In International Conference on the Practice and Theory of Automated Timetabling. Springer, 104–117.
Christian Dohrmann, Ulrike Lucke, Torsten Schaub, and Sebastian Schellhorn. 2025. AI-Based Tool for Curriculum-Based Course Timetabling at the University of Potsdam. In Proceedings of EUNIS 2024 Annual Congress in Athens (EPiC Series in Computing, Vol. 105). EasyChair, 188–199. DOI: 10.29007/t32z
Martin Gebser, Roland Kaminski, Benjamin Kaufmann, and Torsten Schaub. 2019. Multi-shot ASP Solving with clingo. Theory and Practice of Logic Programming 19, 1 (2019), 27–82. DOI: 10.1017/S1471068418000054
Michael Gelfond and Vladimir Lifschitz. 1988. The Stable Model Semantics for Logic Programming. In Proceedings of the Fifth International Conference and Symposium on Logic Programming, Robert A. Kowalski and Kenneth A. Bowen (Eds.). MIT Press, 1070–1080.
Muhammed Kerem Kahraman and Esra Erdem. 2019. Personalized Course Schedule Planning Using Answer Set Programming. In Practical Aspects of Declarative Languages. Lecture Notes in Computer Science, Vol. 11372. Springer, 37–45. DOI: 10.1007/978-3-030-05998-9_3
Velin Kralev, Radoslava Kraleva, and Borislav Yurukov. 2016. An Event Grouping Based Algorithm for University Course Timetabling Problem. International Journal of Computer Science and Information Security 14, 6 (2016), 394–401. arXiv:1607.05601.
João Leite, José Júlio Alferes, and Belopeta Mito. 2009. Resource Allocation with Answer-Set Programming. In Proceedings of the 8th International Conference on Autonomous Agents and Multiagent Systems, Vol. 1. International Foundation for Autonomous Agents and Multiagent Systems, 649–656.
Vladimir Lifschitz. 2008. What Is Answer Set Programming?. In Proceedings of the AAAI Conference on Artificial Intelligence. 1594–1597.
Ilkka Niemelä. 1999. Logic Programs with Stable Model Semantics as a Constraint Programming Paradigm. Annals of Mathematics and Artificial Intelligence 25, 3–4 (1999), 241–273. DOI: 10.1023/A:1018930122475
Adam M. Smith and Michael Mateas. 2011. Answer Set Programming for Procedural Content Generation: A Design Space Approach. IEEE Transactions on Computational Intelligence and AI in Games 3, 3 (2011), 187–200. DOI: 10.1109/TCIAIG.2011.2158545
Potassco Team. 2025. clingo and gringo. [link]
Potassco Team. 2025. clingo Python API Documentation. [link]
Publicado
08/09/2026
Como Citar
VALENTE, Thiago Pereira; FERREIRA, Pedro Henrique; MAIA, Rildian Beserra; ARAGÃO, Dmontier; ARRUDA, Alexandre Matos.
Tensor, Collective Communication, High-Performance Computing, Functional Programming Language, Elixir, and Nx. In: SIMPÓSIO BRASILEIRO DE LINGUAGENS DE PROGRAMAÇÃO (SBLP), 30. , 2026, São Paulo/SP.
Anais [...].
Porto Alegre: Sociedade Brasileira de Computação,
2026
.
p. 159-167.
DOI: https://doi.org/10.5753/sblp.2026.29695.
