Difference between revisions of "BSc: Introduction To Artificial Intelligence"

From IU
Jump to navigation Jump to search
 
(5 intermediate revisions by 2 users not shown)
Line 1: Line 1:
  +
 
= Introduction to Artificial Intelligence =
 
= Introduction to Artificial Intelligence =
  +
* '''Course name''': Introduction to Artificial Intelligence
  +
* '''Code discipline''': ?????
  +
* '''Subject area''':
   
  +
== Short Description ==
* <span>'''Course name:'''</span> Introduction to Artificial Intelligence
 
  +
This course covers the following concepts: Artificial Intelligence: Introduction to the ethical use of AI and the framework of development of AI systems; Artificial Intelligence: Evolutionary Algorithms.
* <span>'''Course number:'''</span> ?????
 
   
== Course Characteristics ==
+
== Prerequisites ==
   
=== Key concepts of the class ===
+
=== Prerequisite subjects ===
   
* Artificial Intelligence: Introduction to the ethical use of AI and the framework of development of AI systems
 
* Artificial Intelligence: Evolutionary Algorithms
 
   
  +
=== Prerequisite topics ===
=== What is the purpose of this course? ===
 
   
  +
  +
== Course Topics ==
  +
{| class="wikitable"
  +
|+ Course Sections and Topics
  +
|-
  +
! Section !! Topics within the section
  +
|-
  +
| History and Philosophy of AI ||
  +
# Introduction to the practical applications of AI
  +
# History of Epistemology, particularly on the issue of knowledge creation and intelligence.
  +
# Understanding of the Chinese room and Turing test
  +
# Appreciation for the role of AI in Industries and the the application
  +
# Application of the PEAS model
  +
# Application of the Thinking/Acting Humanly/Rationally
  +
# Appreciation of the Ethical Issues in AI
  +
|-
  +
| Title 2 ||
  +
# Searching Algorithms
  +
# Tree Searches and logic, including basics of PROLOG as a lanuage for answering such problems
  +
# First and Second order logic
  +
|-
  +
| Topics in Evolutionary Algorithms ||
  +
# Understanding of the four base Evolutionary Algorithms: GA, GP, ES, EP
  +
# Application of one of these four.
  +
# Analysis of the application of these four types to a number of problem instances.
  +
# Application of the appropriate statistical models and scientific method (i.e. Hypothesis testing) to evaluate the EA.
  +
|}
  +
== Intended Learning Outcomes (ILOs) ==
  +
  +
=== What is the main purpose of this course? ===
 
Have you ever wondered about how computers decide on what your credit worthiness is, or how they can play chess as good as a world master, or how world class circuits can be built with a minimal number of crossed wires? Perhaps you have wanted to build a human like robot, or have wanted to explore the stars with automated probes. Artificial Intelligence is the field which examines such problems. The goal is to provide a diverse theoretical overview of historical and current thought in the realm of Artificial Intelligence, Computational Intelligence, Robotics and Machine Learning Techniques.
 
Have you ever wondered about how computers decide on what your credit worthiness is, or how they can play chess as good as a world master, or how world class circuits can be built with a minimal number of crossed wires? Perhaps you have wanted to build a human like robot, or have wanted to explore the stars with automated probes. Artificial Intelligence is the field which examines such problems. The goal is to provide a diverse theoretical overview of historical and current thought in the realm of Artificial Intelligence, Computational Intelligence, Robotics and Machine Learning Techniques.
   
=== Course objectives based on Bloom’s taxonomy ===
+
=== ILOs defined at three levels ===
   
==== - What should a student remember at the end of the course? ====
+
==== Level 1: What concepts should a student know/remember/explain? ====
  +
By the end of the course, the students should be able to ...
  +
* Gather an appreciation of the history of AI founders
  +
* Solve simple problems using random, guided, and directed, search methods and be able to compare their abilities to solve the problem using a statistical argument
   
By the end of the course, the students should be able to
+
==== Level 2: What basic practical skills should a student be able to perform? ====
  +
By the end of the course, the students should be able to ...
 
* Understand and apply the PEAS model of problem definition
+
* Understand the PEAS model of problem definition
* Understand and apply the Environment Model
+
* Understand the Environment Model
 
* Understand the role of AI within computer science in a variety of fields and applications
 
