Communication thread core thread Spawn N negotiation threads... negotiation threads active inactive Initialize An Agent and Its Threads execution thread.

Slides:



Advertisements
Similar presentations
Proposal (More) Flexible RMA Synchronization for MPI-3 Hubert Ritzdorf NEC–IT Research Division
Advertisements

Lectures on File Management
3.1 Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Process An operating system executes a variety of programs: Batch system.
FIPA Interaction Protocol. Request Interaction Protocol Summary –Request Interaction Protocol allows one agent to request another to perform some action.
CloudStack Scalability Testing, Development, Results, and Futures Anthony Xu Apache CloudStack contributor.
Ch4. Processes Process Concept (1) new waiting terminate readyrunning admitted interrupt exit scheduler dispatch I/O or event completion.
Lecture 8: Asynchronous Network Algorithms
Chapter 2: Memory Management, Early Systems
Chapter 2: Memory Management, Early Systems
Memory Management, Early Systems
Lecture 8: Three-Level Architectures CS 344R: Robotics Benjamin Kuipers.
Module R2 CS450. Next Week R1 is due next Friday ▫Bring manuals in a binder - make sure to have a cover page with group number, module, and date. You.
CS 484. Discrete Optimization Problems A discrete optimization problem can be expressed as (S, f) S is the set of all feasible solutions f is the cost.
Using tcpdump. tcpdump is a powerful tool that allows us to sniff network packets and make some statistical analysis out of those dumps. tcpdump operates.
Agent Caching in APHIDS CPSC 527 Computer Communication Protocols Project Presentation Presented By: Jake Wires and Abhishek Gupta.
ICS 421 Spring 2010 Distributed Transactions Asst. Prof. Lipyeow Lim Information & Computer Science Department University of Hawaii at Manoa 3/16/20101Lipyeow.
CS 582 / CMPE 481 Distributed Systems
Concurrent Processes Lecture 5. Introduction Modern operating systems can handle more than one process at a time System scheduler manages processes and.
Review: Operating System Manages all system resources ALU Memory I/O Files Objectives: Security Efficiency Convenience.
Chapter 11 Operating Systems
Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition, Chapter 3: Processes.
1 Operating Systems Ch An Overview. Architecture of Computer Hardware and Systems Software Irv Englander, John Wiley, Bare Bones Computer.
Concurrency Control Chapter 18 Section 18.5 Presented by Khadke, Suvarna CS 257 (Section II) Id
1 Distributed Systems: Distributed Process Management – Process Migration.
FUNCTIONS OF OPERATING SYSTEMS Interfaces Memory Management Security Utility Interrupt Handling.
CMPT 471 Networking II Address Resolution IPv6 Neighbor Discovery 1© Janice Regan, 2012.
Salesforce.com Web to Leads. Unit Name Web to Leads A web to lead provides users the ability to gather information from their website visitors which automatically.
ISO Task Controller Lecture 9 Task Controller – Part I
Batch VIP — A backend system of video processing VIEW Technologies The Chinese University of Hong Kong.
Opening SharePoint to External Users.  Centralize all files  Eliminate the need for Matching Subs RFI’s to our RFI’s (Dan Campbell, ETC)  Create a.
HP Project & Portfolio Management Resource Management July 11, 2007 CIMpleBS.com/HP-PPM/Training-Resource Management.pps By Dan Gallagher See NOTES page.
C++ Agents Implementation Chris Rouse CSS 497. Outline  Finish Agent Implementation  Involves changes to the following classes:  Agents_base.h/.cpp.
Process Description and Control Chapter 3. Major Requirements of an OS Interleave the execution of several processes to maximize processor utilization.
1 Adaptive QoS Framework for Wireless Sensor Networks Lucy He Honeywell Technology & Solutions Lab No. 430 Guo Li Bin Road, Pudong New Area, Shanghai,
Copyright © 2007, Oracle. All rights reserved. Managing Concurrent Requests.
1-1 Embedded Network Interface (ENI) API Concepts Shared RAM vs. FIFO modes ENI API’s.
Lecture 2 Process Concepts, Performance Measures and Evaluation Techniques.
Chapter 41 Processes Chapter 4. 2 Processes  Multiprogramming operating systems are built around the concept of process (also called task).  A process.
Chapter 3 Process Description and Control
Modelling III: Asynchronous Shared Memory Model Chapter 9 by Nancy A. Lynch presented by Mark E. Miyashita.
Lecture 3 Process Concepts. What is a Process? A process is the dynamic execution context of an executing program. Several processes may run concurrently,
Database Design and Management CPTG /23/2015Chapter 12 of 38 Functions of a Database Store data Store data School: student records, class schedules,
COMP 111 Threads and concurrency Sept 28, Tufts University Computer Science2 Who is this guy? I am not Prof. Couch Obvious? Sam Guyer New assistant.
OS, , Part II Processes Department of Computer Engineering, PSUWannarat Suntiamorntut.
8-Sep Operating Systems Yasir Kiani. 8-Sep Agenda for Today Review of previous lecture Process scheduling concepts Process creation and termination.
Linux Processes Travis Willey Jeff Mihalik. What is a process? A process is a program in execution A process includes: –program counter –stack –data section.
Processes CSCI 4534 Chapter 4. Introduction Early computer systems allowed one program to be executed at a time –The program had complete control of the.
1 Computer Systems II Introduction to Processes. 2 First Two Major Computer System Evolution Steps Led to the idea of multiprogramming (multiple concurrent.
Jamis Martin Trenton Andres Jay Zifer Brad Nowak.
Process Description and Control Chapter 3. Source Modified slides from Missouri U. of Science and Tech.
Process Description and control G.Anuradha (Referred from william stallings and galvin 8 th edition)
1 Process Description and Control Chapter 3. 2 Process A program in execution An instance of a program running on a computer The entity that can be assigned.
Chapter pages1 Distributed Process Management Chapter 14.
1 DAQ.IHEP Beijing, CAS.CHINA mail to: The Readout In BESIII DAQ Framework The BESIII DAQ system consists of the readout subsystem, the.
Active-HDL Server Farm Course 11. All materials updated on: September 30, 2004 Outline 1.Introduction 2.Advantages 3.Requirements 4.Installation 5.Architecture.
FHA Training Module 1 This document reflects current policy related to this topic. Its content is approved for use in all external and internal FHA-related.
Scenario use cases Szymon Mueller PSNC. Agenda 1.General description of experiment use case. 2.Detailed description of use cases: 1.Preparation for observation.
ECE 297 Concurrent Servers Process, fork & threads ECE 297.
© 2007 Open Grid Forum NSI CS Protocol State Machine Message Handling OGF 37.
Computer-system operation (The OS initialization phase) ROM RAM
Operating System Components) These components reflect the services made available by the O.S. Process Management Memory Management I/O Device Management.
Process Management Deadlocks.
University of Wisconsin at Madison
“COMMAND PARSE” - A STATUS REPORT - Matt Smith Pallavi Khandelwal
Process concept.
Process Description and Control
Operating Systems Lecture 6.
Virtual-Time Round-Robin: An O(1) Proportional Share Scheduler
Why we have Counterintuitive Memory Models
Chapter 3: Process Management
Presentation transcript:

