Computer Engineering & IT First-year Students Competition
۰۵ دی · Classes


Due to the fact that many first-year students, especially after entrance to university and up to the first semester, do not have the ability of writing a computer program, there is no possibility of them taking part in programming competitions held by the Chapter. If it was possible to have first-year students take part in these competitions, in addition to being able to gain a better understanding of algorithms and problem solving, and also converting their solutions into practical computer codes, they would also be able to experience the fun and energetic atmosphere of the competitions.

The ACM Student Chapter set about solving this dilemma in the following way: As will be explained in the passages below, first year students were separated into three or four member groups. In a group meeting, and for a certain period of time they thought about the assigned problem, and shared their ideas. Having done this, with the aid of a capable programmer, who was a third- or fourth-year undergraduate student - chosen for and assigned to the group by the Chapter - they set about coding their solution. The programmers were advised that they could not comment on the algorithm suggested by the group, and would only answer questions regarding the game code, and call the functions, and as a whole, the conversion of the algorithm into the game code.

In the second part of this report, a description is presented of the game chosen by the Chapter members. In Section 3, the important reasons behind the selection of this specific game, and the goals we hoped to reach are given. Section 4 provides a description of the event and its staging. The report concludes with future plans that the Chapter aims to pursue with regard to these competitions.

  • Description of the game

The game chosen by the Student Chapter of the ACM for the Fall 2010 competition was “Planet Wars”. This game was proposed in the artificial intelligence website of Google, at and was open for contest in October and November 2010. Information regarding the specifications, and rules of the game can be obtained through the following link:

The site also provides a number of sample codes in a number of different programming languages to aid the programmers of the competition. These codes can be viewed at the following address:

As with all the other artificial intelligence competitions of recent years held by this Student Chapter, the Graphical User Interface was totally implemented and given to the participants along with the game core. Subsequently, the only part which needed to be programmed during the competition was the game solution algorithm. This part, which was provided with the help of the participants, consisted of a series of defined functions which had to be called. Thus, the main decision made in the solution algorithm was the order in which these functions were recalled.

  • Important reasons in the selection of this game

As highlighted in the Introduction, the main aim of staging this competition was to bring about an atmosphere to nurture creativity and active thinking among first year students in the Computer Engineering and IT department. The most important reasons for which this game was chosen for the freshmen competition were:

  • This artificial intelligence problem didn’t have a simple solution, and we were aware of it’s complexities even for final-year undergraduate students. However, the advantage for the Chapter lay in the fact that student could provide a solution for each recall of the functions, and observe the result of their ideas during the competition. Given that the participants in this competition were first-year students who hadn’t been exposed to complex algorithms, they had to use their creativity, and through the process of finding the solution, helped develop simple algorithms.
  • Due to the coding of the algorithms being performed by capable programming students, the inability - or weakness - of the first-year students didn’t act as a barrier in the implementation of their ideas.
  • It being a group competition, the event helped bring about an atmosphere for sharing ideas and gaining better results, while aiding to foster team-work abilities and ethics, which is one of the main principles in Computer Engineering.

  • Staging the competition

4.1 Competition Announcement

Since first-year Computer Engineering and IT student were the main focus of this competition, the call-out for the competition was given by Chapter members in the “Principles of Computing and Programming” class, and all students were encouraged to attend.

4.2 The Competition

The competition began at 12.30 PM, on 26th December 2010 in the computer hall of the department. Initially, the game was described fully to the students, and a sample version of the game was played by Chapter members, so as to resolve all ambiguities which remained. During this period, students were given the chance of forming three- or four-member groups, amongst themselves. Of the 52 participants, 14 were electrical engineering students. 15 groups were formed, and they dually presented their details to the event managers.

From 1 PM, the students were given one hour to debate amongst themselves the solution to the problem. This part of the competition ended at 2 PM. From then on, one competent programmer was randomly drawn from a pool of names, and assigned to each group. He/She had 90 minutes to convert the algorithm suggested by the group, into an executable code.

Afterwards, the students participated in an event staged by the Chapter in the department amphitheatre. In addition to first-year students, senior students who had been involved in the coding of the algorithms were also in attendance. Catering was provided for all participants.

During this gathering, information was given regarding the Student Chapter, and it’s activities, with more focus given to activities which first-year students would be able to partake in. An overview of the various programming and artificial intelligence competitions held in the faculty was also provided.

After this event which served as a refreshment period, competition began among the intelligent agents programmed by the groups. During the competition, the game screen and each team’s score was projected onto two screens in the computer hall of the department, so participants and other students could follow the competition. The games began with 4 round-robin groups. Three of the groups had 4 teams, and one had 3 teams. From each group, two teams qualified for the quarter-final, and competed in a sudden-death bout. Also worth mentioning is that each game between two teams was played out twice, so that in each, one could start the game. This was done so as to provide fairness for all teams involved.

