| CSE447: Computer Graphics |
1.
Sunrise/Sunset Simulation - Spring 2005
Teacher:
Dr. Jamzad
Teammates: H. Vaezi
Just working with BMP format and RGB colors:
Saturating a bitmap picture as sun comes up and Desaturating
it as the sun goes down.
Implementation: Java, Macromedia Flash |
Score: 1.25/1


|
2.1. Splines: 2D Spline Curves
- Spring 2005
Teacher: Dr. Jamzad
A user interactive program for creating different kinds of
spline curves. User can add/remove/edit control points to
control the curve.
Implementation: C# .Net, OpenGL
Features:
+ Unlimited Control points
+ Bezier Splines
+ B-Splines
+ Beta Splines
+ Cardinal Splines
+ Hermite Splines
|
Best Project
Score: 1.5/1

|
2.2. Splines: 3D Spline Surfaces
- Spring 2005
Teacher: Dr.Jamzad
Teammates: H.Vaezi
A user interactive program for creating/editing 3D spline
surfaces.
Implementation: C++ .Net, OpenGL.
Features:
+ Moving 3D control points in space
+ 2 Spline Mode: Bezier and Cardinal
+ Rotating, Zoom in/out
+ Lighting
|
Best Project
Score: 1.5/1


|
3.1. Fractals: Grass simulation
- Spring 2005
Teacher: Dr.Jamzad
Teammates: H.Vaezi
Simulating a soccer field covered with grass. Each single
grass is a unique 3D curve derived from simulation of
throwing a ball upward with different velocities and
directions.
Implementation: C++ .Net, OpenGL
Features:
+ Wind and Whirlwind!
+ Rotating, Zoom in/out
+ shadow mapping
|
Score: 1.5/1
|
3.2. Fractals: Mandelbrot Set
- Spring 2005
Teacher: Dr.Jamzad
Interactive fractal generation with GUI for changing
the color mapping and zooming in/out.
Implementation: Java, OpenGL
Features:
+ Unlimited Zoom In/Out
+ Different color spectrums
+ Different resolutions Rendering
|
Best Project
Score: 1.5/1
 |
4.1. Texturing, Shadowing &
Transparency - Spring 2005
Teacher: Dr.Jamzad
A room full of diffrent objects with a
reflective floor! user can move/resize/rotate/hide all the
objects in the room. Also adding/deleting light sources is
possible. Object will drop shadows for each light source
using shadow mapping. A transparent glass is also floating
in the room!
Implementation: C++ .Net, OpenGL
Features:
+ Reflecting surfaces
+ Shadow mapping
+ Texturing
+ Add/Del Lights
+ Add/Del 3D Objects
+ Transparent 3D Object
+ Scale/Move 3D Objects
|
Best Project
Score: 1.5/1
 |
5. Animation: Torso - Spring
2005
Teacher: Dr. Jamzad
Teammates: S. Miremadi
We wrote a flexible interactive robot with keyboard control.
Implementation: Borland C++, OpenGL
Features:
+ Walking & Running Animation
+ Add/Del Light sources
+ Shadows using shadow mapps
+ BMP Texturing
+ Add/Del Torsos
+ Male/Female Torsos
+ Speed up/down Torsos
|
Score: 1.25/1 |
|
CE324: Modern Information Retrieval |
Persianblog Crawler - Winter
2006
Teacher: Dr. Abolhasani
Teammates: M. Ghodsi, S. Monavvary, S. Miremadi
This project is
available online and involves many parts, including:
# Crawling the
Persianblog Iranian weblog host and retrieving the links
of each weblog to others and finally extracting the
Persianblog web-graph.
# Implementing the global
Page Rank Algorithm on the graph and rank weblogs
according to their page rank value.
# Implementing the global HITS Algorithm on
the crawled graph and finding the
most Authority weblogs and the
most Hub weblogs among the whole available pages.
# Implementing the local
Query Based HITS Algorithm and finding relevant
Authority weblogs and Hub weblogs among the
related weblogs.
Implementation:
Java
Web Interface:
HTML, PHP, Java Script
Features:
+ Crawling more than 100,000 weblogs.
+ Beautiful web Interface!
+ Exploiting amazing shell scripts and awk magic abilities!
+ Finding the most linked pages inside and outside the
Persianblog.
|
Best Project
Score:
6.5/4
 |
