An Introduction to Artificial Intelligence 40-417 
  CE Department- Sharif University of Technology Spring 1386 - Group 1 

  Main Menu


  1386-04-23 July 14, 2007 10:57 AM  
Final AI Grades can be seen in Resources Section

  1386-04-21 July 12, 2007 07:50 AM  
As the exercise grades were released too late, the deadline for objections to grades (WITH REASONS) is postponded to Saturday (Tir-24th) night. I will also announce my final version of the grades by Saturday (except for the incoming grade objection corrections) and you can send my any final appeal(!) by Monday morning.

- R.H.

  1386-04-20 July 11, 2007 06:55 PM  
Exercise grades are ready and uploaded in grades area.
Object till Friday only to ce417a[at]gmail with details.


  1386-04-14 July 05, 2007 10:06 AM  
I'm still waiting for exercise grades. Sorry for the delay.

The deadline for objections on exam grades is over. So, please just check your exercises results fast, when they are announced, hopefully on Saturday, and send me your objections on them in 1-2 days.

  1386-04-06 June 27, 2007 07:25 AM  
The solutions to exam questions is uploaded in resources section. To comment on any of your grades, email me the exact question number, either stating that you have written the same thing as what I have said or you believe that my answer is not correct and yours is. I'm sorry to say that to avoid spams, I will have some penalty on those who send emails without these specifications or come to me directly for EXCEPTIONAL extra points.
 Most of the exercises points will be up till next Sunday, as Mr. Nasiri has told me.
 The grades with question mark ('?') are not scored yet, so are the prolog quiz grades.

Thank You.

  1386-04-05 June 26, 2007 06:09 AM  
The draft of the final grades is in resources section. I'll put the answers today or tomorrow as well. You can email me if you have any problem with any of the questions, but you must specify which question and why.

  1386-04-06 June 27, 2007 07:35 AM  
Sample pictures for optional image processing exercise are in resources section. More data on PacMan exercise (and competition) can be found at:

