Page 312 - Practical Design Ships and Floating Structures
P. 312
281
Hypergraph partitioning problems are known to be NP-hard. A number of hypergraph partitioning
algorithms have been proposed in the literature. Essentially the algorithms make use of some
heuristics and search methods to partition a given hypergraph into two or more partitions. Due to
space constraint, detailed description of this class of problem and its solution mechanisms are not
presented in this paper. Readers who are interested can refer to papers by Hendrickson and Leland,
and Karypis et al. (Hendrickson and Leland 1995, Karypis. et al. 1997). A computer software system
implementing a known multi-level hypergraph partitioning algorithm hmetis’ (Karypis and Kumar
1998) is used in this paper. This algorithm is flexible enough to allow a designer to specify
constraints in terms of partitions and association of nodes.
In the hypergraph representation of a marine design problem, the nodes can be used to model
desigdconstraint equations, design activities or design tasks. The hyperedges can be used to model
design variables that are required to connect the various nodes. The objectives of the hypergraph
partitioning operation are therefore to produce equal (or near-eqd) sized sub-problems (to yield sub-
problems of roughly equal design effort) and to minimise the co-ordination effort in solving the
decomposed sub-problems. In principle it is possible to have other objectives besides the two
mentioned. Hence the result of the decomposition is a number of sub-problems each containing a
number of desigdconstraint equations and a number of design variables. Some design variables will
be associated with more than one sub-problem, and these are termed as linking variables.
Design decomposition by itself does not produce design solutions, hence the decomposed design sub-
problems must be solved to provide overall solution(s) to the design problem.
3 DESIGNREUSE
Various forms of design reuse have been identified in practice: subsystem and component reuse
(Culley 1998), software object reuse and design knowledge reuse (Chao et ~1.1998). Generally
speaking, research work in reuse is mostly based on reuse of concepts and embodiments
(Sivaloganathan and Shahin 1999). Relatively little work has been done on the reuse aspects of design
data. Although design data has always been routinely reused, the reuse is usually associated with the
invocation of complex and often iterative mathematical procedures (e.g. past design data is often re-
used to perform design analysis e.g. powering estimation). The reuse concept proposed in this paper is
based on the reuse of design data in such a manner that a designer can make full use of the data
without having to know how it was derived, so that he can reuse the design data without explicitly
using iterative mathematical procedures from which the data was originally derived. The purpose is to
identify pockets of efficient designs for further detailed design analysis without the need to carry out
relatively complex and time consuming analysis processes. This concept is rather similar to that of
object oriented programming paradigm that has been successfully implemented in the field of
computing science; the data should be active, it can be directly used without knowing the methods
involved in the derivation and computation of complex data-entities.
The design reuse concept accommodates a three-pronged approach direct search for a new design that
has an exact match with existing design data, “interpolation” to obtain efficient solutions within a
given range, and extension of existing design data to satellite applications. Design data can be stored
and retrieved using a suitable form of database. For example, when a designer needs a preliminary
design of a particular ship type based on a given specification a direct search of a relevant database
may produce an exact match which will provide the designer with the necessary design data.
The result of a direct search, however, is more likely to produce a number of designs that are close to
the given specification rather than an exact match. Hence the designer needs to perform “interpolation”
between these using some form of iteration. The reuse approach suggests a form of “interpolation”