Methods and systems for active diagnosis through logic-based planning
Summary by NHIP
Logic-based production diagnosis
The control system uses a SAT solver to generate plant execution plans based on diagnostic and production goals. The planner selects solutions where suspected faulty resources equal half the total suspected resources, utilizing Boolean constraints for plant states.
Claim Score by NHIP
Abstract
A control systems and methods are presented for controlling a production system, in which a model-based planner includes a formulation, such as a SAT formulation representing possible actions in the production, with a solver being used to provide a solution to the formulation based at least partially on production and diagnostic goals and the current plant condition, and a translation component translates the solution into a plan for execution in the plant.

Term
3.8 yearsleft in the term
Expires 10 July 2030, including 523 days of term adjustment.
- Priority and filed
- Granted
- Today
- Expires
20 claims: 4 independent, 16 dependent
- 1A control system for controlling operation of a production system with a plant that can achieve one or more production goals by execution of plans using one or more plant resources, the control system comprising:at least one processor;a plant model including a model of the plant;a diagnosis component implemented using the at least one processor and operatively coupled with the plant to determine a current plant condition based at least partially on a previously executed plan, at least one corresponding observation from the plant, and the plant model;and a planner operative to receive at least one diagnostic goal from the diagnosis component and at least one production goal, the planner comprising: a formulation representing possible actions in the plant including;constraints and variables for each action to transition the plant from a starting state to a goal state defined by at least one production goal, and an objective function evaluating the number of plant resources suspected of being fault that are used in a given solution, a solver implemented using the at least one processor and operative to provide at least one solution to the formulation based at least partially on the at least one production goal, at least one diagnostic goal, and the current plant condition, and a translation component operative to translate the solution into a plan and to provide the plan to the plant for execution;wherein the planner is operative to select at least one solution for which the number of suspected resources used in the solution is closest to half of the suspected plant resources.
- 11Broadest claimClaim Score 47, average(NHIP)A method of generating plans for execution in a production system with a plant to achieve one or more production goals, the method comprising:determining a current plant condition based at least partially on a previously executed plan, at least one corresponding observation from the plant, and a plant model;providing a formulation representing possible actions in the plant including constraints and variables for each action to transition the plant from a starting state to a goal state defined by at least one production goal;solving the formulation to provide at least one solution to the formulation based at least partially on the at least one production goal, the at least one diagnostic goal, and the current plant condition, wherein solving the formulation comprises evaluating an objective function based on the number of plant resources suspected of being faulty that are used in a given solution, and selecting at least one solution for which number of suspected resources used in the solution is closest to half of the suspected plant resources;translating the solution into a plan;and providing the plan to the plant for execution.
- 13A non-transitory computer readable medium having computer executable instructions for performing the steps of:determining a current plant condition based at least partially on a previously executed plan, at least one corresponding observation from the plant, and a plant model;providing a formulation representing possible actions in the plant including constraints and variables for each action to transition the plant from a starting state to a goal state defined by at least one production goal;solving the formulation to provide at least one solution to the formulation based at least partially on the at least one production goal, the at least one diagnostic goal, and the current plant condition, wherein the computer executable instructions for solving the formulation comprise: computer executable instructions for evaluating an objective function based on the number of plant resources suspected of being faulty that are used in a given solution, and computer executable instructions for selecting at least one solution for which number of suspected resources used in the solution is closest to half of the suspected plant resources;translating the solution into a plan;and providing the plan to the plant for execution.
- 15A control system for controlling operation of a production system with a plant that can achieve one or more production goals by execution of plans using one or more plant resources, the control system comprising:at least one processor;a plant model including a model of the plant;a diagnosis component implemented using the at least one processor and operatively coupled with the plant to determine a current plant condition based at least partially on a previously executed plan, at least one corresponding observation from the plant, and the plant model, the current plant condition indicating fault status of the one or more plant resources;and a planner operative to receive at least one diagnostic goal from the diagnosis component and at least one production goal, the planner comprising: a formulation representing possible actions in the plant including constraints and variables for each action to transition the plant from a starting state to a goal state defined by at least one production goal, a solver implemented using the at least one processor and operative to provide at least one solution to the formulation based at least partially on the at least one production goal, at least one diagnostic goal, and the current plant condition, and a translation component operative to translate the solution into a plan and to provide the plan to the plant for execution.
Independent claims4
65 paragraphs in 5 sections, as filed
REFERENCE TO RELATED APPLICATION
p-0002This application claims priority to and the benefit of U.S. Provisional Patent Application Ser. No. 61/079,456, which was filed Jul. 10, 2008, entitled HEURISTIC SEARCH FOR TARGET-VALUE PATH PROBLEM, the entirety of which is hereby incorporated by reference.
BACKGROUND
p-0003The present exemplary embodiments relate to active diagnosis and production control in systems having multiple resources for achieving production goals. In such systems, automated diagnosis of system performance and component status can advantageously aid in improving productivity, identifying faulty or underperforming resources, scheduling repair or maintenance, etc. Accurate diagnostics requires information about the true condition of components in the production system. Such information can be obtained directly from sensors associated with individual components and/or may be inferred from a limited number of sensor readings within the production plant using a model or other knowledge of the system structure and dynamics. Providing complete sensor coverage for all possible system faults can be expensive or impractical in harsh production environments, and thus it is generally preferable to instead employ diagnostic procedures to infer the source of faults detected or suspected from limited sensors. System diagnostic information is typically gathered by one of two methods, including dedicated or explicit diagnostics with the system being exercised while holding production to perform tests and record observations without attaining any production, as well as passive diagnostics in which information is gathered from the system sensors during normal production. Although the latter technique allows inference of some information without disrupting production, the regular production mode may not sufficiently exercise the system to provide adequate diagnostic information to improve long term productivity. Moreover, while dedicated diagnostic operation generally provides better information than passive diagnostics, the cost of this information is high in terms of short term productivity reduction, particularly when diagnosing recurring intermittent system component failures that require repeated diagnostic interventions. Conventional production system diagnostics are thus largely unable to adequately yield useful diagnostic information without halting production and incurring the associated costs of system down-time, and are therefore of limited utility in achieving long term system productivity. Accordingly, a need remains for improved control systems and techniques by which both long term and short term productivity goals can be achieved in production systems having only limited sensor deployment.
BRIEF DESCRIPTION
p-0004The present disclosure provides systems and methods for controlling a production plant, in which a model-based planner includes a formulation, such as a SAT formulation representing possible actions in the production, with a solver being used to provide a solution to the formulation based at least partially on production and diagnostic goals and the current plant condition, and a translation component translates the solution into a plan for execution in the plant.
p-0005In accordance with various aspects of the disclosure, a control system is provided, which includes a plant model, a diagnosis component that determines a current plant condition, and a planner that receives diagnostic and production goals. The planner provides a formulation with constraints and variables for each action to transition the plant from a starting state to a goal state. The planner also includes a solver that provides a solution to the formulation according to the production and diagnostic goals and the current plant condition, and a translation component which translates the solution into a plan for execution in the production plant. The formulation may also include an objective function evaluating the number of plant resources suspected of being faulty or the resource failure probabilities, which is used to select a solution based on the fault probabilities or the number of suspected plant resources.
p-0006In accordance with further aspects of the disclosure, a method is provided for generating plans for execution in a production system. The method includes determining a current plant condition based on a previously executed plans, at least one corresponding observation from the plant, and a plant model, as well as providing a formulation representing possible actions in the plant including constraints and variables for each action to transition the plant from a starting state to a goal state defined by at least one production goal. The method further includes solving the formulation to provide a solution to the formulation based on the production goal, the diagnostic goal, and the current plant condition. The method also includes translating the solution into a plan, and providing the plan to the plant for execution. In certain further aspects of the disclosure, solving the formulation further comprises evaluating an objective function based on the number of plant resources suspected of being faulty that are used in a given solution, and selecting a solution for which number of suspected resources used in the solution is closest to half of the suspected plant resources. In other aspects, solving the formulation further includes evaluating an objective function fault probabilities of plant resources, and selecting at least one solution based at least partially on the fault probabilities.
p-0007Still other aspects of the disclosure provide a computer readable medium with computer executable instructions for performing the steps of determining a current plant condition based at least partially on a previously executed plan, at least one corresponding observation from the plant, and a plant model, providing a formulation representing possible actions in the plant including constraints and variables for each action to transition the plant from a starting state to a goal state defined by the at least one production goal, solving the formulation to provide at least one solution to the formulation based at least partially on the at least one production goal, the at least one diagnostic goal, and the current plant condition, translating the solution into a plan, and providing the plan to the plant for execution.
BRIEF DESCRIPTION OF THE DRAWINGS
p-0008The present subject matter may take form in various components and arrangements of components, and in various steps and arrangements of steps. The drawings are only for purposes of illustrating preferred embodiments and are not to be construed as limiting the subject matter.
p-0009<figref idrefs="DRAWINGS">FIG. 1</figref> is a schematic diagram illustrating a production system and an exemplary model-based control system with a planner, a plant model, a diagnosis component, and a operator interface in accordance with one or more aspects of the disclosure;
p-0010<figref idrefs="DRAWINGS">FIG. 2</figref> is a schematic diagram illustrating further details of an exemplary modular printing system plant in the production system of <figref idrefs="DRAWINGS">FIG. 1</figref>;
p-0011<figref idrefs="DRAWINGS">FIG. 3</figref> is a schematic diagram illustrating further details of the exemplary planner and diagnosis component in the control system of <figref idrefs="DRAWINGS">FIGS. 1 and 2</figref>;
p-0012<figref idrefs="DRAWINGS">FIG. 4</figref> is a schematic diagram illustrating a plan space for a production system, including production and diagnostic plans;
p-0013<figref idrefs="DRAWINGS">FIG. 5</figref> is a flow diagram illustrating an exemplary method for constructing plans for execution in a production system in accordance with one or more aspects of the present disclosure;
p-0014<figref idrefs="DRAWINGS">FIG. 6</figref> is a flow diagram illustrating an exemplary method of evaluating and generating plans for execution in the plant using a formulation and a solver in accordance with the disclosure;
p-0015<figref idrefs="DRAWINGS">FIG. 7</figref> is a schematic diagram illustrating an exemplary state/action diagram showing possible plans for transitioning the system state from a starting state to a goal state;
p-0016<figref idrefs="DRAWINGS">FIG. 8</figref> is a schematic flow diagram illustrating construction of plans in the system of <figref idrefs="DRAWINGS">FIGS. 1-3</figref> using a SAT solver in accordance with the disclosure;
p-0017<figref idrefs="DRAWINGS">FIGS. 9 and 10</figref> are schematic diagrams illustrating an exemplary SAT formulation and solution of the formulation for the state/action diagram of <figref idrefs="DRAWINGS">FIG. 7</figref> including variables and constraints in accordance with the present disclosure;
p-0018<figref idrefs="DRAWINGS">FIG. 11</figref> is a schematic diagram illustrating an exemplary d-DNNF representation of the formulation of <figref idrefs="DRAWINGS">FIGS. 9 and 10</figref>; and
p-0019<figref idrefs="DRAWINGS">FIG. 12</figref> is a schematic diagram illustrating further details of the exemplary formulation and solver-based techniques in the system of <figref idrefs="DRAWINGS">FIGS. 1-3</figref> in accordance with various aspects of the present disclosure.
DETAILED DESCRIPTION
p-0020Referring now to the drawing figures, several embodiments or implementations of the present disclosure are hereinafter described in conjunction with the drawings, wherein like reference numerals are used to refer to like elements throughout, and wherein the various features, structures, and graphical renderings are not necessarily drawn to scale. The disclosure relates to production systems generally and is hereinafter illustrated and described in the context of exemplary document processing systems having various printing and document transport resources. However, the concepts of the disclosure also find utility in association with product packaging systems and any other type or form of system in which a plurality of resources, whether machines, humans, software or logic components, objects, etc., may be selectively employed according to plans comprised of a series of actions to achieve one or more production goals based at least partially on one or more diagnostic metrics or objectives, wherein all such alternative or variant implementations are contemplated as falling within the scope of the present disclosure and the appended claims.
p-0021The disclosure finds particular utility in constructing and scheduling plans in systems in which a given production goal can be achieved in two or more different ways, including use of different resources (e.g., two or more print engines that can each perform a given desired printing action, two different substrate routing paths that can be employed to transport a given printed substrate from one system location to another, etc.), and/or the operation of a given system resource at different operating parameter values (e.g., operating substrate feeding components at different speeds, operating print engines at different voltages, temperatures, speeds, etc.). The disclosed plan selection techniques and systems can be employed in association with any system whose normal operation is controlled by a planner. In order to diagnose faulty resources (e.g., modules) in such production systems, a diagnosis component of the control system guides the planner to preferentially execute plans that can gain information to narrow down the set of suspected modules and pinpoint the faulty resources. The present disclosure presents problem formulations and solver components used to select the plans in the control system, in which diagnosis tasks are translated to appropriate logical encodings or problem formulations (e.g. CNF, DNNF, BDD, PI, NNF, HTMS, etc.) which capture all possible bounded length plans. The formulation is then solved by a solver and the solution is translated into a plan defining a series of actions within the production plant to implement a given production goal or goals, while also advancing one or more diagnostic goals. In certain embodiments, moreover, standard off-the-shelf SAT solvers may be employed in connection with SAT formulations to address these on-line diagnostic goals, where the planner submits a SAT query for the solver to find a plan that uses a certain set of modules, such as a subset of a group of modules suspected of being faulty. In this manner, the control system can advance the knowledge by enhancing the amount of information to be gained by each plan execution while still implementing production goals in the plant.
p-0022<figref idrefs="DRAWINGS">FIGS. 1-3</figref> illustrate an exemplary system <b>1</b> in which the various aspects of the present disclosure may be implemented. As best shown in <figref idrefs="DRAWINGS">FIG. 1</figref>, a production system <b>6</b> is illustrated including a producer component <b>10</b> that receives production jobs <b>49</b> from a customer <b>4</b> and a plant <b>20</b> having a plurality of resources <b>21</b>-<b>24</b> that may be actuated or operated according to one or more plans <b>54</b> so as to produce one or more products <b>52</b> for provision to the customer <b>4</b> by the producer <b>10</b>, where ‘producing’ products can include modifying products, objects, etc., including without limitation packaging or wrapping products. <figref idrefs="DRAWINGS">FIG. 2</figref> illustrates further details of one exemplary plant <b>20</b> and <figref idrefs="DRAWINGS">FIG. 3</figref> shows additional details regarding the exemplary model-based control system <b>2</b>. The producer <b>10</b> manages one or more plants <b>20</b> which actually produce the output products <b>52</b> to satisfy customer jobs <b>49</b>. The producer <b>10</b> in this embodiment provides jobs and objectives <b>51</b> to a multi-objective planner <b>30</b> of the model-based control system <b>2</b> and the production system <b>6</b> receives plans <b>54</b> from the planner <b>30</b> for execution in the plant <b>20</b>. The jobs <b>54</b> can include one or both of production and diagnostic goals. As shown in <figref idrefs="DRAWINGS">FIG. 1</figref>, the control system <b>2</b> further includes a plant model <b>50</b> with a model of the plant <b>20</b>, and a diagnosis component <b>40</b> with a belief model <b>42</b>. The diagnosis component <b>40</b> determines and updates a current plant condition <b>58</b> via a plant condition estimation/updating component <b>44</b> (<figref idrefs="DRAWINGS">FIG. 3</figref>) based on one or more previously executed plans <b>54</b>, corresponding observations <b>56</b> from the plant <b>20</b>, and the model <b>50</b>. The diagnosis component <b>40</b> also provides expected information gain data <b>70</b> to the planner <b>30</b> for one or more possible plans <b>54</b> based on the current plant condition <b>58</b> and the model <b>50</b>.
p-0023The model-based control system <b>2</b> and the components thereof may be implemented as hardware, software, firmware, programmable logic, or combinations thereof, and may be implemented in unitary or distributed fashion. In one possible implementation, the planner <b>30</b>, the diagnosis component <b>40</b>, and the model <b>50</b> are software components and may be implemented as a set of sub-components or objects including computer executable instructions and computer readable data executing on one or more hardware platforms such as one or more computers including one or more processors, data stores, memory, etc. The components <b>30</b>, <b>40</b>, and <b>50</b> and sub components thereof may be executed on the same computer or in distributed fashion in two or more processing components that are operatively coupled with one another to provide the functionality and operation described herein. Likewise, the producer <b>10</b> may be implemented in any suitable hardware, software, firmware, logic, or combinations thereof, in a single system component or in distributed fashion in multiple interoperable components. In this regard, the control system <b>2</b> may be implemented using modular software components (e.g., the model <b>50</b>, the planner <b>30</b>, the formulation <b>37</b> and solver <b>38</b>, the diagnosis component <b>40</b> and/or sub-components thereof) to facilitate ease of debugging and testing, the ability to plug state of the art modules into any role, and distribution of operation over multiple servers, computers, hardware components, etc.
p-0024The embodiment of <figref idrefs="DRAWINGS">FIG. 1</figref> also includes an optional operator interface <b>8</b> implemented in the computer or other platform(s) on which the other components of the control system <b>2</b> are implemented, although not a strict requirement of the disclosure, wherein the operator interface <b>8</b> may alternatively be a separate system operatively coupled with the control system <b>2</b>. The exemplary operator interface <b>8</b> is operatively coupled with the diagnosis component <b>40</b> to provide operator observations <b>56</b><i>a </i>to the diagnosis component <b>40</b>, with the diagnosis component <b>40</b> determining the current plant condition <b>58</b> based at least partially on the operator observations <b>56</b><i>a </i>in certain implementations. Moreover, the exemplary operator interface <b>8</b> allows the operator to define a diagnostic job <b>8</b><i>b </i>using a diagnosis job description language <b>8</b><i>a</i>, and the diagnosis component <b>40</b> may provide diagnostic jobs <b>60</b> to the producer <b>10</b>. The diagnosis component <b>40</b> in this implementation is operative to selectively provide one or more self-generated diagnostic jobs <b>60</b> and/or operator defined diagnostic jobs <b>8</b><i>b </i>to the producer <b>10</b>, which in turn provides jobs and objectives <b>51</b> to the planner <b>30</b>.
p-0025Referring also to <figref idrefs="DRAWINGS">FIGS. 2 and 3</figref>, the planner <b>30</b> provides one or more plans <b>54</b> to the production system <b>6</b> for execution in the plant <b>20</b> based on at least one output objective <b>34</b> (<figref idrefs="DRAWINGS">FIG. 3</figref>) and production goals as directed by the incoming jobs <b>51</b> from the producer <b>10</b>. As shown in <figref idrefs="DRAWINGS">FIG. 3</figref>, the planner <b>30</b> selectively factors in one or more output objectives/goals <b>34</b> derived from the jobs and objectives <b>51</b> in constructing plans <b>54</b>, including production objectives <b>34</b><i>a </i>and diagnostic objectives/goals <b>34</b><i>b</i>. In one possible implementation, the production objectives/goals <b>34</b><i>a </i>are created and updated according to the jobs and objectives <b>51</b> obtained from the production system <b>6</b>, and the diagnostic objectives <b>34</b><i>b </i>are derived from and updated according to the current plant condition <b>58</b> and the expected information gain data <b>70</b> provided by the diagnosis component <b>40</b>. The production objectives <b>34</b><i>a </i>in one implementation may relate to the scheduling of orders for produced products <b>52</b> (<figref idrefs="DRAWINGS">FIG. 1</figref>), and may include prioritization of production, minimization of inventory, and other considerations and constraints driven in large part by cost and customer needs. Examples of production objectives <b>34</b><i>a </i>include prioritizing plan construction/generation with respect to achieving a given product output goal (simple production criteria) as well as a secondary consideration such as simple time efficient production, cost efficient production, and robust production. For instance, cost efficient production objectives <b>34</b><i>a </i>will lead to construction/generation of plans <b>54</b> that are the most cost efficient among the plans that met the production goal as dictated by the jobs <b>51</b> received from the producer <b>10</b>. The diagnostic objectives <b>34</b><i>b </i>may include objectives related to determining preferred action sequences in generated plans <b>54</b> for performing a given production-related task, minimization of maintenance and repair costs in operation of the plant <b>20</b>, identifying resources <b>21</b>-<b>24</b> causing intermittent or persistent faults, and for giving maximum information to identify the potential failures etc.
p-0026As further shown in <figref idrefs="DRAWINGS">FIG. 3</figref>, the control system <b>2</b> may optionally include a plan data store or database <b>36</b> used to store plans <b>54</b> selectable by the planner <b>30</b> for execution in the plant <b>20</b> to facilitate one or more production or diagnostic objectives <b>34</b>, wherein construction/generation of a plan <b>54</b> as used herein can include selection of one or more pre-stored plans <b>54</b> from the data store <b>36</b>. In this regard, the planner <b>30</b> can selectively re-order a job queue so as to improve the likelihood of information gain. Although illustrated as integral to the planner <b>30</b>, the plan data store <b>36</b> may be provided in a separate component or components that are operatively coupled with the planner <b>30</b> by which the planner <b>30</b> can obtain one or more plans <b>54</b> (whole and/or partial) therefrom. Alternatively or in combination, the planner <b>30</b> can synthesize (e.g. construct or generate) one or more plans <b>54</b> as needed, using the plant model <b>50</b> and information from the producer <b>10</b> and diagnosis component <b>40</b> to determine the states and actions required to facilitate a given production and/or diagnostic objectives <b>34</b>.
p-0027In operation, the planner <b>30</b> creates and provides plans <b>54</b> for execution in the plant <b>20</b>. The plans <b>54</b> include a series of actions to facilitate one or more production and/or diagnostic objectives <b>34</b> while achieving a production goal according to the jobs <b>51</b>, where a given action may appear more than once in a given plan. The actions are taken with respect to states and resources <b>21</b>-<b>24</b> defined in the model <b>50</b> of the plant <b>20</b>, for example, to route a given substrate through a modular printing system <b>20</b> from a starting state to a finished state as shown in <figref idrefs="DRAWINGS">FIG. 2</figref>. In operation, the planner <b>30</b> generates or constructs a plan <b>54</b> that will achieve a given production goal at least partially based on a diagnostic objective <b>34</b><i>b </i>and the expected information gain data <b>70</b> from the diagnosis component <b>40</b>. The planner <b>30</b> in the illustrated embodiment includes a goal-based plan construction component <b>32</b> that assesses the current plant condition <b>58</b> from the diagnosis component <b>40</b> in generating a plan <b>54</b> for execution in the plant <b>20</b>. The component <b>32</b> may also facilitate identification of faulty components <b>21</b>-<b>24</b> or sets thereof in constructing the plans <b>54</b> based on observations <b>56</b> and current plant conditions <b>58</b> indicating one or more plant components <b>21</b>-<b>24</b> as being suspected of causing system faults.
p-0028Referring also to <figref idrefs="DRAWINGS">FIG. 4</figref>, the presently disclosed intelligent plan construction techniques advantageously provide for generation of plans <b>54</b> for execution in the plant <b>20</b> within a plan space <b>100</b> that includes both production plans <b>102</b> and diagnostic plans <b>104</b>. As seen in the diagram of <figref idrefs="DRAWINGS">FIG. 4</figref>, the union of the plan sets <b>102</b> and <b>104</b> includes production plans <b>106</b> that have diagnostic value (e.g., can facilitate one or more diagnostic objectives <b>34</b><i>b </i>in <figref idrefs="DRAWINGS">FIG. 3</figref>), wherein the planner <b>30</b> advantageously utilizes information from the diagnosis component <b>40</b> to preferentially construct and select plans <b>106</b> that achieve production goals while obtaining useful diagnostic information in accordance with the diagnostic objectives <b>34</b><i>b</i>. The intelligent plan construction aspects of the present disclosure thus integrate the production planning and diagnosis to facilitate the acquisition of more useful diagnostic information compared with conventional passive diagnostic techniques without the down-time costs associated with conventional dedicated diagnostics. The diagnostic information gained, in turn, can be used to improve the long term productivity of the system <b>6</b>, thereby also facilitating one or more production objectives <b>34</b><i>a </i>(<figref idrefs="DRAWINGS">FIG. 3</figref>).
p-0029As further illustrated in <figref idrefs="DRAWINGS">FIG. 3</figref>, the exemplary diagnosis component <b>40</b> includes a belief model <b>42</b> representing the current state of the plant <b>20</b>, and a component <b>44</b> that provides the current condition of the plant <b>20</b> to the planner <b>30</b> based on the previously executed plan(s) <b>54</b> and corresponding plant observations <b>56</b>. The component <b>44</b> also estimates and updates the plant condition of the belief model <b>42</b> according to the plant observations <b>56</b>, the plant model <b>50</b>, and the previously executed plans <b>54</b>. The operator observations <b>56</b><i>a </i>from the interface <b>8</b> may also be used to supplement the estimation and updating of the current plant condition by the component <b>44</b>. The estimation/updating component <b>44</b> provides the condition information <b>58</b> to inform the planner <b>30</b> of the confirmed or suspected condition of one or more resources <b>21</b>-<b>24</b> or other components of the plant <b>20</b> (<figref idrefs="DRAWINGS">FIG. 1</figref>). This condition information <b>58</b> may be considered by the plan construction component <b>32</b>, together with information about the plant <b>20</b> from the plant model <b>50</b> in providing plans <b>54</b> for implementing a given production job or goal <b>51</b>, in consideration of production objectives <b>34</b><i>a </i>and diagnostic objectives <b>34</b><i>b</i>. The diagnosis component <b>40</b> also includes a component <b>46</b> that provides expected information gain data <b>70</b> to the planner <b>30</b> based on the model <b>50</b> and the belief model <b>42</b>. The information gain data <b>70</b> may optionally be determined in consideration of the operator defined diagnostic jobs <b>8</b><i>b </i>from the operator interface <b>8</b>.
p-0030<figref idrefs="DRAWINGS">FIG. 2</figref> illustrates further details of an exemplary modular printing system plant <b>20</b> in the production system <b>6</b>, including material supply component <b>21</b> that provides printable sheet substrates from one of two supply sources <b>21</b><i>a </i>and <b>21</b><i>b</i>, a plurality of print or marking engines <b>22</b>, an output finisher station <b>23</b>, a modular substrate transport system including a plurality of bidirectional substrate transport/router components <b>24</b> (depicted in dashed circles in <figref idrefs="DRAWINGS">FIG. 2</figref>), one or more output sensors <b>26</b> disposed between the transport system <b>24</b> and the finisher <b>23</b>, and a controller <b>28</b> providing control signals for operating the various actuator resources <b>21</b>-<b>24</b> of the plant <b>20</b>. The exemplary printing system plant <b>20</b> includes four print engines <b>22</b><i>a</i>, <b>22</b><i>b</i>, <b>22</b><i>c</i>, and <b>22</b><i>d</i>, although any number of such marking engines may be included, and further provides a multi-path transport highway with three bidirectional substrate transport paths <b>25</b><i>a</i>, <b>25</b><i>b</i>, and <b>25</b><i>c</i>, with the transport components <b>24</b> being operable by suitable routing signals from the controller <b>28</b> to transport individual substrate sheets from the supply <b>21</b> through one or more of the marking engines <b>22</b> (with or without inversion for duplex two-side printing), and ultimately to the output finishing station <b>23</b> where given print jobs are provided as output products <b>52</b>. Each of the printing engines <b>22</b>, moreover, may individually provide for local duplex routing and media inversion, and may be single color or multi-color printing engines operable via signals from the controller <b>28</b>. The model-based control system <b>2</b> may, in certain embodiments, be integrated into the plant controller <b>28</b>, although not a strict requirement of the present disclosure.
p-0031Referring now to <figref idrefs="DRAWINGS">FIGS. 1-3</figref>, in operation, the planner <b>30</b> automatically generates plans <b>54</b> representing a series of actions for component resources <b>21</b>-<b>24</b> of the printing system plant <b>20</b> derived from the incoming jobs <b>51</b> in consideration of one or more production objectives <b>34</b><i>a </i>and diagnostic objectives <b>34</b><i>b</i>. In particular, when the plant <b>20</b> has flexibility in how the output goals can be achieved (e.g., in how the desired products <b>52</b> can be created, modified, packaged, wrapped, etc.), such as when two or more possible plans <b>54</b> can be used to produce the desired products <b>52</b>, the diagnosis component <b>40</b> can alter or influence the plan construction operation of the planner <b>30</b> to generate a plan <b>54</b> that is expected to yield the most informative observations <b>56</b>. The constructed plan <b>54</b> in this respect may or may not compromise short term production objectives <b>34</b><i>a </i>(e.g., increases job time or slightly lowers quality), but production nevertheless need not be halted in order for the system to learn. The additional information gained from execution of the constructed job <b>54</b> can be used by the producer <b>10</b> and/or by the planner <b>30</b> and diagnosis component <b>40</b> to work around faulty component resources <b>21</b>-<b>24</b>, to schedule effective repair/maintenance, and/or to further diagnose the system state (e.g., to confirm or rule out certain system resources <b>21</b>-<b>24</b> as the source of faults previously detected by the sensor(s) <b>26</b>). In this manner, the information gleaned from the constructed plans <b>54</b> (e.g., plant observations <b>56</b>) can be used by the estimation and updating component <b>44</b> to further refine the accuracy of the current belief model <b>42</b>.
p-0032Moreover, where the plant <b>20</b> includes only limited sensing capabilities, (e.g., such as the system in <figref idrefs="DRAWINGS">FIG. 2</figref> having only sensors <b>26</b> at the output of the transport system <b>24</b> downstream of the printing engines <b>22</b>), passive diagnosis techniques are unable to unambiguously identify every possible fault in the system <b>20</b>, whereas direct diagnostic efforts lead to system down-time and the associated cost in terms of productivity. The control system <b>2</b> of the present disclosure, on the other hand, advantageously facilitates selective employment of intelligent on-line diagnosis though construction and execution of plans <b>54</b> that provide enhanced diagnostic information according to the plant condition <b>58</b> and/or the expected information gain <b>70</b>, and may further advantageously facilitate generation of one or more dedicated diagnostic plans <b>54</b> for execution in the plant <b>20</b> based on at least one diagnostic objective <b>34</b><i>b </i>and the plant condition <b>58</b>, and for intelligent interleaving of dedicated diagnostic plans <b>54</b> and production plans <b>54</b> based on production and diagnostic objectives <b>34</b> according to the current plant condition <b>58</b>. In particular, the planner <b>30</b> can cause execution of explicit diagnostic plans <b>54</b> that involve halting production when the information gained from the plan <b>70</b> is expected to lead to significant future gains in productivity, enhanced ability to identify faulty resources <b>21</b>-<b>24</b>, or other long term productivity objectives <b>34</b><i>a </i>and/or diagnostic objectives <b>34</b><i>b. </i>
p-0033Even without utilizing dedicated diagnostic plans <b>54</b>, moreover, the control system <b>6</b> significantly expands the range of diagnosis that can be done online through pervasive diagnostic aspects of this disclosure during production (e.g., above and beyond the purely passive diagnostic capabilities of the system), thereby lowering the overall cost of diagnostic information by mitigating down time, the number of service visits, and the cost of unnecessarily replacing components <b>21</b>-<b>24</b> in the system <b>20</b> that are actually working, without requiring complete sensor coverage. The planner <b>30</b> is further operative to use the current plant condition <b>58</b> in making a tradeoff between production objectives <b>34</b><i>a </i>and diagnostic objectives <b>34</b><i>b </i>in generating plans <b>54</b> for execution in the plant <b>20</b>, and may also take the current plant condition <b>58</b> into account in performing diagnosis in isolating faulty resources <b>21</b>-<b>24</b> in the plant <b>20</b>.
p-0034The plant condition estimation and updating component <b>44</b> of the diagnosis component <b>40</b> infers the condition of internal components <b>21</b>-<b>24</b> of the plant <b>20</b> at least partially from information in the form or observations <b>56</b> derived from the limited sensors <b>26</b>, wherein the diagnosis component <b>40</b> constructs the plant condition <b>58</b> in one embodiment to indicate both the condition (e.g., normal, worn, broken) and the current operational state (e.g., on, off, occupied, empty, etc.) of the individual resources <b>21</b>-<b>24</b> or components of the plant <b>20</b>, and the belief model <b>42</b> can be updated accordingly to indicate confidence in the conditions and/or states of the resources or components <b>21</b>-<b>24</b>. Thus, the plant condition <b>58</b> and the belief model <b>42</b> may advantageously indicate which resources <b>21</b>-<b>24</b> are suspected of being faulty, and may include fault probability information for one or more of the plant resources <b>21</b>-<b>24</b>.
p-0035In operation, once the producer <b>10</b> has initiated production of one or more plans <b>54</b>, the diagnosis component <b>40</b> receives a copy of the executed plan(s) <b>54</b> and corresponding observations <b>56</b> (along with any operator-entered observations <b>56</b><i>a</i>). The condition estimation and updating component <b>44</b> uses the observations <b>56</b>, <b>56</b><i>a </i>together with the plant model <b>50</b> to infer or estimate the condition <b>58</b> of internal components/resources <b>21</b>-<b>24</b> and updates the belief model <b>42</b> accordingly. The inferred plant condition information <b>58</b> is used by the planner <b>30</b> to directly improve the productivity of the system <b>20</b>, such as by selectively constructing plans <b>54</b> that avoid using one or more resources/components <b>21</b>-<b>24</b> known (or believed with high probability) to be faulty, and/or the producer <b>10</b> may utilize the condition information <b>58</b> in scheduling jobs <b>51</b> to accomplish such avoidance of faulty resources <b>21</b>-<b>24</b>. The exemplary diagnosis component <b>40</b> also provides future prognostic information to update the diagnostic objectives <b>34</b><i>b </i>which may be used by the planner <b>30</b> to spread utilization load over multiple redundant components <b>21</b>-<b>24</b> to create even wear or to facilitate other long term objectives <b>34</b>.
p-0036To improve future productivity, moreover, the diagnosis component <b>40</b> provides the data <b>70</b> to the planner <b>30</b> regarding the expected information gain of various possible production plans <b>54</b>. The planner <b>30</b>, in turn, can use this data <b>70</b> to construct production plans <b>54</b> that are maximally diagnostic (e.g., most likely to yield information of highest diagnostic value). In this manner, the planner <b>30</b> can implement active diagnostics or active monitoring by using carefully generated or modified production plans <b>54</b> to increase information during production (e.g., using ‘diagnostic’ production plans). Moreover, certain diagnostic plans <b>54</b> are non-productive with respect to the plant <b>20</b>, but nevertheless may yield important diagnostic information (e.g., operating the transport mechanisms <b>24</b> in <figref idrefs="DRAWINGS">FIG. 2</figref> such that all the substrate transport paths <b>25</b><i>a</i>, <b>25</b><i>b</i>, and <b>25</b><i>c </i>go in the backward direction away from the output finisher <b>23</b>). Within this space of plans <b>54</b> that do not accomplish any production goals, the operator interface <b>8</b> allows an operator to create diagnostic jobs <b>8</b><i>b </i>via the job description language <b>8</b><i>a</i>, and the diagnosis component <b>40</b> may also include a diagnosis job description language to generate dedicated/explicit diagnostic jobs <b>60</b> which are provided to the producer <b>10</b>. The producer <b>10</b> may then provide these jobs <b>60</b> to the planner <b>30</b> along with the other jobs and objectives <b>51</b> to explicitly request the planner <b>30</b> to advance diagnostic objectives <b>34</b><i>b</i>. The producer <b>10</b> in one implementation may operate a job queue that queues requested customer and diagnostic jobs <b>49</b>, <b>60</b> and the producer <b>10</b> receives component condition updates <b>58</b> from the diagnosis component <b>40</b>. The producer <b>10</b> uses the condition <b>58</b> to choose between customer jobs <b>49</b> and diagnosis jobs <b>60</b>, to tradeoff production efficiency versus diagnostic value in production plans <b>54</b>, and to merge (e.g., interleave) customer jobs <b>49</b> and dedicated diagnostic jobs <b>60</b> when they are compatible and wherein the scheduling thereof can facilitate one or more diagnostic and production objectives or goals <b>34</b>. The diagnosis component <b>40</b> can also provide prognostic information to the planner <b>30</b> to help improve the quality of the plans <b>54</b> with respect to certain criteria. For example, the planner <b>30</b> (e.g., and/or the producer <b>10</b>) is operative to selectively use fault state information to construct from multiple suitable production plans <b>54</b> based on the prognosis of plan alternatives for “robust printing” to distribute workload evenly across different resources <b>21</b>-<b>24</b> in order to reduce the frequency of scheduled or unscheduled maintenance of the plant <b>20</b>.
p-0037Referring to <figref idrefs="DRAWINGS">FIGS. 1-3</figref> and <b>12</b>, in accordance with one or more aspects of the present disclosure, a formulation <b>37</b>, such as a CNF formulation, is generated to represent all possible plans with fixed bound on plan length (i.e. sequence of bounded length executable actions by the system <b>6</b> that can lead from the initial state to the desired goal state). The length measure can be interpreted as either the number of actions in the plan/action-sequence or the number of time-steps in the plan/action-sequence, where multiple actions can be executed in parallel in each time-step. As best shown in <figref idrefs="DRAWINGS">FIG. 12</figref>, the planner <b>30</b> includes the formulation <b>37</b> representing actions that can possibly be executed at different time steps, and thus captures all possible plans with a bounded length, in the plant <b>20</b> including constraints <b>37</b><i>a </i>and variables <b>37</b><i>b </i>for each action to transition the plant <b>20</b> from a starting state <b>402</b><i>s </i>to a goal state <b>402</b><i>g </i>defined by one or more production goals <b>34</b><i>a</i>. The variables <b>37</b><i>b </i>represent actions that can be executed at different time steps and the state variables that may be true at each time step, depending on which actions are selected to execute at the previous time step. The constraints <b>37</b><i>a </i>represent the relations between action variables in the same time step and the relations between actions and their preconditions and effects at the adjacent time steps. The objective functions <b>37</b><i>c </i>are the desirable properties of the plans that transition from the initial to the goal state. A solver <b>38</b>, such as a SAT solver in one embodiment operates to provide one or more solutions <b>39</b> to the formulation <b>37</b> based at least partially on the production goal(s) <b>34</b><i>a</i>, the diagnostic goal(s) <b>34</b><i>b</i>, and the current plant condition <b>58</b>. The planner <b>30</b> further includes a translation component <b>35</b> that translates the solution <b>39</b> into a plan <b>54</b> and provides the plan <b>54</b> to the plant <b>20</b> for execution. The formulation <b>37</b> in one embodiment includes one or more constraints <b>37</b><i>a </i>to be enforced by the solver <b>38</b> to ensure that a resource variable is TRUE if-and-only-if some action that uses that resource <b>21</b>-<b>24</b> is executed. This in return can be used by the objective functions <b>37</b><i>c </i>if those objective functions are related to resource usages.
p-0038The plan selection component <b>32</b><i>a </i>queries the SAT solver <b>38</b> to solve the encoding <b>37</b>, and the solver <b>38</b> returns one among all the possible plans <b>54</b> that satisfy the constraints <b>37</b><i>a</i>. In order to advance one or more diagnostic goals <b>34</b><i>b</i>, the plan selection component <b>32</b><i>a </i>attempts to reduce the set of suspect modules indicated by the belief model <b>42</b> and the current plant condition <b>58</b> provided by the diagnosis component <b>40</b>. In selecting a set of resources <b>21</b>-<b>24</b> and associated actions for the next plan <b>54</b>, the planner <b>30</b> in one embodiment uses the solver <b>38</b> and the formulation <b>37</b>, along with the current plant condition <b>58</b> and the production and diagnostic goals <b>34</b><i>a</i>, <b>34</b><i>b </i>by employing a maximizing entropy heuristic by selecting a set of resources <b>21</b>-<b>24</b> that includes as close as possible to half of the resources <b>21</b>-<b>24</b> suspected of being faulty. To do this, the formulation <b>37</b> includes an objective function <b>37</b><i>c</i>, which asserts the set of resource used by actions in a given plan, evaluated by the solver <b>38</b> to evaluate plans <b>54</b> (solutions <b>39</b>) that can achieve the production goal(s) <b>34</b><i>a</i>. Once the solver <b>38</b> provides the solution <b>39</b>, this is translated into a plan <b>54</b> by the translation component <b>35</b> and the plan <b>54</b> is executed in the plant <b>20</b>.
p-0039Sensor feedback from plan execution (plant observations <b>56</b>) indicate whether the plan <b>54</b> failed or succeeded, from which information the diagnosis component <b>40</b> can narrow down the list of suspected resources <b>21</b>-<b>24</b> and thus update the believe model <b>42</b>. In one embodiment, appropriate formulas <b>37</b><i>c </i>or constraints <b>37</b><i>a </i>are then added to the formulation to reflect those changes. In another embodiment, the updated condition <b>58</b> indicates the updated set of suspected resources <b>21</b>-<b>24</b> and is provided to the planner <b>30</b>, from which the solver <b>38</b> provides the next solution <b>39</b> in accordance with the objective function(s) <b>37</b><i>c</i>. The process continues until the set of suspected resources <b>21</b>-<b>24</b> cannot be further reduced, by which the use of the formulation <b>37</b> and the solver <b>38</b> advances the diagnostic goals <b>34</b><i>b </i>by helping to identify the resource or resources <b>21</b>-<b>24</b> that are causing detected faults. As this process is on-line, moreover, the formulation <b>37</b> and solver <b>38</b> also facilitate the production goal(s) <b>34</b><i>a </i>by performing the production planning and plan execution without interruption of production in the system.
p-0040The solver <b>38</b> in one embodiment is a SAT solver, where the constraints <b>37</b><i>a </i>and variables <b>37</b><i>b </i>for each plant state are Boolean. In this case, the current plant condition <b>58</b> includes an indication of which plant resources <b>21</b>-<b>24</b> are suspected of being faulty and the formulation <b>37</b> includes an objective function <b>37</b><i>c </i>evaluating the number of plant resources <b>21</b>-<b>24</b> suspected of being faulty that are used in a given solution. The formulation <b>37</b>, moreover, may include an objective function <b>37</b><i>c </i>evaluating the number of plant resources <b>21</b>-<b>24</b> suspected of being faulty that are used in a given solution <b>39</b>, and the planner <b>30</b> selects at least one solution <b>39</b> for which number of suspected resources <b>21</b>-<b>23</b> used in the solution <b>39</b> is closest to half of the suspected plant resources <b>21</b>-<b>23</b>. In this regard, the formulation <b>37</b> can be a conjunctive normal form (CNF) formulation, a decomposable disjunctive negation form (DNNF) formulation, a binary decision diagram (BDD) formulation, a programmed instruction (PI) formulation, a negation normal form (NNF) formulation, a hybrid truth maintenance system (HTMS) formulation, etc. Other embodiments are possible in which the formulation is created using other encodings such as constraint satisfaction problem (CSP), constraint satisfaction optimization problem (CSOP), linear programming (LP), integer linear programming (ILP), etc. In this regard, the objective function <b>37</b><i>c </i>may evaluate fault probabilities of plant resources <b>21</b>-<b>24</b>, and the planner <b>30</b> may operate to select at least one solution <b>39</b> based at least partially on the fault probabilities and the solver <b>38</b> need not be a SAT solver but may alternatively be a CSP, CSOP, LP, or ILP solver.
p-0041Referring also to <figref idrefs="DRAWINGS">FIGS. 5 and 6</figref>, exemplary methods <b>200</b> and <b>300</b> are illustrated for constructing plans <b>54</b> for execution in a production system <b>6</b> with a plant <b>20</b> having a plurality of resources <b>21</b>-<b>24</b> to achieve one or more production goals <b>34</b><i>a</i>. While the methods <b>200</b>, <b>300</b> are illustrated and described below in the form of a series of acts or events, it will be appreciated that the various methods of the disclosure are not limited by the illustrated ordering of such acts or events. In this regard, except as specifically provided hereinafter, some acts or events may occur in different order and/or concurrently with other acts or events apart from those illustrated and described herein in accordance with the disclosure. It is further noted that not all illustrated steps may be required to implement a process or method in accordance with the present disclosure, and one or more such acts may be combined. The illustrated methods <b>200</b> and <b>300</b> of the disclosure may be implemented in hardware, software, or combinations thereof, such as in the exemplary control system <b>2</b> described above, and may be embodied in the form of computer executable instructions stored in a computer readable medium, such as in a memory operatively associated with the control system <b>2</b> in one example.
p-0042Production goals <b>34</b><i>a </i>and diagnostic objectives <b>34</b><i>b </i>are received at <b>202</b> and <b>204</b> in the method <b>200</b>. A current plant condition <b>58</b> is determined in the diagnosis component <b>40</b> at <b>206</b> based at least partially on a previously executed plan <b>54</b> and at least one corresponding observation <b>56</b> from the plant <b>20</b> using a plant model <b>50</b>, and expected information gain data <b>70</b> is determined at <b>208</b> based on the current plant condition <b>58</b> and the model <b>50</b>. The planner <b>30</b> receives the plant conditions <b>58</b> at <b>210</b> from the diagnosis component <b>40</b>, and the planner <b>30</b> receives production jobs and objectives <b>51</b> at <b>212</b> from the producer <b>10</b>. At <b>214</b>, the planner <b>30</b> constructs a plan <b>54</b> based at least partially on a diagnostic objective <b>34</b><i>b </i>and the expected information gain data <b>70</b>. At <b>216</b>, the planner <b>30</b> sends the constructed plan <b>54</b> to the plant <b>20</b> for execution and the diagnosis component <b>40</b> receives the plan <b>54</b> and the plant observations <b>56</b> at <b>218</b>. At <b>220</b>, the diagnosis component <b>40</b> updates the plant condition <b>58</b> and updates the expected information gain data <b>70</b>, after which further jobs and objectives <b>51</b> are serviced and the process <b>200</b> continues again at <b>212</b> as described above.
p-0043The plan construction at <b>214</b> may be based at least partially on the current plant condition <b>58</b>, and may include making a tradeoff between production objectives <b>34</b><i>a </i>and diagnostic objectives <b>34</b><i>b </i>based at least partially on the current plant condition <b>58</b>. Moreover, the plan construction at <b>214</b> may include performing prognosis to isolate faulty resources <b>21</b>-<b>24</b> in the plant <b>20</b> based at least partially on the current plant condition <b>58</b>. In certain embodiments, a dedicated diagnostic plan <b>54</b> may be constructed for execution in the plant <b>20</b> based at least partially on at least one diagnostic objective <b>34</b><i>b</i>, a diagnostic job <b>60</b>, <b>8</b><i>b</i>, and the current plant condition <b>58</b>, and the plan construction may provide for selectively interleaving dedicated diagnostic and production plans <b>54</b> based on at least one production objective <b>34</b><i>a </i>and at least one diagnostic objective <b>34</b><i>b</i>. Further embodiments of the method <b>200</b> may also include allowing an operator to define a diagnostic plan <b>8</b><i>b </i>using a diagnosis job description language <b>8</b><i>a </i>and receiving operator observations <b>56</b><i>a</i>, with the plan selection/generation at <b>216</b> being based at least partially on the operator observations <b>56</b><i>a. </i>
p-0044<figref idrefs="DRAWINGS">FIG. 6</figref> illustrates further details of a formulation/solver approach to the plan constructions at <b>214</b> of <figref idrefs="DRAWINGS">FIG. 5</figref>. At <b>302</b> in <figref idrefs="DRAWINGS">FIG. 6</figref>, a formulation <b>37</b> is provided representing possible actions in the plant <b>20</b> including constraints <b>37</b><i>a </i>between actions and between actions and state variables and variables <b>37</b><i>b </i>representing all actions in the formulation and all state variables within the bounded plan length to transition the plant <b>20</b> from a starting state <b>402</b><i>s </i>to a goal state <b>402</b><i>g </i>(<figref idrefs="DRAWINGS">FIG. 7</figref> below) defined by at least one production goal <b>34</b><i>a</i>. At <b>304</b> of the plan construction, all possible product locations and resource states are defined in the plant <b>20</b>, and variables are defined at <b>306</b> for all the system actions and state variables. A solver formulation is constructed at <b>308</b> including the variables <b>37</b><i>b </i>and constraints <b>37</b><i>c</i>. The formulation <b>37</b>, moreover, may be constructed at <b>308</b> to include one or more objective functions <b>37</b><i>c</i>. The method <b>300</b> also provides for solving the formulation <b>37</b> at <b>310</b> to provide at least one solution <b>39</b> to the formulation <b>37</b> based at least partially on at least one production goal <b>34</b><i>a</i>, at least one diagnostic goal <b>34</b><i>b</i>, and the current plant condition <b>58</b>. In the illustrated embodiment, the formulation <b>37</b> is sent to the solver <b>38</b> at <b>312</b> (such as in a SAT solver query), and the solution is received at <b>314</b> from the solver <b>38</b>. In one possible embodiment, the solution at <b>310</b> includes evaluating an objective function <b>37</b><i>c </i>based on the number of plant resources <b>21</b>-<b>24</b> suspected of being faulty that are used in a given solution <b>39</b>, and selecting a least one solution <b>39</b> for which number of suspected resources <b>21</b>-<b>24</b> used in the solution <b>39</b> is closest to half of the suspected plant resources <b>21</b>-<b>24</b>. This embodiment is suitable for Boolean formulations <b>37</b> and solvers <b>38</b>. In another possible embodiment, solving the formulation <b>37</b> at <b>310</b> further includes evaluating an objective function <b>37</b><i>c </i>with respect to fault probabilities of plant resources <b>21</b>-<b>24</b>, as well as selecting at least one solution <b>39</b> based at least partially on the fault probabilities. The solution is then translated at <b>320</b> into a plan <b>54</b>, which is then provided (<b>216</b> in <figref idrefs="DRAWINGS">FIG. 5</figref>) to the plant <b>20</b> for execution.
p-0045In accordance with further aspects of the present disclosure, a computer readable medium is provided, which has computer executable instructions for performing the steps of determining a current plant condition <b>58</b> based at least partially on a previously executed plan <b>54</b>, at least one corresponding observation <b>56</b> from the plant <b>20</b>, and a plant model <b>42</b>. The medium also includes computer executable instructions for providing a formulation <b>37</b> representing possible actions in the plant <b>20</b> including constraints <b>37</b><i>a </i>and variables <b>37</b><i>b </i>for each action to transition the plant <b>20</b> from a starting state <b>402</b><i>s </i>to a goal state <b>402</b><i>g </i>defined by at least one production goal <b>34</b><i>a</i>, and for solving the formulation <b>37</b> to provide at least one solution <b>39</b> to the formulation <b>37</b> based at least partially on at least one production goal <b>34</b><i>a</i>, the at least one diagnostic goal <b>34</b><i>b</i>, and the current plant condition <b>58</b>. Further instructions are provided for translating the solution <b>39</b> into a plan <b>54</b> and providing the plan <b>54</b> to the plant <b>20</b> for execution. In one embodiment of the computer readable medium, the computer executable instructions for solving the formulation <b>37</b> include computer executable instructions for evaluating an objective function <b>37</b><i>c </i>based on the number of plant resources <b>21</b>-<b>24</b> suspected of being faulty that are used in a given solution <b>39</b>, and for selecting at least one solution <b>39</b> for which number of suspected resources <b>21</b>-<b>24</b> used in the solution <b>39</b> is closest to half of the suspected plant resources <b>21</b>-<b>24</b>. In another embodiment, the computer readable medium includes computer executable instructions for evaluating an objective function <b>37</b><i>c </i>with respect to fault probabilities of plant resources <b>21</b>-<b>24</b>, and selecting at least one solution <b>39</b> based at least partially on the fault probabilities.
p-0046By the above-described approaches, the control system <b>2</b> implements efficient on-line active or pervasive diagnosis in controlling the plant <b>20</b> through a combination of model-based probabilistic inference in the diagnosis component <b>40</b> with decomposition of the information gain associated with executing a given plan <b>54</b> using an efficient heuristic target search in the planner <b>30</b>. In this active diagnosis technique, specific inputs or control actions in the form of plans <b>54</b> are constructed by the planner <b>30</b> with the help of the diagnosis component <b>40</b> to maximize or increase the amount and/or quality of diagnostic information obtained from the controlled system plant <b>20</b>. In the context of the exemplary modular printing system plant <b>20</b> of <figref idrefs="DRAWINGS">FIG. 2</figref>, the planner <b>30</b> operates to construct the sequence of actions (plan <b>54</b>) that transfers substrate sheets through the system <b>20</b> to generate a requested output for a given print job (e.g. to satisfy a production goal), using pervasive diagnosis to aid in plan construction. One particular production objective <b>34</b><i>a </i>in this system <b>20</b> is to continue printing even if some of the print engines <b>22</b> fail or some of the paper handling modules <b>24</b> fail or jam. In this exemplary modular printing system example <b>20</b>, moreover, there are only output type sensors <b>26</b> preceding the finisher <b>23</b>, and as a result, a plan <b>54</b> consisting of numerous actions must be executed before a useful observation <b>56</b> can be made. The diagnostic component <b>40</b> updates its belief model <b>42</b> and the current condition <b>58</b> to be consistent with the executed plan <b>54</b> and the observations <b>56</b>. The diagnosis component <b>40</b> forwards updated condition information <b>58</b> and the expected information gain data <b>70</b> to the planner <b>30</b>. The model <b>50</b> describes the plant system <b>20</b> as a state machine with all possible actions A that the plant <b>20</b> can accommodate. Actions are defined by preconditions and post-conditions over the system state. As such, an action requires the system <b>20</b> to be in a certain state in order to be executable and modifies the system state when executed. The system <b>20</b> is controlled by plan p (<b>54</b>) that is comprised of a sequence of actions a<sub>1</sub>, a<sub>2</sub>, . . . , a<sub>n </sub>drawn from the set A of possible actions. Execution of an action potentially changes the system state, and part of the system state may represent the state of a product <b>52</b> at any given time, particularly if the action is part of a production plan <b>54</b>. Further, internal constraints of the system <b>54</b> limit the set of plans <b>54</b> to a subset of all possible sequences (e.g., the plan space <b>100</b> in <figref idrefs="DRAWINGS">FIG. 4</figref> above). Moreover, the execution of actions of a given plan p in the system <b>20</b> may result in only a single observable plan outcome or observation O (e.g., observation <b>56</b> from sensor <b>26</b>).
p-0047<figref idrefs="DRAWINGS">FIG. 7</figref> illustrates an exemplary state/action diagram <b>400</b> depicting possible plans in the plant <b>20</b> for transitioning the system state from a starting state S to a goal state G. In this example, the system state nodes <b>402</b> include the starting state S <b>402</b><i>s</i>, the goal stage G <b>402</b><i>g</i>, and four intermediate states <b>402</b><i>a</i>-<b>402</b><i>d </i>for nodes A-D, respectively. A given plan <b>54</b> for this example proceeds by following actions <b>404</b> through the diagram <b>400</b> to ultimately reach the goal G <b>402</b><i>g</i>. One possible plan <b>54</b> that satisfies such a production goal moves the system through the state sequence [S, A, C, G] through actions <b>404</b><i>sa</i>, <b>404</b><i>ac</i>, and <b>404</b><i>cg </i>as shown in <figref idrefs="DRAWINGS">FIG. 7</figref>. Assuming for illustrative purposes that this plan <b>54</b> results in an abnormal outcome (fault or failure) caused by a faulty action <b>404</b><i>ac </i>between nodes A and C (action a<sub>A,C</sub>), due to a single persistent fault in one of the system resources <b>21</b>-<b>24</b>, the diagnosis component <b>40</b> would determine from the plan <b>54</b> and the resulting fault observation <b>56</b> that all of the actions <b>404</b><i>sa</i>, <b>404</b><i>ac</i>, and <b>404</b><i>cg </i>and the associated system resources <b>21</b>-<b>24</b> used along the plan path are (without further information) suspected of being faulty. Assuming a single persistent fault, there are three positive probability hypotheses corresponding to the suspected actions {{a<sub>S,A</sub>}, {a<sub>A,C</sub>}, {a<sub>C,G</sub>}}. Absent additional information, the diagnosis component <b>40</b> in one embodiment initially assigns equal probabilities {⅓}, {⅓}, {⅓} to these suspected actions/resources.
p-0048The solver <b>38</b> uses the graph structure embodied in the formulation <b>37</b> and probability estimates provided by the diagnosis component <b>40</b> to solve the formulation <b>37</b> and its objective function(s) <b>37</b><i>c </i>to provide the solution <b>39</b> that can be translated into a plan <b>54</b> for execution in the plant <b>20</b>. In the example shown in <figref idrefs="DRAWINGS">FIG. 7</figref>, the diagnosis component <b>40</b> assigns lower and upper bounds [L,U] to the nodes <b>402</b>, and these bound values are sent to the planner <b>30</b> as part of the current system condition <b>58</b>. As an illustrative example, the action a<sub>D,G </sub>leading from state D to the goal state G in <figref idrefs="DRAWINGS">FIG. 7</figref> was not part of the observed plan <b>54</b> that failed, and is therefore not a candidate hypothesis, and this action has a zero probability of being the source of the assumed single persistent system fault. In this example, moreover, there are no other possible plans <b>54</b> from D to G, so both the upper and lower bound for any plan ending in state D is zero, and the node D is thus labeled [<b>0</b>,<b>0</b>] in <figref idrefs="DRAWINGS">FIG. 7</figref>. Likewise, State B <b>402</b><i>b </i>has a lower bound of zero as plans <b>54</b> passing through state B can be completed by an action a<sub>B,D </sub><b>404</b><i>bd </i>that does not use a suspected action <b>404</b> and ends in state D which has a zero lower bound. State B in this example has an upper bound of ⅓ since it can be completed by an unsuspected action a<sub>B,C </sub><b>404</b><i>bc </i>to state C <b>402</b><i>c </i>which in turn has both upper and lower bounds with ⅓ probability of being abnormal. The diagnosis component <b>40</b> continues this analysis recursively to determine bounds on the probability of a suffix sub-plan being abnormal, and sends these as part of the information gain data <b>70</b> to the planner <b>30</b>.
p-0049The planner <b>30</b> in one embodiment uses these bounds in solving the formulation to identify and construct a plan <b>54</b> that achieves or most closely approximates a target probability T. For example, one possible plan <b>54</b> begins from the start node S <b>402</b><i>s </i>and includes a first action a<sub>S,A</sub>, which was part of the plan <b>54</b> that was observed to be abnormal. If the action a<sub>S,A </sub><b>404</b><i>ac </i>is used in a plan, it will add ⅓ probability to the chance of failure as it is a suspect. After a<sub>S,A</sub>, the plant <b>20</b> would be in state A, and a plan <b>54</b> could be completed through D by including actions <b>404</b><i>ad </i>and <b>404</b><i>dg </i>to arrive at the goal state G <b>402</b><i>g</i>. The action a<sub>A,D </sub>itself has a zero probability of being abnormal since it was not involved in the previously observed faulty plan, and thus a plan completion through state node D <b>402</b><i>d </i>adds zero probability of being abnormal. From node A <b>402</b><i>a</i>, a plan <b>54</b> could alternatively be completed through node C, as in the originally observed plan <b>54</b>. The corresponding action a<sub>A,C </sub><b>404</b><i>ac </i>adds ⅓ probability of failure to such a plan and thus adds another ⅓ probability of being abnormal. The solver <b>38</b> is provided with a formulation <b>37</b> that may include an objective function <b>37</b><i>c </i>that considers either or both of the suspected/exonerated status of a given resource/action in the plant <b>20</b> and/or the currently estimated/updated fault probabilities for the resources/actions.
p-0050One embodiment of the solver <b>38</b> preferentially constructs plans <b>54</b> by identifying the plan (formulation solution <b>39</b>) that provides the maximum diagnostic value. In this regard, the execution of a plan <b>54</b> having the maximum uncertainty (e.g., probability of failure closest to 0.5, or the plan using close to half the currently suspected resources/actions) will be most informative as far as refining the belief model <b>42</b> of the diagnosis component <b>40</b>. The solver <b>38</b> in these embodiments therefore evaluates the objective function <b>37</b> in a manner that predicts total plan abnormality probability (or the number of suspected actions/resources) for a given set of initial and goal states <b>402</b><i>s </i>and <b>402</b><i>g</i>, in the illustrated example, to move the plant <b>20</b> through the state node sequence [S, A, C, G] or [S, A, D, G]. The lower bound of the total plan is ⅓ in this case, as determined by ⅓ from a<sub>S,A </sub>plus 0 from the completion a<sub>A,D</sub>,a<sub>D,G</sub>, and the upper bound is 3/3 equal to the sum of ⅓ from a<sub>S,A </sub>plus ⅓ each from a<sub>A,C </sub>and a<sub>C,G</sub>. If this solution is computed through [a<sub>A,C</sub>,a<sub>C,G</sub>] the resulting plan <b>54</b> will fail with probability 1, and therefore nothing is to be learned from constructing such a plan <b>54</b>. If the solution <b>39</b> is instead completed through the suffix [a<sub>A,D</sub>,a<sub>D,G</sub>] the failure probability of the total plan will be ⅓ which is closer to the optimally informative probability T=0.5. In this case, the solver <b>38</b> will provide a solution representing a plan <b>54</b> [S, A, D, G] by evaluation of the objective function <b>37</b><i>c</i>. This plan <b>54</b> may or may not fail, and in either case something may be learned from a diagnostic perspective. For instance, if the plan [S, A, D, G] fails, the diagnosis component <b>40</b> learns that node a<sub>S,A </sub>was the failed action/resource (for the assumed single persistent fault scenario), and if the plan <b>54</b> is successful, the diagnostic component <b>40</b> can further refine the belief model <b>42</b> by eliminating action/resource <b>404</b><i>sa </i>as a fault suspect (exonerated).
p-0051It is noted that there is no guarantee that a solution exists for any given value between the bounds. The diagnosis component <b>40</b> in one embodiment recursively calculates the bounds starting from all goal states, where a goal state has an empty set of suffix plans P<sub>G→G</sub>=Ø and therefore has a set lower bound L<sub>G</sub>=0 and a set upper bound U<sub>G</sub>=0. For each new state S<sub>m</sub>, the diagnosis component <b>40</b> calculates the corresponding bounds based at least partially on the bounds of all possible successor states SUC(S<sub>m</sub>) and the failure probability of the connecting action a<sub>Sm,Sn </sub>between S<sub>m </sub>and a successor state S<sub>n</sub>. In this regard, a successor state S<sub>n </sub>of a state S<sub>m </sub>is any state that can be reached in a single step starting from the state S<sub>m</sub>. In the case where a single fault is assumed, the failure probability added to a plan p<sub>I→S</sub><sub><sub2>m </sub2></sub>by concatenating an action a<sub>S</sub><sub><sub2>m</sub2></sub><sub>. . . S</sub><sub><sub2>n</sub2></sub>, is independent from the plan p<sub>I→S</sub><sub><sub2>m </sub2></sub>if
p-0052<maths id="MATH-US-00001" num="00001"><math overflow="scroll"><mrow><mrow><msub><mi>H</mi><msub><mi>p</mi><mrow><mi>l</mi><mo>-></mo><msub><mi>S</mi><mi>m</mi></msub></mrow></msub></msub><mo>⋂</mo><msub><mi>H</mi><msub><mi>a</mi><mrow><msub><mi>S</mi><mi>m</mi></msub><mo>,</mo><msub><mi>S</mi><mi>n</mi></msub></mrow></msub></msub></mrow><mo>=</mo><mrow><mi>ϕ</mi><mo>.</mo></mrow></mrow></math></maths><br /> The diagnosis component <b>40</b> determines the lower bound for S<sub>m </sub>by the action probabilities linking S<sub>m </sub>to its immediate successors and the lower bounds on these successors, and computes the upper bounds in analogous fashion with L<sub>Sm</sub>=min<sub>SnεSUC(Sm)</sub>[Pr(ab(a<sub>Sm,Sn</sub>))+L<sub>Sn</sub>], and U<sub>Sm</sub>=max<sub>SnεSUC(Sm)</sub>[Pr(ab(a<sub>Sm,Sn</sub>))+U<sub>Sn</sub>].
p-0053As noted above, the most informative plan <b>54</b> is one whose total failure probability is T=0.5 in a preferred implementation for an assumed persistent single fault. Given an interval describing bounds on the total abnormality probability of a plan I(p<sub>I→S</sub><sub><sub2>n</sub2></sub>), the planner <b>30</b> can therefore construct an interval describing how close the abnormality probabilities will be to T according to the equation |T−I(p<sub>I→S</sub><sub><sub2>n</sub2></sub>)|. This absolute value folds the range around T, and if the estimated total abnormality probability of the plan <b>54</b> straddles target probability T, then the interval |T−I(p<sub>I→S</sub><sub><sub2>n</sub2></sub>)| straddles zero and the interval will range from zero to the absolute max of I(p<sub>I→S</sub><sub><sub2>n</sub2></sub>). The exemplary solver <b>38</b> can employ a search heuristic F(p<sub>I→S</sub><sub><sub2>n</sub2></sub>)=min(|T−I(p<sub>I→S</sub><sub><sub2>n</sub2></sub>)|) from the diagnosis component <b>40</b> as part of the objective function evaluation, although other techniques are contemplated within the scope of the disclosure which allow target searching to provide a solution <b>39</b> representing a plan or plans <b>54</b> having high relative informative value. The exemplary function F has some advantageous properties. For example, whenever the predicted total plan abnormality probability lies between L and U, F is zero. Also, plans <b>54</b> may exist whose abnormality probability exactly achieves the target probability T. Moreover, in all cases F(p<sub>I−S</sub><sub><sub2>n</sub2></sub>) represents the closest any plan that goes through a state S<sub>n </sub>can come to the target abnormality probability exactly T. The solver <b>38</b> in one implementation operates to evaluate the objective function <b>37</b><i>c </i>for a set of solutions <b>39</b> that can provide the required production actions to move the system from the start state <b>402</b><i>s </i>to the goal state <b>402</b><i>g</i>, and from this evaluation determines the solution <b>39</b> that best achieves the objective.
p-0054The planner <b>30</b> can also facilitate the selective avoidance of known faulty resources <b>21</b>-<b>24</b> in the plant <b>20</b> via the component <b>32</b><i>b</i>, as well as generation of plans <b>54</b> so as to help determine the source of faults observed during production. For example, the planner <b>30</b> operating the above described modular printing system plant <b>20</b> of <figref idrefs="DRAWINGS">FIG. 2</figref> can be influenced by diagnostic objectives <b>34</b><i>b </i>(<figref idrefs="DRAWINGS">FIG. 3</figref>) to preferentially construct paper paths via appropriate routing of substrates to use different subsets of routing and printing components <b>24</b> and <b>22</b>, where a given sequence of these paths can be used to isolate the cause of an observed fault. Moreover, multiple plant pathways, redundancy of plant resources, and the capability to operate resources at different speeds, voltage levels, temperatures, or other flexibility in setting operational parameters of the plant resources allows the planner <b>30</b> to tailor active production plan generation for intelligent diagnostic information gain despite lack of complete sensor coverage in a given plant <b>20</b>. In this manner, the modularity and flexibility of a given system <b>20</b> can be exploited by the pervasive diagnostic features of the control system <b>2</b> to facilitate diagnostic objectives <b>34</b><i>b </i>while also providing benefits with regard to flexibility in achieving production goals.
p-0055The control system <b>2</b> can thus provide the advantages of performing diagnosis functions during production, even with limited sensor capabilities, with the flexibility to schedule dedicated diagnostic plans <b>54</b> if/when needed or highly informative. In the case of explicit dedicated diagnosis, the planner <b>30</b> focuses on the needs of the diagnosis component <b>40</b> and thus creates/selects plans <b>54</b> that maximize information gain with respect to the fault hypotheses. The system <b>2</b> also allows the generation of plans <b>54</b> solely on the basis of production goals, for instance, where there is only one plan <b>54</b> that can perform a given production task and the planner <b>30</b> need not chose from a set of equivalent plans, thereby limiting the information gathering to the case of passive diagnosis for that plan.
p-0056In the exemplary modular printing system example <b>20</b> above, therefore, the control system <b>2</b> can choose to parallelize production to the extent possible, use specialized print engines <b>22</b> for specific printing tasks, and have the operational control to reroute sheet substrates around failed modules as these are identified. In this implementation, the planner <b>30</b> may receive a production print job <b>51</b> from a job queue (in the producer <b>10</b>, or a queue in the planner <b>30</b>), and one or more plans <b>54</b> are constructed as described above to implement the job <b>51</b>. The observations <b>56</b> are provided to the diagnosis component <b>40</b> upon execution of the plan(s) <b>54</b> to indicate whether the plan <b>54</b> succeeded without faults (e.g., not abnormal), or whether an abnormal fault was observed (e.g., bent corners and/or wrinkles detected by the sensors <b>26</b> in printed substrates). The diagnosis component <b>30</b> updates the hypothesis probabilities of the belief model <b>42</b> based on the executed plan <b>54</b> and the observations <b>56</b>. When a fault occurs, the planner <b>30</b> constructs the most informative plan <b>54</b> in subsequent scheduling so as to satisfy the diagnostic objectives <b>34</b><i>b</i>. In this regard, there may be a delay between submitting a plan <b>54</b> to the plant <b>20</b> and receiving the observations <b>56</b>, and the planner <b>30</b> may accordingly plan production jobs <b>51</b> from the job queue without optimizing for information gain until the outcome is returned in order to maintain high short term productivity in the plant <b>20</b>.
p-0057Using the above described pervasive diagnosis, the plan construction in the planner <b>30</b> is biased to have an outcome probability closest to the target T, and this bias can create paths capable of isolating faults in specific actions. Prior to detection of a system fault, the plant <b>20</b> may produce products <b>52</b> at a nominal rate r<sub>nom</sub>, with diagnosis efforts beginning once some abnormal outcome is observed. The length of time required to diagnose a given fault in the system (e.g., to identify faulty plant components or resources <b>21</b>-<b>24</b>) will be short if dedicated, explicit diagnostic plans <b>54</b> are selected, with pervasive diagnosis approaches taking somewhat longer, and passive diagnostic techniques taking much longer and possibly not being able to completely diagnose the problem(s). With regard to diagnosis cost, however, explicit dedicated diagnosis results in high production loss (production is halted), while purely passive diagnosis incurs the highest expected repair costs due to its lower quality diagnosis. The pervasive diagnosis aspects of the present disclosure advantageously integrate diagnostic objectives <b>34</b><i>b </i>into production planning by operation of the planner <b>30</b>, and therefore facilitate realization of a lower minimal total expected production loss in comparison to passive and explicit diagnosis.
p-0058The passive diagnostic aspects of the disclosure, moreover, are generally applicable to a wide class of production manufacturing problems in which it is important to optimize efficiency but the cost of failure for any one job is low compared to stopping the production system to perform explicit diagnosis. In addition, the disclosure finds utility in association with non-manufacturing production systems, for example, service industry organizations can employ the pervasive diagnostic techniques in systems that produce services using machines, software, and/or human resources. Moreover, the disclosure is not limited to SAT solver <b>38</b> and Boolean formulations <b>37</b>, wherein other formulation and solution techniques can be employed in which the clauses represent failed plans and each satisfying assignment is interpreted as a valid diagnosis.
p-0059Referring now to FIGS. <b>3</b> and <b>8</b>-<b>12</b>, the planner <b>30</b> employs a solver <b>38</b> (<figref idrefs="DRAWINGS">FIG. 3</figref>), such as a Boolean satisfiability problem (SAT) solver, in constructing the plans <b>54</b> for execution in the plant <b>20</b> using the guidance of the diagnosis component <b>40</b>. In this implementation, the pervasive diagnosis tasks are translated into logical encodings (e.g., CNF, DNNF, BDD, PI, HTMS) to include all possible bounded length plans, and the encoding can be solved in the planner <b>30</b> using a SAT solver <b>38</b> to answer diagnosis queries such as finding a plan that uses a certain set of modules <b>22</b> in the plant <b>20</b>. This technique allows the planner <b>30</b> to submit queries to the SAT solver <b>38</b> to yield a solution <b>39</b> which can be translated into plans <b>54</b>.
p-0060<figref idrefs="DRAWINGS">FIG. 8</figref> schematically illustrates this approach in a diagram <b>500</b>, where the process begins with a CNF formulation <b>37</b> that represents all possible plans with fixed bound on the number of actions or the number of time steps in the plan (i.e., a sequence of bounded length executable actions by a given system that lead from the initial to the goal state). <figref idrefs="DRAWINGS">FIG. 9</figref> illustrates one such formulation <b>37</b> including Boolean variables <b>520</b> and constraints <b>522</b>, where the variables <b>520</b> (V in <figref idrefs="DRAWINGS">FIG. 9</figref>) represent actions and/or resources <b>21</b>-<b>24</b> in the plant <b>20</b> with Boolean values that transition the state of the plant <b>20</b> from one location (X in the figure) to another. The constraints <b>522</b> in this formulation require that only one action is performed in each time step (constraint <b>522</b><i>a</i>), that a product <b>52</b> is in only one plant location at a time (constraint <b>522</b><i>b</i>), and that each action implies its preconditions and effects (condition <b>522</b><i>c</i>). Additional variables corresponding to resources <b>21</b>-<b>24</b> may be included in the formulation <b>37</b>. Additional formulas may also be included to ensure that a module variable is TRUE only if some action that uses that resource is executed.
p-0061In one embodiment, at <b>502</b> in <figref idrefs="DRAWINGS">FIG. 8</figref>, the plan construction component <b>32</b> formulates the plan generation problem based on the production and diagnostic objectives <b>34</b><i>a </i>and <b>34</b><i>b</i>, and uses the current plant condition <b>58</b> from the diagnosis component <b>40</b> to derive a list of suspected actions and/or plant resources <b>21</b>-<b>24</b> at <b>512</b>. These are provided to a translation component <b>504</b> in the planner <b>30</b> that generates a SAT formulation <b>514</b> (e.g., formulation <b>37</b> in <figref idrefs="DRAWINGS">FIGS. 3 and 12</figref>). The SAT problem formulation <b>514</b> is then provided to the SAT solver <b>38</b>, such as by a query to the solver component <b>38</b> in <figref idrefs="DRAWINGS">FIG. 3</figref>, and the solver <b>38</b> generates a SAT solution <b>516</b> (e.g., solution <b>39</b> in <figref idrefs="DRAWINGS">FIG. 12</figref>). The solution <b>516</b> is then translated at <b>808</b> to yield a generated plan <b>54</b> at <b>518</b> for execution in the plant <b>20</b>. The plan <b>54</b> and the corresponding observations <b>56</b> are provided to the diagnosis component <b>40</b> which updates the current condition <b>58</b> and the belief model <b>42</b> to reduce the set of suspected modules <b>21</b>-<b>24</b>, and the diagnosis component <b>40</b> or the planner <b>30</b> add appropriate formulas to the SAT encoding to reflect those changes.
p-0062<figref idrefs="DRAWINGS">FIG. 10</figref> shows a schematic diagram <b>530</b> illustrating the resulting graph of a solution <b>39</b> from the SAT solver <b>38</b> for this example, in which the path through nodes S, A, D, G is translated by extracting the actions that have their SAT variable equal to TRUE in the solution <b>39</b> to yield the plan <b>54</b>. Moreover, the solver <b>38</b> is aware of how many suspected actions/resources are in the solution <b>39</b>. This embodiment is flexible, as the formulation or encoding <b>37</b> can be easily tightened or loosened to answer different queries by adding/removing additional clauses (constraints) and/or variables. For example, this approach can enforce the plans to use a pre-determined subset of (suspected) actions/modules. Variations are possible, for example, using Max-SAT solvers <b>38</b> and formulations <b>37</b> to find a solution <b>39</b> that maximizes the number of clauses, or Weighted Max-SAT which assigns weights to clauses and finds a solution that maximizes the total satisfied weights. The SAT approach also allows Model-counting to quickly count the number of solutions, and the SAT solver <b>38</b> can return multiple solutions for subsequent evaluation of an objective function <b>37</b><i>c </i>or some other final selection criteria. Moreover, quantified Boolean formula (QBF) can be employed to extend SAT with quantifications.
p-0063Referring also to <figref idrefs="DRAWINGS">FIG. 11</figref>, the SAT formulation <b>37</b> can be expressed as a decomposable disjunctive negation form (d-DNNF) representation of SAT. <figref idrefs="DRAWINGS">FIG. 11</figref> is a schematic diagram illustrating an exemplary d-DNNF representation <b>540</b> of the formulation of <figref idrefs="DRAWINGS">FIGS. 9 and 10</figref> using Boolean operators. Moreover, there are many ways to represent the same set of variables and constraints in SAT, such as CNF, DNF, NNF. d-DNNF allows many SAT queries to be answered easier, such as to find the solution <b>39</b> that goes through as close to half the suspected actions/modules. In this formulation, the solver <b>38</b> tries to find the solution <b>39</b> that has the same number of positive and negative assignments for suspected actions/resources. The system could also employ a variation of model-counting in d-DNNF, in which each (partial) SAT solution is labeled with the number of suspected actions/resources currently assigned TRUE, and for each possible value, keep one full solution <b>39</b>. Then, all stored plans are compared and the one closest to 50% is selected for translation into a plan <b>54</b>, where this variant can employ branch-and-bound for possible improvement. Other possible alternatives can be used, including without limitation constraint satisfaction problem (CSP) and constraint satisfaction optimization problem (CSOP), mixed integer linear programming (MILP) such as linear programming (LP) formulation or integer linear programming (ILP) formulations. In each of these techniques, the planner <b>30</b> can be operative to receive a suspected set of component resources/actions from the diagnosis component <b>40</b>, search for a solution that satisfies a production goal <b>34</b><i>a</i>, formulate the problem as a suitable substrate (e.g. CSP, CSOP, LP, ILP), solve the resulting formulation while trying to use ½ of the resources/actions in suspected set (this maps to a problem of minCost sat), and compile to d-DNNF for efficiency.
p-0064For a MILP formulation, the variables <b>37</b><i>b </i>can be any real value (LP) or integer value (ILP), and the constraints <b>37</b><i>a </i>can be linear constraints, such as v1.X1+v2.X2+ . . . +vn.Xn≦/=V (vi are constants). The objective function <b>37</b><i>c </i>in one example could be to minimize Σ ni.Xi, where ni are constants. The solution in this case could be any value assignments to all variables Xi that optimize for the objective function. LP/ILP can handle “continuous” variables, and is thus potentially more expressive than SAT. Whereas MILP implementations may not be as naturally suitable for simple classes of planning/diagnosis problems, these can potentially be useful for more complex problems. MILP solvers <b>38</b>, moreover, have an objective function and can thus search for the optimal solution <b>37</b>, instead of just any solution <b>37</b>.
p-0065CSP implementations are possible in which the variables <b>37</b><i>b </i>can be any set of discrete values (e.g. Color={Red, Green, Blue}), and may be implemented as a generalized version of SAT for two values. This can include continuous/integer values, and may thus subsume LP/ILP. The CSP constraints <b>37</b><i>a </i>can be any constraint between different assignments of different variables (e.g. Color<b>1</b>=Red→Color<b>2</b>≠Green), and the solution <b>39</b> can be any value assignments to all variables that satisfy all constraints <b>37</b><i>a </i>(e.g., like SAT). CSOP implementations can also optimize for a given objective function like LP/ILP. Using the above example of <figref idrefs="DRAWINGS">FIG. 7</figref>, exemplary CSP variables can be defined as locations with variable values indicating actions that lead to the locations. CSP implementations may be the most versatile framework, in which variables with discrete values are most common, and CSP in general can handle any type of variable with any type of values.
p-0066The above examples are merely illustrative of several possible embodiments of the present disclosure, wherein equivalent alterations and/or modifications will occur to others skilled in the art upon reading and understanding this specification and the annexed drawings. In particular regard to the various functions performed by the above described components (assemblies, devices, systems, circuits, and the like), the terms (including a reference to a “means”) used to describe such components are intended to correspond, unless otherwise indicated, to any component, such as hardware, software, or combinations thereof, which performs the specified function of the described component (i.e., that is functionally equivalent), even though not structurally equivalent to the disclosed structure which performs the function in the illustrated implementations of the disclosure. In addition, although a particular feature of the disclosure may have been disclosed with respect to only one of several embodiments, such feature may be combined with one or more other features of the other implementations as may be desired and advantageous for any given or particular application. Also, to the extent that the terms “including”, “includes”, “having”, “has”, “with”, or variants thereof are used in the detailed description and/or in the claims, such terms are intended to be inclusive in a manner similar to the term “comprising”. It will be appreciated that various of the above-disclosed and other features and functions, or alternatives thereof, may be desirably combined into many other different systems or applications, and further that various presently unforeseen or unanticipated alternatives, modifications, variations or improvements therein may be subsequently made by those skilled in the art which are also intended to be encompassed by the following claims.
Contents5
11 sheets
Sheet 1 Sheet 2 Sheet 3 Sheet 4 Sheet 5 Sheet 6 Sheet 7 Sheet 8 Sheet 9 Sheet 10 Sheet 11
Every citation, both ways
| Document | Relation | Office | Cited during |
|---|---|---|---|
| US2014093984A1 | Cited by | United States of America | Pre-grant |
| US9336490B2 | Cited by | United States of America | Applicant |
| US11262200B2 | Cited by | United States of America | Search report |
| US2011172800A1 | Cited by | United States of America | Pre-grant |
| US2015186335A1 | Cited by | United States of America | Pre-grant |
| US9484235B2 | Cited by | United States of America | Search report |
| US8655472B2 | Cited by | United States of America | Search report |
| US2004002776A1 | Cites | United States of America | Search report |
| US2004088207A1 | Cites | United States of America | Applicant |
| US2006064291A1 | Cites | United States of America | Applicant |
| US2006230313A1 | Cites | United States of America | Applicant |
| US2007043607A1 | Cites | United States of America | Applicant |
| US2007129834A1 | Cites | United States of America | Applicant |
| US2008010230A1 | Cites | United States of America | Search report |
| US2008010522A1 | Cites | United States of America | Applicant |
| US2008039969A1 | Cites | United States of America | Search report |
| US2008062211A1 | Cites | United States of America | Applicant |
| US2008071716A1 | Cites | United States of America | Applicant |
| US2008148257A1 | Cites | United States of America | Applicant |
| US2008215509A1 | Cites | United States of America | Search report |
| US2009043809A1 | Cites | United States of America | Search report |
| US2009183777A1 | Cites | United States of America | Search report |
| US2009204234A1 | Cites | United States of America | Search report |
| US2009204237A1 | Cites | United States of America | Search report |
| US2009204245A1 | Cites | United States of America | Search report |
| US2009204267A1 | Cites | United States of America | Search report |
| US2009210081A1 | Cites | United States of America | Search report |
| US2009228408A1 | Cites | United States of America | Search report |
| US2009240366A1 | Cites | United States of America | Search report |
| US2009265025A1 | Cites | United States of America | Search report |
| US2010010654A1 | Cites | United States of America | Search report |
| US2010138026A1 | Cites | United States of America | Search report |
| US4563746A | Cites | United States of America | Search report |
| US5006992A | Cites | United States of America | Search report |
| US5009833A | Cites | United States of America | Search report |
| US5023045A | Cites | United States of America | Search report |
| US5070468A | Cites | United States of America | Search report |
| US5214577A | Cites | United States of America | Applicant |
| US5268834A | Cites | United States of America | Search report |
| US5305426A | Cites | United States of America | Search report |
| US5315502A | Cites | United States of America | Search report |
| US5486995A | Cites | United States of America | Search report |
| US5521814A | Cites | United States of America | Search report |
| US5581459A | Cites | United States of America | Search report |
| US5587930A | Cites | United States of America | Search report |
| US5701394A | Cites | United States of America | Search report |
| US5748496A | Cites | United States of America | Search report |
| US5914875A | Cites | United States of America | Search report |
| US6012152A | Cites | United States of America | Search report |
| US6038540A | Cites | United States of America | Search report |
| US6113256A | Cites | United States of America | Search report |
| US6263277B1 | Cites | United States of America | Applicant |
| US6272483B1 | Cites | United States of America | Search report |
| US6326758B1 | Cites | United States of America | Applicant |
| US6411908B1 | Cites | United States of America | Applicant |
| US6415276B1 | Cites | United States of America | Search report |
| US6651048B1 | Cites | United States of America | Applicant |
| US6725208B1 | Cites | United States of America | Search report |
| US6735549B2 | Cites | United States of America | Applicant |
| US6764267B2 | Cites | United States of America | Applicant |
| US6795798B2 | Cites | United States of America | Search report |
| US6795799B2 | Cites | United States of America | Search report |
| US6847854B2 | Cites | United States of America | Applicant |
| US6853930B2 | Cites | United States of America | Applicant |
| US6895292B2 | Cites | United States of America | Applicant |
| US6898475B1 | Cites | United States of America | Applicant |
| US6907381B2 | Cites | United States of America | Applicant |
| US6925338B2 | Cites | United States of America | Search report |
| US6947797B2 | Cites | United States of America | Search report |
| US6965806B2 | Cites | United States of America | Search report |
| US6965887B2 | Cites | United States of America | Search report |
| US7043321B2 | Cites | United States of America | Applicant |
| US7062478B1 | Cites | United States of America | Search report |
| US7139629B2 | Cites | United States of America | Applicant |
| US7162393B1 | Cites | United States of America | Applicant |
| US7164954B2 | Cites | United States of America | Search report |
| US7206771B2 | Cites | United States of America | Applicant |
| US7216018B2 | Cites | United States of America | Search report |
| US7230736B2 | Cites | United States of America | Applicant |
| US7233405B2 | Cites | United States of America | Applicant |
| US7346404B2 | Cites | United States of America | Search report |
| US7356383B2 | Cites | United States of America | Search report |
| US7433743B2 | Cites | United States of America | Search report |
| US7451003B2 | Cites | United States of America | Search report |
| US7467841B2 | Cites | United States of America | Applicant |
| US7469185B2 | Cites | United States of America | Search report |
| US7574334B2 | Cites | United States of America | Search report |
| US7689309B2 | Cites | United States of America | Search report |
| US7711674B2 | Cites | United States of America | Search report |
| US7725857B2 | Cites | United States of America | Search report |
| US7903844B2 | Cites | United States of America | Applicant |
| US7937175B2 | Cites | United States of America | Search report |
| Arora, R; and Hsiao, M.S, "Enhancing SAT-based Bounded Model Checking Using Sequential Logic Implications", Aug. 2004, 17th Intl Conference on VLSI Design, ISBN 0-765-2072-3, IEEE Xplore Digital Library. | Non-patent | – | Search report |
| Basu, S. and Kumar, R., "Quotient-Based Control Synthesis for Partially Observed Non-Deterministic Plants with Mu-Calculus Specifications", Dec. 2007, Proceedings of the 46th IEEE Conference on Decision and Control, ISBN 1-4244-1498-9, IEEE Xplore Digital Library. | Non-patent | – | Search report |
| Darwiche, A., "Decomposable Negation Normal Form", Jul. 2001, Journal of the ACM, vol. 48, No. 4, pp. 608-647. | Non-patent | – | Search report |
| Deng, S.; Bian, J.; Wu, W.; Yang, X.; and Zhao, Y., "EHSAT: An Efficient RTL Satisfiability Solver Using an Extended DPLL Procedure", Jun. 2007, Design Automation Conference 2007, ACM Online. | Non-patent | – | Search report |
| Elliot, P., "An Efficient Projected Minimal Conflict Generator for Projected Prime Implicate and Implicant Generation", Feb. 2004, Massachusetts Institute of Technology, Department of Aeronautics and Astronautics. | Non-patent | – | Search report |
| Gopalakrishnan, S; Durairaj, V. and Kalla, P., "Integrating CNF and BDD Based SAT Solvers", Nov. 2003, 8th IEEE Intl High-Level Design Validation and Test Workshop, ISBN 0-7803-8236-6, IEEE Xplore Digital Library. | Non-patent | – | Search report |
| Thittamaranahalli, S.K., "Contributions to Algorithmic Techniques in Automated Reasoning About Physical Systems", Mar. 2005, Stanford University, Department of Computer Science. | Non-patent | – | Search report |
| Voronov, A. and Akesson, K., "Supervisory Control Using Satisfiability Solvers", May 2008, Proceedings of the 9th Intl Workshop on Discrete Event Systems, ISBN 1-4244-2593-8, IEEE Xplore Digital Library. | Non-patent | – | Search report |
13 members in 3 offices; this record represents the family
Members13
| Document | Office | Kind | |
|---|---|---|---|
| EP2144195A1 | European Patent Office (EPO) | A1 | |
| EP2144196A1 | European Patent Office (EPO) | A1 | |
| US2010010657A1 | United States of America | A1 | |
| US2010010952A1 | United States of America | A1 | |
| US2010011255A1 | United States of America | A1 | |
| JP2010020771A | Japan | A | |
| JP2010044751A | Japan | A | |
| US8145334B2This record | United States of America | B2 | |
| US8165705B2 | United States of America | B2 | |
| US8266092B2 | United States of America | B2 | |
| JP5204052B2 | Japan | B2 | |
| JP5266153B2 | Japan | B2 | |
| EP2144195B1 | European Patent Office (EPO) | B1 |
46 transactions on the USPTO file
Allowed after 1 non-final rejection.
- Non-final rejections
- 1
- Final rejections
- 0
- RCEs
- 0
- Appeals
- 0
Over time
Point at a mark for the transactionTransactions
| Event | Code | |
|---|---|---|
| Application ready for PDX access by participating foreign officesCCRDY | CCRDY | |
| Application ready for PDX access by participating foreign officesCCRDY | CCRDY | |
| Payment of Maintenance Fee, 12th Year, Large EntityM1553 | M1553 | |
| Payment of Maintenance Fee, 8th Year, Large EntityM1552 | M1552 | |
| Recordation of Patent Grant MailedPGM/ | PGM/ | |
| Patent Issue Date Used in PTA CalculationAllowedPTAC | PTAC | |
| Issue Notification MailedAllowedWPIR | WPIR | |
| Dispatch to FDCD1935 | D1935 | |
| Application Is Considered Ready for IssuePILS | PILS | |
| Issue Fee Payment VerifiedN084 | N084 | |
| Issue Fee Payment ReceivedIFEE | IFEE | |
| Mail Notice of AllowanceAllowedMN/=. | MN/=. | |
| Notice of Allowance Data Verification CompletedAllowedN/=. | N/=. | |
| Reasons for AllowanceEX.R | EX.R | |
| Information Disclosure Statement consideredIDSC | IDSC | |
| Reference capture on IDSRCAP | RCAP | |
| Information Disclosure Statement (IDS) FiledM844 | M844 | |
| Information Disclosure Statement (IDS) FiledWIDS | WIDS | |
| Date Forwarded to ExaminerFWDX | FWDX | |
| New or Additional Drawing FiledC614 | C614 | |
| Response after Non-Final ActionA... | A... | |
| Information Disclosure Statement consideredIDSC | IDSC | |
| Electronic Information Disclosure StatementEIDS. | EIDS. | |
| Information Disclosure Statement (IDS) FiledWIDS | WIDS | |
| Mail Non-Final RejectionNon-final rejectionMCTNF | MCTNF | |
| Non-Final RejectionNon-final rejectionCTNF | CTNF | |
| Case Docketed to Examiner in GAUDOCK | DOCK | |
| Case Docketed to Examiner in GAUDOCK | DOCK | |
| Information Disclosure Statement consideredIDSC | IDSC | |
| Reference capture on IDSRCAP | RCAP | |
| Information Disclosure Statement (IDS) FiledM844 | M844 | |
| Information Disclosure Statement (IDS) FiledWIDS | WIDS | |
| PG-Pub Issue NotificationPG-ISSUE | PG-ISSUE | |
| IFW TSS Processing by Tech Center CompleteTSSCOMP | TSSCOMP | |
| Case Docketed to Examiner in GAUDOCK | DOCK | |
| Application Dispatched from OIPEOIPE | OIPE | |
| Sent to Classification ContractorPGPC | PGPC | |
| Filing ReceiptFLRCPT.O | FLRCPT.O | |
| Cleared by OIPE CSRL194 | L194 | |
| IFW Scan & PACR Auto Security ReviewSCAN | SCAN | |
| Information Disclosure Statement consideredIDSC | IDSC | |
| Reference capture on IDSRCAP | RCAP | |
| Information Disclosure Statement (IDS) FiledM844 | M844 | |
| Applicants have given acceptable permission for participating foreignAPPERMS | APPERMS | |
| Information Disclosure Statement (IDS) FiledWIDS | WIDS | |
| Initial Exam Team nnIEXX | IEXX |
16 legal events, as the office reported them to INPADOC
Over the term
Point at a mark for the eventEvents
| Event | Code | |
|---|---|---|
| AssignmentAS | AS | |
| AssignmentAS | AS | |
| AssignmentAS | AS | |
| AssignmentAS | AS | |
| AssignmentAS | AS | |
| AssignmentAS | AS | |
| Maintenance fee paymentMAFP | MAFP | |
| AssignmentAS | AS | |
| AssignmentAS | AS | |
| AssignmentAS | AS | |
| Maintenance fee paymentMAFP | MAFP | |
| Fee paymentFPAY | FPAY | |
| Information on status: patent grantGrantedPATENTED CASESTCF | STCF | |
| Fee payment procedurePAYOR NUMBER ASSIGNED (ORIGINAL EVENT CODE: ASPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITYFEPP | FEPP | |
| AssignmentAS | AS | |
| AssignmentAS | AS |
Numbers
- Publication
- 08145334
- Application
- 36400609
Titles
- English
- Methods and systems for active diagnosis through logic-based planning
Patent term adjustment
- A delay
- +469 daysthe office missed an examination deadline
- B delay
- +54 dayspendency past three years
- Net adjustment
- 523 days
Classification
- CPC, 5
- G06Q10/06
- Y02P90/80
- Y10S706/912
- Y10S706/914
- Y10S706/906
- IPC, 3
- G06F19 00
- G05B13 02
- G06F15 00
- USPC, 10
- 700103000
- 700029000
- 700039000
- 700109000
- 702084000
- 702182000
- 706062000
- 706906000
- 706912000
- 706914000