* Understand the role of AI within computer science in a variety of fields and applications
   
  +
==== Level 3: What complex comprehensive skills should a student be able to apply in real-life scenarios? ====
=== Course evaluation ===
 
  +
By the end of the course, the students should be able to ...
  +
* Apply Evolutionary Algorithms to a number of problems
  +
* Apply the PEAS model of problem definition
  +
* Apply the apply the Environment Model
  +
== Grading ==
   
  +
=== Course grading range ===
 
{| class="wikitable"
 
{| class="wikitable"
  +
|+
|+ Course grade breakdown
 
  +
|-
  +
! Grade !! Range !! Description of performance
 
|-
 
|-
  +
| A. Excellent || 90-100 || -
! Type !! Points
 
  +
|-
  +
| B. Good || 75-89 || -
  +
|-
  +
| C. Satisfactory || 60-74 || -
  +
|-
  +
| D. Poor || 0-59 || -
  +
|}
  +
  +
=== Course activities and grading breakdown ===
  +
{| class="wikitable"
  +
|+
  +
|-
  +
! Activity Type !! Percentage of the overall course grade
 
|-
 
|-
 
| Assignment 1 || 20
 
| Assignment 1 || 20
Line 43: Line 99:
 
|}
 
|}
   
  +
=== Recommendations for students on how to succeed in the course ===
   
This course has a required class element of practical work on course elements, the retake is not a substitute for practical knowledge, and it is inherently unfair that students who have not submitted these practical elements are graded the same as those who have accomplished course materials. In order to be eligible for the retake, a student is required to have submitted all course assignments, and have a passing grade on those elements. The lacking/failing elements, can be presented for this purpose up to 3 business days before the retake for evaluation. In the case of the resubmission of a failing element, a document should be attached noting which changes have been made to the assignment in order to lead to a passing mark. Lack of these elements in a passing state presented to the committee will be considered a failing grade for the retake.
 
   
  +
== Resources, literature and reference materials ==
The retake grade will count as the final course grade, with the first retake giving no more than a B as final grade, and the second retake giving no more than a C. The first retake will be a written exam submitted to the professor, and the second retake as an oral commission.
 
   
=== Grades range ===
+
=== Open access resources ===
  +
* Russell & Norvig - Artificial Intelligence: A Modern Approach, 3rd Edition
  +
* Ashlock - Evolutionary Computation for Modeling and Optimization
  +
  +
=== Closed access resources ===
  +
  +
  +
=== Software and tools used within the course ===
  +
  +
= Teaching Methodology: Methods, techniques, & activities =
   
  +
== Activities and Teaching Methods ==
{|
 
  +
{| class="wikitable"
|+ Course grading range
 
  +
|+ Activities within each section
!
 
!
 
!align="center"| '''Proposed range'''
 
 
|-
 
|-
  +
! Learning Activities !! Section 1 !! Section 2 !! Section 3
| A. Excellent
 
| 90-100
 
|align="center"|
 
 
|-
 
|-
  +
| Homework and group projects || 1 || 1 || 1
| B. Good
 
| 75-89
 
|align="center"|
 
 
|-
 
|-
  +
| Midterm evaluation || 1 || 1 || 0
| C. Satisfactory
 
| 60-74
 
|align="center"|
 
 
|-
 
|-
  +
| Essays || 1 || 0 || 0
| D. Poor
 
| 0-59
+
|-
  +
| Discussions || 1 || 1 || 1
|align="center"|
 
|}
+
|-
  +
| Development of individual parts of software product code || 0 || 1 || 1
  +
|-
  +
| Testing (written or computer based) || 0 || 1 || 1
  +
|}
  +
== Formative Assessment and Course Activities ==
   
  +
