Course Overview
This course provides a comprehensive introduction to Multi-Criteria Decision-Analysis (MCDA) methods and tools, emphasizing their practical implementation using Python. Tailored for students, it offers a solid foundation in MCDA techniques while seamlessly connecting theoretical concepts with real-world applications. Participants will acquire hands-on experience in developing, implementing, and analyzing MCDA models, leveraging Python libraries to effectively address complex decision-making challenges.
Learning Outcomes
By the end of this course, students should be able to:
1. Explain the foundational concepts of Multi-Criteria Decision-Analysis (MCDA) and its importance in decision-making scenarios.
2. Build and implement MCDA models using Python for various real-world decision problems.
3. Leverage key Python libraries (e.g., NumPy, pandas, matplotlib) and specialized MCDA tools to analyze and visualize decision-making processes.
4. Prepare, preprocess, and handle decision-making data, including cases with incomplete or uncertain data.
5. Utilize subjective and objective weighting methods to assign priorities within decision models.
6. Evaluate the robustness of decisions by performing and interpreting sensitivity analyses.
7. Tackle multi-criteria decision-making challenges in various domains, such as business, engineering, and sustainability, using MCDA techniques.
Course Content
This course explores the core methodologies of Multi-Criteria Decision-Analysis (MCDA), with a focus on both the American and European schools of decision-making. Participants will gain theoretical and practical insights into key topics, including techniques such as TOPSIS (Technique for Order Preference by Similarity to Ideal Solution), AHP (Analytic Hierarchy Process), PROMETHEE (Preference Ranking Organization Method for Enrichment Evaluations), ELECTRE (Elimination and Choice Expressing Reality), COMET (Characteristic Objects METhod), RANCOM (Randomization in Multi-Criteria Decision-Making), and SPOTIS (Stable Preference Ordering Towards Ideal Solution). The course will highlight the philosophical and methodological differences between the American and European approaches, providing hands-on experience in implementing these methods using Python. While the course provides a deep focus on MCDA methods, it will not cover advanced statistical decision-making models, machine learning-based optimization techniques, or topics outside the scope of multi-criteria decision analysis. By the end, students will have a comprehensive understanding of diverse MCDA approaches and their practical applications in complex decision-making scenarios.
Instructional Method
This course employs a blend of instructional approaches to provide a well-rounded learning experience. Lectures will introduce theoretical concepts and methodologies of Multi-Criteria Decision-Analysis (MCDA), while hands-on workshops will focus on practical exercises using Python to implement and analyze these techniques. Case studies based on real-world scenarios will help participants apply learned methods and enhance their problem-solving skills. Group projects will foster collaboration and critical thinking as students design and present decision-making models. Additionally, discussions and Q&A sessions will offer opportunities to clarify concepts, address challenges, and explore advanced topics in MCDA, ensuring a comprehensive and engaging educational experience.
Required Course Materials
Each student will need access to a PC or laptop with a stable internet connection. A Python programming environment is also required; for example, PyCharm (Community Edition) is recommended as a user-friendly and fully-featured Integrated Development Environment (IDE). Students should also install Python (latest stable version) and the necessary libraries, which will be specified at the start of the course. No additional textbooks are required, as all essential readings and resources will be provided digitally during the course.
Assessment
Evaluation in this course is designed to provide constructive feedback and ensure students achieve the outlined learning outcomes. Students will be assessed through a combination of periodic quizzes and short assignments, accounting for 20% of the final grade, which will help reinforce theoretical concepts and practical skills. Individual coding exercises, making up 30% of the grade, will focus on implementing and analyzing MCDA techniques using Python. A group project, contributing 30% to the overall grade, will require students to collaborate on developing a comprehensive decision-making model, including a written report and presentation. The final exam, worth 20%, will serve as a comprehensive assessment of both theoretical knowledge and practical applications covered during the course. Clear rubrics will be provided for all tasks to clarify expectations and support students in tracking their progress and mastering the course content.