برنامه درسی

لیست برنامه های درسی

عنوان اصول طراحی کامپایلر
مقطع تحصیلی کارشناسی
زمان برگزاری شنبه 10-12 دوشنبه 14-16
مکان برگزاری کلاس 257
تعداد واحد ۳
پیش نیاز درس

درس نظریه زبان و ماشین یا آگاهی به طراحی ماشین های منظم و اتوماتای پشته ای

طراحی و کار با گرامر

نحوه ارزیابی

تمرین 5

میان ترم 5

پایان ترم 10

روش تدریس

حضوری مبتنی بر پاورپوینت

زمان بندی و نحوه ارائه درس

مقدمه دو هفته

طراحی کامپایلر نمونه یک هفته

آشنایی با طراحی بالا به پایین دو هفته

یادآوری مقدمات زبان و ماشین دو هفته

آشنایی با طراحی پایین به بالا بخش اول دو هفته

آشنایی با طراحی پایین به بالا بخش دوم دو هفته

آشنایی با طراحی پایین به بالا بخش سوم دو هفته

منابع

اصول طراحی کامپایلر نوشته آهو

طرح درس

مقدمه

طراحی کامپایلر نمونه

آشنایی با طراحی بالا به پایین LL

یادآوری مقدمات زبان و ماشین

آشنایی با طراحی پایین به بالا LR

آشنایی با طراحی پایین به بالا SLR

آشنایی با طراحی پایین به بالا LALR

طراحی بخش پیشین کامپایلر

هدف از طرح درس

آشنایی با نحوه طراحی کامپایلر

انواع کامپایلر

نیازمندی های زبان های برنامه نویسی

انواع پارسر و طراحی آنها

عنوان اصول طراحی پایگاه داده
مقطع تحصیلی کارشناسی
زمان برگزاری چهارشنبه 10-12 دوشنبه 16-18
مکان برگزاری کلاس 257
تعداد واحد ۳
پیش نیاز درس

آشنایی با دستگاه های ذخیره سازی و نحوه انتقال داده در معماری کامپیوتر

نحوه ارزیابی

پروژه و تمرینات 5

میان ترم 5

پایان ترم 10

روش تدریس

حضوری با استفاده از پایان نامه

زمان بندی و نحوه ارائه درس

مقدمه یک هفته

اصول ذخیره سازی دو هفته

اصول طراحی داده سه هفته

خصوصیات  ACID دو هفته

نرمال سازی دو هفته

طراحی پایگاه داده یک هفته

زبان جبری طراحی پایگاه داده دو هفته

SQL دو هفته

طراحی های پیشرفته پایگاه داده یک هفته

منابع

اصول طراح پایگاه داده اثر دیت

طرح درس

مقدمه

اصول ذخیره سازی

اصول طراحی داده

خصوصیات ACID

نرمال سازی

طراحی پایگاه داده

زبان جبری طراحی پایگاه داده

SQL

طراحی های پیشرفته پایگاه داده

هدف از طرح درس

آشنایی با نحوه مدیریت موثر داده در انواع حجم های پیشنهادی

عنوان نظریه الگوریتمی بازی
مقطع تحصیلی کارشناسی ارشد
زمان برگزاری چهارشنبه 14-18
مکان برگزاری کلاس 225
تعداد واحد ۳
پیش نیاز درس

آشنایی با آمار

نحوه ارزیابی

ارائه کلاسی 10

امتحان پایانی 10

روش تدریس

حضوری با استفاده از پاورپوینت

زمان بندی و نحوه ارائه درس

1. Solution Concepts for Static Games یک هفته

2. Solution Concepts for Extensive-form Games دو هفته

3. Equilibrium Concepts for Games with Imperfect Information دو هفته

4. Signaling and Forward Induction یک هفته

5. Repeated Games دو هفته

6. Reputation Formation  دو هفته

7. Supermodular Games دو هفته

8. Global Games یک هفته

9. Cooperative Games دو هفته

منابع

Fudenberg, Drew, and Jean Tirole. Game Theory. MIT Press, 1991. ISBN: 9780262061414

طرح درس

1. Solution Concepts for Static Games

     a. Complete information: rationalizability, Nash equilibrium, epistemic foundations

     b. Incomplete information: Bayesian Nash equilibrium, interim correlated
         rationalizability

2. Solution Concepts for Extensive-form Games

     a. Backwards induction, subgame perfection, iterated conditional dominance

     b. Bargaining with complete information 

3. Equilibrium Concepts for Games with Imperfect Information

4. Signaling and Forward Induction

     a. Stable equilirium, the intuitive criterion, iterated weak dominance, epistemic
         foundations

5. Repeated Games

6. Reputation Formation 

     a. Reputation with short-lived opponents

     b. Screening and reputation in bargaining

7. Supermodular Games

8. Global Games

9. Cooperative Games

      a. Nash bargaining solution, core, Shapley value

      b. Non-cooperative implentations

عنوان اصول طراحی الگوریتم
مقطع تحصیلی کارشناسی
زمان برگزاری چهارشنبه 10-12 دوشنبه 16-18
مکان برگزاری کلاس 257
تعداد واحد ۳
پیش نیاز درس

آشنایی با ساختارهایی داده

نحوه ارزیابی

تمرین 5

میان ترم 5

پایان ترم 5

روش تدریس

