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, 16 January 2024.
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, 2024):
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!