Collective Intelligence and Agent Technology
(Course code: TIES4530) 5 -
7 ECTS, Spring Semester
Former name: Introduction to Agent Technologies (TIES453)
Instructor: Vagan Terziyan Email: vagan.terziyan@jyu.fi
(Register for the
course in SISU
system)
The course is lectured in English.
Attention: 1-st Lecture: Tuesday, 21 January 2025.
Time: 10:15 - 12:00. Place Ag B121.1 (Beeta)
Check details and other relevant material in Moodle).
===========================================================
NOTICE:
If any
content linked to by pages of this site has the prefix:
http://www.mit.jyu.fi/ai/
...
or the
prefix:
http://www.cs.jyu.fi/ai/ ...
and is
not accessible, then use the new prefix:
https://ai.it.jyu.fi/
...
to access.
Sorry for the temporary inconvenience due to an unexpected server
change.
===========================================================
Schedule (Spring, 2025):
Overview:
TIES-4530: Collective Intelligence and
Agent Technology (5-7 ECTS)
Course Summary:
The course focuses on the use of
Distributed Artificial Intelligence methods, and more specifically of
Intelligent Agents Technologies, for development of complex distributed
software systems driven by collective intelligence. Intelligent software agents
are such self-managed (autonomic) software entities that are capable to carry
out some goal-driven and knowledge-based behavioral activities on behalf of a
user or some other software application, which created it. This theory-oriented
part of the course reviews appropriate AI methods and technologies needed to
enable intelligent agents. The course is lectured in English.
Main Content Components
The course provides knowledge about
autonomous intelligent agents, agent technologies, mobility of agents, agent
platforms, multi-agent systems, agent communication, agent coordination, agent
negotiation, agent intelligence, semantic modelling of agents, agent-based
industrial applications and systems.
Course-Related Context and Motivation:
According to http://www.agentbuilder.com/Documentation/whyAgents.html:
The next wave of technological
innovation must integrate linked organizations and multiple application
platforms. Developers must construct unified information management systems
that use the World Wide Web and advanced software technologies. Software agents,
one of the most exciting new developments in computer software technology, can
be used to quickly and easily build integrated enterprise systems. The idea of
having a software agent that can perform complex tasks on our behalf is
intuitively appealing. The natural next step is to use multiple software agents
that communicate and cooperate with each other to solve complex problems and
implement complex systems. Software agents provide a powerful new method for
implementing these next-generation information systems.
An agent (aka software robot) is simply
another kind of software abstraction in the same way that methods, functions,
and objects are software abstractions. An object is a high-level abstraction
that describes methods and attributes of a software component. An agent,
however, is an extremely high-level software abstraction which provides a
convenient and powerful way to describe a complex software entity. Rather than
being defined in terms of methods and attributes, an agent is defined in terms
of its autonomic behavior. This is important because programming an agent-based
system is primarily a matter of specifying agent behavior instead of
identifying classes, methods and attributes. It is much easier and more natural
to specify behavior than to write code. Software agents, like people, can be
most useful when they work with other software agents in performing a task. A
collection of software agents that communicate and cooperate with each other is
called an agency or a Multi-Agent System (MAS). System designers using agents
must consider the capabilities of each individual agent and how multiple agents
can work together. Agents in MAS need to communicate with each other and must
have the capability of working together to achieve a common set of goals. Agents
provide a new way of managing complexity of software systems because they
provide a new relatively simple way of describing a complex system or process
in terms of agent-mediated processes. Agents and agent technologies are
well-suited for use in applications that involve distributed computation (also
reasoning) or communication between components, sensing or monitoring of the
environment, or autonomous operation. Agent-based approaches are very popular
in Web applications and in applications that require distributed, concurrent
processing capabilities. Autonomous agents are capable of operating without
user input or intervention being an excellent tool for plant and process
automation, workflow management, robotics, etc. [http://www.agentbuilder.com/Documentation/whyAgents.html,
November 15, 2011].
Relation of the course with Master
Programs of the IT Faculty:
Master Program on Artificial
Intelligence, Machine Learning and related are the natural places for such
course because the program requires the Agent Technologies to enable
self-management (to address the following objectives: how to design products,
services and systems so that they will be capable to collaborate naturally with
each other and with humans and enable automatic real-time discovery, query and
utilization of external data and capabilities for better meeting their design
objectives and how to make them self-aware, context-aware and capable of
self-configuration, self-optimization, self-protection and self-healing while
adapting their design objectives in real time to changing execution
environments. Learning outcomes of this course are assumed to be an input to
several other courses of the COIN program (e.g., Semantic Web and Linked Data;
SOA and Cloud Computing; Agent Technology for Developers;
Everything-to-Everything Interfaces; Big Data Engineering, Deep Learning for
Cognitive Computing, etc.).
Among other Master programs the closest
one is Software Engineering (or similar) program as the course provides
useful high-level software abstraction (behavior vs. classes and methods) and a
tool to design complex software systems.
The course is also suitable for the Data
Analysis, Data Science (or similar) program as the course provides the
framework for autonomic and parallel processing of data in the Web.
The course is also suitable for the Cyber
Security (or similar) Master Program as the agent technologies provide new
sophisticated security threats and concerns but in the same time can be
utilized to design systems with autonomic self-protection behavior.
Being naturally autonomic and very flexible
computational systems, agents and agent technologies are useful subject to
study in various fields of computing and decision support within
appropriate master programs.
Lecturer Vagan
Terziyan:
Lectures 1-2: Course
Introduction (includes also lessons schedule and motivation
use-cases);
Lectures 3-4: Overview of
Intelligent Agents;
Lectures 5-6:
Overview of (Multi)Agent Technologies;
Lectures 7-9: Agent
Intelligence;
Self-Study:
Industrial Applications of Agent Technology (SmartResource
Project case);
Self-Study:
Industrial Applications of Agent Technology (UBIWARE Project
case).
Video records of the lectures are available via
Moodle.
NOTE: if you
have possibility to come to the in-class lectures, choose this option, because
lecture content is constantly updated, and the recorded lectures from previous
years could be slightly outdated
Assignment (slides 55-113 contain task for the
assignment and hints of approaching it).
DEADLINE FOR THE ASSIGNMENT: 31 MARCH !
Collaborate with our research group on developing
stronger AI!