communication thread core thread Spawn N negotiation threads... negotiation threads active inactive Initialize An Agent and Its Threads execution thread

Communication Thread Get message via socket Parse message Message? yes no Add to message queue... Message queue Accesses by other threads of the agent

Execution Thread Setup and Reset yes no Get first job From queue... Job queue Accesses by core thread of the agent job’s startTime< currentTime? Sleep Apply Execution heuristics Abandon? Execute no yes Remove Job Executed? Wait for data to be uploaded yes Remove job Apply Persistence heuristics no Commited? Sleep no yes from job queue

Execution Thread: Execution Heuristics Time Conflict If the job is not a tracking task and the expected stop time is later than the start of the next job plus a predefined relax_time, then Abandon = true. Negotiation Conflict If the job is not a tracking task and the agent is currently initiating a tracking coalition, then Abandon = true. Look-Ahead Conflict If the job is not a tracking task and the agent has a tracking task already planned for the near future, then Abandon = true.

Execution Thread: Persistence Heuristics Persistent Commitment If the job is a tracking task and tracking is still viable, then Committed = true.

Execution Thread: Execution Behavior SD1, SD2, SD3 Task type? Search and Detect Target Detected? Calibrate Sensor Target Detected? C1, C2, C3 Do nothing Success I Measure Initial Target Target Detected? M1, M2, M3 Track Target Disappeared or Terminated as planned T1, T2, T3 Executed = true Executed = true Executed = true Executed = true Executed = true Job confirmed? yes Executed = false no

Core Thread Setup Check Messages Check Tasks Check Execution Check Coalition

Core Thread: Setup Setup Profile Manager initializes the agent’s status and configures its neighbors Comm Manager sets up comm. channel with Radsim, creates a socket, allocates msg. queue, sets msg. observer, and activates receiver Task Manager Think Manager Negotiation Manager spawns all negotiation threads and links data to each thread; CLIPS processes are forked and pre- defined templates and rules are loaded RTSS Manager sets up data stream access for Real-Time Scheduling Service (RTSS) interface and registers threads and agent process IDs CBR Manager loads two case bases, for initiating and responding cases of negotiation Radar Manager initializes the sensor that the agent controls, measures background noise for each sector, turns on the radar observer, adds all neighboring sensors to its radar model has a lesser role now because the radar tasks are managed by the Execution Manager Execution Manager sets up the execution thread and executes tasks off the job queue Coalition Manager initializes the coalition vector

