Academic Projects during my Bachelor and Master Studies


Individual projects
• Numerical analysis project
    Implemented in Pascal
Implementation of several algorithms for finding successively better approximations (e.g. Newton–Raphson method) in numerical analysis tasks. It was my first programming project and even though now I realize that the task is simple, in 1993 the feeling was completely different :)
University students database management I
   Implemented in C
Development and implementation of a simple database with one writer/one reader access.
University students database management II
    Implemented in C-shell script in Unix
Development and implementation of a simple database with one writer/one reader access.
• Image processing enhancing project
    Implemented in Matlab
Implementation of several standard digital photo enhancing techniques after applying histogram analysis.
• Equations solver
    Implemented in Matlab
Implementation of several standard methods for numerical solutions of differential equations and large systems of equations.
• Autonomous Sensor-Based Robot Navigation project
    Implemented in C
My own algorithm, called CautiousBug, was implemented on "Kenaf" rescue robot. Assuming no range sensors only gyros for measuring inclination and pitch/roll/yaw and odometry information were used for path planning. The details on the algorithm could be found in
Evgeni Magid, Ehud Rivlin. CAUTIOUSBUG: A Competitive Algorithm for Sensory-Based Robot Navigation. Proceedings of 2004 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), Sendai, Japan, September 28 - October 2, 2004, pp. 2757-2762.

Small projects team member


• Digital photo enhancing project 
    Implemented in Matlab, 2 people
Development of a software application for digital photo processing resulting into a significant quality improvement when observed by a human. An advanced image processing algorithm based on multigrid methods was developed and implemented.

• Email client
    Implemented in C in Linux, 2 people
Development of a user-level client mail application which used Simple Mail Transfer Protocol (SMTP) for sending messages to a mail server for relaying.

• Chess game
    Implemented in LISP, 2 people
Development and implementation of chess playing application under specific requirements using a large library of externally provided functions for artificial intelligence tasks. Main emphasis was to propose optimal strategies taking into an account limited execution time and hardware restrictions, while programming was a secondary task. In the exhaustive automatic competition of the applications we took a second place among about 50 teams.

• Hospital clients database management Web-application
    Implemented in Java, 2 people
Development and implementation of a typical database with one writer/multiple readers access using parallel programming. The database was distributed between a large number of data servers and also a few backup servers in order to secure the data and prevent information loss in a case of data server crash. The application was able to restore lost data and a complicated mechanism was developed to minimize storage capacity requirements of backup servers.

• Library database management
    Implemented in C++, 2 people
Development and implementation of a typical database with one writer/multiple readers access using parallel programming.

• Travel agency database management
    Implemented in Access, 2 people
Development and implementation of a typical database which simulated database and services of a travel agency and included numerous operations.

• Operational System Design
    Implemented in C in XINU, 2 people
Getting acquainted with XINU and UNIX operational system design and implementing additional functions and system abilities for XINU.
Large projects team member
• Soccer tournament management Web-system
    Implemented in UML and Java, 6 people
Development of a Web-application for soccer games and tournament management. A complete system was designed with UML starting from user requirements and general strategy development. The encoded in Java product with external documentation was presented for the project evaluation defense and scored the highest grade. My main task in this project was team leading, algorithms development and UML design. In addition I supported other team members when it was necessary, including programming, testing and preparing documentation.

• Detection & Tracking project
    Implemented in C++, 5 people
Detection of people and vehicles from video sequences and their speed evaluation. Further detected humans were followed until they disappear from the scene.
Projects supervision
• Functional object recognition project
    Implemented in Java, 4 people
An intelligent system capable to recognize a number of objects was designed and implemented. Next on the learning stage it was trained with about 100 testing entries for each class. 3D laser range finder data was processed for extraction of basic primitive blocks. Further analysis of spatial relationships between the primitives and their classification resulted in object labeling and probability estimation of a proper labeling.

• Image segmentation project
    Implemented in Java, 3 people
The goal of the project was to implement an improved mechanism for image segmentation and basic primitive blocks detection for the previously described functional object recognition project.

• Path Search Simulator system
    Implemented in C in Linux, 4 people
The goal of the project was to implement 5 Bug-family algorithms for sensor based path search simulation. Then the algorithms were exhaustively tested in a large set of simulated environments to detect their average and worst performance cases with regard to their competitivness factor.

• Path Search simulator interface project
    Implemented in C++, 3 people
The goal of the project was to create a user-friendly interface and transfer the implemented in the previously described project on Path Search Simulator system from Linux to Windows platform.