حضوری مبتنی بر پاورپوینت

زمان بندی و نحوه ارائه درس

مقدمه 1 هفته

آشنایی با نظریه پیچیدگی و الگوریتم های مرتب سازی 3 هفته

تقسیم و حل 3 هفته

برنامه نویسی پویا 3 هفته

الگوریتم های حریصانه 3 هفته

الگوریتم های گراف 3 هقته

منابع

کتاب اصول طراحی الگوریتم و ساختمان داده ها مشهور به CLRS

طرح درس
  1. Introduction: Algorithm design paradigms - motivation; concepts of algorithmic efficiency; run-time analysis of algorithms; the Landau notation;
  2. Divide-and-Conquer: Structure of divide-and-conquer algorithms; example applications from Binary Search, Integer Multiplication, Nearest Neighbour. Analysis of divide-and-conquer run-time recurrence relations.
  3. Dynamic Programming: Form of dynamic programming algorithms; differences between dynamic programming and Divide-and-Conquer; example applications from: shortest path in graphs; ordering of matrix multiplications; longest common subsequence.
  4. Greedy Methods: Overall view of greedy paradigm. Example of exact optimisation solution (Minimum spanning tree) and approximation solution (Integer Knapsack).
  5. Graph Searching and traversal: Pervasiveness of graph models in applications and notion of search; combinatorial search (e.g. Knight's Tour); graph traversal methods: depth-first and breadth-first search;
  6. Foundations of algorithms: Fundamental questions in the design of algorithms: does an algorithmic solution exist? does an efficient algorithmic solution exist? Models of algorithmic process and their universality: Church-Turing hypothesis.
  7. Introduction to Computability: The existence of problems with no algorithmic solution; an example and proof that a specific computational problem has no algorithmic solution.
  8. Computational Complexity: Quantification of resources used by algorithms: Time and Space; Complexity measures and Classes; Polynomial versus Non-Polynomial time complexity; the class P and motivation for viewing this as the set of tractable computational problems.
  9. NP-completeness: Combinatorial search and optimisation problems; informal view of the case NP as problems with efficient checking algorithms; approaches to tackling the question of P = NP - informal review of NP-completeness, Cook's Theorem (without proof).
هدف از طرح درس

آشنایی با تکنیک های طراحی الگوریتم و نحوه استفاده آنها در الگوریتم های معمول و جدید

عنوان اصول طراحی کامپایلر
مقطع تحصیلی کارشناسی
زمان برگزاری شنبه 8-10 دوشنبه 14-16
مکان برگزاری کلاس 257
تعداد واحد ۳
پیش نیاز درس

درس نظریه زبان و ماشین یا آگاهی به طراحی ماشین های منظم و اتوماتای پشته ای

طراحی و کار با گرامر

نحوه ارزیابی

تمرین 5

میان ترم 5

پایان ترم 10

روش تدریس

حضوری مبتنی بر پاورپوینت

زمان بندی و نحوه ارائه درس

مقدمه دو هفته

طراحی کامپایلر نمونه یک هفته

آشنایی با طراحی بالا به پایین دو هفته

یادآوری مقدمات زبان و ماشین دو هفته

آشنایی با طراحی پایین به بالا بخش اول دو هفته

آشنایی با طراحی پایین به بالا بخش دوم دو هفته

آشنایی با طراحی پایین به بالا بخش سوم دو هفته

منابع

اصول طراحی کامپایلر نوشته آهو

طرح درس

مقدمه

طراحی کامپایلر نمونه

آشنایی با طراحی بالا به پایین LL

یادآوری مقدمات زبان و ماشین

آشنایی با طراحی پایین به بالا LR

آشنایی با طراحی پایین به بالا SLR

آشنایی با طراحی پایین به بالا LALR

طراحی بخش پیشین کامپایلر

هدف از طرح درس

آشنایی با نحوه طراحی کامپایلر

انواع کامپایلر

نیازمندی های زبان های برنامه نویسی

انواع پارسر و طراحی آنها

عنوان اصول طراحی پایگاه داده
مقطع تحصیلی کارشناسی
زمان برگزاری چهارشنبه 10-12 دوشنبه 16-18
مکان برگزاری کلاس 257
تعداد واحد ۳
پیش نیاز درس

آشنایی با دستگاه های ذخیره سازی و نحوه انتقال داده در معماری کامپیوتر

نحوه ارزیابی

پروژه و تمرینات 5

میان ترم 5

پایان ترم 10

روش تدریس

حضوری با استفاده از پایان نامه

زمان بندی و نحوه ارائه درس

مقدمه یک هفته

اصول ذخیره سازی دو هفته

اصول طراحی داده سه هفته

خصوصیات  ACID دو هفته

نرمال سازی دو هفته

طراحی پایگاه داده یک هفته

زبان جبری طراحی پایگاه داده دو هفته

SQL دو هفته

طراحی های پیشرفته پایگاه داده یک هفته

منابع

اصول طراحی پایگاه داده اثر دیت

طرح درس

مقدمه

اصول ذخیره سازی

اصول طراحی داده

خصوصیات ACID

نرمال سازی

طراحی پایگاه داده

زبان جبری طراحی پایگاه داده

SQL

طراحی های پیشرفته پایگاه داده

هدف از طرح درس

آشنایی با نحوه مدیریت موثر داده در انواع حجم های پیشنهادی