Core Thread: Check Messages Access message queue msg. for prof? Parse message type yes Check messages completed no A negotiation request Check messages completed Active Negotiation? Discard message no yes An acknowledgment Respond to request Respond to ack

Core Thread: Check Messages: Respond to Ack Ack type? Confirm tracking task Confirm completed Discard tracking task Discard acknowledgment... Job queue

Core Thread: Check Messages: Respond to Request CPU? Feasibility Study Feasible & neg. idle? yes no request no already doing? Agree to request yes no Decline to negotiate Modify request? yes no Modify Request Retrieve best case via CBR Upload data Activate negotiation threads thread activated? completed noyes

Core Thread: Check Tasks (Negotiation Tasks Only) Status? Initiating & success Negotiation task Check Tasks Completed Download & Update Data Store Case Update Coalition Remove Task Download & Update Data Store Case Update Coalition Remove Task Clear Negotiation Thread Download & Update Data Store Case Transition Task Download & Update Data Store Case Remove Task Initiating & failure Responding & success Responding & failure... Task queue

Core Thread: Check Tasks: Update Coalition If the negotiation is successful, the update involves modifying the coalition information to reflect the success. If the negotiation is not successful, the update removes the coalition member (the negotiation partner) from the coalition.

Core Thread: Check Tasks: Transition Task CPU? yes New task no Configure Tracking Task Reorganize Thread Allocation Insert Task to Job Queue... Job queue Clean up Job Queue Remove Task

Core Thread: Check Execution A job is completed? no Execution thread’s current status yes Check Execution Completed Job type? Clear Execution Thread Clear Execution Thread Finish Measure Init. Target Clear Execution Thread Calibrate Sensor Or Search and Detect Measure Initial Target Tracking Idle Target detected? Handle Target Check Execution Completed

Core Thread: Handle Target Configure Measuring Task Insert Task to Job Queue Handle target completed success? Clean up Job Queue yes... Job queue

Core Thread: Finish Measure Initial Target Update target w/ Radar Manager Compute sensor-sector list Determine sample size Analyze feasible partners Initiate negotiations completed Target detected? completed no Clear Execution Thread Execution thread’s current status Download Target Information yes

Core Thread: Initiate Negotiations Retrieve best case via CBR completed Upload data Sort feasible partners (utility) Neg. thread idle? Activate negotiation thread activated? yes no Create negotiation task Initialize coalition For all partners Update coalition Done Add task to task queue... Task queue

Core Thread: Check Coalition decided? no Coalition’s current status yes Check Coalition Completed coalition fulfilled? Acknowledge to Discard Coalition Acknowledge to Confirm Coalition Configure Tracking Task Confirm Coalition no Send to all agreed coalition members Discard Coalition yes Insert it to Job Queue Clean up Job Queue Confirm the Task Send to all agreed coalition members... Job queue

Negotiation Thread Setup and Reset Wait to be activated Download data Responding Behavior Mode? Responding to a negotiation request Initiating a negotiation request Initiating Behavior Update data Wait for data to be uploaded

Negotiation Thread: Initiating Behavior Compose first initiating message Done? Done = no Send Message Wait for response response? Parse response React & Compose Message no yes no React & compose message Negotiation completed Check Coalition abort? yes no time? expired still okay

Negotiation Thread: Initiating Behavior: Check Coalition If the coalition has gathered enough help for CPU reallocation, then Abort = true. If the tracking coalition has been satisfied, then Abort = true. If the tracking coalition is no longer possible, then Abort = true.

Negotiation Thread: Initiating Behavior: React & Compose Message type? Response message Check Coalition Acceptability modify time accept? Failure no Update Coalition Initiate yes Failure no go out of time stop Check Coalition Acceptability accept? Update Coalition Success yes counter agree Compose More Info more info no null? Info_NullInfo yesno

Negotiation Thread: Responding Behavior Compose first responding message Done? Done = no Send Message Wait for response response? Parse response React & Compose Message no yes no React & compose message Negotiation completed time? expired still okay Reset CLIPS

Negotiation Thread: Responding Behavior: React & Compose Message type? Response message info yes abort out of time stop yes agree yes info null CLIPS: Rule-Based Reasoning Compute evidence support > persuas. thresh? Agree More Info no CPU? no React CPU CPU? Counter Stop no Failure Success

Negotiation Thread: Responding Behavior: React CPU If the current CPU willing to give up is greater than or equal to the desired CPU (by the initiator), and the desired CPU is smaller than or equal to the maximum CPU willing to give up, then Agree. If the current CPU willing to give up is greater than the maximum CPU willing to give up, then Counter with maximum CPU willing to give up. If time allocated for the negotiation is running out, then Counter. If the current CPU willing to give up is grater than the maximum CPU willing to give up, Counter with the latter value. Otherwise, Counter with the former.