=== Ongoing performance assessment ===
If necessary, please indicate freely your course’s grading features.
 
   
=== Resources and reference material ===
+
==== Section 1 ====
  +
{| class="wikitable"
 
  +
|+
* Russell &amp; Norvig - Artificial Intelligence: A Modern Approach, 3rd Edition
 
* Ashlock - Evolutionary Computation for Modeling and Optimization
 
 
== Course Sections ==
 
 
The main sections of the course and approximate hour distribution between them is as follows:
 
 
{|
 
|+ Course Sections
 
!align="center"| '''Section'''
 
! '''Section Title'''
 
!align="center"| '''Teaching Hours'''
 
 
|-
 
|-
  +
! Activity Type !! Content !! Is Graded?
|align="center"| 1
 
| History and Philosophy of AI
 
|align="center"| 16
 
 
|-
 
|-
  +
| Question || State and apply the PEAS model to a set of problems. || 1
|align="center"| 2
 
| Searching as Optimization
 
|align="center"| 16
 
 
|-
 
|-
  +
| Question || State the difference between Plato and Aristotle’s conceptions of knowledge - refer to Socrates definition? || 1
|align="center"| 3
 
  +
|-
| Topics in Evolutionary Algorithms
 
  +
| Question || Are you intelligent? What marks you as such? What is the definition? || 1
|align="center"| 16
 
|}
+
|-
  +
| Question || Are you creative? What marks you as such? What is the definition? || 1
 
  +
|-
=== Section 1 ===
 
  +
| Question || Apply the PEAS model as a group to a real world instance. || 0
 
  +
|-
==== Section title: ====
 
  +
| Question || Discuss - Humans in many low skilled tasks are being replaced by automation, what role do practitioners have in protecting its abuse || 0
 
  +
|-
History and Philosophy of AI
 
  +
| Question || Discuss - Asimov’s laws of robotics are used as a science fiction application of ethics in AI, do you think they have a role in the real world. || 0
 
  +
|-
=== Topics covered in this section: ===
 
  +
| Question || Discuss - how can we prevent bias from entering into systems. || 0
 
  +
|-
* Introduction to the practical applications of AI
 
  +
| Question || Discuss - What does it mean for a Computer to be Creative? || 0
* History of Epistemology, particularly on the issue of knowledge creation and intelligence.
 
  +
|}
* Understanding of the Chinese room and Turing test
 
  +
==== Section 2 ====
* Appreciation for the role of AI in Industries and the the application
 
  +
{| class="wikitable"
* Application of the PEAS model
 
  +
|+
* Application of the Thinking/Acting Humanly/Rationally
 
  +
|-
* Appreciation of the Ethical Issues in AI
 
  +
! Activity Type !! Content !! Is Graded?
 
  +
|-
=== What forms of evaluation were used to test students’ performance in this section? ===
 
  +
| Question || Apply Prolog to an example of a family tree || 1
 
  +
|-
<div class="tabular">
 
  +
| Question || Apply Prolog to an example of a logic problem || 1
 
  +
|-
<span>|a|c|</span> &amp; '''Yes/No'''<br />
 
  +
| Question || Compare and Contrast between two different search algorithms shown in class and implement. || 1
Development of individual parts of software product code &amp; 0<br />
 
  +
|-
Homework and group projects &amp; 1<br />
 
  +
| Question || Given an example data set which search would you use and why? || 1
Midterm evaluation &amp; 1<br />
 
  +
|-
Testing (written or computer based) &amp; 0<br />
 
  +
| Question || How does Prolog implement a tree? || 0
Reports &amp; 0<br />
 
  +
|-
Essays &amp; 1<br />
 
  +
| Question || Does this program work - mark out any errors. || 0
Oral polls &amp; 0<br />
 
  +
|-
Discussions &amp; 1<br />
 
  +
| Question || What is the difference between a red and green cut? || 0
 
  +
|-
 
  +
| Question || What is the result of this Query? || 0
 
  +
|-
</div>
 
  +
| Question || What is the time complexity of this algorithm? || 0
=== Typical questions for ongoing performance evaluation within this section ===
 
  +
|}
 
  +