| CE418: Systems Analysis &
Design |
I.M.S. Search Engine: Paper
Management System - Summer 2005
Supervisor: Dr. Ghodsi
Teacher: Dr. Habibi
Teammates: M. Sepehrifar, S. Miremadi
Core Implementation: Asp, Asp .Net, C#
Data Base: OLEDB, SQL.
Web Interface: HTML, Java Script
Implementation and Design of a robust Search Engine over PDF
format files for Syma System Co.
This commercial project took three whole months to complete
and we used Software Engineering Techniques to manage the
complexity of the project progress.
Features:
+ Parsing PDF files for searching.
+ Complex Query Syntax:
:Wildcard search: Qu?ry | Q*ry
:Boolean expressions: And | Or | Not
:Similar spelling [Fuzzy]: ~Quary
+ Different user accounts and privileges
|
Score: 20/20

 |
| CE414: Compiler Design |
Semi Pascal
Compiler -
Summer 2005
Teacher: Dr.Jaberipour
Implementation: Java, JavaCC
A compiler Implemented and designed for a semi-Pascal
grammar. Taking the code as input it produces a
semi-Assemblyx86 code.
Also an interpreter is implemented to run the outputted
code.
Features:
+ Support of function calls
+ Support of Recursive function calls
+ Arrays with additional operations
+ Complex Math Expression evaluation
+ Different Loops:
+ while do/do while/repeat until
+ for to/downto step
+ Debugging and warning messages
+ Comments
|
Best Project
Score:
7/5 |
| CE417: Artificial
Inteligence |
Optimal Searching for a simple
Board Game - Winter 2005
Teacher: Dr. Sani
Teammates: M. Sepehrifar
Implementation: Prolog
On a 7 slot board with two types of beans; Three Black
beans on the right and Three White beans on the left. Legal
movements include jumping 1 or 2 slot in each direction
[costs 1] and jumping 3 slot in each direction [costs 2]. We
want to find the minimum cost movements which leave the
board with all the black beans left of all the white beans.
Features:
+ Finding optimal solution :A*
+ Whit three different Heuristic Functions:
Two Admissible and one none-admissible!
+ IDA*: Iterative Deepening A*
+ RTA*: Real Time A*
+ Hill Climbing : Steepest Ascend
+ Best First Search
+ Breadth First Search
+ Depth First Search
|
Best Project
Score:
6/4
 |
| CE416: Computer Networks
Lab. |
1. Ethereal:
Packet Sender/Receiver
- Spring 2005
Teacher: Dr. Rokendini
Teammates: M. Sepehrifar.
Implementation: Visual C++, MFC
Using WinPcap Library we wrote an application that
captures each single packet receiving by the computer and it
could Pars its different layers headers. Also we can
generate any desired packet and send it to any host.
Features:
+ Online Capturing with a handy GUI!
+ Filtering packets according different protocols
+ Packets' Header Parsing
+ Generate any packet with desired source/destination IPs
and Mac addresses
|
Score: 2/2
 |
2. Port
Scanner
- Spring 2005
Teacher: Dr. Rokendini
Teammates: M. Sepehrifar
Implementation: Visual C++, MFC
To check if a desired port on a host is free or not we
simply tried to connect to that port!
Features:
+ User friendly GUI
+ Port's range scan
+ Host's (IP's) range scan
|
Score: 2/2
 |
|
CE443: Computer Networks |
Final
Project: Network Simulation
- Fall 2004
Teacher: Dr. Akbari
It was a network simulation program using TCL language.
Strange language is this TCL!
Implementation: NS, TCL
Analyzing Data: Java, C++
Features:
+ Using Gnu's XGraph software to produce graphical
statistic diagrams
|
Score:
1.25/1.5
 |
|
Midterm Project: SMTP Mail Client
- Fall 2004
Teacher: Dr. Akbari
A SMTP mail client capable of sending
anonymous fake mails,
sending HTML emails, and attachment files (with some
issues!)
Implementation: Java, Java Applet.
Features:
+ user friendly GUI
|
Score: 1/1

