requirements have to be determined and suitable
available concepts have to be benchmarked with
these requirements. As already mentioned the
knowledge-based NC programming system uses
benchmarked features like MStep for structuring the
work plan. Alternative work plan are usable to
machine the same tasks. Therefore the requirements
for a concept are handling time dependency,
outlining different alternatives in a work plan and
benchmarking operations (e.g. association of
MStep). Furthermore, the application of traceable
and well known algorithms for selecting / structuring
and re-ordering alternative operation is required.
Suitable and investigated knowledge representation
and knowledge processing concepts known from the
Artificial Intelligence (AI) are neural networks,
formal rules-based languages and finally methods
based on the graph theory (Görz, 2003). Neural
networks are a set of “neurons”, which are organized
in the input layer, processing layer and output layer.
Neural networks are trained with special training
algorithms. The disadvantage of this “black box”
concept is that the neural networks follow
processing in non traceable way (Görz, 2003).
Therefore, the neural networks do not conform the
requirements. Formal and rule-based languages are
used to formalize a given well structured domain
under discussion (Görz, 2003). Because of missing
algorithms for processing structures like work plans
this concept is not suited, too. The graph theory as
last concept fulfils the given requirements. It is
possible to model time dependency. Furthermore,
the different paths will be utilized to represent the
alternatives within the directed graph. By
introducing “costs” for passing paths the
benchmarking will be enabled. Finally the use of
algorithms introduced in the graph theory like
Floyd-Warshall (FW) algorithm and the TSP
(Travailing Salesman Problem) algorithm enable the
processing of the work plan. The methods from the
combinatorics are used to transfer the task of
generating an optimized work plan as operations
research problem. Thus, a complete work plan
consisting of a sequence of elements of MStep can
be transferred in a directed graph. A directed graph
DG is defined as an arrangement of a set of nodes
(edges) V and a set of edges or arcs E. These arcs
are connecting two nodes out of the set of nodes
(Jungnickel, 1990). Regarding the work plan, the set
of separate MStep can be transferred in the set of
nodes. The arcs between the nodes will represent the
ordering of these two MStep. An arc e = (a,b)
means, that the MStep a is ahead of MStep b.
Therefore time dependency of different elements
from MStep can be modeled. At this moment, an arc
has no quantifier and emblematizes a connection
between two MStep. By introducing a quantifier, the
arcs become an additional dimension “cost”. This
cost is an assembly of two efforts to pass this arc.
The first effort is the cost to apply the first
machining step a. The second effort represents the
cost to pass to the second step b. It is possible to
enhance the second cost by adding additional cost as
a sum of all costs, which occur by passing to all
other nodes in graph. Thus, a target system of
different criteria like machining time, machining
quality, and machining energy can be defined to
calculate the costs. Therefore a need of additional
information concerning the machinery is detected.
Now, it is possible to change the value of a
quantifier corresponding to a given scenario, which
will be described by a concrete specification of these
criteria. Summarizing a work plan consisting of
MStep can be described as a directed graph with
edges and arcs in-between the edges. Now, it is
possible to use algorithms known from the graph
theory to calculate significant paths through the
directed graph. Two major algorithms can be
identified which are suitable for the application in
the field of NC machining (Jungnickel, 1990). At
first, the Floyd-Warshall algorithm calculates the
shortest distance (as a total sum of arc quantifiers)
between two nodes (machining step) with the help of
the transitive closure. With the help of this algorithm
different alternatives for the same machine feature
can be rated. The complexity is O(n³), where n is the
amount of nodes. Secondly, the TSP solving
algorithms can be executed in order to re-order all
machining steps in a work plan to get lowest cost in
total to machine all MStep in a row (as Hamiltonian
path). The TSP is NP-complete. Consequently, the
optimal path could be calculated by combining all
MStep. But, this algorithm is not an acceptable way
for a common number of MStep. There are several
algorithms to find a heuristic solution for a
Hamiltonian path in acceptable effort. The use of
these heuristic algorithms shortens the runtime of the
combinatoric algorithm (Jungnickel, 1990).
4.3 Workflow for the
Knowledge-Based NC
Programming System
After defining the mathematical background the
workflow for the system has to be specified.
Therefore, the architecture of the system is outlined
in Figure 2.
AN APPROACH FOR A KNOWLEDGE-BASED NC PROGRAMMING SYSTEM
123