==== Section 3 ====
# State and apply the PEAS model to a set of problems.
 
  +
{| class="wikitable"
# State the difference between Plato and Aristotle’s conceptions of knowledge - refer to Socrates definition?
 
  +
|+
# Are you intelligent? What marks you as such? What is the definition?
 
  +
|-
# Are you creative? What marks you as such? What is the definition?
 
  +
! Activity Type !! Content !! Is Graded?
 
  +
|-
=== Typical questions for seminar classes (labs) within this section ===
 
  +
| Question || Define a particular EA by its data structure || 1
 
  +
|-
# Apply the PEAS model as a group to a real world instance.
 
  +
| Question || Implement an EA, write a Report about the implementation with sufficient search of the parameter space justified by statistical evaluations || 1
# Discuss - Humans in many low skilled tasks are being replaced by automation, what role do practitioners have in protecting its abuse
 
  +
|-
# Discuss - Asimov’s laws of robotics are used as a science fiction application of ethics in AI, do you think they have a role in the real world.
 
  +
| Question || Analysis of two EA types base upon their representation and variation operators and suitability to a problem space. || 1
# Discuss - how can we prevent bias from entering into systems.
 
  +
|-
# Discuss - What does it mean for a Computer to be Creative?
 
  +
| Question || Produce a new type of EA based upon the concepts seen in class and speculate as to its effectivenesss on a problem via hypothesis testing. || 1
 
  +
|-
=== Test questions for final assessment in this section ===
 
  +
| Question || Labs within this section are primarily for supporting assistance with the above objectives, e.g. work periods with TA assistance. || 0
 
  +
|}
  +
=== Final assessment ===
  +
'''Section 1'''
 
# Apply the PEAS model to a real world instance.
 
# Apply the PEAS model to a real world instance.
 
# You have a classification problem involving images, from the perspective of Plato and Aristotle on knowledge, which algorithm would they implement, justify your decision.
 
# You have a classification problem involving images, from the perspective of Plato and Aristotle on knowledge, which algorithm would they implement, justify your decision.
 
# Write a short essay based upon either the prosecution or defense of a trial of an Android who has passed the Turing test who is petitioning the court for human rights. What would be your case for or against using concepts in class such as Turing test, Chinese room, etc.?
 
# Write a short essay based upon either the prosecution or defense of a trial of an Android who has passed the Turing test who is petitioning the court for human rights. What would be your case for or against using concepts in class such as Turing test, Chinese room, etc.?
  +
'''Section 2'''
 
=== Section 2 ===
 
 
==== Section title: ====
 
 
Title 2
 
 
=== Topics covered in this section: ===
 
 
* Searching Algorithms
 
* Tree Searches and logic, including basics of PROLOG as a lanuage for answering such problems
 
* First and Second order logic
 
 
=== What forms of evaluation were used to test students’ performance in this section? ===
 
 
<div class="tabular">
 
 
<span>|a|c|</span> &amp; '''Yes/No'''<br />
 
Development of individual parts of software product code &amp; 1<br />
 
Homework and group projects &amp; 1<br />
 
Midterm evaluation &amp; 1<br />
 
Testing (written or computer based) &amp; 1<br />
 
Reports &amp; 0<br />
 
Essays &amp; 0<br />
 
Oral polls &amp; 0<br />
 
Discussions &amp; 1<br />
 
 
 
 
</div>
 
=== Typical questions for ongoing performance evaluation within this section ===
 
 
# Apply Prolog to an example of a family tree
 
# Apply Prolog to an example of a logic problem
 
# Compare and Contrast between two different search algorithms shown in class and implement.
 
# Given an example data set which search would you use and why?
 
 
=== Typical questions for seminar classes (labs) within this section ===
 
 
# How does Prolog implement a tree?
 
# Does this program work - mark out any errors.
 
# What is the difference between a red and green cut?
 
# What is the result of this Query?
 
# What is the time complexity of this algorithm?
 
 
=== Test questions for final assessment in this section ===
 
 
 
# Here is an example family tree. Given a simple Prolog Query - what would be the result?
 
# Here is an example family tree. Given a simple Prolog Query - what would be the result?
 
# Here is an example logic problem. Given a Prolog Query - what would be the result.
 
# Here is an example logic problem. Given a Prolog Query - what would be the result.
 
# Compare and Contrast two different search algorithms in terms of time and space complexity
 
# Compare and Contrast two different search algorithms in terms of time and space complexity
 
# Given data of type X, what search algorithm should you use and why?
 
# Given data of type X, what search algorithm should you use and why?
  +
'''Section 3'''
  +
# Show an analysis on a problem instance as to which EA method you would use, justify your answer based on the representation of the problem data.
  +
# Implement an EA for a problem, show statistical justification of your result.
  +
# Produce a report about a new creation of an EA system with sufficient justification with hypothesis tests.
   
=== Section 3 ===
+
=== The retake exam ===
  +
'''Section 1'''
   
==== Section title: ====
+
'''Section 2'''
   
  +
