Course Description |
|
Course Name |
: |
Nature-Inspired Computing |
|
Course Code |
: |
CENG-548 |
|
Course Type |
: |
Optional |
|
Level of Course |
: |
Second Cycle |
|
Year of Study |
: |
1 |
|
Course Semester |
: |
Spring (16 Weeks) |
|
ECTS |
: |
6 |
|
Name of Lecturer(s) |
: |
|
|
Learning Outcomes of the Course |
: |
Designs,develops and analyzes one of the nature inspired approaches on a selected problem. Explains evolutionary algorithms and local search techniques Presents ant colony optimization, particle swarm optimization, cellular automata and artificial immune systems. Analyzes applicability of nature inspired approaches on selected combinatorial optimization problems
Demonstrates computing approaches that are inspired from nature.
|
|
Mode of Delivery |
: |
Face-to-Face |
|
Prerequisites and Co-Prerequisites |
: |
None |
|
Recommended Optional Programme Components |
: |
None |
|
Aim(s) of Course |
: |
The aim of this course is to design algorithms based on natural phenomena such as evolution and swarms of insects and apply the algorithms to a wide variety of problems such as diverse problems in robotics, engineering and bioinformatics. |
|
Course Contents |
: |
Introduction to nature-inspired computing; Classical search and optimization heuristtcs; Simulated annealing; Tabu search; Artifical neural networks; Evolutionary algorithms; genetic algorithms, evolutionary strategies, genetic programming; Ant colony optimization; Swarm intelligence; artificial immune systems; Hybrid systems; Artificial life; Multi-agent systems |
|
Language of Instruction |
: |
Turkish |
|
Work Place |
: |
Seminar Room |
|
|
Course Outline /Schedule (Weekly) Planned Learning Activities |
| Week | Subject | Student's Preliminary Work | Learning Activities and Teaching Methods |
|
1 |
Introduction |
Reading the lecture notes |
Lectures and Demonstration |
|
2 |
Optimization and desicion support techniques |
Reading the lecture notes |
Lectures and Demonstration |
|
3 |
Local search techniques |
Reading the lecture notes |
Lectures and Demonstration |
|
4 |
Performing testing on benchmarks |
Reading the lecture notes |
Lectures and Demonstration |
|
5 |
Nature-inspired Computing approaches |
Reading the lecture notes |
Lectures and Demonstration |
|
6 |
Ant colony optimization |
Reading the lecture notes |
Lectures and Demonstration |
|
7 |
Particle swarm optimization |
Reading the lecture notes |
Lectures and Demonstration |
|
8 |
Mid Term Exam |
Reading the lecture notes |
In class written exam |
|
9 |
Cellular automata |
Reading the lecture notes |
Lectures and Demonstration |
|
10 |
Genetic Algorithm |
Reading the lecture notes |
Lectures and Demonstration |
|
11 |
Differential Evolution |
Reading the lecture notes |
Lectures and Demonstration |
|
12 |
Neural Networks |
Reading the lecture notes |
Lectures and Demonstration |
|
13 |
Simulated Annealing |
Reading the lecture notes |
Lectures and Demonstration |
|
14 |
Intelligent Water Drops |
Reading the lecture notes |
Lectures and Demonstration |
|
15 |
Practical Applications |
Reading the lecture notes |
Lectures and Demonstration |
|
16/17 |
Final Exam |
Reading the lecture notes |
In class written exam |
|
|
| Contribution of the Course to Key Learning Outcomes |
| # | Key Learning Outcome | Contribution* |
|
1 |
Reaches wide and deep knowledge through scientific research in the field of computer engineering, evaluates, implements, and comments. |
5 |
|
2 |
Describes and uses information hidden in limited or missing data in the field of computer engineering by using scientific methods and integrates it with information from various disciplines. |
5 |
|
3 |
Follows new and emerging applications of computer engineering profession, if necessary, examines and learns them |
5 |
|
4 |
Develops methods and applies innovative approaches in order to formulate and solve problems in computer engineering. |
5 |
|
5 |
Proposes new and/or original ideas and methods in the field of computer engineering in developing innovative solutions for designing systems, components or processes. |
5 |
|
6 |
Designs and implements analytical modeling and experimental research and solves the complex situations encountered in this process in the field of Computer Engineering |
4 |
|
7 |
works in multi disciplinary teams and takes a leading role and responsibility. |
2 |
|
8 |
Learns at least one foreign language at the European Language Portfolio B2 level to communicate orally and written |
2 |
|
9 |
Presents his/her research findings systematically and clearly in oral and written forms in national and international meetings. |
3 |
|
10 |
Describes social and environmental implications of engineering practice. |
2 |
|
11 |
Considers social, scientific and ethical values in collection, interpretation and announcement of data. |
3 |
|
12 |
Acquires a comprehensive knowledge about methods and tools of computer engineering and their limitations. |
4 |
| * Contribution levels are between 0 (not) and 5 (maximum). |
|
|