|
|
CE424 Operating Systems |
Security
Focus : SELinux Administration
- Summer 2004
Teacher: Dr. Azmi
Teammates: S. Miremadi.
NSA's project SELinux [Security Enhanced Linux]
is capable of having different policies to deal with
different applications and different users.
For example we wrote some policies and compile them to the
OS so that only Authorized users could use ping
command. (Even the root was prohibited)
In the second part we monitored special system-calls by
modifying/recompiling the kernel.
Implementation:
1. SELinux policies' special language
2. C++ for monitoring.
|
Best Project
Score:
3/2
 |
|
CE345: Design & Analysis of Algorithms |
1. Divide
and Conquer: Permuter
- Winter 2004
Teacher: Dr.Ghodsi
Implementation: C++
We have to perform a given permutation on 1..N numbers
using a 2-permuter cells. The goal is to reach the minimum
possible number of cells.
Features:
+ Showing the results Graphically
|
Score: 1.25/1

|
2. Dynamic
Programming: Paragraphing
- Spring 2004
Teacher: Dr.Ghodsi
Implementation: C++.
Determining the distance of words in each line of a
paragraph that minimizes a penalty function using dynamic
programming.
Features:
+ Interactive GUI
|
Score: 1.25/1
|
3. Backtracking, Branch and Bound: Maximum Vertex Cover
- Spring 2004
Teacher: Dr. Ghodsi
Finding the maximum vertex cover in a given Graph using
Branch and bound searching!
Implementation: C++
|
Score: 1/1

|
4. Flow
Networks -
Summer 2004
Teacher: Dr. Ghodsi
Implementation: C++
A case of Flow Network problem with upper and lower
bounds on edges.
|
Score: 0.75/1 |
5. The 2004
28th Annual ACM International Collegiate : Programming
Contest World Finals: Problem F: Merging Maps-
Summer 2004
Teacher: Dr. Ghodsi
A dynamic programming problem from ACM finals!
Implementation: C++
|
Score: 1/1
|
|
CE244: Advanced Programming: C++ |
1. Graph
Algorithms
- Winter 2003
Teacher: Dr. Saniee
Implementation: C++, C# .Net.
Perform different Graph algorithms on a given Graph.
Features:
+ pure OOP
+ Interactive GUI for creating Graphs
+ Intelligent Nodes which move until they reach the best
possible view of the graph. (if the graph is planar they
will produce the none-crossing edges view)
+ Saving/Loading graphs to/from files/internet
+ Implementing many graph algorithms:
+ Depth First Search
+ Breath First Search
+ Dijkstra Shortest Path Algorithm
+ Finding Eulerian Tour
+ Finding Hamiltonian Cycle
+ Prim MST Algorithm
+ Bruteforce Graph Coloring
|
Best Project
Score:
400/300

 |
2. Backgammon
;) - Winter 2003
Teacher: Dr. Saniee
Implementation: C# .Net
What I like the most about this project is its production
time: About a night and a half-day!
Features:
+Pure OOP
+Neat and beautiful!
|
Score: 350/300
 |
|
CE103: Computer Architecture |
Hard Wired
Design of a simple CPU
- Summer 2005
Teacher: Dr. Sarbazi Azad
Implementation: ICs, Wires & Bread Boards!
A simple CPU with an 8bit Instruction Reg. and 6bit Program
counter including an ALU with ADD/SUB functionalities.
Features:
+ 4x8bit Registers
+ Direct and indirect addressing modes
+ An EEPROM memory
+ Lots of LEDs for data representation!
|
Best Project
Score: 20/20

|
| CE254: Data Structures
and Algorithms Fundamentals |
1. Graph
Coloring - Fall
2003
Teacher: Dr. Ghodsi
Brute force backtracking for finding a feasible
coloration for a given graph!
Implementation: Java, Java Applet.
|
Score: 1.5/1