'''Section 3'''
Topics in Evolutionary Algorithms
 
 
==== Topics covered in this section: ====
 
 
* Understanding of the four base Evolutionary Algorithms: GA, GP, ES, EP
 
* Application of one of these four.
 
* Analysis of the application of these four types to a number of problem instances.
 
* Application of the appropriate statistical models and scientific method (i.e. Hypothesis testing) to evaluate the EA.
 
 
=== What forms of evaluation were used to test students’ performance in this section? ===
 
 
<div class="tabular">
 
 
<span>|a|c|</span> &amp; '''Yes/No'''<br />
 
Development of individual parts of software product code &amp; 1<br />
 
Homework and group projects &amp; 1<br />
 
Midterm evaluation &amp; 0<br />
 
Testing (written or computer based) &amp; 1<br />
 
Reports &amp; 0<br />
 
Essays &amp; 0<br />
 
Oral polls &amp; 0<br />
 
Discussions &amp; 1<br />
 
 
 
 
</div>
 
=== Typical questions for ongoing performance evaluation within this section ===
 
 
# Define a particular EA by its data structure
 
# Implement an EA, write a Report about the implementation with sufficient search of the parameter space justified by statistical evaluations
 
# Analysis of two EA types base upon their representation and variation operators and suitability to a problem space.
 
# Produce a new type of EA based upon the concepts seen in class and speculate as to its effectivenesss on a problem via hypothesis testing.
 
 
==== Typical questions for seminar classes (labs) within this section ====
 
 
# Labs within this section are primarily for supporting assistance with the above objectives, e.g. work periods with TA assistance.
 
 
==== Test questions for final assessment in this section ====
 
 
# Show an analysis on a problem instance as to which EA method you would use, justify your answer based on the representation of the problem data.
 
# Implement an EA for a problem, show statistical justification of your result.
 
# Produce a report about a new creation of an EA system with sufficient justification with hypothesis tests.
 

Latest revision as of 12:57, 12 July 2022

Introduction to Artificial Intelligence

  • Course name: Introduction to Artificial Intelligence
  • Code discipline: ?????
  • Subject area:

Short Description

This course covers the following concepts: Artificial Intelligence: Introduction to the ethical use of AI and the framework of development of AI systems; Artificial Intelligence: Evolutionary Algorithms.

Prerequisites

Prerequisite subjects

Prerequisite topics

Course Topics

Course Sections and Topics
Section Topics within the section
History and Philosophy of AI
  1. Introduction to the practical applications of AI
  2. History of Epistemology, particularly on the issue of knowledge creation and intelligence.
  3. Understanding of the Chinese room and Turing test
  4. Appreciation for the role of AI in Industries and the the application
  5. Application of the PEAS model
  6. Application of the Thinking/Acting Humanly/Rationally
  7. Appreciation of the Ethical Issues in AI
Title 2
  1. Searching Algorithms
  2. Tree Searches and logic, including basics of PROLOG as a lanuage for answering such problems
  3. First and Second order logic
Topics in Evolutionary Algorithms
  1. Understanding of the four base Evolutionary Algorithms: GA, GP, ES, EP
  2. Application of one of these four.
  3. Analysis of the application of these four types to a number of problem instances.
  4. Application of the appropriate statistical models and scientific method (i.e. Hypothesis testing) to evaluate the EA.

Intended Learning Outcomes (ILOs)

What is the main purpose of this course?

Have you ever wondered about how computers decide on what your credit worthiness is, or how they can play chess as good as a world master, or how world class circuits can be built with a minimal number of crossed wires? Perhaps you have wanted to build a human like robot, or have wanted to explore the stars with automated probes. Artificial Intelligence is the field which examines such problems. The goal is to provide a diverse theoretical overview of historical and current thought in the realm of Artificial Intelligence, Computational Intelligence, Robotics and Machine Learning Techniques.

ILOs defined at three levels

Level 1: What concepts should a student know/remember/explain?

By the end of the course, the students should be able to ...

  • Gather an appreciation of the history of AI founders
  • Solve simple problems using random, guided, and directed, search methods and be able to compare their abilities to solve the problem using a statistical argument

Level 2: What basic practical skills should a student be able to perform?