The deadline for delivery of this project, including the source and REPORTS is Tir 10th. Send them all directly to my email (

  1386-03-16 June 06, 2007 05:32 AM  
The exam will be from chapters 3-9 and 11.

  1386-03-15 June 05, 2007 09:20 PM  
TA session will be held on Monday, Khordad 21st instead of Wednesday.
Fatemeh Nargesian

  1386-03-09 May 30, 2007 07:02 AM  
For those who are in FPGA programming contest, the deadline of last exercise is moved to Sunday 13 of Khordad.

  1386-03-08 May 29, 2007 10:40 AM  
I couldn't prepare the material for Saturday class. So, I will only announce the OPTIONAL exercise on Saturday and give some notes about them. They are all image processing tasks and are meant to be done just to test your creativity, not to read the subject.

  1386-02-25 May 15, 2007 07:11 AM  
Exercise 4's deadline is moved to Khordad 9th.

  1386-02-09 April 29, 2007 11:22 AM  
TA session will not be held on Monday, Ordibehesht 10th .
Fatemeh Nargesian

  1386-02-01 April 21, 2007 03:37 PM  
The normal deadline of Ex-3 is 8th of Ordibehesht (one week from now).
The extended deadline is 15th of Ord. and you should send you request-for-doing-extrawork email to ce417a[at]gmail by the end of Wednesday 5th of Ord. The format is as before: names, std nums and fields of work.

Have Fun,

PS. I think I shall note that in Minimum Conflict algorithm, after each restart (and also in the very first), first you should fill entire table with rational values and then try to swap cells in order to reduce the number of conflicts. Read slides for more.

  1386-01-30 April 19, 2007 09:45 AM  
We will not have the AI class on Saturday (Ord.1), but the exercise class will be held by Ms.Nargesian on Monday. The exam will be on Thursday, 9-12 at ALEF 10&11.

  1386-01-25 April 14, 2007 11:32 AM  
MID TERM EXAM will be from chapters 3-6.

  1386-01-17 April 06, 2007 07:04 PM  

 Grades of Ex-1 is just ready. You can find them in grades section.

 * I found 4 works are worthful to have a presentation of their attempts, to class. They're marked in the Excel file. I'll contact them as soon as I fixed the time with Mr. Halavati; so they must be quite ready.

Before attempting to have an objection, please:
 * Read my comments on almost every valuable cell. To do that, just place your mouse cursor over the cells that have a red rectangle on their top right.
 * The formula of calculating extra-work points is a bit strange. You may find that it depends on the maximum you could get and gets bad effect from undone or incomplete actions.
 * DFS-ID is an optimum searching algorithm.
 * The tests I used are in file, in resources section. You may find more about them in about.txt. Also test.bat (with particular changes for some codes) is the batch file I used in Ms Windows.
  Finally, leave your objection ONLY AND ONLY IN THIS FOLLOWING FORMAT by the end of this Tuesday (21th of Farvardin).
  No objection after that time or in incorrect format will be acceptable. The format is:
   To:            aideen[at]gmail[d0t]com
   Subject:     AI.EX1.Objection(83??????)    
                    // where the question marks should be replaced by your std number
   Body:        what'd happened and what you expected to happen.

In future:
 * Please be sure that your code is compilable with g++ (either MinGW or Linux's gcc) or JDK 1.5 (and not higher).
 * Please note that I made some condones upon delays. I may not do that again.
 * Please respect my format. I don't promise to have time to learn how-to-run from the comments of your code! As you see, I'd fixed these strict formatting issues to handle my for loops over various tests and various algorithms of your program.
 * Please write your report file in Persian and no other language, like Finglish or English.
 * Please make your reports in .doc (MS Word) or .pdf (preferred). I couldn't open some .docx files.

Have a nice time,

  1385-12-25 March 16, 2007 07:57 AM  
I might have forgot to tell you in class that we will not have a class in this last week (26th and 28th). Put your time on the exercise and its report. If you have anything about the project or anything else, I will be in my office on Saturday, till 10:30.

Have a nice and happy new year.

  1385-12-23 March 14, 2007 09:06 AM  

You can propose any project that you seem fit and we will tailor it for you, so that it would be something suitable. So, your first priority can be choosing something by yourself. You can also choose from the following items:

1- The AI-Cup Game. There is a game-programming contest in the department and you can get more information about it from ( If you participate in this game, as it is a longer time task, you will have more time (by the end of Ordibehesht) but the expectations will also be much more.

2- Any single player game. For example, you can choose SAMEGAME( ). In any such game, you can implement any search strategy you see fit and give a report along with your implementation on the strategy, etc.

3- A Function Estimator Evolutionary Algorithm. You can write a program that estimates a function. Your input data is for example 1000 samples of inputs of the function and outputs of the function and you must give a function that approximates it. In this project, we are not going to get involved in mathematical approaches, but solely an evolutionary approach. You can encode a function as a tree and put it in a chromosome. Compute the fitness of each chromosomes by comparing the difference between outputs of this function and the real outputs and then use conventional GA operators to promote it. You can take a look at this paper for more feeling about it or ask me more if you need. ( ) Do not get into the details of this paper, just see it ti get the general objective.


1- If you choose something, you must do it and not doing it will have negative effect.
2- The normal deadline is 20th of Farvardin.
3- You must confirm before the end of Esfand on the subject.

Happy New Year.

  1385-12-22 March 13, 2007 12:34 PM  
  • Sample connection b/w func.cpp and your program is uploaded in resources part.
  • If you're planned to do extra work on Ex-II, announce project members and specified fields, clearly to ce417a[at]gmail (and not me), by the end of Wednesday (23rd of Esfand).
  • Again, do not expect any reply from ce417a[at]gmail
  • Happy new year!

  1385-12-19 March 10, 2007 08:32 PM  
Hello dear students/friends,

  As EX-1 might be your first exercise of this kind, I treated a bit kind on that. However, no kindness would be applied on future exercises, including Ex-2. Thus,
  * Please respect requested file/email formats.
  * Please attend deadlines. They would be too serious, even for 5 minutes. Please consider any internet problem, including dormitory, CE or gmails and hence, try to send your files at most by Saturday evenings from CE's computer site.
  * There's no need to send .exe files as gmail doesn't allow them to be send.
  * Please do not expect any reply from ce417a[at]gmail. I just check it after each deadline to download entire files and never before that.
  * Please do not send any project file (.zip, source) to me (aideen[at]gmail or others). I just reply your questions for any ambiguity/clarification.

  Beside, I'm too sorry for my words in class. I thought I'd asked for checking various tests and not only those were placed in course page. Reading the spec once again, I found it and hence I don't expect checking for any test unless those 7. But, be carefull that on next exercises (including 2), given tests are only for your own check. you shall use more in report and not only them.

  And finally, I just changed the format of the connection between your program and funcVal function. Now, in Ex-2, the funcVal function would be placed in a separate file, which is supposed to be called from your program. In java, it's placed in file as an "static double" and should be called as func.funcVal(10.0, 20.0, 20.0) for example. And in C++, it's placed in func.cpp file and your program should just include func.cpp as a header (by #include "func.cpp") file.
  A sample program is uploaded to the resources part. proj.cpp ( is the executable file. It just shows the connection format and nothing else. By this protocol, I'll just place various func.cpp (func.class in java) files in the same directory to your project file and will check them. This way, you must keep the name of the file (func) and function (funcVal) and don't change them.

Be Fine.

  1385-12-18 March 09, 2007 11:29 PM  
Genetic_Algorithms ppt file has been uploaded to resources folder.

  1385-12-09 February 28, 2007 11:32 AM  
It looks as if we are not going to have a class on Saturday (Esfand 12th) due to Konkour.

In case you have delivered your exercise 1 and wish to start number 2 sooner, you can download it from assignments section now. The official start time for Exercise 2 is Saturday 12th of Esfand and the deadline is 2 weeks after that.

  1385-12-07 February 26, 2007 08:39 AM  
The exercise class will be held on Mondays , 12:00 - 13:15 at BARGH-2 class.

  1385-11-28 February 17, 2007 09:47 AM  
If you are planned to do extra work (to get more points on Ex-1), you must send an email to ce417a[at]gmail by the end of Tuesday (1st of Esfand) and write your desired options and your team members (name and student number).
This deadline (Tuesday, for informing your extra work), won't be extended and is serious. If you're wished to do any other stuff which is not listed, fix it with me (aideen) before Tuesday night. Also:
  • Doing the exercise solitary, brings no extra points. But, in that case, the factor of extra-work would be so significant in compare to the couples.
  • Attend Monday's session to discuss more about it.
  • Allowed Programming Languages are C++ (using g++ compiler as is on CE server) and Java (using javac compiler as is on CE server).
  • Allowed Formats for the Report file are .DOC and .PDF (preferred).

  1385-11-23 February 12, 2007 10:25 PM  
There will be an introduction to exercises lecture on Monday, 30th of Bahman in the classroom (Alef-17) at 10:00-10:20. Please attend or be responsible for your misknow! The topics are:
  • Why shall you do the exercise?
  • How can you get more (extra) points?
  • What (the hell!) is the report? Why does it have about half of the score?

  1385-11-21 February 10, 2007 08:10 AM  
Assignment 1 just added. Goto Assignments tab for its description and sample files. You can also see a sample report file in Resources tab.

Ramin Halavati

3 Units
SAT, MON 9:00-10:30
Room: ALEF-17

 This website is visited 8792 times since February 2007. Updated Monday 2020-09-07 09:11