Abstract:
Systems and methods for sensing physiological parameters in, on or around a human body and achieving a therapeutic effect based thereon. A network of various levels of component devices sense, process and communicate data between corresponding component devices, and self-organize into a hierarchy of peer groups of component devices to perform the task or function of the therapeutic effect upon completion of the tasks or functions of the various underlying levels of component devices. An overall Peer Group encompasses the various underlying levels of peer groups having the component devices therein. The sensing, computational, data distribution, communication or therapeutic effect tasks at the various levels are accomplished by the coordination of communication and functions between the plurality of relatively simple component devices of the network. Symmetric and asymmetric cryptography and other communication protocols are used to co-ordinate the tasks and functions of the component devices of the network. Therapeutic tasks such as drug delivery, executable actions, and stimuli delivery are thus efficiently distributed to a patient via the network. Component peer devices of the network can be implants, wearable devices with respect to a patient, or may be devices that are in the environment within which the patient is located.

Description:
BACKGROUND OF THE INVENTION  
       [0001]     1. Field of the Invention  
         [0002]     The invention generally relates to systems and methods for sensing physiologic parameters of the human body and achieving a therapeutic effect in accordance with this sensory information. More specifically, the invention relates to systems and methods for sensing physiologic parameters and achieving a therapeutic effect by using a multitude of devices that dynamically self-organize into a network of devices that communicate with one another to adjust the function of individual devices in order to optimize the overall function of the network of devices. According to the systems and methods of the invention, the individual devices comprising the network of devices may be implanted in or applied onto the body of a patient, may be in an environment external to the patient, or may be some combination thereof.  
         [0003]     2. Related Art  
         [0004]     Sensing of physiological conditions occurring within the human body or other conditions occurring in the environment within which the human body is located, and coordinating therapeutic interaction with the human body in accordance with the sensory information obtained is generally accomplished by complex medical devices. Such medical devices typically have built in sensing, computation, communication and additional modules that are responsible for the determining and delivering an appropriate therapeutic response based on the sensory information obtained. For example, an implantable cardioverter defibrillator device will contain all of these functions within one device in order to obtain information regarding cardiac activity in a patient and in order to delivery an appropriate response to encourage ideally normal cardiac activity in the patient.  
         [0005]     In some cases, the various functions of such medical devices may be divided between distinct devices. For example, a sensor may be implanted in one part of the body to conduct sensing and communication functions, and a therapeutic device may be implanted in another part of the body to perform communication, computation and therapeutic functions. In this case, the sensing unit would likely measure certain physical, chemical or biological parameters of the body, and transmit this information to the therapeutic unit, whereas the therapeutic unit would analyze the data received from the sensing unit and take therapeutic action according to the outcome of the data analysis conducted in the therapeutic unit. Alternatively, computation and data analysis may be performed by the sensory unit.  
         [0006]     In each of the above cases, the medical devices are generally very complex. This complexity increases the likelihood of failure of the device. Such a complex medical device, for example, may fail in any of the sensing, computing, communication or therapeutic action modes. A failure of any one of these modes may lead to a critical loss of functionality, and the loss of therapeutic action, which in turn may endanger the health of the patient. This is especially an issue in those cases where only one device is responsible for maintaining a sufficient therapeutic effect. Loss of function of a single device may thus have a major negative impact on the health of the patient, even risking death in some instances.  
         [0007]     Furthermore, the therapeutic effect of many devices is limited to the range of minimum and maximum values of therapy a single device is able to deliver. Thus, although the therapeutic effect that can be delivered from a single device may be adjusted between the extreme (minimum and maximum) values, for example, the maximum value cannot be exceeded even if that becomes necessary as a sensing unit may determine. The device in that case has to be replaced by another device that has a higher maximum capacity. This replacement requires a visit to the health care provider at a minimum, and may also require an invasive intervention in which the low capacity medical device is removed and a high capacity device is implanted.  
         [0008]     A further limitation of single devices is that their sensing and therapeutic functions may be localized. For example, such a device may measure a physiological or other parameter in one location of the patient and deliver a drug into one specific blood vessel in response. While this may be effective where localized conditions merit localized treatments, there may be occasions when sensing parameters in a multitude of locations, as well as delivery of a therapeutic effect in a multitude of locations, is desired.  
         [0009]     In light of all these observations, a need exists for more robust medical devices that are constructed for an even higher degree of functionality than current complex devices. Such more robust medical devices are comprised of a multitude of devices comprising a network of devices, each device having a simpler function that, when networked with other devices, provides more complex functions than could be accomplished individually or by prior medical devices. The more robust medical devices would thus ideally provide sensing and therapeutic functions in local or multiple locations in a patient simultaneously such that a wider range of therapeutic effect adaptable to actual needs is accommodated.  
       SUMMARY OF THE INVENTION  
       [0010]     The systems and methods of the invention use a multitude of devices that are implanted in the body of a patient, attached externally to the body of the patient, or located in the environment within which the body of the patient is located, or some combination thereof. The multitude of devices is able to self-organize into a dynamic network of devices to perform individual and collective functions once positioned as desired relative to the patient. At a minimum, each device communicates with at least one other device within range of one another. Each device may also communicate with other devices within its range, compute and store data, distribute data, deliver a therapeutic effect and, in some cases, communicate among multiple devices beyond its range using appropriate communication protocols.  
         [0011]     Each component device, also referred to as “device” or “peer device” herein, after it is positioned as desired in, on or around the patient, establishes a communication link with other component devices located within its communication range. Some devices in the network are directly connected to each other and can exchange data directly. Other devices in the network are not directly connected and thus exchange data or otherwise communicate indirectly by message hopping, that is, by sending or receiving messages through a chain of intermediary component devices or by pipeline operations using appropriate communication protocols. All component devices that are linked by either direct or indirect communication protocols can pass messages to and from each other through various component devices that belong to the same network or array of devices.  
         [0012]     Each component device may have a single function or a combination of multiple functions. For example, one component device may primarily act as a sensory unit in the network and may have no therapeutic effect at all. Such a sensory unit would be primarily responsible for measuring a physical, chemical, biological or other physiological parameter of the patient&#39;s body or the environment within which the patient is located within the range of its sensor. This sensory unit would then communicate the measurement data obtained to other component devices in the network that would then process this data and, where appropriate, initiate the function of other component devices. Another component device may have a combination of a sensory function and a computing function, and may have the ability to perform some processing of raw sensory data locally. Other combinations of functions onboard a component device are also conceivable. However, each component device preferably has at least an elementary communication function, (e.g. the ability to send or receive commands) within the network or array of component devices and the network of devices comprising the medical device provides at least a therapeutic effect, such as mechanical assistance, actuation, drug delivery, electrical stimulation or the like to benefit the patient.  
         [0013]     The communication links between component devices within the network help propagate data between component devices within the network and help control the functions of the various component devices according to the sensed physiological parameters of the patient or the environment within which the patient is situated. This data propagation allows the allocation of various tasks among component devices. Task allocation among the various devices within the context of the network makes it possible for the network of devices to perform complex computational, communication, energy management, therapeutic, or other functions, even if the functional capability of individual devices would not allow such complexity. For example, by allocating computational tasks among a sufficiently large number of component devices, a complex task may be accomplished even if the onboard computing power of each individual component device is greatly limited. Similarly, a large therapeutic effect may be achieved (e.g. a sufficiently large dose of drug may be delivered) even if the therapeutic capability of individual devices (e.g. the amount of drug available for release from one device) is limited.  
         [0014]     The allocation of tasks in the device network is a dynamic process in order to accommodate the dynamically changing conditions and physiological parameters of a patient or the environment within which the patient is situated. Should certain component devices lose complete or partial function, be destroyed or removed, or should new devices be introduced into the network, then task allocation among currently operational devices adapts to the new network configuration and to the actual availability of resources within the network by self-organizing the component devices of the network to achieve intended tasks, sub-tasks, etc. in a timely and efficient manner. The self-organizing approach of component devices within a network as described herein increases the adaptability of the overall medical device in terms of sensing, computing, communicating data between component devices, and delivering of therapeutic functions to the benefit of the patient.  
         [0015]     The allocation of tasks, sub-tasks, etc., among component devices are preferably guided by communication protocols that ensure task allocation is optimized for the efficiency of the network in view of the array of simple component devices comprising such network. Communication protocols are thus provided that allow directed communication between component devices to the exclusion of other devices, in some instances. For example, one component device may direct a message to a specific component device, within its communication range, rather than having to broadcast every message throughout the entire network in order to address an intended other peer device. The inefficiencies of such a network-wide broadcast protocol are self-evident and are minimized according to the peer-specific communication protocols of the systems and methods of the invention. Such peer-specific communication protocols preferably use virtual identifiers for each component device, which emphasizes the need for anonymity and accountability requirements.  
         [0016]     Thus, component devices comprising the network of devices of the overall medical device according to the systems and methods of the invention preferably also assemble communication pipelines within the network and communicate the allocation of individual tasks to respective ones of the various component devices. In addition, component devices may route messages to other component devices out of their communication range. Routing of messages from a component device to one or more component devices beyond the communication range of the originating component device can occur through a chain of intermediate component devices. The network is therefore not flooded with messages in order to ensure that a message will arrive at the intended recipient component device. The component devices also preferably perform local communication scheduling, which ensures that collision-free direct communication between intended component devices that use the same communication links is possible. To this end, communication links between devices are preferably assigned such that the recipient component device listens on the same channel as used by the sender component device that sends the message. Further, communication of component devices using the same channel should preferably be scheduled to minimize the probability of message collisions, that is, the sending of a message through the same channel at the same time by more than one component device. The component devices thus also preferably perform task allocation and scheduling to ensure that tasks are allocated to appropriate component devices and each component device schedules its tasks so that intended tasks are accomplished by the fewest possible resources in accordance with quality of service requirements and risk estimations. Component devices also preferably allocate and schedule tasks to minimize energy consumption and the use of critical resources, thereby reducing the overall “cost” of operating the medical device according to the systems and methods of the invention.  
         [0017]     The network of component devices, thus generally comprises a hierarchy of various levels of peer groups of peer devices comprising an overall Peer Group that in turn comprises the medical device according to the systems and methods of the invention. Each peer group level is assigned a task or a function to perform. The peer devices within a peer group may be further formed into sub-peer groups comprised of sub-peer devices that solve sub-tasks or sub-functions to more efficiently perform the overall Peer Group&#39;s task eventually. The sub-peer devices in a sub-peer group may further still form sub-sub-peer groups having sub-sub-peer devices that perform sub-sub-tasks or sub-sub-functions, and so on, in order to eventually perform the intended task or function of the overall Peer Group.  
         [0018]     The various levels of peer groups are thus logical groups of devices that may be created in, on or about a patient in order to sense, communicate, compute and distribute data, and deliver a therapeutic effect based on such data. As the artisan should appreciate, reference to Peer Group denotes the overall Peer Group of the medical device, whereas reference to peer group, sub-peer group, or sub-sub-peer group, etc., is understood to include the various levels of devices, sub-devices, or sub-sub-devices, etc., for performing the respective tasks or functions, sub-tasks or sub-functions, or sub-sub-tasks or sub-sub-functions, etc., associated therewith, within the context of the medical device described herein even where the various levels are not specifically repetitively referred to herein.  
         [0019]     Peer devices in the same peer group need not be physically close to each other, and need not have similar capabilities (like sensing, therapeutic effect, etc.), although it is usually preferable to have at least a chain of peer devices within a peer group through which tasks or functions can be communicated between peer devices of the peer group. Also it is usually preferable to have more than one peer device with a given capability in a peer group for each required task or function of the peer group. Here task and function can be arbitrary actions, like communicating data from one peer device to another, performing some specific computation on the data, sensing some parameters, or bringing about some therapeutic effect, etc. The peer devices of a peer group, or sub-peer devices of a sub-peer group and so on, may be placed in, on, or about a patient in order to conduct the various tasks or functions detailed herein. Execution of an overall Peer Group&#39;s task may commence once all of the various tasks or sub-tasks, etc., are accepted and performed by appropriately corresponding peer devices, sub-peer devices, etc. of the various levels of peer groups within the overall Peer Group. The comprehensive allocation of the various tasks before execution of the task of the overall Peer Group ensures that at least a minimum level of confidence and reliability between the various levels of peer devices within the Peer Group is achieved before the eventual execution of the Peer Group&#39;s task. The comprehensive allocation of tasks before execution of a peer group&#39;s task also increases the efficiency at which a peer group will execute the various allocated tasks by sequencing the various tasks among various component devices that have the capacity and resources to execute appropriately assigned tasks efficiently. Thus, once a peer group&#39;s task is ready for execution the peer devices, or sub-peer devices, etc., can start to work on their assigned task or function, etc. by receiving and processing data according to an optimized and predetermined sequence and schedule to achieve the intended therapeutic effect. Each device thus contains data, algorithms and/or protocols that enable the devices to process some or all of the data distributed within the network, to exchange, modify or reconfigure some or all of the data, and to autonomously allocate data storage, computational, communication, energy supply, timing, sensory and/or therapeutic effect delivery from the various devices within the network.  
         [0020]     The tasks, sub-tasks, etc., of the various levels of devices can be one time tasks, which are rare, or can be repeatedly executable tasks with a given restart time. In the former case, the task can be solved by a single chain of peers in which each peer trusts its successor peer. One device&#39;s failure would break the chain, however, thus stopping execution of the task until the chain is restored. In the latter case, on the other hand, a single chain of peer devices may be insufficient to perform the intended task within the time allotted before restart of the task is to occur. Pipeline communication between component devices can overcome this deficiency, however, by permitting continued execution of the intended task by downstream component devices while restarting execution of the same task by upstream component devices. This latter situation can occur, for example, where a computed amount of drug is to be delivered every 1 ms by some peer devices based on sensory information sensed by some peer devices in every 1 ms. However the computation of the amount of drug to be delivered takes more than 1 ms based on the sensory information obtained. In this case, the task is called a pipeline task, performed best by a pipeline operation that permits the current task to be executed even as another similar task is initiated.  
         [0021]     Survivable Pipeline Protocols (SPP) help to achieve such pipeline tasks or operations by providing a framework that organizes and maintains the various levels of peer groups to execute such pipeline tasks without having a central coordinator in the network of devices. SPP thus enables peer groups to adapt to e.g. changes in peer device availability occurring in, on or about the patient where the task is executed, such as when a peer device fails or a new peer device is introduced to the network. SPP protocols thus provide a framework for adding, removing and, or re-organizing the peer group of devices without a central coordinator in the network of peer devices. In this way the network of peer devices, etc., continuously adapts to changes in the availability, performance and reliability of various levels of peer devices, etc., to the availability of newly introduced peer devices, or to changes in the task&#39;s requirements, such as processing speed, the sequence of performance of tasks, the amount of therapeutic effect, etc., without relying on a central coordinator device. The introduction of a central coordinator device would make the network vulnerable and less apt for survival as loss of function of the central coordinator may lead to disorganization and loss of function of the entire network.  
         [0022]     Generally, an overall Peer Group&#39;s task is completed when all of the tasks or functions, or sub-tasks or sub-functions, etc. of the various levels of peer groups within the overall Peer Group are executed. After execution of a task, the peer device, etc., involved in the task&#39;s execution can update the relationships among the other peer devices. Of course, upon completion of the executed task, the same updating of relationships between sub-peer devices, etc, is likewise performed.  
         [0023]     Ideally, component devices are equipped to assess the risk associated with allocating a task or part of a task to any of the peer devices. This, in turn, allows a component device to select a set of other component devices that are most likely to successfully complete the given task and to direct task related messaging to this subset of peer devices.  
         [0024]     Component devices may communicate with each other over insecure media, like wireless channels. However, because the information exchanged between devices may contain private, confidential data, some degree of anonymity and accountability in the communication protocols is preferred in addition to basic security practices regarding data integrity and confidentiality. Anonymity requires that component devices cannot be identified after sending information (e.g., the information cannot be traced back to the device from which it originated), and that virtual identifiers (e.g. an identifier code included in a communication from a device) can not be linked or traced back to the device from which it originated either. Anonymity thus provides an additional layer of security for the information being communicated between devices in the network and makes it more difficult to launch a targeted attack on an individual component device in the network. Accountability, on the other hand, requires that component devices that stop functioning according to the operating procedures and rules of the network can be identified and expelled or disconnected from the network without compromising the effectiveness of the remaining component devices of the network. Anonymity and accountability are ultimately mutually exclusive requirements. However, a partial reconciliation of these requirements is also possible and contemplated herein. Anonymity and accountability may thus extend to all components of the network, including component devices, patient and caregivers.  
         [0025]     Direct communication between peer devices is based on asymmetric and symmetric cryptography. Asymmetric cryptography is used initially to establish trust and secure communication channels between peers, while symmetric cryptography is used later during data communication. Pretty Good Privacy protocol is an example of asymmetric and symmetric cryptography methods that provide message integrity, confidentiality, authentication, non-repudiation, anonymity, and access control. Another example is Anonymous But Accountable Self Organizing Communities, which extends the previous list with accountability. Numerous other methods based on asymmetric and symmetric cryptography are known as well.  
         [0026]     Corresponding levels of peer devices within a common peer group, sub-peer group, etc., thus communicate with one another via cryptographic relationships to establish a web of trust between devices within the network, and use Survivable Pipeline Protocols to establish a hierarchy of self-organized devices at various levels in order to execute and maintain prioritized tasks or functions by the devices within a peer group, and to update the trust relationships between the devices. Thereafter, the overall Peer Group executes its intended task or function, which can be the delivery of one or more drugs, delivery of stimuli, or the like based on the physiological parameters sensed and the data messaging and computation that occurred within the various levels of devices and peer groups of the overall Peer Group. Cryptography and Survivable Pipeline Protocols are thus used to co-ordinate data communications between various levels of self-organizing peer devices within at least one overall Peer Group in the network of the medical device according to the systems and methods of the invention.  
         [0027]     A simple protocol which provides some level of anonymity and accountability between devices is Pretty Good Privacy (PGP). PGP is based on a relationship secured by public key-private key cryptography between peer devices, sub-peer devices, etc. A private key authenticates the originating peer device, sub-peer device, etc. from which data is associated, whereas a public key encodes a given peer device with identity data so that the identity of the given peer device can be determined to see if the given peer device owns the required private key authorizing the acceptance of data that is attempting to be communicated to the given peer device.  
         [0028]     In PGP the public key of each peer device, sub-peer device, etc., is thus signed by the private key of at least one other peer device, sub-peer device, etc., thereby creating trust between those peer, sub-peer devices, etc. Trust is maintained between these devices therefore until one or more of the public key signatures have expired, or until the peer device, sub-peer device, etc. has inappropriately performed. Moreover, using PGP, an originating peer, sub-peer device, etc., can communicate with another peer device, etc., directly as detailed above, or indirectly if the public key of an intermediary peer device is trusted by the originating peer device and the other peer device even though neither the originating peer device nor the other peer device has a directly trusted public key for one another. Such a web of trust can grow to connect a variety of peer devices, etc., within the network of the medical device such that eventually each peer device, etc., can communicate to each directly or indirectly trusted peer device, etc., in the chain, without any single peer device, etc., having to store information regarding the public or private keys of all of the various peer devices, etc., in the network. A trusted third party as in the Public Key Infrastructure is thus no longer needed.  
         [0029]     If a peer device, etc., fails to work according to the rules of the community then the other peer devices, etc., will not sign this malicious peer device&#39;s public key after the previous signatures expire. The malicious peer device, etc., will thus no longer be trusted among the peer devices in the web of trust and therefore will be excluded from the network of devices. After two peer devices, etc., agree to communicate with each other, i.e., establish trust, a symmetric key may be generated through which future communications between the trusted peer devices can occur. The peer devices then encode and decode data with that symmetrical key relationship, instead of the more cumbersome public-private key relationship. Once established, the symmetric key relationship requires less computation from the peer devices, but guarantees the same or even higher security for the duration of the communication.  
         [0030]     The systems and methods of the invention thus provide a means for sensing physiological parameters in, on or around a patient and achieving a therapeutic effect for the patient with a medical device that has functional robustness due to its construction as a network of relatively simple component devices that are able to self-organize into a dynamic, collaborative hierarchy to accomplish various levels of tasks or functions. The failure of any one component device therefore does not significantly impact the performance of the network, but rather reduces the functional capability of the entire network of the medical device by a small amount only. Ideally, therefore, the medical device will not experience complete loss of function even when one or some of the component devices comprising the network fail. Each component device can have a relatively inexpensive and simple structure that individually performs simple functions but that collectively, when assembled within the network, is able to contribute to the performance of more complex functions. The small size of the component devices reduces volumetric intrusion of a patient if implanted or attached to the body of the patient. The small size of the component devices also accommodates dispersion of the devices throughout the body, to sense or achieve a therapeutic effect in multiple locations simultaneously and in concert.  
         [0031]     The above and other features of the invention, including various novel details of construction and combinations of parts, will now be more particularly described with reference to the accompanying drawings and claims. It will be understood that the various exemplary embodiments of the invention described herein are shown by way of illustration only and not as a limitation thereof. The principles and features of this invention may be employed in various alternative embodiments without departing from the scope of the invention. 
     
    
     BRIEF DESCRIPTION OF THE DRAWINGS  
       [0032]     These and other features, aspects, and advantages of the apparatus and methods of the present invention will become better understood with regard to the following description, appended claims, and accompanying drawings where:  
         [0033]      FIG. 1  illustrates a network comprised of component devices forming at least one Peer Group according to the systems and methods of the invention.  
         [0034]      FIG. 2  illustrates the direct (in-range), and multi-hop (out-of-range or indirect) communication of component devices.  
         [0035]      FIG. 3  illustrates two examples when a component device should change its communication range.  
         [0036]      FIG. 4  illustrates that the devices should communicate through the closest (or lowest) possible peer group, although all of the devices would be able to communicate through the overall peer group PG 1 .  
         [0037]      FIG. 5  illustrates generally a direct, cryptographic communication scheme between component devices according to the systems and methods of the invention.  
         [0038]      FIG. 6  illustrates the propagation of trust among component devices, which enables the establishment of trust between two component devices through a chain of trusted component devices.  
         [0039]      FIG. 7  illustrates a set of component devices executing a function of a medical device, whereby an exemplary peer group hierarchy created to execute and maintain the function is also shown.  
         [0040]      FIGS. 8   a  and  8   b  illustrate a process of ensuring enough “maintaining” devices are available in a peer group and ensuring a “manager” device exists within a peer group to manage communication, data processing and other functional schedules between devices in a peer group.  
         [0041]      FIG. 9  illustrates how a component device reacts to an advertisement for a task that the network of devices needs to execute.  
         [0042]      FIG. 10  illustrates how a component device reacts to an advertisement of resource requirement for a sub-task that the network of devices needs to execute.  
         [0043]      FIG. 11  illustrates how a “manager” device oversees the resourcing and execution of a sub-task within a peer group.  
         [0044]      FIG. 12  illustrates how a “successor sub-task” is allocated to another component device that becomes responsible for executing the successor sub-task.  
         [0045]      FIG. 13  illustrates a weblog ranking of component devices according to the systems and methods of the invention.  
         [0046]      FIG. 14  illustrates a local communication scheme to schedule communications between component devices with minimal interference according to the systems and methods of the invention.  
         [0047]      FIG. 15  illustrates a routing scheme for communicating data from one component device to another using intermediary component devices according to the systems and methods of the invention.  
     
    
     DETAILED DESCRIPTION OF THE INVENTION  
       [0048]     The systems and methods of the invention described herein comprise a medical device that is intended to approximate the cellular structure of an anatomical organ or organs, for example, of a living being. The medical device is comprised of two or more relatively simple component devices that self-organize into various levels to hierarchically arrange a network of the component devices. The hierarchical network performs a medically relevant task or function, such as the delivery of a therapeutic effect to a patient, upon completion of tasks or functions associated with the various levels of the hierarchical network. Each device thus contains data, algorithms and/or protocols that enable the devices to process some or all of the data or information sensed, stored and distributed within the network, to exchange, modify or reconfigure some or all of the data, and to autonomously allocate data storage, computational, communication, energy supply, timing, sensory and/or therapeutic effect delivery from the various devices within the network.  
         [0049]     Any number of levels of component devices may be provided in the network, although the description herein generally refers to a network having two or three levels in the network. Such levels generally comprise an overall Peer Group, a set of sub-peer groups including sub-sub-peer groups where desired and a set of component devices corresponding to each level. Of course, as should be readily evident to the artisan, the network may further be comprised of additional overall Peer Groups and associated levels of sub-peer groups, sub-sub-peer groups, and component devices, although the non-limiting description herein refers generally to a single overall Peer Group and the various levels associated therewith. A component device may participate in several peer groups simultaneously. Also a component device may contribute to the execution of a function of the peer group, sub-peer group, sub-sub-peer group, etc. level, as the hierarchy of the devices is established specifically for a task and another hierarchy may come into place to execute another task.  
         [0050]     At least one of the component devices is a sensory unit. Where such a network of devices is comprised of predominantly sensory unit component devices, the network will perform primarily a sensory function. The sensory information obtained by the network is then transmitted to other medical devices or medical personnel. In another embodiment of the network of devices at least one component device will primarily perform a sensory function and at least one other of the component devices is a therapeutic effector unit from which an intended therapeutic effect is delivered to the patient in response to data communicated from the sensory unit throughout the network and to the therapeutic effector. Additional component devices, other than the sensory unit and the therapeutic effector unit, that perform similar or other tasks or functions may also comprise the network of component devices according to the systems and methods of the invention.  
         [0051]      FIG. 1  illustrates schematically a device network forming the overall Peer Group PG 1  comprised of sub-peer groups PG 11 , PG 12 , and PG 13 . Specific tasks or functions to be performed by the overall Peer Group PG 1  are assigned to the sub-peer groups PG 11 , PG 12 , PG 13 . Each sub-peer group PG 11 , PG 12 , PG 13  is further comprised of sub-sub-peer groups (like PG 111 , PG 112 ) and/or component devices (D 1 -D 4 ; D 2 , D 4 , D 5 ; D 3 , D 5 , D 6 , for example). Each component device D 1 -D 6  may belong to more than one sub-peer group PG 11 , PG 12 , PG 13  within the overall Peer Group PG 1  such that each component device D 1 -D 6  may belong to different levels in the hierarchy of the overall Peer Group PG 1 . Each sub-peer group PG 11 , PG 12 , PG 13  is assigned a sub-peer group task (sub-task) or function (sub-function) to perform, such as sensing a physiological parameter, computing data or the delivery of a therapeutic effect to a patient. Each component device D 1 -D 6  is assigned a component device task or function to perform within the context of the sub-peer group or sub-sub-peer group with which it is associated, such as sensing a physiological parameter of the patient or the environment within which the patient is located, computing the data, distributing the data, communicating the data to other component devices, or the like. The network of component devices D 1 -D 6 , peer groups PG 11 , PG 12 , PG 13  and sub-peer groups PG 111 , PG 112  thus forms the various levels of the overall peer group PG 1 . The various component devices D 1 -D 6  join some level of the peer group, i.e., sub-peer group or sub-sub-peer group, if the component device decides to contribute to the execution of the corresponding task or function associated with the sub-peer group or sub-sub-peer group. If a sub-peer group&#39;s task is too complex to be executed effectively by one component device or sub-peer group, then the task can be broken up into smaller parts (sub-sub-tasks or sub-sub-functions) and the sub-sub-peer groups (like PG 111  and PG 112 ) are created with component devices therein to perform the sub-sub-tasks or sub-sub-functions corresponding thereto. The overall Peer Group PG 1 , sub-peer groups PG 11 , PG 12 , PG 13 , sub-sub-peer groups PG 111 , PG 112  and component devices D 1 -D 6  are exemplary only, and the artisan should appreciate that a network of devices according to the systems and methods of the invention could comprise any number of at least one overall Peer Group of at least two or more component devices. Further, the artisan should readily appreciate that any or all of the various levels of peer groups, i.e., sub-peer groups, sub-sub-peer groups, etc., may be further comprised of underlying levels, such as shown in  FIG. 1 , wherein sub-peer group PG 11  is further comprised of sub peer groups PG 111 , PG 112  for example, and so on. Of course, where provided, each level of peer group would have a corresponding level of task or function to perform.  
         [0052]     Generally, higher-level tasks or functions are not performed until all of the underlying levels of tasks or functions are completed. Thus ideally, once each of the sub-peer group sub-tasks or sub-functions are completed, the network will have delivered the intended therapeutic effect to the patient based on the physiological parameters sensed, computed and communicated by and between the various levels of component devices and peer groups comprising the overall Peer Group.  
         [0053]     Referring again to  FIG. 1 , each component device D 1 -D 6 , for example, performs at least one component device task or function. At a minimum, therefore, each component device communicates with at least one other component device in the network in order to enable individual devices and the various levels of peer groups, i.e., sub-peer groups, sub-sub-peer groups, etc., within the larger overall Peer Group to work collectively to perform more complex tasks or functions. Each component device may therefore perform one or more functions such as sensing physiological or other parameters, computing and storing data, distributing data, and communicating with one or more other devices within the network. Communications between component devices may be one-way to the extent that a component device either receives or transmits data signals or messages but does not do both receiving and transmitting functions, or may be reciprocal, or two-way, such that a component device transmits and receives data signals or messages from at least one other component device.  
         [0054]     Populating the patient, the patient&#39;s environment, or some combination thereof with component devices enables relatively simple tasks and functions to be performed at various locations in, on or about the patient. Communication links between the component devices help to establish trust and to allocate and prioritize the various tasks or functions among the various levels of component devices within a respective Peer Group of the network. The organization of the component devices within the network thus occurs as a result of the communication links existing between the component devices. The communication between devices may be direct using asymmetric or symmetric cryptographic links between trusted component devices, or may be indirect using intermediate component devices with cryptographic links and pipeline protocols. In any case, the communication of simple tasks or functions performed amongst component devices comprising a respective peer group level enables the network of component devices to perform more complex medical functions, such as artificially simulating or controlling organ functions, inducing the control of neural, musculo-skeletal or other organ function by chemical or electrical stimulation, or responsive monitoring based on physiological parameters sensed, manipulated and communicated by component devices of the network. Of course, where more than one overall Peer Group is provided, communication may similarly be provided between Peer Groups.  
         [0055]     Where component devices are within communication range of one another, in-range communication links provided between such component devices enable the component devices to directly communicate with one another. This is shown in  FIG. 2 , where component device pairs D 1 -D 2  and D 2 -D 3  can communicate directly to each other as a result of being within communication range of one another, respectively, wherein the communication range encompassing D 1  is shown in the dashed line circle and the communication range encompassing D 3  is shown in the dashed-dotted line. The solid line circle represents the communication range of device D 2 . Referring still to  FIG. 2 , it is apparent that D 1  and D 3  cannot communicate directly to each other, as each is out of the other&#39;s communication range. Direct, in-range communication between component devices use asymmetric and symmetric cryptographic techniques referenced above, which can be provided by protocols such as Pretty Good Privacy (PGP) and Anonymous but Accountable Self-Organizing Communities (AASOC) protocols. Such techniques and protocols help to establish trust between component devices, and help to securely transmit arbitrary data between the component devices that are within communication range of one another.  
         [0056]     The communication range of a component device can be predetermined or can be dynamically adapted according to the requirements of the overall medical device. For example, if a component device can communicate directly with only a few other devices (for example, less then a predetermined number of devices), then its maximal communication range can be increased. On the other hand, if a device can communicate directly with many other component devices (for example, more than a predetermined number of devices) then it&#39;s communication range can be decreased, to save energy by communicating to shorter distances.  FIG. 3   a  shows an example of when the component device D 1  should increase its communication range from its original range (solid line) to a new larger communication range (dashed line). Such an increase in communication range is often appropriate when the required number of in-range devices is at least two, but communication with more than two devices increases the effectiveness or sensitivity of the network overall.  FIG. 3   b  shows an example of when the component device D 1  should decrease its communication range from its original communication range (solid line) to a new smaller communication range (dashed line). Such a decrease in communication range may be appropriate if the number of in-range devices is as much as five devices, for example, but the effectiveness or sensitivity of the network would be enhanced by limiting communication to fewer devices. The actual communication range may also depend on the physical parameters of the communicating component devices and/or the parameters particular to the communication, such as the communication medium (radio frequency, infrared, wired, etc.), the communication hardware (antenna, wire, IR sensor type, etc.), the available energy for communication (less available energy generally means smaller communication range preferred), the maximal transmission error bit rate allowed, etc., or other parameters of the various component devices involved. The component devices can change their communication range, for example, by communicating with less or more power, by changing the form of communication they use, by changing their physical location, or by changing other parameters discussed herein.  
         [0057]     Referring again to  FIG. 2 , where the pair of component devices D 1  and D 3  are out of communication range of one another, then out-of-range, or multi-hop, communication between such component devices occurs to link the otherwise out-of-range component devices D 1  and D 3  with one another. The out-of-range communication between component devices D 1  and D 3 , for example, occurs via one or more intermediate component devices, in this case D 2 , that link the otherwise out-of-range component devices D 1  and D 3  with one another. Out-of-range communication between component devices may be organized and maintained by pipeline protocols such as SPP within the network.  
         [0058]     Generally, component devices can communicate with each other if they are in the same peer group, i.e., PG 11 , or PG 12 . But all component devices within a network are in the main overall Peer Group (PG 1  in  FIG. 1 .). Therefore, any component device can ideally communicate with any other component device directly or indirectly in the overall Peer Group. Localizing communications between component devices is preferable however, to optimize the efficiency of the network. To localize the communication of the component devices, the devices should ideally communicate within the lowest common level of peer group in the hierarchy of the network.  FIG. 4  thus shows that component devices D 1  and D 2  communicate with one another via sub-peer group PG 11  rather than through the overall Peer Group PG 1 . Because the sub-peer group PG 11  is the lowest common level of peer group with which both component devices D 1  and D 2  share, the component devices D 1  and D 2  cannot communicate with each other through sub-sub-peer groups PG 111  or PG 112 , even though such sub-sub-peer groups comprise a part of the overall Peer Group PG 1  as well. In any event, component devices D 1  and D 2  should therefore communicate through PG 11  and not through PG 1 , to make the communication as localized and efficient as possible.  
         [0059]     Asymmetric cryptography generally establishes trust between component devices within a respective peer group, whereas symmetric cryptography generally authorizes data exchange between component devices within the respective peer group after trust has been established between component devices using asymmetric cryptography initially. Survivable Pipeline Protocols (SPP), on the other hand, are used to execute and maintain prioritized tasks, or functions, and communication pipelines appropriately within the network, and to update the trust relationship between component devices by establishing the hierarchy of self-organized component devices (by creating the hierarchy of various levels of peer groups and maintaining local information about other component devices). Once the component devices within a respective peer group level have performed their respective tasks or functions, then the task of the respective peer group is executed. Security and anonymity of the communications are enhanced by the cryptographic, PGP, AASOC based communication methods employed within the network of the medical device according to the systems and methods of the invention.  
         [0060]     According to PGP cryptography, as shown in  FIG. 5  for example, component device D 1  is provided with a public key K 1   a  and a private key K 1   b,  and device D 2  is provided with a public key K 2   a  and a private key K 2   b.  When the public key K 1   a  of the component device D 1  is signed with the private key K 2   b  of the component device D 2 , as evidenced by the arrow having K 1   a  atop K 2   b  from component device D 2  to D 1 , trust is established from the component device D 2  to D 1 , for example. Similarly, when the public key K 2   a  of the component device D 2  is signed with the private key K 1   b  of the component device D 1 , as evidenced by the arrow having K 2   a  atop K 1   b  from component device D 1  to D 2 , trust is established from the component device D 1  to D 2 . Once such trust is established between component devices, two-way communications between component devices D 1  and D 2  is readily authorized. Other component devices have similar public keys and private keys associated therewith for establishing trust and communication relationships therebetween. A network of trusted component devices of the medical device is thus similarly established by having component devices sign the public keys of trusted component devices with their own private keys.  
         [0061]     Once the public key-private key relationship between devices is established, a symmetrical key may be generated to communicate between component devices, such as symmetrical key K 1 - 2  generated between component devices D 1  and D 2  as shown in  FIG. 5 . The symmetrical key, when generated, enables faster, simpler and more secure communications between trusted devices, such that a component device can communicate with any other trusted component device within the overall Peer Group PG 1 . Encoding and decoding messages with a symmetrical key is typically simpler and more efficiently processed between component devices than are messages using the public key/private key algorithms, cryptography or protocols therein, thereby aiding the efficiency of communications between component devices once a symmetrical key arrangement has been established.  
         [0062]     Referring now to  FIG. 6 , for example, Peer Group PG 12  is shown in dashed lines, component devices D 4  and D 5  are indicated as having a symmetric key K 4 - 5 , showing the trust established and enabling communication therebetween. Similarly component devices D 5  and D 2  are indicated as having a symmetric key K 5 - 2  showing the trust established and enabling communication therebetween. On the other hand, component devices D 4  and D 2  are shown as using the public key/private key relationship (K 4   a  &amp;  b,  and K 2   a  &amp;  b ) to enable communication therebetween. In this instance, however, public key K 2   a  of device D 2  is not signed by the private key K 4   b  of device D 4 , and the public key K 4   a  is not signed by the private key K 2   b.  Trust between component devices D 2 -D 4  can nevertheless be deduced, as shown by the arrow K 4 -K 2  because the component device D 4  trusts in D 5 , the component device D 2  trusts in D 5 , and D 5  trusts both D 4  and D 2 . Therefore D 4  and D 2  conclude, based on the respective signatures of the public keys K 4   a  and K 2   a  by private key K 5   b,  that component devices D 2  and D 4  can trust each other. A symmetric key K 2 - 4  is thus generated between component devices D 4  and D 2  once sufficient trust has been established therebetween using the public key/private key relationship as before described. This indirect (“deduced”) trust establishment enables some component devices to refrain from signing and storing the public keys of all of the other component devices while still participating in the establishment of trust between certain devices, whereas only those component devices between which communications frequently occur tend to sign and store the public keys of the other component devices.  
         [0063]     Using PGP cryptography, and AASOC with the various component devices comprising the peer groups of the network, helps further assure the internal and external accountability of the data communicated between the component devices, and helps maintain and secure the privacy and confidential nature of the data communicated therebetween. Sensor networks, especially in medical applications, gather much personal and highly sensitive information from the patient and the environment, which emphasizes the desirableness of the stored information in the network being protected, and the communications of the network being secure and anonymous. Also, accountability is therefore preferably provided against malicious users and devices.  
         [0064]     Because the component devices within the network are relatively simple, having relatively small computational capacities (as compared to PC&#39;s, PDA&#39;s or mobile phones, for example), with relatively limited power supplies, any algorithms applied by the devices to provide security within the network are ideally selected and implemented to minimize energy consumption and computational resource requirements. PGP cryptography tends to achieve these goals using the asymmetric and symmetric key cryptography approach detailed above, wherein asymmetric public key-private key relationships initiate the trust relationship between devices, which is then replaced with the generally faster, more efficient symmetrical keys and algorithms associated therewith. The private key signature of component devices on the public keys of other component devices helps to ensure the identity and security of such devices and the information or data communicated among the devices, which increases the reliability and efficiency of the network overall. Risk of failure of the network and medical device therefore, as where trust between devices is disrupted, can be minimized even further by implementing more expensive and computationally elaborate algorithms tailored to the capabilities of the component devices if desired.  
         [0065]     Referring now to  FIG. 7 , the execution of a task or function of a medical device and the various created levels of peer groups contributing to the execution of that task or function are shown. The overall Peer Group is PG 1 . Function  1  is shown as assigned to sub-peer group PG 11 . Sub-function  2  of function  1  is shown as assigned to sub-peer group PG 1   12 . Sub-peer group PG 11  is further comprised of sub-sub-peer groups PG 111  and PG 112 , and sub-sub-peer group PG 112  is still further comprised of sub-sub-sub-peer groups PG 1121 , PG 1122 , PG 1123  and PG 1124 . Function  1  contains five operations, shown as circles OP 1  to OP 5 . After the first operation OP 1  is executed (for example, the sensing of some physiological parameter) the result is sent to PG 1121  to be incorporated into the second operation OP 2 . After OP 2  is executed the result is sent to PG 1122  to be incorporated into OP 3  and to PG 1123  to be incorporated into OP 4  simultaneously. After the execution of OP 3  and OP 4  the results are sent to PG 1124  to be incorporated into OP 5 . In the course of the execution of OP 1 -OP 5  a therapeutic effect to the patient may be delivered. The therapeutic effect may be some amount of drug, action or stimulus delivered to some location in the patient&#39;s body; where the amount delivered and the place of delivery may depend on the outcome of the previous operations of the function. Thereafter, feedback indicating that the assigned function has been executed is sent to the device D 1 , i.e., the “manager” device responsible for co-ordinating and scheduling all of the component devices D 1 -D 3  to perform the respective tasks or functions to execute completely the first operation of function  1 . (The concept of “manager” devices is discussed in greater detail further below). Referring still to  FIG. 7 , bold arrows show data propagation between component devices and the various levels of the peer groups comprising the medical device, wherein the overall Peer Group PG 1  is represented as the largest rectangle, the sub-peer PG 11  is represented as the second largest rectangle, the sub-sub-peer group PG 111  is represented as the smaller interior rectangle all of which correspond to operation OP 1 . The sub-sub-peer group PG 112  is represented as the darkened interior rectangle. Sub-sub-peer group PG 112  is further comprised of a series of sub-sub-sub-peer groups PG 1121 , PG 1122 , PG 1123  and PG 1124  that are represented as smaller rectangles within the darkened sub-sub-peer group PG 112  rectangle. The component devices D 1 -D 9  are represented as the smallest rectangles in  FIG. 7 . Of the various levels of peer groups depicted in  FIG. 7 , PG 1  and PG 11  are responsible for the organization of the eventual execution of function  1  upon completion of sub-function  2 , while PG 111 , PG 112  and PG 1121 -PG 1124  are responsible for the execution of specific operations OP 1 -OP 5  and sub-function  2  that comprise part of the overall function  1  of the medical device.  
         [0066]     Referring still to  FIG. 7 ., the component devices comprising a peer group can fulfill any of three different roles. For example, component devices are either “workhorse” devices, “maintaining” devices, “manager” devices, or some combination thereof. “Workhorse” component devices are responsible for executing the assigned task of the respective peer group once data to be processed thereby is received. Every component device in a peer group may act as a “workhorse” device. “Maintaining” devices receive data from a previous operation and distribute the data to one or more subsequent “workhorse” devices in the peer group for processing that data; and maintaining the roles within the peer group. “Manager” devices are “maintaining” devices that also schedule data allocation and processing within the peer group, recruit new devices to assist in the execution of assigned tasks for the peer group if needed, and organize the assignment of successor tasks (or operation) to other “manager” devices in various levels of component devices within the peer group. Among other things, the “manager” devices help simplify the transmission of data from one level to another in those cases when input data from multiple predecessor operations or sub-tasks is received, as in operation OP 5  in  FIG. 7 , for example. In such cases the corresponding data packages need to be sent for processing to the same “workhorse” device within the peer group, where the packages are typically consolidated before processing commences.  
         [0067]      FIG. 8   a  shows a process of ensuring that there are a sufficient number of “maintaining” devices within the peer group to receive and distribute data effectively to “workhorse” devices for timely processing of the data. If there are not enough “maintaining” devices in the peer group to safely meet the task&#39;s reliability requirements within the peer group, then “workhorse” devices are recruited from within the peer group to become “maintaining” devices. If “workhorse” devices are not available to recruit from within the peer group, then a notification is sent to the “manager” device of the respective peer group that the execution of that peer group&#39;s assigned task, function or operation cannot be guaranteed with the current devices available in the peer group.  FIG. 8   b  shows a process of recruiting additional “manager” devices from among the available “maintaining” devices when a prior “managing” device fails to respond or function appropriately.  
         [0068]      FIG. 9  is a flowchart illustrating how the organization of a task or function starts, wherein only the term task is used hereafter although functions and the various levels of tasks, operations or functions are understood to be encompassed in the description set forth herein. The tasks to be organized and executed by the network of component devices are advertised within the network. In step  1000 , a description of the advertised task is received by the various component devices in the network. The description of the advertised task includes a description of the operations required to perform the task, the preferred data paths between the operations, reliability requirements, and required execution times (for example, latency and restart times). In step  1100 , a component device receives such an advertisement, and determines whether it will accept the advertised task. If the device decides to accept the advertisement, then in step  1200  the accepting device sends a notification of its intent to accept and organize the execution of the advertised task to the component device from which the advertisement originated. Several of the component devices may be capable of performing the advertised task, thus several notifications of intent to accept may be forthcoming from the various capable component devices. However, because a task is preferably assigned to one peer group, preferably only one component device is ultimately authorized to organize the advertised task, the component device that originally advertised the task decides which notification of intent to accept the task should be accepted, and thus which component device is ultimately authorized to organize the advertised task. This determination is made based upon the specifics of the tasks and the past performance on a similar task of each component device volunteering for the tasks. In step  1300  the originating device determines which device is authorized to accept and organize the advertised task. Once a component device receives a message from the advertising device authorizing the starting and organizing of the advertised task, then in step  1400  that authorized device must start to organize the advertised task for execution thereof (or sub-task). The first step of organizing a task for execution thereof is the creation of an appropriate level peer group that will be responsible for the eventual execution of the advertised task (or sub-task).  
         [0069]     If a peer group is created to execute a task directly, then the resource requirements of the execution of that task are advertised. The operations performed by the created peer group level may be a single operation or may be some consecutive operations. In any event, the advertisement of resource requirements by the created peer group contains the same or similar information as that provided in the task description detailed above in order to attract multiple devices to respond to the advertisement and join the peer group.  FIG. 10  provides a flowchart illustrating the case where a component device determines whether it is capable of performing the advertised task, taking into account resource requirements; and whether it should join the created level peer group authorized to perform the task associated therewith. As shown in  FIG. 10 , the advertisement setting forth the description of the resource requirements for performing a task are received by a component device in step  2000 . Then, in step  2100 , the component device determines whether it can contribute to the execution of a task within the targeted reliability and frequency parameters set forth by the advertised resource requirements. If so, then in step  2200  the component device joins the created peer group authorized to perform that task. If not, then further recruitment of component devices is needed in light of the advertised resource requirements. Once created, a peer group needs a sufficient amount of component devices to execute all of the operations required to complete the overall task within targeted reliability and frequency parameters. Where additional data to be processed by a component device is generated before preceding data has been fully processed by the same component device, then a backlog of data and processing could occur with undesirable reliability and frequency effects. In this case, pipeline operations may be used between component devices to continue to process data subsequently generated even as a prior task, function or operation processing is underway. The use of such pipeline operation means that the devices within a common level peer group that was created and authorized to perform a task may start processing subsequent data even while the previous data is not fully processed. Fewer component devices are required to process increased volumes of data as a result of the pipeline operations.  
         [0070]      FIG. 11  provides a flowchart illustrating the management of a task delegated to a peer group. The “manager” device of the peer group executes the steps provided in the task management flowchart of  FIG. 11  regularly. In step  3000 , the “manager” device determines whether a task is being executed reliably, or if the timing constraints within which the task is to be performed are not being satisfied by the current component devices existing within the peer group. If the task is not reliably or timely executed, then in step  3100  the “manager” device selects additional component devices from a weblog associated therewith. The weblog, described in more detail further below with respect to  FIG. 13 , is a list of component devices that are ranked or ordered based on their reliability to perform a given task. The additional component devices are preferably not in the same peer group and their recruitment thus increases the overall resources and capability of the peer group. After selecting the additional reliable component devices, then in step  3200  the “manager” device decides whether the task of this peer group should be executed directly via steps  3300 - 3370  by newly recruited component devices in collaboration with existing devices within the existing peer group, or whether the task of this peer group should be broken up or decomposed into smaller sub-tasks via steps  3400 - 3470 . If the task should be executed directly by the existing peer group, then in step  3300  the resource requirements of the task execution are advertised to the various devices. If the task of the peer group should be decomposed, then in step  3400  the task of the peer group is advertised to the selected devices within the peer group. When direct execution is pursued, then in step  3310  the “manager” device waits for responses to the advertisement from the available devices. If the manager device receives satisfactory responses from various component devices within a given time interval in step  3320 , then in step  3330  the various responding component devices join the peer group to assist in executing the intended task of the peer group. On the other hand, if unsatisfactory responses were obtained in step  3320 , then, in step  3340 , the resource requirements of the intended task to be executed are advertised to all of the devices in the overall Peer Group. If satisfactory responses to the resource requirement advertisement of step  3340  are received in step  3350 , then those responding component devices are joined with the other devices in the peer group in step  3360  to assist in executing the intended peer group task. Otherwise, if unsatisfactory responses continue to be obtained in step  3350 , then a notification is sent by the “manager” device in step  3370  that the task cannot be organized or executed. The notification is sent to the component device from which the advertisement of this task was originally received. When further decomposition of a task is pursued prior to execution of the task, then in step  3410  the “manager” device waits for responses to the advertisement from the available component devices selected from its weblog. If the “manager” device receives satisfactory responses from various component devices within a given time interval in step  3420 , then in step  3430  the various responding component devices are accepted and join the peer group to assist in executing the intended task of the peer group. On the other hand, if unsatisfactory responses were obtained in step  3420 , then, in step  3440 , the intended task to be executed is advertised to all of the devices in the overall Peer Group. If satisfactory responses to the task advertisement of step  3440  are received in step  3450 , then those responding component devices are accepted and joined with the other devices in the peer group in step  3460  to assist in executing the intended peer group task. Otherwise, if unsatisfactory responses continue to be obtained in step  3450 , then a notification is sent by the “manager” device in step  3470  that the task cannot be organized or executed. As before, the notification is sent to the component device from which the advertisement of this task originated.  
         [0071]      FIG. 12  shows a flowchart illustrating the maintenance and organizing of a successor task. A successor task is understood to be the next task to be executed after completion of all required preceding tasks. According to  FIG. 11 , a peer group is created and responsible for the execution of a particular task. Typically such tasks comprise underlying levels of some bigger task to be executed by a subsequent or higher-level peer group, or the overall Peer Group, of the medical device. Therefore successful execution of the tasks of underlying peer groups increases the likelihood that execution of the bigger task will not fail after the underlying peer group tasks have been executed. Upon completion of the underlying task, the underlying peer group is further responsible for finding a component device that will initiate the organization and maintenance of the first part of the successor task. In other words the underlying peer group is not responsible for organizing the entire successor task. Rather, the only responsibility (in addition to executing the task for which it was created) is to recruit and communicate with another device that will organize the reliable execution of some first part of the successor task. This makes the network of devices and task allocation modular, distributed and robust. Task execution in the network of devices thus never depends on only one device. As shown in step  4000  of the flowchart of  FIG. 12 , the “manager” device regularly verifies that the execution of some first part of the successor task is reliably and timely executed. If the verification fails, or a notification is received that the successor task cannot be organized or executed reliably, then in step  4100  the “manager” device selects some successor devices from its weblog and in step  4200  advertises the successor task to those component devices identified in the weblog. In step  4300  the “manager” device waits for a response from the successor devices regarding the advertisement. If the “manager” device receives an acceptable response in step  4400 , then in step  4500  a successor device is accepted and execution of the successor task is organized and execution thereof begun. If, on the other hand, the “manager” device does not receive a satisfactory response to the advertisement in step  4400 , then in step  4600  the advertisement is sent to all devices in the overall Peer Group. If the “manager” device receives a satisfactory response to the advertisement in step  4700 , then in step  4800  the successor device is accepted and organization and execution of the first part of the successor task is begun. If, however, the “manager” device still does not receive a satisfactory response to the advertisement in step  4700 , then in step  4900  the “manager” device sends a notification to the originating device from which the “manager” device received the task description that the organization and execution of some first part of the successor task cannot be reliably arranged by the “manager” device. The originating device that receives the notification should recruit another device to arrange the organization and execution of the successor task.  
         [0072]     Referring now back to  FIG. 7 , as one illustrative example of organizing the function of the medical device, D 1  received the description of function  1  and was thus recruited to start to organize that function. D 1  created peer group PG 11  and decided that OP 1  could not be directly executed by itself. Therefore D 1  created PG 111 , selected some partner devices from its weblog, and sent the resource requirements of OP 1  to those devices. Furthermore D 1  decided that the function  1  needed to be further decomposed, and therefore advertised the remaining tasks (OP 2 -OP 5 ) with the fact that it has an assigned peer group PG 11 . If needed then it sent the advertisement to all other devices in the overall Peer Group PG 1 . Finally D 5  and D 6  joined the peer group PG 111  and D 1  became the “manager” device of the peer group PG 111 . During this time, D 2  responded to D 1  regarding D 1 &#39;s task advertisement with the intent to organize the whole successor task. D 1  accepted D 2 &#39;s intent, therefore D 2  created the peer group PG 112 . D 2  decided that OP 2  cannot be executed directly by itself, therefore it created PG 1121 , selected some partner devices and advertised the resource requirements of OP 2 . D 2  also decided that the other parts of the task OP 2  should be further decomposed, therefore D 2  advertised the remaining task with the fact that it has an assigned peer group PG 112 . Similarly D 3 , D 4 , and D 5  organized the execution of OP 3 , OP 4 , and OP 5  and the other devices joined the created peer groups. Finally the execution of the whole function is reliably and timely executed and maintained by the devices with the SPP protocol.  
         [0073]     If a device breaks down or somehow disconnects from the network, then the other devices that relied on its resources in the execution of a task will notice it. If a device can detect that it will likely break down, then it should send a notification to other devices that it will break down, for example, or that its energy source is depleting. When a device does not answer to messages then it is considered to be not operational and other devices will not count on that device until the device starts to answer messages.  
         [0074]     If a new device is introduced into the network, then that device can join any peer group that needs resources to reliably execute, or start to organize an advertised task. In order to ensure the required security of the system and the prevention of malicious intrusion, the new device may need to provide proof of its right to join the network of devices. Also, for example in an AASOC system, procedures typically exist to disqualify devices that do not operate according to the rules of the overall medical device. This further increases the security of the medical device even against malicious devices.  
         [0075]      FIG. 13  illustrates schematically a self-organized ranking of the communication and task execution reliability pattern of component devices D 1 -D 3 . The reliability patterns are illustrated as maintained in a weblog (W) of each component device according to the systems and methods of the invention. As shown in  FIG. 13 , a weblog (W) of trusted component devices is maintained by each device based on the public key-private key, or symmetrical key, relationship established between devices as detailed above. Each device listed in the weblog W of another device thus has some degree of reliability for communication and task execution with the corresponding component device. However, the weblog W of each device prioritizes the list of trusted devices such that those most-trusted devices are listed first, and least trusted devices are listed last within the weblog W. Lesser-trusted devices are thus listed in successive order between first and last listed devices on the weblog list of a respective device.  
         [0076]     In practice, referring still to  FIG. 13 a  weblog W for a component device D 1  is shown. After a peer device D 2  has completed a task that it received from device D 1 , the reliability of D 2  according to D 1  may increase. That reliability is represented in the weblog W of device D 1  by placing device D 2  in a first position in the weblog W of D 1 . Meanwhile, were device D 3  to fail to execute a task received from device D 1 , then reliability of D 3  according to D 1  may decrease. As a result, device D 3  is placed below device D 2  on the weblog W of D 1 . If D 3  continues to fail to execute a task communicated to it from D 1 , then D 3  will eventually be removed from the weblog W of device D 1 , such that, in this instance, D 1  will not send task advertisements directly to D 3 . By listing the various trusted devices by the degree of trust or reliability of a device, the efficiency of the processing and communicating data through the network of the medical device can be enhanced. Also, note that if the resources of a device (e.g., memory) enable the storage and update of more weblogs then that device may have separate weblogs for each type of task or communication and can select a device from the appropriate weblog when needed.  
         [0077]      FIG. 14  illustrates an embodiment of a local communication scheme between component devices within a Peer Group  123  according to the systems and methods of the invention. The communication scheme set forth in  FIG. 14  illustrates peer devices D 1 -D 4 . Devices D 1  and D 2  prefer to communicate with each other directly as they are within each other&#39;s communication range (C 1  and C 2  respectively). Note, that a communication range (as it is a physical notion) is not limited by the logically existing peer groups.  FIG. 14  illustrates this concept as D 1  and D 2  are within the peer group PG 123 , whereas D 3  and D 4  are not. D 3  and D 4  are instead within peer group PG 12 . Nevertheless, D 3  and D 4  are each within one of the communication ranges C 1  and C 2  that also include D 1  and D 2 . To avoid communication interference between devices, communications between devices are preferably scheduled such that, when two devices within each other&#39;s communication range (C 1  and C 2 ) communicate directly using a specific channel, for example channel  1 , then other devices within the communication range of those devices (C 1  and C 2 ) do not use the same channel.  
         [0078]     For example, referring still to  FIG. 14 , device D 1  and device D 2  communicate directly to one another via channel  1  within the communication ranges C 1  and C 2 . Thus, device D 3  cannot communicate to any devices using channel  1  during the communication of D 1  with D 2  because D 3  is in the communication ranges C 1  and C 2  as well. Because D 3  is within the communication range of both D 1  and D 2  each of D 1  and D 2  can schedule communications directly with D 3  so that communication interference can be avoided easily. On the other hand D 4  is out of the communication range of D 2 , therefore D 2  is typically not even aware that D 4  can interfere with D 1 , but D 2  and D 4  cannot communicate at the same time to D 1  using the same channel. Furthermore, if D 1  communicates on channel  1 , then D 4  cannot communicate to any device using channel  1  during that time because it would interfere with D 1 &#39;s communication. Therefore D 4  must schedule its communication not to use channel  1  when, for example, D 2  communicates with D 1  on channel  1 . If communication is scheduled and allocated in a similar way as the tasks are allocated and scheduled with respect to the various levels of component devices using SPP, for example, then communications interference can be minimized. Using such a communication scheme, as illustrated in  FIGS. 7 and 14  for example, permits more reliable communications to occur between devices while minimizing interference therewith. As a result, the tasks or functions to be undertaken by the component devices within the respective peer groups may be more reliably performed.  
         [0079]      FIG. 15  illustrates one embodiment of a routing scheme for communicating data from component device D 1  to component device D 8  according to the systems and methods of the invention. In  FIG. 15 , devices D 1 -D 8  have communication ranges represented by circles. D 1  and D 8  are out of each other&#39;s communication range, represented by symmetric circles with solid lines. The communication ranges of devices D 2 -D 4  are illustrated by dashed circles, while the communication ranges of devices D 6 -D 7  are represented by dashed-dotted circles. There are three peer groups PGC 18 , PGC 28  and PGC 58  in  FIG. 15 , wherein each peer group is created for communication tasks. The large rectangle represents the peer group PGC 18 , which is created for the communication between devices D 1  and D 8 . The two hand-drawn bold lines represent peer groups PGC 28  and PGC 58 , respectively created for communication between D 2  and D 8 , and D 5  and D 8 .  
         [0080]     Referring still to  FIG. 15 , D 1  wants to communicate with D 8 , but D 1  and D 8  are out of each other&#39;s communication range. Therefore D 1  creates the peer group PGC 18  to localize communications between D 1  and D 8 , whereby only those devices that join this peer group can contribute to the communication. D 1  does not know any route to D 8  and therefore advertises this communication task to all devices. Devices D 2  and D 5  answer the advertisement as they know routes to D 8 . D 1  accepts these responses. D 2  and D 5  therefore create the peer groups PGC 28  and PGC 58  to localize their communications with D 8 , and send the communication resource requirement advertisement to the devices in the route to D 8 . That is D 2  sends the advertisement to D 3  and D 4 , while D 5  sends the advertisement to D 6  and D 7 . Finally D 4  and D 7  are within the communication range (symmetric circle with solid lines) with D 8 . D 8  is thus notified through D 4  and D 7  that D 1  wants to communicate with D 8 . Devices D 1  and D 8  now can establish trust between each other with their public-private key pairs as described hereinabove.  
         [0081]     In practice, therefore, the medical device comprised of a network of various levels of peer groups (PG 1 , PG 11 , . . . ,PGC 18 ,PGC 28 , . . . ) comprised of different component devices (D 1 -D 8 ) according to the systems and methods of the invention, would thus communicate data regarding sensed physiological parameters, compute, store or distribute such data, and then initiate a response to such data to address or remedy a condition in a patient based on the communications exchanged within the network.  
         [0082]     With respect to the Survivable Pipeline Protocols discussed above, collaborative device networks create challenging resource allocation and scheduling problems. For example, the challenge posed by the interference of the communication of component devices, discussed above with respect to  FIG. 14 , can be solved, for example, by distributing sensory information through designated low bandwidth RF channels between component devices or various levels of component devices in the network. Distributed pre-processing of the information or data obtained at each stage can lower the amount of information that is being communicated between component devices or the various levels thereof to render the communication between component devices and levels of the network even more efficient, if desired. In this case, the pre-processing tasks of possibly heterogeneous component devices, each of which may have limited computational capacity, may have to be completed to render the network operational. Further, multi-hop communication channels between distant component devices are preferably maintained in order to enhance the efficiency of the network. The Survivable Pipeline Protocol (SPP) used in the context of the systems and methods of the invention, provides the framework of algorithms within the component devices to perform multi-hop message routing, local communication, task allocation and scheduling for a medical device comprised of a network of a multitude of component devices according to the systems and methods of the invention.  
         [0083]     SPP has multiple benefits, which render it accommodating for use with the networked medical device of the instant invention. For example, SPP: 
        recruits component devices in a population of heterogeneous and low processing capacity units to accomplish complex and energy-expensive tasks (e.g. encrypting/decrypting messages for increased security) that otherwise are beyond the capabilities of individual units     allows component devices with communication capability (e.g. RF communication) to reduce interference by effectively scheduling communications     reduces communication traffic by distributed preprocessing of the data to be communicated     supports multi-hop communication channels between distant component devices     adapts to dynamic changes in the device population, brought about by the loss or introduction of units or by changes in the performance of individual units        
 
         [0089]     While there has been shown and described what is considered to be preferred embodiments of the invention, understood is that various modifications and alterations in form or detail could readily be made without departing from the spirit and scope of the invention. It is therefore intended that the invention be not limited to the exact forms described or illustrated herein, but should be construed to cover all modifications that may fall within the spirit and scope of the appended claims.