By the end of the course, the students should be able to ...

  • Understand the PEAS model of problem definition
  • Understand the Environment Model
  • Understand the role of AI within computer science in a variety of fields and applications

Level 3: What complex comprehensive skills should a student be able to apply in real-life scenarios?

By the end of the course, the students should be able to ...

  • Apply Evolutionary Algorithms to a number of problems
  • Apply the PEAS model of problem definition
  • Apply the apply the Environment Model

Grading

Course grading range

Grade Range Description of performance
A. Excellent 90-100 -
B. Good 75-89 -
C. Satisfactory 60-74 -
D. Poor 0-59 -

Course activities and grading breakdown

Activity Type Percentage of the overall course grade
Assignment 1 20
Assignment 2 20
Lab Participation 10
Midterm 25
Final 25

Recommendations for students on how to succeed in the course

Resources, literature and reference materials

Open access resources

  • Russell & Norvig - Artificial Intelligence: A Modern Approach, 3rd Edition
  • Ashlock - Evolutionary Computation for Modeling and Optimization

Closed access resources

Software and tools used within the course

Teaching Methodology: Methods, techniques, & activities

Activities and Teaching Methods

Activities within each section
Learning Activities Section 1 Section 2 Section 3
Homework and group projects 1 1 1
Midterm evaluation 1 1 0
Essays 1 0 0
Discussions 1 1 1
Development of individual parts of software product code 0 1 1
Testing (written or computer based) 0 1 1

Formative Assessment and Course Activities

Ongoing performance assessment

Section 1

Activity Type Content Is Graded?
Question State and apply the PEAS model to a set of problems. 1
Question State the difference between Plato and Aristotle’s conceptions of knowledge - refer to Socrates definition? 1
Question Are you intelligent? What marks you as such? What is the definition? 1
Question Are you creative? What marks you as such? What is the definition? 1
Question Apply the PEAS model as a group to a real world instance. 0
Question Discuss - Humans in many low skilled tasks are being replaced by automation, what role do practitioners have in protecting its abuse 0
Question Discuss - Asimov’s laws of robotics are used as a science fiction application of ethics in AI, do you think they have a role in the real world. 0
Question Discuss - how can we prevent bias from entering into systems. 0
Question Discuss - What does it mean for a Computer to be Creative? 0

Section 2

Activity Type Content Is Graded?
Question Apply Prolog to an example of a family tree 1
Question Apply Prolog to an example of a logic problem 1
Question Compare and Contrast between two different search algorithms shown in class and implement. 1
Question Given an example data set which search would you use and why? 1
Question How does Prolog implement a tree? 0
Question Does this program work - mark out any errors. 0
Question What is the difference between a red and green cut? 0
Question What is the result of this Query? 0
Question What is the time complexity of this algorithm? 0

Section 3

Activity Type Content Is Graded?
Question Define a particular EA by its data structure 1
Question Implement an EA, write a Report about the implementation with sufficient search of the parameter space justified by statistical evaluations 1
Question Analysis of two EA types base upon their representation and variation operators and suitability to a problem space. 1
Question Produce a new type of EA based upon the concepts seen in class and speculate as to its effectivenesss on a problem via hypothesis testing. 1
Question Labs within this section are primarily for supporting assistance with the above objectives, e.g. work periods with TA assistance. 0

Final assessment

Section 1

  1. Apply the PEAS model to a real world instance.
  2. You have a classification problem involving images, from the perspective of Plato and Aristotle on knowledge, which algorithm would they implement, justify your decision.
  3. Write a short essay based upon either the prosecution or defense of a trial of an Android who has passed the Turing test who is petitioning the court for human rights. What would be your case for or against using concepts in class such as Turing test, Chinese room, etc.?

Section 2

  1. Here is an example family tree. Given a simple Prolog Query - what would be the result?
  2. Here is an example logic problem. Given a Prolog Query - what would be the result.
  3. Compare and Contrast two different search algorithms in terms of time and space complexity
  4. Given data of type X, what search algorithm should you use and why?

Section 3

  1. Show an analysis on a problem instance as to which EA method you would use, justify your answer based on the representation of the problem data.
  2. Implement an EA for a problem, show statistical justification of your result.
  3. Produce a report about a new creation of an EA system with sufficient justification with hypothesis tests.

The retake exam

Section 1

Section 2

Section 3