Abstract:
An integrated intelligent environment provides responses to incoming user requests for information. Aspects of the integrated intelligence environment allow information to be efficiently gathered from past solutions, and/or new information to be collected from multiple information sources. The integrated intelligence may include learning agents, mobile objects, and optimizer components that allow for the efficient gathering of information across multiple platforms. The learning agents facilitate providing a response to the user request by determining how similar requests were handled in the past. The mobile objects are configured to seek information from the multiple information sources, and may utilize a publish and subscribe framework. The optimizer determines whether a cost associated with a possible solution justifies use of that solution. A feedback mechanism allows users to rate the provided responses to their requests for information. This rating information may then be utilized in satisfying future requests for information.

Description:
TECHNICAL FIELD  
       [0001]     The present invention relates generally to information systems, such as intelligence systems.  
       BACKGROUND  
       [0002]     Many agencies and organizations rely on internal and external information systems for their critical and day-to-day operations. For example, various agencies within the U.S. Government rely on various aspects of intelligence, surveillance, and reconnaissance (ISR) systems for acquiring information. Examples of such information include information used or produced by government agencies (e.g., the FBI, CIA, etc.), tactical information used by military commanders, etc.  
         [0003]     Because current ISR systems lack cross-cueing and cross-tasking capabilities and remain largely un-integrated and platform- and agency-centric, sharing assets and information across such systems is often very difficult, resulting in unsatisfied users, excess cost, and duplication of effort. For example, current mechanisms for task creation/distribution, information collection, information exploitation, and information dissemination tend to be organized around specific platforms, intelligence organizations, and intelligence disciplines (e.g., IMINT, COMINT, ELINT, MASINT, etc.). In addition, current optimization schemes for ISR systems tend to result in optimization only at the discipline or agency level. For example, task creation/distribution typically remains a binary choice where a task/problem is assigned to an intelligence discipline without regard to other potential intelligence disciplines (or combination of disciplines) that could be employed to more efficiently perform a task or solve a problem.  
         [0004]     Current ISR systems also rely heavily on manual processes and, thus, often require involvement of large numbers of experienced intelligence specialists. While these intelligence specialists may have significant intelligence knowledge, they may often lack operational knowledge (e.g., they may lack knowledge about what a user or requester actually needs or why the user or requestor is making a request).  
       SUMMARY  
       [0005]     The following summary is provided for the benefit of the reader only, and is not intended to limit in any way the invention as set forth by the claims. Aspects of an integrated intelligence environment are described herein. Embodiments of the integrated intelligence environment may be used in commercial operations, governmental operations, civic operations, scientific operations, military operations, etc. Some embodiments of the integrated intelligence environment may handle requests for information submitted by users (e.g., military and national security customers) or other requestors in a way that allows resources and assets across multiple systems to be utilized effectively and efficiently, minimizes operator expertise requirements, and provides fast and effective solutions.  
         [0006]     The integrated intelligence environment may employ smart information technologies, such as learning agent technology that helps users with minimal expertise (e.g., intelligence gathering experience) to fine-tune requests for information; mobile object technology that can be custom-configured to retrieve information across multiple systems; optimization algorithms that solve information requests using a solution framework based on knowledge chains (each comprising a flexible combination of information assets/resources) assembled from one or more locations, groups, or systems that can be tasked individually; etc. In addition, some embodiments of the integrated intelligence environment include feedback capabilities (e.g., user feedback loops) and resource tracking capabilities that contribute to optimization and allocation. Resource tracking and feedback loops may also enable system administrators to assess performance of the integrated intelligence environment and the quality of assets available via the integrated intelligence environment.  
     
    
     BRIEF DESCRIPTION OF THE DRAWINGS  
       [0007]      FIG. 1  is a block diagram showing an example of an overview of the integrated intelligence environment in an embodiment of the invention.  
         [0008]      FIG. 2  is a data diagram showing an example of information associated with a user request for information, which may be provided as input to the integrated intelligence environment of  FIG. 1 .  
         [0009]      FIG. 3  is a flow diagram showing a high-level process flow associated with the integrated intelligent environment of  FIG. 1 .  
         [0010]      FIGS. 4A and 4B  are flow diagrams showing an example of a routine for processing an information request in the integrated intelligence environment, such as the user request for information of  FIG. 2 .  
         [0011]      FIGS. 5A-5D  are display diagrams showing sample user interface features associated with a learning agent of the integrated intelligence environment of  FIG. 1 .  
         [0012]      FIGS. 6A-6B  are display diagrams showing sample user interface features associated with a customized mobile object of the integrated intelligence environment of  FIG. 1 .  
         [0013]      FIG. 7  is an information diagram showing examples of user requests for information and related assets in accordance with an optimization scheme. 
     
    
     DETAILED DESCRIPTION  
       [0014]     Certain specific details are set forth in the following description and in  FIGS. 1-7  to provide a thorough understanding of various embodiments of the invention. Well-known structures, systems and methods often associated with network environments have not been shown or described in detail to avoid unnecessarily obscuring the description of the various embodiments of the invention. Those of ordinary skill in the relevant art will understand that additional embodiments of the present invention may be practiced without several of the details described below.  
         [0015]     Many embodiments of the invention described below may take the form of computer-executable instructions, including routines executed by a programmable computer (e.g., a computer-controlled design process). Those skilled in the relevant art will appreciate that the invention can be practiced with other computer system configurations as well. Aspects of embodiments of the invention can be embodied in a special-purpose computer or data processor that is specifically programmed, configured, or constructed to perform one or more of the computer-executable instructions described below. Accordingly, the term “computer” as generally used herein refers to any data processor and includes Internet appliances, hand-held devices (including palm-top computers, wearable computers, cellular or mobile phones, multi-processor systems, processor-based or programmable consumer electronics, network computers, minicomputers and the like).  
         [0016]     Aspects of the invention described below may be stored or distributed on computer-readable media, including magnetic and optically readable and removable computer disks, as well as distributed electronically over networks. Data structures and transmissions of data particular to aspects of the invention are also encompassed within the scope of the invention.  
         [0017]      FIG. 1  shows an example of components associated with an integrated intelligence environment  100  in an embodiment. The integrated intelligence environment  100  may include one or more user devices, such as a personal computer  102  and a low bandwidth user device  104  (e.g., handheld operating in the field via wireless communications). Users associated with the user devices ( 102  and  104 ) may place requests for information from the user devices ( 102  and  104 ) via a user interface component  108  of a user device application  106 .  
         [0018]     The user device application  106  may also include one or more learning agents  110  that facilitate generating the requests for information, as well as collecting user feedback and performing learning activities so that only the most potentially relevant information can be provided to users in addressing future requests for information. For example, such learning agents may comprise software that learns from its user or owner. Once tasks are learned, the learning agent can then instruct or suggest ways to improve. In this way, the learning agents can assist humans (and possibly other systems) in decision-making processes. For example, the one or more learning agents  110  may store associations representing the relationships of items in a specific context. In this way, the one or more learning agents  110  may be able to answer questions such as, “Why did customer X use my ISR collector last week?” and “What combination of ISR assets are best suited to fulfill a user&#39;s request for information?” The one or more learning agents  110  may be used to learn from past history (e.g., determine how a response to a current information request may be perceived based on feedback from users receiving responses to similar information requests). Based on this type of learning, the one or more learning agents  110  may propose traditional and non-traditional combinations of assets that have a high probability of producing an intelligence product that is suitable and satisfies the user&#39;s request for information. Aspects of the one or more learning agents  110  are described in more detail with respect to  FIGS. 5A-5D .  
         [0019]     The user device application  106  may further include one or more programmable mobile objects  112  (described in more detail with respect to  FIGS. 6A-6C ) that can be customized to a particular user request for information and then used to seek and extract information from a community of available assets  130  and/or resources  116 . In some embodiments, the one or more mobile objects  112  comprise autonomous programs that carry user-programmed intent and desires used to accomplish tasks. For example, the one or more mobile objects  112  may each employ a type of intelligence model to serve as a basis for its autonomy, and may act as an “automated customer representative,” looking for information that may help a user get the knowledge that he or she needs. In some embodiments, a mobile object  112  may migrate from one machine/device to another machine/device within community of available assets  130  and/or resources  116  (preserving its own state so that it can continue where it left off).  
         [0020]     In some embodiments, via a publish/subscribe environment  114 , the one or more mobile objects  112 , via a gateway/wrapper  115  may access aspects of the community of available assets  130  and/or resources  116  to find solutions to user requests. The community of available assets  130  and/or resources  116  may itself comprise components of various autonomous systems (e.g., a “system of systems”) that have been configured in accordance with a platform of protocols, processes, and common core services that permit stand-alone or web-based applications to submit, discover, and share information. For example, in a military/defense context, the community of available resources  116  may comprise National Security Agency (NSA) resources, National Ground Intelligence Center (NGIC) resources, National Military Intelligence Collection Center (NMIC) resources, Missile and Space Intelligence Center (MSIC) resources, commercial and public information such as news media, websites such as Federation of American Scientists (FAS), Office of Naval Intelligence (ONI) resources, Central Intelligence Agency (CIA) resources, Defense Intelligence Agency (DIA) resources (e.g., human translators and imagery analysts), National Air Intelligence Center (NAIC) resources (e.g., sensors about aircraft like the U-2 or Rivet Joint), etc. The resources may be implemented using database services, information tools retrieval tools, live information services, satellite services, location identification services, and other assets  130 . The gateway  115  provides an interface that allows aspects of legacy systems (e.g., sensors designed and constructed before modern network technology was available) to communicate with other entities in the community of available assets  130  and/or resources  116 .  
         [0021]     In some embodiments, aspects of the community of available assets  130  and/or resources  116  may be configured in accordance with the publish and subscribe environment  114 , which provides reliable and scalable information sharing services. Accordingly, components associated with the community of available assets  130  and/or resources  116  may provide services for publish, subscribe, query, control, etc., using a common data format (e.g., XML) or similar formatted computer message formats. Integration solutions may enable both new and old applications to participate and share information by allowing data to be submitted and routed automatically to any users and applications that need it. For example, integration solutions may employ an extensible Message-Oriented-Middleware framework. Communications via the publish and subscribe framework may be further facilitated via various gateway/wrapper techniques  115  that establish a gateway or wrapper around original input and output interfaces.  
         [0022]     While some of the various components described above are described as components of the user device application that access community of available assets  130  and/or resources  116  via publish/subscribe services, other implementations may be possible. For example, rather than residing on a user device application, any one or more of the components involved in handling user requests for information may reside on one or more server computers that provide web-based access to the user devices ( 102  and  104 ). Other types of implementations may also be possible (such as distributed environments, where tasks or modules are performed by remote processing devices that are linked through a communications network).  
         [0023]     As shown, other components of the integrated intelligence environment  100  may include one or more requirements databases  118 , a mission management server  120 , a request/entry tracking server  122 , a workflow management server  124 , etc. These components may include facilities that can be used to track and implement features of the integrated intelligence environment at a system management level (e.g., in contrast to an individual user level).  
         [0024]     The integrated intelligence environment  100  may also include a database of historical records  126  that stores information relating to previous requests for information and how they were addressed within the integrated intelligence environment  100 , as well as an optimizer component  128  that provides one or more optimization methodologies for assessing the value of a given aspect of the integrated intelligence environment. For example, initially, the one or more learning agents  110  may be used to filter a large list of possible solutions (or knowledge chains) to a reasonable size. The results may then be fed into an optimization algorithm associated with the optimizer component  126  that evaluates the opportunity cost associated with using a given resource or asset in a given situation (e.g., the cost in terms of an opportunity foregone—and the benefits that could be received from that opportunity). In this way, the optimizer component  128  may be used to maximize user satisfaction while minimizing total resources used by the integrated intelligence environment  100 . Aspects of the optimizer component  128  are described in more detail with respect to  FIG. 7 .  
         [0025]      FIG. 2  is a data diagram showing an example of information associated with a user request for information  200 , which may be provided by a user as input to the integrated intelligence environment  100  of  FIG. 1 . The request for information may include multiple items of information including profile information  202 , which relates to a user who is submitting the request, and request information  204 . For example, the profile information may include identity information for the user, geographic location information associated with the user, a priority level determined by the user (e.g., relating to what task they are trying to complete), information location (e.g., an IP address), a list of resources available to the user (e.g., computer, satellite access, etc.), connectivity information associated with the user (e.g., available bandwidth, etc.), etc. Besides individual information users, this concept may also be extended to other entities (e.g., intelligence centers, agencies, collection assets, major decision makers, etc.).  
         [0026]     The request information  204  may include a description of the information needed, a specified date/time that the information is needed, the utility of the information (e.g., why the user needs the information), an indication of a person who will be an end user of the information (may be different than the requesting user), an indication of the location to where the information should be delivered, an indication of any queries related to the requested information, an indication of how reliable the information needs to be, an indication of fidelity for the information, etc.  
         [0027]     In some embodiments, the information associated with the request  200  is received via a user interface (such as the user interface  108  of  FIG. 1 ) and, possibly, via the use of one or more learning agents (such as the learning agents  110  of  FIG. 1 ). In the illustrated embodiment, the request  200  is translated into an XML format, although other formats may be used.  
         [0028]      FIG. 3  is a flow diagram showing a high level process flow  300  associated with the integrated intelligence environment of  FIG. 1 . The high level process flow may be implemented using one or more aspects of the integrated intelligence system. At block  301 , aspects of the integrated intelligence system receive a request for information from the user, such as the request  200  depicted in  FIG. 2 . At block  302 , aspects of the integrated intelligence environment find existing information or generate new information from available assets. For example, learning agents and/or mobile objects may determine whether similar requests for information have been placed, and whether solutions to such requests are already available. If no existing solutions are available, the mobile objects (in conjunction with optimization techniques) may seek and find new information from assets available within a community of available assets and/or resources associated with the integrated intelligence system (such as the resources  116  and assets  130  of  FIG. 1 ). At block  303 , aspects of the integrated intelligence system deliver requested information to the user.  
         [0029]      FIGS. 4A and 4B  are flow diagrams showing an example of a routine  400  for processing an information request in the integrated intelligence environment, such as the user request for information of  FIG. 2 . The routine  400  may be performed by several aspects of the integrated intelligence environment, including but not limited to learning agents, mobile objects, and optimization components. At block  401 , the routine  400  receives a user request for information (e.g., via a user interface and/or learning agents). This user request may contain detailed information about the nature of the requests, as well as other information (e.g., information about the user, etc.). At block  402 , the routine  400  translates the received request into a format (e.g., a standardized format) that relevant aspects of the integrated intelligence environment can handle (e.g., Extensible Markup Language (XML)).  
         [0030]     At block  403 , the routine  400  causes mobile objects to search/mine existing intelligence resources to determine if a solution already exists in response to the request. For example, the mobile objects may search intelligence products available on a secure intelligence community intranet (e.g., imagery or scientific/technical intelligence studies). The learning agents associated with the routine  400  may search a database of historical records regarding past user requests, such as the database  126  of  FIG. 1  to evaluate previous user requests. If, based on an. examination of past requests and their solutions, the routine  400  determines that a solution to the current request already exists (decision block  404 ), the routine  400  continues at block  405  (where data or a pointer to data is delivered to the user) before ending. If, however, the routine  400  determines that a solution does not currently exist, the routine  400  continues at block  406 , and provides one or more options for the user to proceed. For example, the user may have an option to refine the request, continue searching for existing solutions, stop processing, generate a new solution, etc. At decision block  407 , if the user has selected an option to generate a new solution, the routine  400  continues as illustrated in  FIG. 4B . The other options associated with block  406  are not described in detail, as they could easily be implemented by one skilled in the art.  
         [0031]     Referring to  FIG. 4B , the routine  400  may proceed with generating a new solution for the user&#39;s requests, which can be in the form of a knowledge chain. Accordingly, at block  408 , the routine  400  derives possible knowledge chains from an infosphere (e.g., a publish/subscribe environment) containing descriptions of assets that may potentially satisfy/solve the user&#39;s request. For example, the learning agents may examine past history to generate a list of one or more information sources from which the information may be gathered. In addition, generating knowledge chains may also involve the use of intelligent processing and querying capabilities. In particular, one or more mobile objects may be sent out within the infosphere to gather relevant information from assets that form such knowledge chains. For example, the mobile objects may gather information about the current availability and/or capability of select assets. In some embodiments, assets may advertise their availability and capability to the mobile objects through a publish and subscribe networking environment.  
         [0032]     At block  409 , the routine  400  temporarily stores knowledge chains under consideration. At block  410 , the routine  400  optimizes allocation of resources associated with knowledge chains, to determine which of the available knowledge chains are most responsive to the request. At decision block  411 , if no suitable knowledge chains are identified as optimal, the routine  400  proceeds at block  415 , where the routine  400  notifies the user accordingly and further solutions are sought by the learning agents in conjunction with the mobile objects. If, however, at decision block  411 , at least one suitable knowledge chain is identified, the routine  400  continues at block  412  where the routine  400  decomposes the identified knowledge chains and forwards individual tasks to individual assets identified within the knowledge chain, so each asset can perform its respective task in furtherance of a solution that is responsive to the request.  
         [0033]     At block  413 , the routine  400  formats information returned by each asset to create a finished information product and delivers it to the user. At block  414 , a feedback loop is initiated when the routine  400  gathers and records user feedback regarding the user&#39;s satisfaction with the finished information product. In some embodiments, this information may then be used as part of optimization (e.g., block  410 ).  
         [0034]      FIGS. 5A-5D  are display diagrams showing example user interface features and functionality associated with a learning agent of the integrated intelligence environment. In particular,  FIGS. 5A-5C  show aspects of a screen or view  500  where information may be exchanged between a user and the learning agent.  FIG. 5A  highlights an Information Request Details area  502  in which a user may describe his or her request. In the illustrated example, the request relates to identifying enemy aircraft in a specified region. After filling in the appropriate information in the Information Request Details area  502 , the user may execute the request by selecting a Launch Info Request button  504 . The results of launching this request are shown in  FIGS. 5B-5D .  
         [0035]      FIG. 5B  highlights a proposed knowledge chain area  506 , where the learning agent provides a listing of possible available knowledge chains (e.g., as collected by one or more mobile objects—described in more detail with respect to  FIGS. 6A-6C ) that, based on feedback from past information requests, may have a probability of satisfying the user&#39;s request. As soon as it becomes available, aspects of a selected solution  508  may be displayed in a chain details area  510 . In addition,  FIG. 5C  highlights aspects of a completed learning agent request, including an area displaying Chosen Knowledge Chain Details  512 , an area showing a Finished Intelligence Product Based on Request  514 , and a negative/positive feedback tool  516  that allows the user to submit feedback relating to how successful the user found the provided solution to his or her request.  FIG. 5D  illustrates a set of user feedback information  518  as collected by the learning agent. This information may be used, for example, by optimization algorithms, as described with respect to  FIGS. 4B and 7 . In this way, feedback can be used to determine how to best to solve future requests.  
         [0036]      FIGS. 6A-6B  are display diagrams showing sample user interface features associated with a customized mobile object of the integrated intelligence environment of  FIG. 1 . For example, the mobile object may be a programmed software object that is configured to be sent out to retrieve information from remote systems (e.g., through the use of queries and other information retrieval means). The information retrieved by the customized mobile object may include data from databases, information in HTML form (e.g., from web pages), information in XML form, text information (e.g., a document prepared by a human), video information, graphical information, audio information, or any other type of information available via the infosphere. As shown in  FIG. 6A , in some embodiments, a mobile object may be configured (either automatically or at least partially by a user) to seek assets/resources within the infosphere for building knowledge chains. This may be done by building specifying various fields of information (e.g., Customer Profile  602 , Lifespan of Mobile Object  604 , Description  606 , Domain  608 , Side  610 , Information Types  612 , Location of Interest  614 , etc.) to build a query or by other means. These various fields of information may vary depending on the customer profile or other factors, and may be customized to best meet customer needs. After specifying the various fields of information, the user may launch the mobile object by selecting a Launch mobile Object button  616 . As shown in  FIG. 6B , the mobile object may autonomously search for information of interest to its owner, either notifying the owner that the information does not exist or delivering the information, such as in query results  618 . Where possible, the mobile object may automatically display retrieved information  620  (e.g., information from the Federation of American Scientists Internet site).  
         [0037]      FIG. 7  is an information diagram showing examples of user requests for information and multiple information asset options for each, in accordance with an optimization scheme. The diagram (which is intended for illustrative purposes only) shows various types of information that may be provided as input with respect to an optimization algorithm. For example, this input information may include customer information  702 , which indicates the source of the request; need information  704 , which provides an indication of what the requested information is needed for (for example, an Army Battalion Commander wants to know the presence and location of enemies within  100  meters of their current location); priority information  706 , which provides, for example, a numerical value indicating priority (e.g., urgent, semi-urgent, not urgent, etc.); utility information  707 , which provides an indication of the importance of the requested information in the context of mission needs) and a listing of several potential information assets  708  (e.g., ScanEagle, Predator, Video Analysis Team, Rivet Joint, U-2, ELINT Analysis Team, Imagery Analysis Team, Delta Force, Satellite ELINT, etc.)  
         [0038]     During collection of knowledge chain information (as shown for example, in block  408  of  FIG. 4B ), information about the availability and capability of potential assets is collected (e.g., by mobile agents). The optimization scheme may the use this information to select a “best” solution from among one or more options, or at least select a solution that has some probability of satisfying the user&#39;s request for information. For example, the available assets in the Army Battalion Commander&#39;s area of interest include a ScanEagle UAV, a Predator UAV, an Army Delta Force platoon, and a Video Analysis Team (as indicated by the numerical values presented in row  710 ). Examples of capabilities for the assets provided in the example of Army Battalion Commander include sensors onboard, mission availability, geographic location, processing capabilities, bandwidth availability, etc. Other examples (not shown here) included radar transmitter, receiver, fire control, launchers, weapons, etc. Separating previously integrated platforms into individually addressable assets and capabilities (each possibly assigned its own unique IP address) allows for a mix-and-match of capabilities across multiple systems and gains substantial efficiency compared to the current ISR systems.  
         [0039]     Based on the availability and capability information, and on feedback obtained by providing solutions to requests for information in the past, an intelligent software agent (or the like) may propose a list of possible combinations of assets that could possibly solve the customer&#39;s information request. In some embodiments, these knowledge chains are proposed using historical records of how well similar information requests were answered using specific assets and the associated satisfaction of the customers. For example, the Army Battalion Commander&#39;s request for information could be addressed in the following ways: 
        Proposed Knowledge Chain #1 (Estimated Probability of meeting customer&#39;s needs is 0.8): ScanEagle UAV takes a video→video is processed by Video Analysis team and target coordinates are derived.     Proposed Knowledge Chain #2 (Estimated Probability of meeting customer&#39;s needs is 0.74): Predator UAV takes a video→video is processed by Video Analysis team and target coordinates are derived.     Proposed Knowledge Chain #3 (Estimated Probability of meeting customer&#39;s needs is 0.65): Delta Force platoon does reconnaissance of area→Delta Force platoon derives target coordinates.        
 
         [0043]     The numerical values under the various assets may indicate the “opportunity cost” of using an asset/resource, which may be a value based on the timeliness of the need, availability of mechanisms to collect, process and exploit information associated with the asset, demand on the asset from other users, and any perturbations that assigning this asset may cause. The result may be a near real-time optimization that can be used across the integrated intelligence environment to assign assets in a way that maximizes customer satisfaction while minimizing total system resources used, provides improved overall customer satisfaction, provides timely solutions, etc. In this example, the Army Battalion Commander&#39;s request  710  is one of three requests that have yet to be completed (along with request  716  and  724 ) because the opportunity costs involved are too high relative to the priority and utility factors. Accordingly, these requests may need to be resubmitted. In contrast, requests  712 ,  714 ,  718 ,  720 ,  722 , and  726  have been addressed (as shown by the highlighted opportunity cost factors in their respective columns).  
         [0044]     From the foregoing, it will be appreciated that specific embodiments of the invention have been described herein for purposes of illustration, but that various modifications may be made without deviating from the spirit and scope of the invention and aspects of the invention described in the context of particular embodiments may be combined or eliminated in other embodiments. For example, while certain embodiments describe the use of sensor networks operating in a military environment, the invention may be implemented in the context of other environments where a need for surveillance is established.  
         [0045]     Although advantages associated with certain embodiments of the invention have been described in the context of those embodiments, other embodiments may also exhibit such advantages. Additionally, none of the foregoing embodiments need necessarily exhibit such advantages to fall within the scope of the invention. Accordingly, the invention is not limited except as by the appended claims.