U.S. patent application number 12/796857 was filed with the patent office on 2010-09-30 for methods and apparatus for optimal resource allocation.
This patent application is currently assigned to Raytheon Company. Invention is credited to Deepak Khosla, Thomas S. Nichols.
Application Number | 20100250319 12/796857 |
Document ID | / |
Family ID | 38605899 |
Filed Date | 2010-09-30 |
United States Patent
Application |
20100250319 |
Kind Code |
A1 |
Khosla; Deepak ; et
al. |
September 30, 2010 |
METHODS AND APPARATUS FOR OPTIMAL RESOURCE ALLOCATION
Abstract
Method and apparatus to automatically allocate and schedule
weapon systems to threats for maximizing an engagement objective.
In one aspect, methods and systems maximize threat killed. In
another aspect, methods and systems maximize asset survival against
threats. The methods and apparatus considers temporal and resource
constraints such that weapons systems are able to engage threats
assigned to them.
Inventors: |
Khosla; Deepak; (Camarillo,
CA) ; Nichols; Thomas S.; (La Habra, CA) |
Correspondence
Address: |
RAYTHEON COMPANY;C/O DALY, CROWLEY, MOFFORD & DURKEE, LLP
354A TURNPIKE STREET, SUITE 301A
CANTON
MA
02021
US
|
Assignee: |
Raytheon Company
Waltham
MA
|
Family ID: |
38605899 |
Appl. No.: |
12/796857 |
Filed: |
June 9, 2010 |
Related U.S. Patent Documents
|
|
|
|
|
|
Application
Number |
Filing Date |
Patent Number |
|
|
11279824 |
Apr 14, 2006 |
7757595 |
|
|
12796857 |
|
|
|
|
Current U.S.
Class: |
89/1.11 ;
705/348 |
Current CPC
Class: |
F41G 7/007 20130101;
G06Q 10/06 20130101; F41G 3/04 20130101; G06Q 10/067 20130101 |
Class at
Publication: |
705/8 ;
705/348 |
International
Class: |
G06Q 10/00 20060101
G06Q010/00; G06Q 50/00 20060101 G06Q050/00 |
Claims
1. A method comprising: automatically allocating and scheduling
resources to tasks for optimizing engagement objectives by:
modeling engagement resource and temporal constraints of the
resources such that the resources are allocated to tasks that the
resources are able to engage.
2. The method according to claim 1, wherein the modeling of
engagement resource and temporal constraints occurs during the
allocating to determine when to deploy the allocated resources.
3. The method according to claim 1, further including optimizing
engagement times of the resources.
4. The method according to claim 1, further including using a
genetic algorithm having an engagement objective of optimizing the
allocation of the resources to the tasks.
5. The method according to claim 4, further including using
simulated annealing, given the allocation of the resources to the
tasks, to identify an optimal or near optimal schedule of resource
engagements to maximize expected kills or assets saved.
6. The method according to claim 4, further including using a
heuristic algorithm for temporal optimization of the engagement
objective.
7. The method according to claim 1, further including determining
whether active ones of the tasks can be can be engaged by at least
one of the resources, and if not, determining a resource-task
pairing that maximizes at least one objective function.
8. The method according to claim 1, wherein the resources include
weapons systems and the tasks include targets.
9. The method according to claim 1, further including processing
multiple objective functions.
10. The method according to claim 9, further including using a
genetic algorithm to process the multiple objective functions.
11. The method according to claim 10, further including using a
pareto-optimal genetic algorithm to simultaneously solve the
multiple objective functions.
12. A method, comprising: generating an initial population of
option configurations for assignment of weapons systems to threats;
evaluating a fitness of the option configurations; converting the
option configurations to weapon assignment tables (WAT);
determining the fitness of the WATs; and determining if temporal
and resource constraints are satisfied for at least one of the
WATs.
13. The method according to claim 12, wherein the at least one WAT
has the highest total threat value.
14. The method according to claim 12, further including using a
genetic algorithm to generate the initial population and
iteratively generate additional populations.
15. The method according to claim 12, further including using a
heuristic to increase computation speed.
16. A method, comprising: assigning resources to threats;
determining if constraints are satisfied for the resource-threat
assignments; and maximizing, for the resource-threat assignment
that met the constraints, a first objective function.
17. The method according to claim 16, further including maximizing
the first objective function and a second objective function.
18. The method according to claim 17, further including processing
the first and second objective functions simultaneously.
19. The method according to claim 18, further including using a
pareto-optimal genetic algorithm.
20. A system, comprising: a resource allocation and scheduling
module to automatically allocate and schedule resources to tasks
for optimizing engagement objectives by modeling engagement
resource and temporal constraints of the resources such that the
resources are allocated to tasks that the resources are able to
engage.
21. The system according to claim 20, wherein the modeling of
engagement resource and temporal constraints occurs during the
allocating to determine when to deploy the allocated resources.
22. The system according to claim 20, further including optimizing
engagement times of the resources.
23. The system according to claim 20, wherein the resource
allocation and scheduling module determines whether active ones of
the tasks can be can be engaged by at least one of the resources,
and if not, determines a resource-task pairing that maximizes at
least one objective function.
24. An article, comprising: a storage medium having stored thereon
instructions that when executed by a machine result in the
following: automatically allocating and scheduling resources to
tasks for optimizing engagement objectives by: modeling engagement
resource and temporal constraints of the resources such that the
resources are allocated to tasks that the resources are able to
engage.
25. The article according to claim 24, wherein the modeling of
engagement resource and temporal constraints occurs during the
allocating to determine when to deploy the allocated resources.
26. The article according to claim 24, further including
instructions for optimizing engagement times of the resources.
27. The article according to claim 24, further including
instructions for using a genetic algorithm having an engagement
objective of optimizing the allocation of the resources to the
tasks.
28. The article according to claim 27, further including
instructions for using simulated annealing, given the allocation of
the resources to the tasks, to identify an optimal or near optimal
schedule of resource engagements to maximize expected kills or
assets saved.
29. The article according to claim 24, further including
instructions for determining whether active ones of the tasks can
be can be engaged by at least one of the resources, and if not,
determining a resource-task pairing that maximizes at least one
objective function.
30. The article according to claim 24, wherein the resources
include weapons systems and the tasks include targets.
Description
CROSS REFERENCE TO RELATED APPLICATIONS
[0001] The present application a Continuation Application of and
claims the benefit of U.S. patent application Ser. No. 11/279,824
on Apr. 14, 2006, which is incorporated herein by reference in its
entirety.
STATEMENT REGARDING FEDERALLY SPONSORED RESEARCH
[0002] Not Applicable.
BACKGROUND
[0003] As is known in the art, systems can evaluate threats to be
targeted by one or more weapon systems. Known target-weapon pairing
systems do not model weapon resource and temporal constraints when
suggesting or making allocation decisions. Thus, when multiple
threats with overlapping engagement time windows are assigned to a
weapon system, there is a possibility that the weapon system may
not have sufficient time-critical resources to engage these
threats. Even if the weapon system informs the engagement operator
about its failure to engage one or more threats and the operator
then selects the next ranked weapon system for these threats, this
may result in unnecessary delay in engaging threats. In addition,
in a battle-space with a large number of threats, there is still a
small possibility that the second and even lower ranked weapon
system chosen by the operator may run into similar resource
limitations. In such a case, some threats may not be addressed.
[0004] In a typical battlefield situation at any time, there may be
multiple threats headed towards valuable defended assets and
multiple weapon systems available to counteract these threats. In
battle management, a centralized decision-making process allocates
specific threats to specific weapon systems. Such schemes usually
begin by predicting the destructive effect of the incoming threat
against defended assets. They also consider the effectiveness of
the available weapon systems in neutralizing any given threat which
include factors such as threat type and time-to-intercept. A
typical battle management scheme lists all weapon systems capable
of engaging a threat and ranks them based on their effectiveness in
neutralizing it. The engagement operator then decides which weapon
system to select for a threat based not only on the rank, but
additional factors such as weapon inventory and engagement
objective. In a battle-space situation with a large number of
threats and weapon systems, the engagement operator has to analyze
a large number of possible combinations and factors to make the
pairing decision. This is further complicated by rapidly changing
battle-space situations and could result in delay and poor
judgments and decisions. The net result is ineffective battle
management that could directly impact the survivability of the
defended assets. Thus there is a need for methods that could
analyze the vast amount of data and factors to decide the most
effective pairing.
[0005] U.S. Pat. No. 6,497,169 B1, entitled "Method for Automatic
Weapon Allocation and Scheduling Against Attacking Threats," which
is incorporated herein by reference, discloses one such system.
While the '169 patent provides weapon-target pairing and launch
times for small problem sizes, the disclosed system is relatively
slow and may give sub-optimal solutions for larger problem sizes.
In addition this approach cannot be applied to the asset survival
maximization problem because of the assumption of independence of
weapon systems that is true for the threat kill maximization
objective. Other previous attempts that utilize static-weapon
target allocation are also limited in their solutions.
[0006] U.S. Pat. No. 5,404,516 considers scheduling of resources
such as weapons, but uses a scheduling method that is relatively
slow. U.S. Pat. No. 5,992,288 entitled "Knowledge based automatic
threat evaluation and weapon assignment" evaluates threats and,
based on trial-intercept calculations, determines which weapon
systems can engage it and ranks them based on their effectiveness
in neutralizing a threat. The algorithm selects the best weapon to
neutralize the threat. No optimization across the battlespace is
done.
[0007] U.S. Pat. No. 5,511,218, "Connectionist architecture for
weapons assignment", U.S. Pat. No. 5,153,366, "Method for
allocating and assigning defensive weapons against attacking
weapons," and the '516 patent, all of which are incorporated herein
by reference, are applicable to the static target-weapon pairing
problem. However, as discussed above, none of them optimize the
deployment or launch time of the weapon system.
BRIEF DESCRIPTION OF THE DRAWINGS
[0008] The foregoing features of this invention, as well as the
invention itself, may be more fully understood from the following
description of the drawings in which:
[0009] FIG. 1 is a block diagram of an exemplary system to
automatically allocate and schedule resources to threats in
accordance with embodiments of the invention;
[0010] FIG. 2 is a pictorial representation showing a threat that
can be addressed by the system of FIG. 1;
[0011] FIG. 3 is a flow diagram showing an exemplary sequence of
steps to implement weapon allocation and scheduling in an exemplary
embodiment;
[0012] FIG. 3A is a flow diagram showing exemplary processing
performed by a weapon allocation and scheduling engine;
[0013] FIG. 4 is a flow diagram showing an exemplary sequence of
steps to implement weapon allocation and scheduling running in a
deterministic mode and/or a heuristic mode in accordance with an
exemplary embodiment; and
[0014] FIG. 5 is a block diagram of an exemplary system on which a
weapon allocation and assignment engine can operate in accordance
with exemplary embodiments.
DETAILED DESCRIPTION
[0015] In general, the invention provides methods and apparatus for
automatically allocating and scheduling defensive weapons against
attacking threats to maximize desired engagement objectives. In one
embodiment, a system addresses not only the weapon-target pairing
problem, but also the optimal launch times of the weapon systems to
meet the desired objectives. In one aspect of the invention, an
algorithm and system maximizes the number of enemy threats killed.
In another aspect of the invention, a set of algorithms with
different speeds and optimality maximizes asset survival against
attacking threats. In a further aspect, an exemplary embodiment
considers temporal and resource constraints such that the weapon
systems can engage threats assigned to them. With this arrangement,
effective battle management is provided under heavy attack
situations that may seem to outnumber weapon resources. In one
particular embodiment, an algorithm is a hybrid genetic type
algorithm that uses a true genetic algorithm and merges it with a
simulated-annealing type and other heuristic algorithms.
[0016] The inventive embodiments provide methods and systems for
automatically allocating and scheduling weapon system to threats
such that battle-space engagement objectives are optimized. One
embodiment computes an optimized allocation and scheduling that can
be made available to the engagement operator as a so-called
just-in-time (JIT) solution. Advantages of exemplary embodiments
include that by modeling engagement resource and temporal
constraints of each weapon system during the optimal allocation
computation process itself, each weapon system is only allocated
threats that it can actually engage with maximal utilization of its
resources.
[0017] While the invention in primarily shown and described in
conjunction with defense and military applications that require
allocation and scheduling of resources to satisfy one or more time
critical objectives, it is understood that the invention is
applicable to environments in which it is desirable to allocate
time-critical resources to optimize one or more objectives, such as
protecting assets. Other exemplary applications include military
planning and dynamic sensor management. In one embodiment,
inventive embodiments can be readily integrated into existing
systems, such as by adding software modules.
[0018] FIG. 1 shows an exemplary battle management system 10 having
target-weapon pairing in accordance with exemplary embodiments of
the invention. The system 10 receives target track data from a
track file 12. A weapon model module 14 models supported weapon
systems for optimizing weapon system assignments. The weapon model
module 14 generates weapon commitments and provides weapon status
information. A threat evaluation module 16 and a battle space
analysis module 18 receive the target track data and weapon
information and provide information to a target-weapon pairing
mechanism 20, which uses the target track data and weapon model
information to generate weapon system commitments, as described in
detail below. Optionally, a weapon engagement operator 22 can
control weapon assignments and provide other functions.
[0019] Before describing exemplary embodiments of the invention in
detail, some introductory material is provided. Force optimization
refers to the problem of threat engagement and dynamic
weapon-target allocation (WTA) across the force. The goal is to
allocate and schedule defensive weapon resources over a given
period of time so as to achieve certain battle management
objectives subject to resource and temporal constraints. Dynamic
WTA involves optimization across both resources (weapons) and time.
This problem is referred to as the weapon allocation and scheduling
problem (WAS). As discussed in detail below, inventive embodiments
address the WAS problem for two separate battle management
objectives: (1) Threat Kill Maximization (TKM), and (2) Asset
Survival Maximization (ASM). These objectives can be referred to as
WAS-TKM and WAS-ASM, respectively.
[0020] Both WAS problems are NP-complete problems and belong to a
class of multiple-resource-constrained optimal scheduling problems.
While the above objectives appear to be intuitively similar from a
battle management perspective, the two optimal scheduling problems
are different in their complexity.
[0021] In one embodiment, a hybrid genetic algorithm (GA) combining
a traditional genetic algorithm and a simulated annealing-type
algorithm is used for solving these problems. The hybrid GA
approach uses a simulated annealing-type heuristic to compute the
fitness of a GA-selected population. This also optimizes the
temporal dimension (scheduling) under resource and temporal
constraints and is significantly different for the WAS-TKM and
WAS-ASM problems. The inventive embodiments provide schedules that
are near optimal in short cycle times and have minimal perturbation
from one cycle to the next.
[0022] In general, the inventive methods and apparatus enable
automatically allocating and scheduling defensive weapons against
attacking threats to maximize an engagement objective.
[0023] FIG. 2 shows an exemplary battle space analysis for a threat
50, shown as a missile. After detection and tracking, a trajectory
52 and impact point 54 is determined. For each point along the
trajectory, various weapon systems 56 are evaluated to determine if
the threat can be intercepted. If constraints are satisfied,
feasible intercept points are identified. For example, a first
weapon system 56 can have a feasible intercept interval between
first and second times T1, T2 and a second weapon system can have a
feasible intercept time between third and fourth times T3, T4.
Where multiple weapon system can engage a threat, options can be
ranked.
[0024] Conventional methods and systems to automatically assign
weapons to threats basically assist in or replace the
time-consuming task of manual decision-making. These methods select
the target-weapon pairing that optimizes the engagement objective,
such as maximizing the threat neutralized. Other known techniques
also consider other objectives (such as weapon load balancing,
engaging certain high-payoff threats, etc.) and constraints (such
as weapon inventory). However, none of these methods consider
additional time-dependent resources of the weapon system. In other
words, they only address the static WTA problem that is to
determine the optimal allocation of weapon systems to engage
threats. While some of these approaches have used trial-intercept
calculations to determine the window of engagement to determine a
weapon system's effectiveness against a threat, they do not address
the issue of when to deploy the weapon system against the threat in
this window of opportunity. The deployment aspect of the problem
becomes crucial when the resource requirements are limited and
time-dependent (such as limited maximum guidance capacity, i.e.,
maximum number of interceptors that can be simultaneously
guided).
[0025] Conventional systems using static allocation methods leave
the decision of when to engage threats up to the weapon system.
Thus, they are based on a sequential two-step decision process. In
the first step, the algorithm decides on which threat(s) to assign
to a weapon system based on their effectiveness measures. In the
second step, each weapon system makes its decision about when to
deploy and engage threat(s) assigned to it from the first step.
Since the first step did not model the engagement-time resource
requirements and temporal constraints of the weapon systems, there
is a possibility that a weapon system may have been assigned enough
threats to overwhelm its time-dependent resources. Only when these
threats are assigned to the weapon system and it performs its own
calculations in the second step on when to engage them is it
determined whether or not the weapon is able to engage all these
threats. In such a case, either the weapon system may inform the
engagement operator about its incapability to engage some threats
that would require a re-allocation or some threats may leak
through. Thus, every threat may end up being assigned a weapon
system in these methods, but every threat may not be engaged, as
its assigned weapon system may not have enough resources at
engagement time. This sequential disconnected decision making
process has two disadvantages (1) Since actual weapon resource
requirements have not been modeled in the first step, weapon
systems may end up being assigned more threats than they can
engage, and (2) consequently, there may be engagement delays and/or
leaked threats (sub-optimal engagement).
[0026] In general, threats can be intercepted by a weapon system
over a relatively wide time window. One then has the choice of
engaging the threat as soon as possible or sometime later in this
window of opportunity. Since the launch time, for example of a
missile, is dependent on the chosen intercept time, the guidance
resource requirement for any threat is time-dependent. Thus, by
suitably selecting intercept times for threats, more threats can be
potentially engaged by a weapon system than would be possible if
all threats were chosen to be intercepted at the earliest
opportunity. In other words, this time analysis could result in
better utilization of weapon resources. It could also avoid
assignments where more threats than a weapon system can
simultaneously handle are passed to it. However, this analysis
should be performed as part of the allocation algorithm before the
threats are assigned to a weapon system. Inventive embodiments do
so by modeling the engagement resources and temporal constraints of
each weapon system during the optimal allocation computation
process itself. In one embodiment, the inventive algorithm
overcomes disadvantages of previous approaches by combining the
first and second steps into a single decision step. Thus, it
determines not only which threats to assign to a weapon system but
also when to deploy them (e.g., launch interceptors) so that a
pre-specified engagement objective is optimized. By doing so, each
weapon system is only allocated threats that it can actually engage
with maximal utilization of its resources. By suitably optimizing
the engagement times, one can achieve a more effective battle
management scheme even under heavy attack situations that seemingly
outnumber weapon resources.
[0027] However, combination of the two steps introduces temporal
dimension optimization into the asset allocation problem causing a
combinatorial explosion in the solution space and resulting in a
resource-constrained scheduling problem that can be called Weapon
Allocation and Scheduling problem (WAS). The WAS problem is a
significantly more computationally expensive problem than the
static WTA problem tackled in previous approaches. In addition,
when time is treated as a continuous variable rather than being
divided into finite discrete intervals, the problem becomes a mixed
integer problem (both discrete and continuous variables). Inherent
complexities in the problem of determining a schedule include
limited resources, time windows during which particular activities
must occur, and complex interdependencies of various tasks and
resources. The number of candidate schedules increases
exponentially with the number of threats that need to be engaged.
The WAS problem is the search over the candidate schedules for a
schedule that maximizes cost function while satisfying all
constraints.
[0028] Since one of the objectives is to provide real time weapon
assignment decisions (e.g., update times of at most few seconds),
algorithms seeking exact optimal solutions to the WAS are
impractical because of a combinatorial explosion in the number of
possible allocation strategies. Thus approximate (or heuristic)
algorithms are needed which can find good solutions with
computational efficiency.
[0029] Exemplary embodiments described in detail below include
merging and modifying simulated annealing and genetic algorithms,
both of which are stochastic methods that are relatively simple and
robust and can find the global minimum with a high probability. The
inventive algorithm is a hybrid genetic algorithm that uses a true
genetic algorithm and merges it with a simulated-annealing type
algorithm. The engagement objective in the genetic algorithm is to
optimize the assignment of weapons to targets. Given a set of
targets assigned to a weapon, the simulated annealing algorithm
finds a near optimal schedule of weapon engagements to maximize the
expected kills or assets saved. Inventive embodiments can also
include a novel heuristic measure in the temporal optimization
algorithm that provides a fast, but approximately optimal, solution
with significant reduction in the computational cost. The
allocation and scheduling can also be made available to the
engagement operator as a Just-In-Time (JIT) solution. While the
deployment times calculated by the algorithm guarantee that weapon
resource requirements will not be exceeded (for all weapon
resources that have been modeled), the final decision on when to
deploy and engage threats may be left to the weapon system.
[0030] FIG. 3 shows an exemplary sequence of steps to generate
weapon-target assignments in accordance with exemplary embodiments
of the invention. In step 102, information is read from tables, for
example, to obtain threat and weapon information and engagement
rules for the current battle-space. Information about threats is
contained in a threat table, such as that shown in Table 1
below.
TABLE-US-00001 TABLE 1 Threat table example Threat number Threat
value 11 20 20 65 31 80 42 5 55 95
[0031] A threat is an entity that is considered to be hostile by
the commander and assigned a finite threat value by the threat
evaluation module in a manner known to one of ordinary skill in the
art. Typically a track-file and information about defended assets
are used to evaluate the danger posed by the incoming threats. The
information about incoming threats is usually available in the form
of a track-file. Generally threats are detected by one or more
sensors and additionally fused with other data to identify it as
friendly or hostile. Track information such as position and
velocity is also contained in this track file. Position and value
of defended assets is contained in the defended asset table. This
information is used to determine the danger posed by an incoming
threat. Typically, the threat trajectory is used to predict its
impact point or heading direction. Based on the defended assets in
the neighborhood of the predicted impact point, a value is assigned
to this threat. Thus, threats headed towards important military
assets are assigned a higher threat value. Other factors such as
proximity, time-to-impact, type and expected load of the threat is
also taken into consideration in deciding a threat value. Each
active threat will be represented by a row in the threat table,
where each row will contain the following fields: Threat number,
Threat value. The threat number is a unique identifier, such as a
track number. The threat value will be an integer in the range
0-100, for example, with higher values signifying more damaging
threats. High-payoff threats (HPT) are defined as threats with
threat values exceeding a pre-determined threshold. Engagement of
HPTs could be a high priority in the scheduling process and in some
cases a high enough priority to require them to be engaged even at
the expense of the overall objective function optimality.
[0032] In one embodiment, a battlespace analysis module 18 (FIG. 1)
uses the track file and information about weapon systems to perform
trial-intercept calculations to determine which weapon system can
engage a threat. A weapon system is basically a weapon platform
with one or more launchers and one or more tracking/guidance
sensors. The weapon model used includes weapon system parameters
such as weapon system location, type of interceptor, range of
interceptor, etc. that determine if and when the weapon system will
be able to engage and intercept a specific threat. Weapon systems
that can potentially engage a threat become options for engaging
that threat. The battlespace analysis module 18 generates a table
that lists capable options/ways to engage each active threat. An
option comprises a weapon system and the corresponding earliest and
latest possible intercept time. Since each intercept time
corresponds to a launch-time calculated by the battlespace analysis
module, it is preferred to store the earliest and latest launch
(deployment) times in the option table. Alternatively, intercept
times can be stored directly with a look-up table that gives the
launch time of an interceptor for every intercept time. This
embodiment assumes that the launch times will be in the option
table. Thus, if the weapon system deploys an interceptor anywhere
in this launch time window it will be able to intercept the threat.
In addition, this embodiment assumes that a resource guidance time
parameter will also be provided with each option. This parameter
indicates the time window beginning at launch time during which the
weapon system's ground based sensor needs to guide the interceptor.
Note that other time-dependent resource constraints such as weapon
reload and slew time can be incorporated in the option table as
well. An exemplary option table is shown below in Table 2.
TABLE-US-00002 TABLE 2 Option table example Guidance Earliest
Latest resource Threat Weapon launch launch time Option number
number time time duration weight Phase 11 10 75 95 10 10
Unscheduled 11 20 48 62 10 20 Unscheduled 11 30 50 84 10 30
Unscheduled 20 20 105 125 10 50 Unscheduled 20 40 100 150 10 30
Unscheduled 31 40 80 95 10 30 Unscheduled 42 10 10 30 10 20
Unscheduled 42 30 15 43 10 10 Scheduled 42 40 12 35 10 80
Unscheduled 42 50 12 40 10 65 Unscheduled 55 20 60 90 10 80
Committed
[0033] Each option for a threat is given in one row of the option
table and contains the following fields: Threat number, Weapon
number, Earliest launch time, Latest launch time, Guidance resource
time duration, option weight, and Phase. It is expected that
options for a threat will occupy consecutive rows in the option
table, though a general table can be sorted to correspond to this
format. Options for a threat in the option table meet or exceed a
minimum probability of kill (P.sub.k) for that threat. This implies
that all options for a threat are considered effective against that
threat from the scheduler's perspective. However, each option will
have a weight (range 0-100), with higher weights signifying more
desirable options. These weights are decided based, for example, on
a commander's preference, e.g., weights may be decided based on
probability of kill (P.sub.k) or on maximum range of the weapon.
Whenever possible, the WASE should choose the option with the
highest weight for all threats. Each option will also have a phase,
which indicates the status of the option in the previous cycle
schedule. Exemplary phase values include unscheduled, scheduled,
committed or denied, which are described further below.
[0034] Each of the threats has at least one option or weapon system
that can effectively engage it. Several threats have multiple
options (e.g., Threat number 11 has 3 options, Threat number 42 has
4 options). The earliest and latest launch or deployment time for
each option are given in columns 3 and 4. Column 5 gives the
guidance resource time window for each option. For example, weapon
system 10 can successfully intercept threat number 11 (row 1) if it
is deployed anytime between 75 and 95 sec. Column 5 of Table 2
indicates that if the interceptor were launched at any of the
launch time between 75 and 95 sec, weapon system 10 would need to
commit one of its sensors to guide the interceptor during the first
10 sec of its flight towards threat number 11. Other resource
constraints can be similarly modeled.
[0035] The weapon system status will be indicated with a set of
parameters in the form of a weapon table, such as the illustrative
Table 3.
TABLE-US-00003 TABLE 3 Weapon Table example Max. Number Begin End
Begin End Weapon Interceptor guidance currently time- time- time-
time- number inventory capacity guided 1 1 2 2 10 12 5 0 20 15 5 2
20 30 17 37 30 3 9 1 12 22 40 30 9 0 50 10 9 1 15 35
[0036] The weapon table contains information about the weapon
inventory and how many threats are currently being engaged. Weapon
systems within the force will not be static since weapons can move
on the battlefield, change inventory information, update
operational status at any time. Parameters for each weapon system
will be described in one row of the weapon table, where each row
contains the following fields: weapon number, number of available
interceptors, maximum guidance capacity, number of currently guided
missiles, and {begin time window, end time window}. Additional
resource capacities can also be included in the table. Note that
the {begin time window, end time window} parameters will be given
for each interceptor currently being guided by the weapon system.
It is assumed in this embodiment that the reload time of a weapon
system is zero. Thus, all weapon systems can fire multiple rounds
simultaneously. Launcher reload time is an example of an addition
resource constraint that could be modeled using the method.
[0037] Engagement rules and objective are read from the engagement
rule file. This includes information about the allocation strategy
(e.g., shoot-shoot-look vs. shoot-look-shoot, salvo attack, load
balancing), different objectives that need to be met such as
maximize threats neutralized, always engage HPTs, etc.
[0038] Referring again to FIG. 3, in step 104 weapon allocation and
scheduling is computed. The system determines whether or not all
active threats in the threat table can be engaged at some future
time based on current battlespace conditions and resource usage. If
all threats cannot be engaged, it determines the weapon-threat
pairing that maximizes some objective function. The objective
function is based on the engagement rules and objectives. It could
be either a single objective function or multiple objective
functions. As an example of multiple objective functions, one
engagement objective could be to engage maximum total threat value,
while a second simultaneous objective could be to maximize the
weights (probability of kill or other measure) of the options in
the weapon-threat pairing. The engagement rules and weapon systems
used also govern other features and constraints of the problem,
such as allocation strategies (shoot-shoot-look vs.
shoot-look-shoot, salvo attack, load balancing) and time-dependent
resource constraints (weapon reload and slew time, guidance
requirements, etc.). The illustrative embodiment describes a
"shoot-look-shoot" scheme where only one weapon system is assigned
to a threat to engage it at some future time. Those of ordinary
skill in the art will understand that the proposed invention can be
easily extended to "shoot-shoot-look" and other strategies. The
illustrative embodiment also assigns or selects only one option or
weapon system for each threat (no salvo attack), though multiple
threats may be assigned to a single weapon system. Other
embodiments can be readily applied to salvo attacks with minor
modifications to the objective function. In addition, the only
time-dependent resource modeled in this particular embodiment is
the guidance resource with its associated capacity and constraints.
Other resource constraints can be incorporated in the same
framework.
[0039] In order to arrive at the optimal target-weapon pairing, the
algorithm models the resource and temporal constraints of the
weapon system in step 104a. It uses these constraints to determine
the optimal launch times for each threat in the selected threat
subset as well. In other words, the algorithm computes the
engagement schedule for each weapon system that specifies when each
threat should be engaged. This combination of weapon-threat pairing
and launch times is the output from 104. The output pairing and
schedule satisfies all modeled temporal and resource constraints of
the battlespace. Temporal constraints are that the launch time for
engaging the threat by a weapon system must be between the earliest
and latest launch times listed in the option table. Resource
constraints are that 1) the total number of threats assigned to
each weapon system should not exceed the number of available
interceptors at each weapon system (weapon inventory resource) and
2) the number of simultaneously guided interceptors (function of
launch times) required to engage threats assigned to each weapon
system should not exceed its maximum guidance capacity (weapon
guidance resource).
[0040] The optimal weapon allocation and schedule is passed to the
optional engagement operator in step 106. The engagement operator
can take action as desired, as described more fully below.
[0041] One aspect of the present invention is that the output from
step 104 is a new instantiation of the input option table read in
step 102. The fields altered in step 104 in the option table are
option phase and begin launch time. The option phase indicates the
status the options or weapon systems for each threat. The following
phases are used:
TABLE-US-00004 Unscheduled Threat is either new or has not yet been
paired with this weapon system (option not selected). Scheduled
Threat has been paired with a weapon system (option selected) and
presented to but the weapon system has not yet been assigned this
threat for future engagement Committed Threat has been committed to
a weapon system (option committed) Denied Option has been rejected
by the engagement operator
[0042] Note that only threats that are not currently engaged or
killed are listed in the threat table and option table. If in step
104 there was a pairing of a threat with one of its weapon systems
(options) as part of its optimal allocation and scheduling, then
the phase of that option becomes scheduled. The begin launch time
value of that option row is changed to the optimized launch time
computed by 104 as well. Note that in this embodiment each threat
is assigned to either none or only one option (weapon system).
Thus, only one option per threat can be in the scheduled or
committed phase and all other options will be in the unscheduled or
denied phase.
[0043] The role of the optional engagement operator in step 106 is
to use the allocation and schedule output (modified option table)
to determine the time that a weapon system should be committed to
its assigned threat(s). The engagement operator may also decide
whether or not to accept the assignment. Since the allocation is a
plan for the future, several threats may still be a long time away
from reaching the engagement zone of the defensive weapons they
have been assigned to. For these threats, the operator may simply
wait until the launch time approaches and then commit the weapon
system to the threat. The operator can take a "wait and see"
approach in order to allow flexibility in the schedule. If the
threat changes course, a different weapon system may need to be
assigned and ultimately tasked. Thus, the operator could wait for
some time before committing a weapon system (passing threat number
and suggested launch time message to the weapon system). During
this period, the option is in the scheduled phase. After the weapon
system has been informed, the option phase is changed to committed.
The operator may additionally deny certain weapon assignments in
case of changes in engagement rules, weapon status, etc., during
the time taken by 104 to find the optimal allocation. Thus the
option table could have a mixture of unscheduled, scheduled,
committed and denied options. Note that as soon as a weapon system
deploys its interceptor to engage a threat, the weapon system
informs the source creating the threat table to remove this threat
from the threat table. This threat is not considered active and not
included in any future planning and scheduling. However, if
feedback about a threat status is received and the threat was not
neutralized, then it may be put back in the threat table by the
source creating the input table. The WASE in step 104 will then do
the planning for this threat (as if it were a new threat). Thus a
currently engaged threat will not show up in a threat or option
table. However, if an interceptor is currently being guided towards
the threat by a weapon sensor, then the guidance resource timings
will be included in the weapon table.
[0044] Depending on the rules of engagement, the engagement
operator could take a less active role in approving engagements or
not role at all. For example, the engagement operator could retain
a capability to override engagement decisions made by the
algorithm, but allow the algorithm to directly commit weapons for
engagements that are not overridden.
[0045] In step 108, commit messages are received by the weapon
systems. The weapon systems then prepare to engage the threats
assigned to them. Step 108 includes engaging the threats and
updating the weapon table.
[0046] The sequence of steps in FIG. 3 is an iterative process that
is executed at either a fixed rate or whenever the battlespace
situation has changed enough (e.g., new threats, change in number
of available weapon systems, change in engagement tactics, etc.).
When the algorithm is executed, the WASE keeps the previous
assignment and schedule in perspective while arriving at or
re-planning a new assignment and schedule. One aspect of the
invention is in its capability of smart dynamic re-planning with
minimal retasking. Minimal retasking implies that the changes to
previously planned assignment and schedule will be minimal so as to
not cause reassignments and rescheduling on every run that can be
both confusing and impractical. In an exemplary embodiment, minimal
retasking is achieved by use of the option phase field.
[0047] Each time re-planning needs to be performed, the system
begins processing in step 102 by reading the threat, option and
weapon table. As described above, the phase of the option is listed
in the option table (see Table 2). In the first run through the
system, all options will be in unscheduled phase. In later runs, if
the threat is a new threat or it has not been paired with any
weapon, then all of its options will be in the unscheduled phase.
If an option was selected in the previous run (by WASE) and the
engagement operator did not commit it (as launch time was too far
into the future), then the option phase will stay scheduled.
However, the battle-space analysis module will be allowed to
re-compute the intercept time windows and change the begin and
launch time values in creating the option table. If the engagement
operator commits an option, then the phase of the option will be
changed to commit. In this case, the battle-space analysis module
will not re-compute or change the launch time fields in the option
table for this option. Similarly, if the operator denies this
option, then the phase will be changed to denied. The option phase
is used to determine the re-planning algorithm based on the
engagement rules and commander's guidance.
[0048] An example of the engagement rules could be as follows:
Scheduled options can be re-planned (changed to unscheduled) if a
better objective can be attained. Thus, if new threats have
appeared and the overall engagement objective can be optimized by
reassigning weapons previously scheduled for older threats to new
threats, then re-planning is allowed. In other words, if an option
is scheduled for a threat, then that threat can be either not
assigned any weapon (all options unscheduled) or assigned to a new
weapon (different option scheduled) in the new schedule. Thus,
scheduled options are treated similarly to unscheduled options from
are-planning perspective.
[0049] Committed options cannot be re-planned, unless specified
differently in the engagement rules. When an option is committed,
it means that the weapon system has been instructed by the operator
to engage this threat and the weapon system is preparing to engage
it. Generally, once a weapon system has been committed to a threat,
it should be allowed to go ahead unless extreme conditions arise
(specified as an engagement rule). An example of such a condition
is if an existing or a new threat becomes a high-payoff threat,
this weapon system is the only one that can effectively engage and
neutralize it, and the weapon system cannot engage both threats. In
such a case, changing the engagement decision by this weapon system
may be the only way to be able to engage the HPT. The re-planning
algorithm handles this situation automatically based on the
engagement rules. If it determines that the objective function
(hard constraint to engage all HPTs and maximize threat value of
all other threats) is maximized with a new allocation and schedule
where the commit option is changed (to unscheduled) and the HPT
option is scheduled, then it will choose this re-planning. Note
that while the commit option has been unscheduled making the weapon
stop its preparation for engaging the threat, the new allocation
may have still scheduled an alternate option for this threat (if it
had more than one option in the option table) if there was still an
opportunity to intercept it with this alternate option.
[0050] Denied options will not be included in any further
allocation and scheduling.
[0051] Thus, the dynamic scheduling is carried out based on the
option phase of all threats, previous schedule, and engagement
rules. One way to achieve minimal retasking is to assign extra
weight to options that are in the scheduled phase. Additionally
scheduled options are always included in the initialized trial
option configuration population chosen by the genetic algorithm.
These factors result in a much higher probability that the previous
assignment is maintained in the current assignment as well, unless
a new assignment with an improved objective function is found.
[0052] The WAS problem is to calculate the optimal weapon
allocation and scheduling subject to temporal and resource
constraints. The objective function is based on the engagement
rules and tactics. The algorithm can use either a single objective
function or multiple objective functions. As an example of multiple
objective functions, one engagement objective could be to engage
maximum total threat value, while a second simultaneous objective
could be to maximize the weights (probability of kill or other
measure) of the options in the weapon-threat pairing. The
engagement rules and weapon systems govern other features and
constraints of the problem, such as allocation strategies
(shoot-shoot-look vs. shoot-look-shoot, salvo attack, load
balancing) and time-dependent resource constraints (weapon reload
and slew time, guidance requirements, etc.).
[0053] An illustrative embodiment describes a "shoot-look-shoot"
scheme where only one weapon system is assigned to a threat to
engage it at some future time. The system can be easily extended to
handle "shoot-shoot-look" strategies as well. In one embodiment,
the system assigns or selects only one option or weapon system for
each threat (no salvo attack), though multiple threats may be
assigned to a single weapon system. It can be applied to salvo
attacks with minor modifications to the objective function.
Temporal constraints are that the launch time for engaging the
threat by a weapon system must be between the earliest and latest
launch times listed in the option table. Resource constraints are
that the total number of threats assigned to each weapon system
should not exceed the number of available interceptors (weapon
inventory resource) and the number of simultaneously guided
interceptors (function of launch times) should not exceed each
weapon system's maximum guidance capacity (weapon guidance
resource). Note that the only time-dependent resource modeled here
is the guidance requirements of a weapon system. Other resource
constraints can be incorporated in the same framework just as
easily.
[0054] The problem and the constraints can be described in a
mathematical formulation as follows. Let L(i, j, k) be a Boolean
variable=1 if k denotes the launch time for an interceptor from
weapon system j to engage threat i. else=0. Note that while number
of threats and weapon systems are small finite numbers, the time
quantity is a continuous variable starting from the current time to
some future time. The time interval in consideration depends on the
intercept times of the threats. If several threats are several
minutes from being engaged, then those threats may not even be
included in the threat and option tables. It is assumed that all
threats that belong to the threat table are to be considered in
weapon planning and scheduling for the future. Alternatively, the
future time interval for which the algorithm should do planning and
scheduling can be included as one of the engagement rules.
Otherwise, the launch time of an interceptor against the farthest
threat in the table determines the length of future time interval.
Typically this time interval is broken into discrete numbers with a
small step size (chosen as 1 sec in present embodiment). Let us
further denote:
[0055] I=Number of current threats (in threat table)
[0056] J=Number of current weapon systems (in weapon table)
[0057] K=Total number of time points in time interval (for which
planning needed)
[0058] L=Total number of own assets
[0059] TV (i)=Threat value of threat i
[0060] OW (i, j)=Option weight of weapon system j for threat i
[0061] AV(l)=Asset value of asset l
[0062] LB (i, j)=Begin launch time for weapon system j for threat
i
[0063] LE (i, j)=End launch time for weapon system j for threat
i
[0064] GT (i, j)=Guidance time interval for interceptor for weapon
system j to engage threat i
[0065] IR (j)=Inventory resource of weapon system j (number of
interceptors)
[0066] GR (j)=Guidance resource capacity of weapon j
[0067] .OMEGA.(i,l)=Probability that threat i kills asset l
[0068] The engagement objective for the WAS-TKM problem is to
maximize the threat value engaged using the highest possible
weighted options for each threat. Note that objective functions to
handle secondary damage to incoming threats as well as using
multiple weapon systems against the same threat can be easily used
in the same framework. These are actually dual objectives, but we
have chosen a single objective function as a weighted sum of these
objectives. Generally, the threat value term is given a much higher
weight and its weighting could be available as an engagement rule.
So, the objective function is to maximize Equation 1 below:
E = i = 1 I j = 1 J k = 1 K [ .alpha. T V ( i ) + ( 1 - .alpha. )
OW ( i , j ) ] L ( i , j , k ) ( 1 ) ##EQU00001##
subject to the following constraints
j = 1 J k = 1 K L ( i , j , k ) .ltoreq. 1 .A-inverted. i ( 2 ) i =
1 I k = 1 K L ( i , j , k ) .ltoreq. IR ( j ) .A-inverted. j ( 3 )
##EQU00002##
Constraint (2) is that each threat will be assigned to zero or only
one weapon system. Constraint (3) is that the total number of
threats allocated to each weapon system should not exceed its
current inventory resource (number of interceptors). Note that the
above constraints do not include the constraint that the maximum
number of interceptors being guided at any time should not exceed
each weapon system's guidance resource capacity. We can pose this
constraint using a new matrix R whose entries are again Boolean and
can be completely derived from L as shown below:
If L ( i , j , k ) = 1 , R ( i , j , k ' ) = 1 .A-inverted. k
.ltoreq. k ' .ltoreq. k + GI ( i , j ) ( 4 ) i I k K R ( i , j , k
) .ltoreq. GR ( j ) .A-inverted. j ( 5 ) ##EQU00003##
[0069] As mentioned before, the above assumes that guidance is
needed during the first GI(i,j) seconds after launch for an
interceptor from deployed from weapon system j to engage threat i.
Other types of guidance requirements will be formulated as a
different mathematical constraint, but the same algorithm can be
used. Note that one can add other time-dependent resources such as
weapon reload and slew time as multiple constraints in the above
framework as well. In the form that the problem is posed above, the
total number of exhaustive possible combinations that satisfy
constraint (2) are (JK).sup.1 The number of combinations that
satisfy constraint (3)-(5) will be significantly less during
tight-resource conditions.
[0070] A naive solution to the above problem would be to find the
optimal L (i, j, k) (i.e., how and when to engage a specific
threat) such that objective function (1) is optimized subject to
constraints (2)-(5). However, this will require solving a problem
with a relatively large search space. The search space can be
reduced by using the fact that weapon system resource constraints
(both IR and GR) for each weapon are independent of other weapon
systems. However, to exploit this fact and implement it in an
algorithm, we reformulate the above resource-constrained scheduling
problem and propose a two-step approach. In the first step, we
ignore the time component and only address the problem of assigning
a weapon system to a threat. The number of possible ways of
assigning I threats to J weapon systems is J.sup.I. This is akin to
a static target-weapon allocation problem that is simple
combinatorial optimization problem with constraints. In the second
step, we determine whether the combination or pairing in the first
step satisfies all constraints and optimize the launch times such
that the highest threat value that can be engaged. If such a
combination of launch times cannot be found for all threats, then
we try to find the combination of launch times for the threat
subset with the highest total threat value amongst all other
subsets that can be successfully engaged. In other words, this
threat subset should not only have maximum total threat value, but
corresponding launch times should meet the temporal and resource
constraints. The optimal launch times computed from the second step
determine which of the threats can be engaged and thus affect the
value of the objective function. Note that the two steps are not
sequential, but the second step is embedded in the first step and
has to be executed for every pairing generated in the first step.
The overall assignment with the highest objective function then
becomes the optimal assignment.
[0071] One aspect of the two-step approach is that we can now solve
the temporal optimization problem for each weapon system
independently of all other weapon systems.
[0072] This approach depends on the fact that each weapon system
resource constraints (both IR and GR) are independent of other
weapon systems. The additional advantages of this two-step approach
include:
[0073] 1. There may be many launch time combinations that give the
optimal solution (all engaged threats) when only considering
threats assigned to a specific weapon system. Thus solving the
launch time optimization problem separately from the assignment
problem (even though one affects the other) reduces the
computational cost compared to the naive approach that solves for
both in a single step; and
[0074] 2. It allows the use of different methods for the two steps.
We use a genetic algorithm approach for step 1 and a simulated
annealing type method for step 2.
[0075] Notwithstanding the two-step approach, each of the
optimization problems still has a significant search space even for
a modest number of threats, weapon systems, and time points.
Complexity comes from the fact that the second step (solving the
time optimization problem) has to be performed for each combination
analyzed in the first step. Thus, the computational cost of the
second step is of interest. An inventive heuristic method breaks
the second step further into a two-step approach whose solution is
approximately close to the solution of the original problem (of the
second step), but has a significantly lower computational cost. The
objective function of the WAS-ASM problem is to maximize the total
value of asset survival and is given below. Probability that threat
i survives weapon attack is:
P.sub.s.sup.i=(1-p(i,j)).sup.M(i,j)
where p(i,.sub.j) is the kill probability of threat i by weapon j
and M(i,j) is number of interceptors launched by weapon j towards
threat i.
Total value of survived assets = l = 1 L V l P ( A l ) ##EQU00004##
Probability of survival of asset k is P ( A l ) = i = 1 I ( 1 -
.OMEGA. ( i , l ) P S i ) ##EQU00004.2## where { P S i = ( 1 - p (
i , j ) ) M ( i , j ) if threat engaged , P S i = 1 if threat not
engaged ##EQU00004.3##
[0076] This problem is solved in a similar two-step approach as
outlined above for WAS-TKM. One difference is that in the second
step we determine the engageable threats such that the asset
survival is maximized. When multiple threats may be headed towards
the same asset, even a single leaked threat may cause severe damage
to the asset. In other words, we need the set of engageable threats
(without violating any resources) that yields the highest survived
asset value. This requires solving a problem that is no longer
independent for each weapon system. In general, W AS-ASM is more
difficult and computationally expensive than the WAS-TKM.
[0077] Properties of the WAS problem include:
[0078] 1) NP-complete (i.e., one must essentially resort to
complete enumeration to find the optimal solution),
[0079] 2) Mixed-integer, i.e., both discrete and continuous
variable (while weapons are either assigned to or not assigned to a
target, the time of assignment may be continuous),
[0080] 3)Large-scale (the number of weapons and targets could be
large, making enumeration technique impractical),
[0081] 4) Dynamic (solutions need to be quickly recomputed based on
modified engagement rules or changing battle scenarios),
[0082] 5) Real-time (solutions must be generated in quick update
cycles close to real-time).
[0083] Properties 1-3 above of the problem reduce the likelihood of
obtaining algorithms that are both efficient and optimal.
[0084] As described before, we have developed a two-step algorithm
where the second step is embedded in and implemented for every
trial pairing of the first step. Both steps use a fast heuristic
algorithm to arrive at an approximately optimal solution. A
brute-force approach of evaluating the objective function of every
possible assignment is impractical since the number increases
exponentially with the number of threats and weapon systems. In
order to arrive at an optimal or close-to-optimal solution in the
allowed time (typically a few seconds), we have developed a hybrid
genetic algorithm for the first step. We have used a genetic
algorithm because of its simplicity of implementation and
robustness. This requires determining the value of the objective
function for a set of trial combinations and constraint checking.
The value of the objective function will not only be determined by
which weapon system is paired with which threat, but also by the
launch time. Thus, launch times need to be optimized to find the
maximum objective function value and satisfy all constraints. This
optimization is done in the second step by an inventive simulated
annealing type algorithm. Since we have a simulated annealing type
algorithm embedded in a genetic algorithm, we have termed the
overall algorithm as a hybrid genetic algorithm.
[0085] As is known in the art, genetic algorithms (GA) are search
methods that heuristically `mimic` biological evolution (namely,
the process of natural selection and the `survival of the fittest`
principle). They apply an adaptive search procedure based on a
`population` of candidate solution points. An individual stands for
a point of the search space and is associated with a fitness. In
the current context, an individual is an option configuration (see
below) and a population is a collection of option configurations.
The algorithm iteratively builds new generations of populations
that evolve through selection, crossover and mutation. Selection
favors high fitness individuals whereas crossover and mutation
ensure an efficient exploration of search space. Each iteration
involves a competitive selection that drops the poorer solutions.
The candidates with higher `fitness` are then `recombined` with
other solutions by swapping components with another; they can also
be `mutated` by making a small change to a single component of a
candidate. The recombination and mutation moves are applied
sequentially, to generate new solutions that are biased towards
regions of the solution space in which good (though not necessarily
globally optimized) solutions have already been found.
[0086] FIG. 3A shows a high flow diagram of processing performed by
the WASE. In step 150, an initial population of option
configurations (OCs) is generated. In step 152, the fitness of the
population is evaluated. In sub step 152a, each OC is converted
into a weapon assignment table (WAT). A further substep 152b to
computer the fitness of each non-empty WAT includes optimizing
launch times in sub step 152b1 and optimizing threat subset
selections in sub step 152b2. The fitness of each OC is determined
in step 152c. In step 154, it is determined whether predetermined
stopping criteria are met. If so, processing proceeds to the
engagement operator in step 106 of FIG. 3. If not, in step 156 a
new population of OCs is generated, such as by selection,
crossover, and mutation in a genetic algorithm. The steps above are
described more fully below.
[0087] A shown in FIG. 4, in step 200, the algorithm begins with
creating an initial population of option configurations. This is
basically the first step of the genetic algorithm that creates a
population of candidate solutions from the search space. An option
configuration (OC) is defined as a table that contains one and only
one option (from the option table) for each threat. Let us assume a
total of I threats numbered as i=1, 2, 3 . . . I. In the example
Table 1, we have I=5 threats. Each threat can be engaged in a
finite number of ways or options. We denote the number of options
for each threat by N.sub.i, where N.sub.i is a finite positive
integer. In Table 2, N.sub.1=3, N.sub.2=2, N.sub.3=1, N.sub.4=4,
N.sub.5=1. The total number of option configurations for the above
problem size is N.sub.1.times.N.sub.2 . . . .times.N.sub.T=24.
Table 4 gives an example option configuration formed by randomly
picking one option (row) for each threat from Table 2.
TABLE-US-00005 TABLE 4 Option configuration example Guidance
Earliest Latest resource Threat Weapon launch launch time Option
number number time time duration weight Phase 11 30 50 84 10 30
Unscheduled 20 20 105 125 10 50 Unscheduled 31 40 80 95 10 30
Unscheduled 42 30 15 43 10 10 Scheduled 55 20 60 90 10 80
Commit
[0088] In order to code an OC as a chromosome or an individual of
the population, we use a simple notation. If we choose option
number k for threat i (1.ltoreq.k.ltoreq.number of options for
threat i in option table), then we code its gene as k. We similarly
code genes for all threats based on the option number selected in
the OC. The string of genes of length equal to the number of
threats then represents the OC. We always include two non-random
OCs in this initialization step, while the remaining are chosen
randomly. The two non-random OCs are:
[0089] 1. An OC that is based on choosing the option with the
highest option weight for all threats.
[0090] 2. An OC that is based on choosing the scheduled or commit
options for all threats
[0091] In step 202, the fitness of each OC is determined. The
fitness of each OC is dependent on the objective function that we
are trying to optimize. The approach for computing this fitness
efficiently and optimally is one aspect of the invention. We now
show the inventive methods for computing the fitness for the TKM
and ASM battle management objectives.
[0092] The fitness depends on which threats can be engaged by its
chosen weapon system(s) and the option weights of these weapon
systems. In one embodiment, we define the fitness of an OC as the
weighted sum of two measures (1) Sum of threat values of all
engageable threats (SOT), and (2) Sum of Option Weights of the
options of these engageable threats in this OC (SOW). If all
threats can be engaged (to be determined based on optimizing launch
times and determining if combinations of launch times for which no
resources constraints are violated can be found), then SOT is
simply the sum of threat values of all threats. For example, if all
threats are determined to be engageable, then SOT for the OC in
Table 4 is 265 and its SOW is 200. The fitness of the OC can be
denoted as .alpha.*SOT+(1-.alpha.)*SOW, where .alpha. is a
parameter that could be listed as an engagement rule. For
.alpha.=0.95, if constraint satisfying launch times for each weapon
system against all its threats can be found (i.e., all threats are
engageable), the fitness of above OC=261.75. However, the launch
times need to be optimized before this can be determined.
[0093] In order to determine the fitness of the OC, it is
straightforward to organize threats in the OC by weapon systems and
solve the problem separately for each weapon system.
[0094] In step 204, the OC is converted to a weapon assignment
table (WAT). Since an option for a threat is essentially a way to
engage that threat by a specific weapon system, an OC can be
translated into a weapon assignment table (WAT). A WAT for each
weapon system lists the threats assigned to it for a specific OC.
In the above example OC (Table 4), the weapon assignment table for
weapon numbers 10 and 50 are empty since no option with these
systems appears in the OC. Weapon systems 20, 30 and 40 have
non-empty WAT. The WAT for weapon system 20 is shown in Table 5
below.
TABLE-US-00006 TABLE 5 Weapon assignment Table (WAT) for weapon
system 20 Earliest Latest Guidance Threat launch launch resource
time Option number time time duration weight Phase 20 105 125 10 50
Unscheduled 55 60 90 10 80 Committed
[0095] In step 206, the fitness of the WAT is determined. The
problem of determining whether all, or which subset, of threats can
be engaged for an OC is now translated into determining the same
for each WAT. This is a more direct problem as temporal and
resource constraints need to be analyzed for each weapon system
independent of other weapon systems. We define a new measure
"fitness of WAT" as the total threat value of a WAT that can be
engaged without violating any constraints. The output from this
module is a list of threats that can be engaged and the
corresponding launch times as well as the fitness of the WAT. The
sum of the fitness of all non-empty WATs then becomes the sum of
threat values of all engageable threats (SOT) for the OC.
[0096] For each WAT, it may be possible to find some combination of
launch times for which all threats can be engaged even with the
weapon system's limited guidance capacity. If such a combination of
launch times can be found, then the weapon system can be assigned
all threats in its WAT and the WAT has maximum possible fitness
(equal to the sum of threat value of all threats in the problem).
If such a combination of launch times cannot be found for all
threats, then it tries to find the combination of launch times for
the threat subset with the highest total threat value (or another
objective function) amongst all other subsets that can be
successfully engaged (satisfies constraints). Thus, for each WAT,
either a threat is chosen or not and for each chosen threat a
launch time needs to be calculated such that (1) launch time is in
the launch time window; and (2) guidance constraints are not
violated. In other words, this threat subset should not only have
maximum total threat value, but corresponding launch times should
meet temporal and resource constraints. This is a constrained dual
optimization problem.
[0097] It is known in the art, such as the '169 patent to Khosla
that the WAT fitness can be determined by using a novel simulated
annealing-type algorithm that approximates the problem by a single
optimization problem followed by a simple sorting step. The
approximation is close to the solution of the original problem
because of the heuristics used in the sorting step. In the first
step, one determines launch times for all targets such that the
number of resource constraint violations is minimized. Resource
constraint violation is defined as the condition in which the
number of simultaneously guided interceptors exceeds the guidance
capacity of the weapon system. While one has several ways to
determine launch times for this minimization, a simulated
annealing-type algorithm is used. In the second step, threats in
the WAT are eliminated by a sorting procedure based on a heuristic
(weighted violation value dependent on threat value and number of
resource violations) to determine a final list of engageable
threats with no violated resource constraints (exceed_sum is 0).
The goal is to determine the number of remaining threats (threat
subset) that do not exceed guidance capacity and have a total
threat value which is greater than any other combination of
remaining threats. While this approximation heuristic approach
works quickly, the solutions are often sub-optimal since we are
solving a dual optimization problem as a sequence of single
optimization step and a sorting step.
[0098] In one aspect of the invention, we have developed heuristics
to determine the WAT fitness that improve upon the previous
approach discussed above. Determining the fitness of a WAT requires
calculating the subset of threats with the highest total threat
value (and their corresponding launch times) that satisfies all
temporal and resource constraints. We have developed a fast
algorithm to determine this threat subset. The new algorithm can be
run in two modes--deterministic (steps 208-218) and heuristic
(steps 220-234).
[0099] The deterministic mode is a brute-force approach that
evaluates the entire search space and will provide the optimal
solution (fitness of WAT). It should be used for small and medium
sized problems (e.g., number of threats in a WAT between 1-6) and
will be quite fast for such problems.
[0100] The deterministic mode operates as follows. In step 210, the
system determines all permutations (orders) of threats in the
table. Example: If a WAT has 3 threats with indices 1,5,7 in it,
then the number of permutations is 3!=6 (permutations are 157, 175,
517, 571, 715, 751). In step 212, for each permutation, starting
with the first threat and moving down the order, the system
determines the earliest feasible time when the threat can be
engaged (i.e., which satisfies temporal and resource constraints).
If any threat cannot be engaged (no such time exists), then this
threat is deemed unengageable in this permutation.
[0101] In step 214, the system finds the list of these engageable
threats (for each permutation). In step 216, the system finds the
threat value of the returned engageable threat list. And in step
218, the system selects the permutation with the highest threat
value. This threat value is the fitness of the WAT.
[0102] The heuristic mode in step 220 uses a simulated-annealing
type heuristic in an exemplary embodiment. Heuristic mode is faster
than the deterministic mode but can yield sub-optimal solutions.
This mode should be used for larger-sized problems.
[0103] As is known in the art, simulated annealing is a heuristic
algorithm based upon the physical analogy of cooling crystal
structures that spontaneously attempt to arrive at a stable
(globally or locally minimal potential energy) equilibrium
configuration. Simulated annealing is based on random evaluations
of the objective function in such a way that transitions out of
local minima are possible. Thus it relies on a neighborhood
structure and a decreasing cost function to find a minimum.
Specifically, local minima are avoided by using cost increasing
transitions with a nonzero probability that avoids converging to
local minima solutions. The acceptance of such transitions is
judiciously controlled by a parameter called temperature, whose
idea stems from the physical annealing process.
[0104] In the exemplary implementation, the basic idea behind
simulated annealing is that instead of only selecting launch times
that increase fitness, launch times that reduce fitness are
sometimes accepted to prevent the search from getting trapped in
local minima. The probability of acceptance is dependent upon a
parameter called the temperature that is lowered as the algorithm
proceeds. In its original form, the simulated annealing method is
provably convergent (in a probabilistic sense), but is exceedingly
slow; we have used an enhancement that makes it much faster. The
algorithm swaps a random pair of threats and computes the launch
times and fitness. If the fitness (sum of engageable threat values)
of the new order is larger, it is always chosen. If the fitness
after the swap is smaller, the algorithm accepts the swap with
probability p. The algorithm is controlled by the probability p.
Initially p is set to a high value to allow the search space to be
explored and as the algorithm proceeds, it is reduced to make the
search more localized.
[0105] In step 222, the system selects a random permutation (order)
of threats in the table. In step 224, for this permutation,
starting with the first threat and moving down the order, the
system determines the earliest feasible time window in which a
threat can be engaged (i.e., which satisfies temporal and resource
constraints). If any threat cannot be engaged (no such time window
exists), then this threat is deemed unengageable in this
permutation.
[0106] In step 226, the system returns the list of engageable
threats and in step 228 finds the threat value of the returned
engageable threat list. In step 230, the system creates a new
permutation by pair-wise swapping of randomly selected threats of
previous configuration and repeats step 224 for this permutation.
The system accepts the new permutation if it has higher WAT fitness
than previous, else accept with a probability of acceptance that is
analogous to the annealing temperature. In this version, the
probability of acceptance is directly proportional to the annealing
temperature (proportionality constant 1) and is thus used in lieu
of the annealing temperature. In step 232, for each value of
probability, the system repeats step 230 a fixed number of times
(MAX_GENS) and then lowers probability according to a predetermined
schedule. In step 234, processing stops if a permutation where all
threats in the list are engageable is found or a maximum number of
predetermined runs of step 232 have been exceeded.
[0107] Steps 212 and 224 are similar in the deterministic and
heuristic steps described above and involves the following
sub-steps:
TABLE-US-00007 Step 250 Each threat in a permutation has several
parameters associated with it-earliest launch time, latest launch
time, and guidance-duration time. For all threats in a permutation,
find: Minimum of earliest launch time (T1) Maximum of latest launch
time (T2) Maximum of guidance duration time (T3) Let T4 = T2 + T3.
Step 252 Discretize the time window from T1-T4 into bins of size
.DELTA.T (nominal value of .DELTA.T = 1 s). Create a resource-usage
(number of guidance resources used) vector of length = number of
bins and initialize the resource-usage value of each bin to 0.
Example: If T1 = 50 s, T4 = 100 s, .DELTA.T = 1 s, the
resource-usage vector will be of length 50. Step 252 Determine if
there are currently engaged or tasked threats (from previous
schedules) that are/will be using any guidance resources in time
window T1- T4 and, if so, at what bins. Modify the resource-usage
of these time bins accordingly. The resource-usage vector may now
have values such as 0 0 0 0 1 1 1 0 0 2 2 2 0 0 1 1 1 1 1 0 0 0 0 .
. . , where the resource-usage signifies the number of resources
assigned in the corresponding time bin. Step 254 If we denote the
number of weapon guidance resources as N (this is a fixed number
for a specific weapon type), then find all bins with resource-usage
values that are less than N. These bins have available weapon
guidance resources. Step 256 For each threat (starting with first
one in the permutation), find the earliest series of such
consecutive bins such that first bin is between earliest and latest
threat launch time length of bin series >= guidance duration of
threat If such a bin series can be found, it implies that the
threat can be engaged (satisfies both resource and temporal
constraints). Otherwise this threat is deemed unengageable in this
permutation. Step 258 Return the list of engageable threats in this
permutation and the total threat value of all engageable threats
(WAT fitness).
[0108] The SOT value of an OC is simply the sum of fitness of all
its non-empty WATs.
[0109] The fitness of an OC is then calculated by a weighted-sum of
SOT and SOW. The fitness of all other members of the population is
calculated in a similar way.
WASE-ASM
[0110] Just as in WASE-TKM above, determining the fitness of a
chromosome of a population (OC) requires calculating the subset of
threats with the highest objective function value (asset survived)
that also satisfies all temporal and resource constraints. However,
we cannot solve the problem independently at each weapon level as
we did in WASE-TKM. Instead we need to calculate the fitness of
each chromosome by the methods described below. The inventive
algorithm can be run in several modes as described below.
Deterministic Mode:
TABLE-US-00008 [0111] Step 300. For each weapon system, consider
all permutations (order) of threats assigned to it. For example, if
a weapon had n threats assigned to it, we will have factorial(n)
orders. Step 302 For each permutation, a) Starting with the first
threat and moving down the order, determine the earliest feasible
time window in which a threat can be engaged (i.e., which satisfies
temporal and resource constraints). If any threat cannot be engaged
(no such time window exists), then this threat is deemed
unengageable in this permutation. b) Return the list of engageable
threats.
[0112] In one embodiment, this step is identical to the
corresponding step described above for the WAS-TKM.
[0113] At this stage, we have a list of engageable threats for each
permutation. It is possible that many of these lists are exactly
the same or are subsets/supersets of other lists. A superset list
is one that has all threats of a list (subset) in addition to at
least one more threat. Note that it is also possible to have an
empty list corresponding to a permutation if no threat can be
engaged.
TABLE-US-00009 Step 304 (a) If two or more lists are the same,
delete all but one of them. (b) If a list is a superset of one or
more lists, delete all subset lists keeping only the superset list.
The surviving lists are called "unique supersets" of these lists.
We call this the Unique Superset List (USL) of this weapon system.
Step 306 Repeat steps S300, 302, and 304 for all weapon systems and
now we have USLs for each weapon. Step 308 Take all combinations of
all USL and evaluate the objective function value (Note that a
single combination gives us one instance of all engageable threats
from all weapon systems). The objective function value in this case
is the total surviving asset value. For example, if we had USLs of
sizes 4, 6, 2, 10 (for 4 weapon system case), then the number of
combinations is 4 .times. 6 .times. 2 .times. 10 = 480. Step 310
Solution is the combination of highest value, which is the fitness
of the chromosome.
EXAMPLE
[0114] Let us assume a scenario with 8 threats and 3 weapon
systems, where each threat can be engaged by any of the weapon
systems. Consider a GA population where threats 1-8 are assigned to
weapon systems as 1, 2, 2, 3, 1, 3, 1, 3, respectively. Thus, the
weapon assignment tables (WAT) are:
[0115] Weapon 1 is assigned threats 1,5,7
[0116] Weapon 2 is assigned threats 2,3
[0117] Weapon 3 is assigned threats 4,6,8
[0118] The feasible launch times and guidance duration times have
not been specified for sake of keeping the example simple.
TABLE-US-00010 Step 1 Weapon 1 has !3 = 6 permutations: 157, 175,
517, 571, 715, 751 Step 2 Say due to temporal and resource
constraints, the engageable threats for these permutations were
computed to be: 17, 75, 5, 51, 75, 51 Step 3 Thus Weapon1 has 3
USLs: 17, 75, 51 Step 4 Repeat steps 1-3 for all weapon systems.
Say we ended up with following: Weapon2 has 1 USL: 23 Weapon3 has 2
USLs: 68, 84 Step 5 Evaluate all combinations of USLs (number of
172368, 172384, 752368, combinations 3 .times. 1 .times. 2 = 6)
752384, 512368, 512384 These are the feasible solutions of
engageable threats (satisfy all resource and temporal constraints).
Calculate the objective function for each combination. Step 6 Pick
the combination with the highest objective function value. The
threats in this combination are the ones that will be engaged.
Mixed Deterministic-Heuristic Mode (Fast):
[0119] Steps 1-4 are the same as in deterministic example
above.
TABLE-US-00011 Step 5 Instead of evaluating all combinations (which
could be a large number for big problems), use a fast heuristic
method. Pick the N marginally best feasible USLs from each weapon
system in terms of their expected surviving asset value (ESV) (note
this calculation for each weapon system assumes all other threats
for other weapon systems are unengaged, so no dependence across
weapon systems). Step 6 Evaluate (calculate the objective function
value of) the resulting N.sup.M combinations (for M weapon
systems). The choice of N should be based on the size of the
problem (number of weapon systems and size of USLs). Step 7
Solution is the combination of highest value (fitness of the GA
chromosome)
EXAMPLE
[0120] Let us assume the same scenario as in the previous
Example.
TABLE-US-00012 Steps 1-4 Same as Example above From Steps 1-4, we
had Weapon1 has 3 USLs: 17, 75, 51 Weapon2 has 1 USLs: 23 Weapons
has 2 USLs: 68, 84 Step 5 Pick the "N" marginally best USL from
each weapon system. If number of USLs is <N, all USL picked by
default. Let N = 2. Suppose the 2 "marginally" best USLs for weapon
systems 1-3 are: Weapon1 USLs 17, 51 Weapon2 USLs 23 Weapon3 USLs
68, 84 Step 6 Number of combinations = 2 .times. 1 .times. 2 = 4
and are: 172368, 172384, 512368, 512384 Step 7 Pick the combination
with the highest objective function value. The threats in this
combination are the ones that will be engaged.
Heuristic Mode (Fastest)
[0121] This mode should be used when the number of threats assigned
to a weapon system is high. This mode has the highest computational
speed, but may yield sub-optimal solutions.
[0122] For each weapon assignment table, do following steps:
TABLE-US-00013 Step 400 Select N random permutations (orders) of
threats in the table (N is an integer number typically between
2-5). Step 402 For each of these N permutations, a. Starting with
the first threat and moving down the order, determine the earliest
feasible time window in which a threat can be engaged (i.e., which
satisfies temporal and resource constraints). If any threat cannot
be engaged (no such time window exists), then this threat is deemed
"unengageable" in this permutation. b. Return the list of
engageable threats. c. Find the expected surviving assest value
(ESV) for these engageable threats. Step 404 Create a new
permutation by pair-wise swapping of randomly selected threats of a
randomly selected permutation (amongst the N permutations) and
repeat step 2 for this permutation. Accept new permutation if it
has higher (ESV) value than any of the M permutations computed in
step 2, else accept this with a probability of acceptance (that is
analogous to annealing temperature). If accepted, this new
permutation will replace the permutation with the lowest
(ESV)value, thus keeping the number of permutations same (N). Step
406 For each value of temperature, repeat step 3 a fixed number of
times and then lower acceptance probability according to a
predetermined schedule. Step 408 Stop the algorithm and go to step
5 if a permutation where all threats in the list are engageable is
found or a maximum number of predetermined runs of step 4 have been
exceeded. [Stop swapping pairs, or stop processing permutations?]
Step 410 Return the final N surviving permutations. These are the N
"marginally best" feasible solutions from each weapon system. Step
412 Perform steps 6-7 of the example above.
[0123] It is understood that the above is an exemplary embodiment
of heuristic method in accordance with the present invention. Other
embodiments will be readily apparent to one of ordinary skill in
the art without departing from the present invention. For example,
instead of using simulated annealing to determine the N marginally
best USLs for each weapon system, other embodiments using a genetic
algorithm or a particle swarm optimizer for can be used. The
fitness of other members of the population can be calculated in a
similar way.
[0124] In general, processing is terminated when a predetermined
number of cycles have been completed or if the run time has
exceeded a fixed time set by the battlespace commander or if the
solution returned has the highest possible fitness value for the
current battle-space.
[0125] Generating new populations can be performed using the
conventional genetic algorithm operators, i.e., selection,
crossover and mutation. Selection copies an individual from the old
population to the new population depending on the fitness of the
individual. Higher the fitness, the higher is the probability that
the individual will survive in the new population. Crossover is a
mating process where a new individual is created by mating two
individuals from the old population. Mutation randomly alters the
value of a gene in the individual. In this case, it amounts to
randomly picking a new option for the threat represented by that
gene position. The fitness of the new population is then evaluated
and the process repeats until termination conditions are met.
[0126] In one embodiment, the output from WASE is the modified
option table that shows the selected option (weapon system) for
each threat by its phase field (scheduled or committed) and the
corresponding optimized launch time.
[0127] It is understood that the WASE can operate in a variety of
suitable processing environments. FIG. 5 shows an exemplary system
500 having a WASE 502 running under an operating system 504, such
as Windows XP, 2000, Unix/Linux, etc. The system 500 includes a
processor 506 and memory 508 to support the WASE 502 and other
applications 510a-N running on the system.
[0128] While the invention is primarily shown and described in
conjunction with weapon allocation and scheduling for military
targets, it is understood that the invention is applicable to
systems and techniques in general for which it is desirable to
assign resources to tasks. Exemplary embodiments are directed to
separate objective functions including threat killed maximization
and asset survival maximization. However, other objective functions
will be readily apparent to one of ordinary skill in the art
without departing from the present invention. Further, alternative
embodiments include more than two objective functions. In addition,
while the use of genetic algorithms is shown and described, it is
understood that other mechanisms can be used. In other embodiments,
so-called pareto-optimal GAs can be used. Pareto-optimal GAs, for
example, can solve for the disparate objective functions
simultaneously.
[0129] Having described exemplary embodiments of the invention, it
will now become apparent to one of ordinary skill in the art that
other embodiments incorporating their concepts may also be used.
The embodiments contained herein should not be limited to disclosed
embodiments but rather should be limited only by the spirit and
scope of the appended claims. All publications and references cited
herein are expressly incorporated herein by reference in their
entirety.
* * * * *