public:t-720-atai:atai-16:lecture_notes_f-4_22.01.2016
                Table of Contents
T-720-ATAI-2016
Lecture Notes, F-4 22.01.2016
System Architecture
| What it is |  In CS: the organization of the software that implements a system.   In AI: The total system that has direct and independent control of the behavior of an Agent via its sensors and effectors.  | 
	
| Why it's important | The system architecture determines what kind of information processing can be done, and what the system as a whole is capable of in a particular Task-Environemnt. | 
| Key concepts | process types; process initiation; information storage; information flow. | 
| Graph representation | Common way to represent processes as nodes, information flow as edges. | 
| Relation to AI | The term “system” not only includes not only the processing components, the functions these implement, their input and output, and relationships, but also temporal aspects of the system's behavior as a whole. This is important in AI because any controller of an Agent is supposed to control it in such a way that its behavior can be classified as being “intelligent”. But what are the necessary and sufficient components of that behavior set? | 
| Intelligence is in part a systemic phenomenon | Thought experiment: Take any system we deem intelligent, e.g. a 10-year old human, and isolate any of his/her skills and features. A machine that implements any single one of these is unlikely to seem worthy of being called “intelligent” (viz chess programs), without further qualification (e.g. “a limited expert in a sub-field”). | 
Causal Structures
CS Architecture Building Blocks
| Pipes & filters |  Extension of functions.  Component: Each component has a set of inputs and a set of outputs. A component reads streams of data on its inputs and produces streams of data on its outputs, delivering a complete instance of the result in a standard order. Pipes: Connectors in a system of such components transmit outputs of one filter to inputs of others.  | 
	
| Object-orientation | Abstract compound data types with associated operations. | 
| Event-based invocation | Pre-defined event types trigger particular computation sequences in pre-defined ways. | 
| Layered systems | System is deliberately separated into layers, a layer being a grouping of one or more sub-functions. | 
| Hierarchical systems | System is deliberately organized into a hierarchy, where the position in the hierarchy represents one or more important (key system) parameters. | 
| Blackboards | System employs a common data store, accessible by more than a single a sub-process of the system (often all). | 
| Hybrid architectures | Take two or more of the above and mix together to suit your tastes. | 
Network Topologies
| Point-to-Point | Dedicated connection between nodes, shared only by a node at each end. | 
| Bus | A message medium, shared by all nodes (or a subset). | 
| Star | Central node serves as a conduit, forwarding to others; full structure of nodes forming a kind of star. | 
| Ring | All nodes are connected to only two other nodes. | 
| Mesh | All nodes are connected to all other nodes (fully connected graph); can be relaxed to partially-connected graph. | 
| Tree | Node connections forms a hierarchical tree structure. | 
| Pub-Sub | In publish-subscribe architectures one or more “post offices” receive requests to get certain information from nodes. | 
| reference | Network topology on Wikipedia | 
Coordination Hierarchies
Methodology
| What it is | The methods we use to study a phenomenon. | 
| Why it's important | Methodology directly influences the shape of our solution - our answers to scientific questions. For this reason, and equally importantly, it directly determines the speed with which we can make progress. | 
| The main AI methodology | AI never really had a proper methodology discussion as part of its mainstream scientific discourse. Only 2 or 3 approaches to AI can be properly called 'methodologies': BDI (belief, desire, intention), subsumption, decision theory. As a result AI inherited the run of the mill CS methodology/ies by default. | 
Constructionist Methodologies
| What it is | A constructionist methodology requires an intelligent designer that manually (or via scripts) arranges selected components that together makes up a system of parts (read: architecture) that can act in particular ways. Examples: automobiles, telephone networks, computers, operating systems, the Internet, mobile phones, apps, etc. | 
| Why it's important | Virtually all methodologies we have for creating software are of this kind. | 
| Fundamental CS methodology | On the theory side, for the most part mathematical methodologies (not natural science). On the practical side, hand-coding programs and manual invention and implementation of algorithms. Systems creation in CS is co-owned by the field of engineering. | 
| The main methodology/ies in CS | Constructionist. | 
| Constructionist AI | Methodology for building cognitive agents that relies primarily on Constructionist methodologies. | 
| Key Limitation | Rests on the key assumption (on which CS - as a science - is built) that humans, or those with human-level intelligence, are the only ones that will create software systems. | 
2016©K. R. Thórisson 
EOF
/var/www/cadia.ru.is/wiki/data/pages/public/t-720-atai/atai-16/lecture_notes_f-4_22.01.2016.txt · Last modified: 2024/04/29 13:33 by 127.0.0.1
                
                
 
