The Tables of Courses of Computer Science are as follows:
Table No. 1-1: Compulsory courses in logic and formal methods branches:
No |
Course |
Units |
1 |
Computational data mining |
3 |
2 |
Advanced algorithms |
3 |
3 |
Model checker |
3 |
Table No. 1-2: Specialized – optional courses of official languages branch and formal methods:
No |
Course |
Units |
Hours/ theory |
Hours/applied |
Total hours |
Prerequisites or simultaneous courses |
1 |
Model checker |
3 |
48 |
|
48 |
|
2 |
Automatic proof |
3 |
48 |
|
48 |
|
3 |
Logic programming |
3 |
48 |
|
48 |
|
4 |
Formal semantics |
3 |
48 |
|
48 |
|
5 |
Formal description of software |
3 |
48 |
|
48 |
|
6 |
Software authentication |
3 |
48 |
|
48 |
|
7 |
Special topics in formal methods |
3 |
48 |
|
48 |
Lecturer permission |
The student is required to take at least 6 units of the courses in Table 2-1.
The student must take two of the courses in Tables 1-1 to7-1 or 1-2 to7-2 or one of the related master's degree courses according to the group advice.
Table No2-1: Compulsory courses in the field of scientific computing:
No |
Course |
Units |
1 |
Computational data |
3 |
2 |
Advanced algorithms |
3 |
3 |
Matrix computations |
3 |
Table 2-2: Specialized – optional courses of scientific computations.
No |
Course |
Units |
Hours / theory |
Hours/ applied |
Total hours |
Prerequisites or simultaneous courses |
1 |
Advanced math software |
3 |
48 |
|
48 |
Numerical analysis 1 |
2 |
Linear numerical programming |
3 |
48 |
|
48 |
Linear algebra |
3 |
Nonlinear-numerical optimization |
3 |
48 |
|
48 |
Numerical linear algebra or numerical analysis 1 or matrix computations |
4 |
Advanced linear programming |
3 |
48 |
|
48 |
Linear numerical programming or instructor permission |
5 |
Advanced nonlinear optimization |
3 |
48 |
|
48 |
Numerical linear algebra or numerical analysis 1 or matrix calculations or group permission
|
6 |
Numerical Integral and differential equations |
3 |
48 |
|
48 |
Numerical analysis 1 |
7 |
Numerical partial differential equations |
3 |
48 |
|
48 |
Numerical analysis 1 |
8 |
Sparse matrices technology |
3 |
48 |
|
48 |
Numerical linear algebra or matrix calculations or instructor permission |
91 |
Modeling and geometric design |
3 |
48 |
|
48 |
Numerical linear algebra or matrix calculations or instructor permission |
11 |
Integer programing and networking |
3 |
48 |
|
48 |
Numerical algebra, or numerical linear programming, or instructor permission |
12 |
Combinatory optimization |
3 |
48 |
|
48 |
Numerical algebra, or numerical linear programming, or instructor permission |
13 |
Parallel algorithms for scientific computing |
3 |
48 |
|
48 |
Numerical analysis 1 or instructor permission |
14 |
Numerical stochastic differential equations |
3 |
48 |
|
48 |
Numerical analysis 1 or instructor permission |
15 |
Numerical stochastic partial differential equations |
3 |
48 |
|
48 |
Ordinary stochastic differential equations, Simulation |
16 |
Simulation |
3 |
48 |
|
48 |
Probability theory and stochastic processes, statistics |
17 |
Special topics in scientific computing
|
3 |
48 |
|
48 |
Instructor permission |
The student is required to take at least 6 units of the courses in Table 2-2.
The student must take two of the courses in Tables 1-1 to 7-1 or 1-2 to 7-2 or one of the related master's degree courses according to the group advice.
Table No. 3-1: Compulsory courses in Algorithm branch and theory of computations:
No |
Course |
Units |
1 |
Computational data |
3 |
2 |
Advanced algorithms |
3 |
3 |
Advanced theory of computation |
3 |
Table No. 3-2: Specialized-optional courses in computational theory:
Course code |
Course |
Units |
Hours/ theory |
Hours/ applied |
Total hours |
Prerequisites or simultaneous courses |
1 |
Recursion theory and computability |
3 |
48 |
|
48 |
Instructor permission |
2 |
Computation complexity |
3 |
48 |
|
48 |
|
3 |
Advanced computation complexity |
3 |
48 |
|
48 |
|
4 |
Parallel algorithms |
3 |
48 |
|
48 |
|
5 |
Stochastic algorithms |
3 |
48 |
|
48 |
|
6 |
Design and analysis of algorithms |
3 |
48 |
|
48 |
|
7 |
Fundamentals of cryptography theory |
3 |
48 |
|
48 |
|
8 |
Games theory |
3 |
48 |
|
48 |
|
9 |
Advanced graph theory |
3 |
48 |
|
48 |
Graphs and algorithms |
10 |
Combinatorial algorithms |
3 |
48 |
|
48 |
|
11 |
Graphs and algorithms |
3 |
48 |
|
48 |
|
12 |
Approximate algorithms |
3 |
48 |
|
48 |
|
13 |
Computational geometry |
3 |
48 |
|
48 |
|
14 |
combinatorics |
3 |
48 |
|
48 |
Combinatorial analysis 1 |
15 |
Structural compounds |
3 |
48 |
|
48 |
|
16 |
Computational analysis |
3 |
48 |
|
48 |
Mathematical logic, Mathematical analysis |
17 |
Special Topics in computational theory |
3 |
48 |
|
48 |
Instructor permission |
The student is must take at least 6 units of the courses from Table 2-3
The student must take two of the courses in Tables 1-1 to 7-1 or 2-1 to 7-2 or one of the related master's degree courses, depending on the group advice.
Table 4-1: Compulsory courses in soft computing and artificial intelligence.
No |
Course |
Units |
1 |
Computational data |
3 |
2 |
Advanced algorithms |
3 |
3 |
Advanced artificial intelligence 3 |
3 |
Table No. 4-2: Specialized- optional courses - Soft computing and artificial intelligence:
Course code |
Course |
Units |
Hours/ theory |
Hours/applied |
Total hours |
Prerequisites or simultaneous courses |
1 |
Soft computing |
3 |
48 |
|
48 |
- |
2 |
Advanced artificial intelligence |
3 |
48 |
|
48 |
- |
3 |
Expert systems |
3 |
48 |
|
48 |
- |
4 |
Machine learning |
3 |
48 |
|
48 |
- |
5 |
Natural languages processing |
3 |
48 |
|
48 |
- |
6 |
Statistical Machine learning |
3 |
48 |
|
48 |
Machine learning |
7 |
Discrete dynamic systems |
3 |
48 |
|
48 |
- |
8 |
Intelligent algorithms |
3 |
48 |
|
48 |
- |
9 |
Multi agent systems |
3 |
48 |
|
48 |
- |
10 |
Deep learning |
3 |
48 |
|
48 |
Machine learning |
11 |
Data mining |
3 |
48 |
|
48 |
- |
12 |
Advanced network optimization |
3 |
48 |
|
48 |
- |
13 |
Special Topics in Artificial Intelligence |
3 |
48 |
|
48 |
Instructor permission |
14 |
Special Topics in Soft Computing |
3 |
48 |
|
48 |
Instructor permission |
The student is required to take at least 6 units of the courses in Table 4-2.
The student must take two of the courses in Tables 1-1to 7-1 or 1-2 to 7-1, or one of the related master's degree courses according to the group advice.
Table 5-1: Compulsory courses in systems theory:
No |
Course |
Units |
1 |
Computational data mining |
3 |
2 |
Advanced algorithms |
3 |
3 |
Advanced software design |
3 |
Table No. 5-2: Specialized-optional courses in systems theory:
Course code |
Course |
Units |
Hours/theory |
Hours/ applied |
Total hours |
Prerequisites or simultaneous courses |
1 |
Advanced software design |
3 |
48 |
|
48 |
- |
2 |
Advanced agent system |
3 |
48 |
|
48 |
- |
3 |
Advanced data base |
3 |
48 |
|
48 |
- |
4 |
Real time systems |
3 |
48 |
|
48 |
- |
5 |
Decision support systems |
3 |
48 |
|
48 |
- |
6 |
Advanced compiler |
3 |
48 |
|
48 |
- |
7 |
Distributed systems |
3 |
48 |
|
48 |
Artificial intelligence |
8 |
Advanced computer networks |
3 |
48 |
|
48 |
- |
9 |
Special Topics in Systems Theory |
3 |
48 |
|
48 |
Instructor permission |
The student is required to take at least 6 units of the courses in Table 5-2. advice.
Table No. 6-1: Compulsory courses in Decision Science and Knowledge:
No |
Course |
Units |
1 |
Computational data mining |
3 |
2 |
Advanced algorithms |
3 |
3 |
Convex optimization
|
3 |
Table No 6-2: Specialized-optional Courses in Decision Science and Knowledge:
Course code |
Course |
Units |
Hours/theory |
Hours/applied |
Total hours |
Prerequisites or simultaneous courses |
1 |
Decision with multiple criteria |
3 |
48 |
|
48 |
Operations Research |
2 |
Soft computing |
3 |
48 |
|
48 |
- |
3 |
Machine learning |
3 |
48 |
|
48 |
- |
4 |
Information and uncertainty |
3 |
48 |
|
48 |
- |
5 |
Fuzzy decision systems |
3 |
48 |
|
48 |
Decision with multiple criteria |
6 |
Learning mathematics |
3 |
48 |
|
48 |
- |
7 |
Combinatorial optimization |
3 |
48 |
|
48 |
- |
8 |
Stochastic processes |
3 |
48 |
|
48 |
- |
9 |
Probability and fuzzy statistics |
3 |
48 |
|
48 |
Soft computing |
10 |
Games theory |
3 |
48 |
|
48 |
- |
11 |
Transcendental optimization |
3 |
48 |
|
48 |
Operational research |
12 |
Data mining |
3 |
48 |
|
48 |
- |
13 |
Advanced data mining |
3 |
48 |
|
48 |
Data mining |
14 |
Text mining & web mining |
3 |
48 |
|
48 |
Data mining |
15 |
Artificial Neural Networks |
3 |
48 |
|
48 |
Mathematical optimization or Instructor permission |
16 |
Multi agent systems |
3 |
48 |
|
48 |
- |
17 |
Special topics in decision science and knowledge |
3 |
48 |
|
48 |
Instructor permission |
The student is required to take at least 6 units of the courses in Table 2-6.
The student must take two of the courses in Tables 1-1 to 7-1 or 1-2to 7-1, or one of the related master's degree courses, depending on the group permission.
Table 7-1: Compulsory courses of Data Mining branch:
No |
Course |
units |
1 |
Computational data mining |
3 |
2 |
Advanced algorithms |
3 |
3 |
Data mining |
3 |
Table 7-2: Specialized-optional courses in data mining branch:
Course code |
Course |
Units |
Hours/ theory |
Hours/applied |
Total hours |
Prerequisites or simultaneous courses |
1 |
Learning mathematics |
3 |
48 |
|
48 |
- |
2 |
Convex optimization |
3 |
48 |
|
48 |
- |
3 |
Combinatorial optimization |
3 |
48 |
|
48 |
- |
4 |
Machine learning |
3 |
48 |
|
48 |
- |
5 |
Statistical machine learning |
3 |
48 |
|
48 |
Machine learning |
6 |
Advanced data mining |
3 |
48 |
|
48 |
Data mining |
7 |
Text mining and web mining
|
3 |
48 |
|
48 |
Data mining |
8 |
Feature selection and feature extraction |
3 |
48 |
|
48 |
Data mining or Instructor permission |
9 |
Graph mining |
3 |
48 |
|
48 |
Data mining or Instructor permission |
10 |
Probabilistic graph models |
3 |
48 |
|
48 |
Data mining or Instructor permission |
11 |
Complex Networks |
3 |
48 |
|
48 |
Data mining or Instructor permission |
12 |
Data visualization |
3 |
48 |
|
48 |
Data mining or Instructor permission |
13 |
Outlier detection |
3 |
48 |
|
48 |
Data mining or Instructor permission |
14 |
Modeling and data processing |
3 |
48 |
|
48 |
Data mining |
15 |
Deep learning |
3 |
48 |
|
48 |
Machine learning |
16 |
Special topics in data mining |
3 |
48 |
|
48 |
Instructor decision |
The student is required to take at least 6 units of the courses in Table 7-2.
The student must take two of the courses in Tables 1-1to 7-1 or 1-2to 7-2, or one of the related master's degree courses, depending on the group permission.