A Visualization of the Primal Simplex Algorithm for the Assignment Problem Charalampos Papamanthou it0067@uom.gr University of Macedonia Department of Applied Informatics Thessaloniki, Greece +302310891895 ¢ Konstantinos Paparrizos paparriz@uom.gr ABSTRACT An educationally-oriented Visualization Software used to assist the teaching of the Primal Simplex Algorithm for the Assignment Problem is presented. Students must learn in which way the tree of every iteration interacts with the current data of the Algorithm. They must also understand how the tree is updated and how the new tree is related to the variables the Algorithm uses. The instructor should emphasize on transmitting to the students how the Algorithm uses the tree drawn by our software. In this way, the instructor will not have to draw the successive states of the graph on board but only to explain why things are the way they are presented by the software. The use of technology and computer based methods makes Computer Algorithms courses more pleasant and more intriguing. Teaching Graph Algorithms is not easy at all; Pointing out the main steps executed in order to proceed from one iteration to another requires a supportive visualization tool. ¢ Categories & Subject Descriptors: [Network Programming]: Visualization of Algorithms for the Assignment Problem G e n e r a l T e r m s : Algorithms, Design And Human Factors K e y w o r d s : Assignment Problem, Visualization. The scope of this work is to present an educationally - oriented software which will serve as an indispensable means in Network Programming Courses. Studies suggest that student interaction with the animation or visualization is essential to increase students' ability of solving difficult problems using Algorithms. The visualization software presented uses the Primal Simplex Algorithm to solve the Assignment Problem. The mathematical formulation of the Assignment Problem with an (nxn) cost matrix is the following: ¢ ¢ s.t: =\,i = \..n, 0<xtj<\ Figure 1. A pivot step of the Algorithm using the proposed software. In Figure 1, we can see our software solving an assignment problem of size n = 9 .One can see how the second frame is produced from the first. The entering arc, which is drawn with a green curve, will enter the basis, while the leaving arc ,which is marked with two red lines, will leave the basis. After these updates take place, the second frame, depicting the new tree, is produced. This poster mainly wants to point out the importance of using visualization methods in Computer Algorithms Courses. This conclusion comes out of our experience. Computer Algorithms Courses are usually taught in the first two years of the undergraduate program study of most Computer Science Departments. Students, not being ready to study complex Algorithms usually resent sticking to mathematical formulas and discrete Algorithms steps. This results in great difficulties concerning problem solving using Algorithms. Thus, we came to the conclusion that the audience will be more interested to see something "real". Students will definitely be eager to learn Algorithms if Algorithms could be presented in a way different from the traditional ways which involve writing on the board and memorizing mathematical formulas. We have used this software in class and we feel that Students have found it very helpful. Being a graph Algorithm, the Primal Simplex Algorithm for the Assignment Problem is a difficult Algorithm for students to understand, as it involves a lot of concurrent mathematical and visual transformations. The state of the Algorithm is every time represented by a rooted tree to which a lot of arithmetic quantities correspond. The update of both the tree and the respective arithmetic data such as the reduced costs matrix 5 and the "cut off' tree T * usually requires a lot of complex mathematical calculations, especially when the size of the problem is large. The software can easily be transformed to serve as a general graph Algorithm visualization tool, as it uses a drawing Algorithm which can be applied to visualize other graph Algorithms as well. As mentioned above, the Primal Simplex Algorithm for the Assignment Problem is a complex Algorithm especially when it is applied with pencil and paper. We carefully developed this software having in mind all the following: ¢ Students must obtain a general view of the function of the Algorithm. Copyright is held by the author/owner(s). ITiCSE'03, June 30 - July 2, 2003, Thessaloniki, Greece ACM 1-58113-672-2/03/0006.
/lp/association-for-computing-machinery/a-visualization-of-the-primal-simplex-algorithm-for-the-assignment-6JHmkMGkk0