|
2. Mathematical Expressions Parsing and Evaluation
- Fall 2003
Teacher: Dr. Ghodsi
Parsing/evaluating mathematical expressions using
stacks.
Implementation: C++
|
Score: 1/1 |
3. Tri:
Dictionary/Spell Checker
- Winter 2003
Teacher: Dr. Ghodsi
An interactive spell checker using a Tri data
structure.
Implementation: C++
|
Score: 1.25/1 |
4. KDTrees:
Storing points DS
- Winter 2003
Teacher: Dr.Ghodsi
A functional N Dimentional KDTree for finding
K-nearest neighbors of a given point in N dimension space.
My KDTree had support for insertion, deletion and updates
for the stored points.
Implementation: C++
|
Score: 1/1

|
5. Priority
Search Trees: Intersecting Rectangles
- Winter 2004
Teacher: Dr. Ghodsi
Efficiently finding the intersection of a given
triangle with some triangles in the data structure. I used a
priority search tree for this project.
Implementation: C++
|
Score: 0.75/1

|
6. Extra
Project - Oil Refinery
- Winter 2004
Teacher: Dr. Ghodsi
A dynamic programming project.
Implementation: C++
|
Score: 1/1 |
|
CE126: Computer Organization |
Motorola 68k Stack Simulation -
Spring 2003
Teacher: Dr. Karimifard
Visualization of stack in Motorola 68k processor and
its corresponding instructions.
Implementation: Java Applet.
Features:
+ Parsing Assembly commands
+ Showing Registers' content
|
Score: 2/2 |
|
PHYS012: Physics II |
1. Electric fields: Qualitative
- Spring 2003
Teacher: Dr. Bahman Abadi
2D Visualization of electric fields for given
electric charges.
Implementation: Delphi.
Features:
+ Insert/Delete/Move charges
+ Beautiful GUI with visualization of the electric field
|
 |
2. Magnetic
fields: Quantitative
- Spring 2003
Teacher: Dr. Bahman Abadi
3D Visualization of magnet fields for given current
vectors and electric charges. Charges would move according
to the force of electric magnetic field.
Implementation: Delphi.
Features:
+ Insert/Delete/Move charges
+ Increase/Decrease Magnetic filed power
|

|
|
CE165: Computer Programming: Java |
Snakes
Game -
Winter 2002
Teacher: Dr. Khosravi
An advanced version of famous Snake Game. Including very
intelligent computer snake agents. You can choose between a
variety of Snake including: Human Snake, BFS/DFS snakes,
Greedy snakes, Heuristic snakes and more! The competition
between computer agent is really fascinating!
Implementation: Java, Java Applet
Features:
+ My first pure OOD and OOP experience.
+ Different levels of Inheritance in the abstraction
hierarchy
+ Cool game and best project!
|
Best Project
Score:
6.8/4


|
Reversi
Client & Server
- Winter 2002
Implemented For: An internal CE-Department contest.
I wrote a Reversi-server for an internal contest in CE
department which every contestant should write a Reversi-Client
for competition with others.
My server was the link between two clients and
determined the legal movements or winner/looser etc.
Also My Reversi-Client was one of the best clients and
ranked 2nd. Number one was implemented by Hamed
Ahmadinejad. His heuristic function for evaluating the board
was incredible. However, My client beat his several times!
Implementation: Java
|
 |
|
CE108: Computer workshop |
Designing This Webpage! -
Winter 2002
Teacher: Ayat
Actually not this
new webpage but the
old webpage! I enjoy expert
web design and vivid graphical stuff!
Implementation: HTML, DHTML, PHP, CSS, Java Script.
Features:
+ Advanced counter with IP filtering and cookies
+ Guest book with smilies
+ User List of students
|
One Of Best
Pages
Score:
20/20

|
|
PHYS011: Physics I |
|
Earth, Sun &
Moon Simulation - Fall
2002 Teacher:
Dr. Bahman Abadi
A Simple Simulation of Sun,
Earth and Moon movements using physics formula.
Implementation: Pascal.
|

|
My First Project at Middle School!

|
|
My First So-Called Project! |
Cheesy Maze! -
Summer 1996 :)
I love this little project. User clicks on an empty slot in
a maze and my mouse would get the dropped cheese there by
the shortest path!
Implementation: Turbo Pascal.
Features:
+ Loading BMPs in Pascal was just like a miracle!
+ Also exploiting mouse functions
+ Save/Loading board walls to/from files
+ I never forget my heuristic BFS-like search
function.
|


|