Knowledge base planning

1. Knowledge base system description

Knowledge-based systems are systems based on the methods and techniques of Artificial Intelligence. Their core components are the knowledge base and the inference mechanisms. The holonic architecture who runs the system is composed of an algorithm base, which schedules the operation with respect to an heuristic algorithm, and an inference engine which takes over the scheduling when the operating resources(eg: robots) are un available.
The KBSS(Knowledge Base System for Scheduling)has the following features:

  1. It uses knowledge elicted from different sources including human experts, a designer, and the literature.
  2. It is based on the tandem architecture which integrates the optimization and knowledge-based approach.
  3. It has been developed for an automated manufacturing environment. The job scheduling problem which is beeing solved can be clasified as a job shop problem with a number of different resources, such as machines, tools, fixtures, grippers, material handling carriers and constraints such as precedences, due dates and so on.

If the heuristic algorithm is activated, it attempts to find a sollution, but if it has trouble it relinquishes control to the production rules, which seek a solution through interfacing.


Structure of the KBSS

2. Algoritm base

Based on tested performances (Kusiak, 1990), six priority scheduling rules have been incorporated into the heuristic assembly scheduling algorithm (SA):

  • Initialize:
    • Set current time t=0 and resource status srlq=1, q∈Ql , l∈L
    • Set the four sets S0 - S3 respectively of non executable (empty), executable, non schedulable (empty) and schedulable operations  osi = 0, ...,3
  • From the set of schedulable operations, select an operation oα based on the priority rules below:
    • PR1: nsαp = max{nsip}, p∈P, i∈S3
    • PR2: noαp = min{noip}, p∈P, i∈S3
    • PR3: niαp = max{niip}, p∈P, i∈S3
    • PR4: nuαp = max{nuip}, p∈P, i∈S3
    • PR5: ti = min{ti(0)}, i∈S3
    • PR6: select an arbitrary operation oα (break a tie arbitrarily)
  • Schedule the operation selected in step 2:
    • Operation status osα=2 for oα selected
    • Operation status osi=0 for all the unprocessed operations of the assembly corresponding to oα.Delete operation oα from s3. If S3∪S3 = ∅, stop (there are no unprocessed operations); otherwise set:
    • Remaining processing time rtα = tα(0)
    • Resource status srlq=0 for rlq∈Rα(0), q∈Ql, l∈L.Update S3 and S2. If S3 ≠ ∅, go to step 2. If S3 = ∅ and there are available resources, go to step 4; otherwise, update set S6, enter the inference engine (rules ALT_PLAN generate an alternate OH triplet), and return.
  • Calculate the completion time of each operation scheduled but not completed at the current time. Set the current time equal to the completion time of the operation with the last remaining time. Add this operation (or operations in case of a tie) to the set of completed operations:  
    • fi = rti + t, i∈S4
    • Set operation status  and delete  from S4.
    • Set resource status    and remaining time rti = fi - t, i∈S4.

Update S3 and S2.

  • If S3∪S2 = ∅(if there are no unprocessed operations), stop; otherwise, go to step 6.  
  • If S3 ≠ ∅, go to step 2. If S3 = ∅ and there are available resources go to step 4; otherwise update set S6, enter the inference engine for alternate resource allocation, and return.

3. Inference engine

The inference engine in the KBSS controls the procedure of triggering rules in the knowledge base and the procedure of schedule generation of an algorithm. One of the greatest advantages of the tandem system architecture is the simplicity of its inference engine. The inference engine in KBSS employs a forward chaining control strategy. In a given class of rules it attempts to fire all the rules that are related to the context considered. If a rule is triggered, i.e., the conditions are true, then the actions of the rule triggered are carried out. Some rules stop the search of the inference engine and switch the control process to the algorithm.
In the process of schedule generation, an operation might not be processed according to the basic process plan due to the unavailability of the resources specified in the basic process plan. The heuristic scheduling presented in this section exits from step 3 and step 6 and enters the inference engine of the knowledge-based system. As mentioned above, the inference engine in the GAS triggers in steps 3 and 6 of the algorithm a rule in one of the following rule sets:

  • SEL_ALG: selection of the appropriate SA
  • ALT_PLAN: starts and controls the mechanism of selecting alternative OHs for a job, triggered by resource unavailability
  • VAL_RES: evaluates the computed assembly plans and decides upon rescheduling to improve the global quality of solution at batch level. The makespan performance function is used for this: Cmax =max{Ci}, with Ci = completion time of operation oi∈OAp, 1≤ifp, p∈P.

Last updated 29.05.2008