At the end of the competition, the four members of the winning team were each presented with the competition mascot figurine.

  • The Path Ahead

    Given the need to instill confidence, create motivation and nurture talent among first-year students and also give focus to the attractions of their major, we plan to stage similar annual competitions for newly-admitted students of Computer Engineering and IT, using the help and guidance of faculty members.

  • Rebeca Actors the Concurrent and Distributed World
    ۱۷ آذر · Classes

    Dr Marjan Sirjani, an ex-professor of our department, showed in this talk a computational model of Rebeca (Reactive Object Language that is an imperative interpretation of actor which is designed as an analyzable modeling language for real-world applications) , the analysis techniques provided for Rebeca models, and extensions for different doains.

    Number of Participants: 20

    Introduction to Software Engineering Research fields
    ۰۹ آذر · Classes

    From long ago in our department, a meeting conducted by professors of each major in the first month of each academic year is supposed to introduce the main research fields of all faculty members to the first year graduate students of that major. This year, the ACM Student Chapter, in cooperation with the professors, made it possible for all final-year undergraduate students to take part in the meeting and become familiar with future challenges in their academic life.

    Number of Participants: 30

    Seminar on Performance Testing and Tuning of Transaction Processing Systems
    ۱۹ آبان · Classes

    The seminar was conducted with cooperation of a group of Software Architecture Laboratory members, and as a supplement to the course "Software Engineering II". Among topics covered were measuring the system performance, model-based functionality test, and quality requirements of online transactions processing.

    Number of Participants: Around 50

    Download abstract

    Introducing our student chapter to the freshmen
    ۰۸ مهر · Classes

    In the first day of fall semester an opening ceremony was held by the Faculty of Engineering for the freshmen engineers of University of Tehran. This gathering was accompanied by a short introduction to all student councils of the faculty, including the ACM Student Chapter. We made this meeting an opportunity for the new comers by collecting their names and email addresses for the later notification.

    Number of participants: Around 70

    Rounding By Sampling
    ۲۵ مرداد · Classes

    In this talk Arash Asadpour, a Ph.D Student of operations research at Stanford University, presented a general framework for rounding in discrete optimization problems; the most significant of which are the Traveling Salesman Problem (TSP) , Resource Allocation Problems, and Fair Allocation.

    Number of Participants: 28

    Download brochure

    Open Day for highly-talented students with mathematics diploma
    ۱۷ مرداد · Classes

    The Faculty of Engineering at University of Tehran holds a one-day meeting every year for talented students with mathematics diploma who are highly-ranked in the nation-wide university entrance exam that year. In this meeting, they are introduced to the engineering majors offered in the Faculty of Engineering, and are also acquainted with its outstanding faculties, students, and different laboratories, so that they can find out more out the social and academic life they can expect at the Faculty of Engineering.

    This year, ACM chapter members voluntarily took on the responsibility for handling the affairs of Computer Engineering and Information Technology department, including an introduction to computer science, offering a comparison of curricula in different computer engineering departments of Iran, and also answering their questions with help of some brilliant final-year students.

    Number of participant: Around 40

    Research Methodology
    ۲۷ تیر · Classes

    Due to the general lack of writing and presenting skills among the engineering students in Iran, which are most essential during their research activities, the ACM Student Chapter decided to organize a workshop on research methodologies. Dr Mohammad-Reza Mousavi, an assistant professor of computer science at Eindhoven University of Technology, based the workshop on these four topics: a starting point for becoming a researcher, some points on generating an academic paper, a number of useful networks for presentation, and finally, the refereeing process.

    Number of Participants: 25

    Download brochure

    Summer Classes
    ۱۰ تیر · Classes

    Every year in summer, ACM Student Chapter of University of Tehran organized a number of programming and internet engineering classes for the students.This year, we managed to hold eight such classes, each lasted eight sessions. The classes were Advanced Linux, Java Programming, Action Script & Flash, C#, Matlab, ASP.Net, Hack & Security, and Web Design.

    Number of Participants: 18 on average

    How to Apply for Graduate Studies
    ۱۰ تیر · Classes

    Every year, a number of students in the department leave the country to study in abroad. For this end, the process of applying for different universities of different countries has always been a big challenge. With this in mind, we gathered a number of final year students who had experienced remarkable achievements in this respect. Presenting some tips in writing the resume and statement-of-purpose, an interview with some Iranian students living abroad, and giving a brief explanation of eac step in the whole process were among the highlights of the seminar.

    Number of Participants: 108

    Download broshure

    Choosing between Software and Hardware Engineering
    ۱۳ خرداد · Classes

    Computer Engineering students in our faculty are to select between software and hardware engineering as their major field of study at the beginning of their 6th semester. In order to help them make the right decisions, we asked all the professors of these two majors in our department to attend a meeting we organized for this purpose. Fortunately, and for the first time in the last ten years five professors in each major attended the meeting and kindly explained the pros and cons from different stand points. The event was a conspicuous success.

    Number of Participants: 50

    قبلی< >بعدی