Title: Design for Manufacturability via Agent Interaction
1Design for Manufacturability via Agent Interaction
- ???
- i-Design Lab.
- Yonsei Univ.
2Abstract
- An approach for making the capability of
manufacturing process manifest to designers
starting with the earliest stage of geometry
specification - The approach involves a dialogue among design and
manufacturing agents over Internet. - The dialog focuses on the specification and
exchange of process capability models for
establishing design rules on-demand to ensure
manufacturability. - The models include both declarative knowledge
and, for those aspect of the process that are
difficult to represent declaratively,
platform-independent procedural code which is
automatically loaded onto the designers
machines. - The approach is being implemented using agent,
written in Java language, which exchange
feature-based capability models. - The approach is being tested initially on
machining and shape-deposition processes.
3FIGURE 1. Part of an agent dialog for
transmitting process capabilities into the design
environment. In this case, a KQML message is sent
from the design agent to obtain a list of
standard features that the process can
accommodate. The message content is in Express
and refer to ontologies (formal agreements on
terms and definitions Gruber 1993) of features
and constraints which, in turn, refer to the
PDES/STEP standard STEP 1992 EXPRESS 1992.
4Introduction (1)
A CE Environment, supports DFM
A mechanism to evaluate the manufacturability
according to design rules and evaluating
procedures
The process capability models is provided
on-demand to designers by mfg. services in a
machine-readable, platform-independent format
An Architecture
designers
Mfg. Services
Agents
Agents
Formal comm. Interface (Internet)
Process design inf.
Process design inf.
Designers
Mfg. Services
Agents
Agents
- Motivation
- novel prototyping such as layered shape
deposition, laser sintering - Not familiar, not be in the CADs DFM modules
- exploration utilization of these processes
requires capability models remotely loaded from
the service provider integrated into the design
env.
5Introduction (2) More than HTML
- Today, a number of services on the internet
- PC board fabrication, cable harness assembly,
stereolithography etc. - Use HTML forms-based interface to acquire
information from designers and customize
displayed data to match designer preferences - To make designers confident about using novel
manufacturing processes, a more intimate dialogue
between design manufacturing is required. We
would like to make all aspect of the mfg. process
accessible. - Ex.1) Before submitting designs to mfg. services,
designers should able to run process simulation
obtain manufacturability rules and guideline
load processing constraints have them checked
and enforced - gt designers can quickly become familiar with
mfg. process as there desire. - Ex.2) When essential to minimize mfg. costs / to
meet stringent demands / tolerances or materials
properties, - gt the designer will want detailed access to
process characteristics, constraints and costs
as they apply to his or her design.
6Introduction (3) A mechanism req.
- The MOSIS project for VLSI design and
prototyping, the ability to submit designs with
confidence their specifications the adoption of
conservative design rules to specify features
with confidence their manufacturability. - variety of mechanical processes and facilities,
more over variety of CAD tools, -gt necessary to
establish a standard mechanism to obtain process
capability models from disparate processes
on-demand load them into their preferred CAD
env. - The mechanism should designers enable to locate
candidate services, evaluate the processes and
acquire capability models to compute the
manufacturability (include the ease of
fabrication process planning) with accuracy to
meet the design requirements. - The communication mechanism also allow
unsolicited information (such as updates on
process capabilities) to be transmitted from mfg.
facilities to designers.
7Introduction (4) Issues
- Issues to enable such a dialog
- How is process capability represented?
- How are capability models locate and acquired by
designer? - How are capability models mapped into the design
space? - How is the information contained in these models
applied during design? - Particular contributions
- An architecture for information exchange between
designers and manufacturing services which
includes - An object-oriented agent template, with
specializations for design, service and service
agents (wrapping CAD process planning software) - A mechanism for knowledge representation (to
exchange declarative, procedural and human
readable inf.) - A negotiation protocol which outline the sequence
of communications between designers and
manufacturing services. - This approach build upon recent developments in
the application of agent-based software including
communication protocols representation language
to exchange information via the Internet.
8Introduction (5) contents remain
- Assumptions about mfg design process,
- A model of process capability
- The agent architecture used for information
exchange. - agent and technology for sharing objects among
divers applications. - focused on the process of layered shape
deposition and CNC machining services as examples
of two very different mfg processes. - Appendix A provides details on capability model
representation - Appendix B discusses the agent structure and
class libraries developed along with pointers to
down-loadable code for Java Agent Template
9Layers produced by automatic decomposer for
slider crank mechanism
Gray steel, brown copper support material
10Robot Leg compacts
The output of the software is a sequence of 3D
shapes and toolpaths.
Embedded components
Part
Support
112. Representing Manufacturing capabilities2.1
Design and Manufacturing feature
- Assumption1 doing feature-based design using 3D
CADs to represent the solid geom. - To match different design and mfg features,
- Generalized cylinders
- Efforts for mapping from design features to
manufacturing features and of extracting features
(holes, custom) from general three dimensional
geometries, STEP Tools, Inc online service - geometric primitive that can be specialized to
include common design and manufacturing features
including those used by machining and layered
shape deposition. - a useful neutral representation for mapping
manufacturing features lt-gt design space. - The parameters can be translated into STEP,
Part42, entities represented according to AP203
facilitate in multiple CAD systems (see
Appendix A).
12Fig. 2. Generalized cylinders are a useful
geometric representation that can be sepecialized
to match different design and manufacturing
features and facilitate the mapping between them.
Corresponding STEP entities are labeled.
132.1 Design and Manufacturing feature (cont.)
- Assumption 2 Manufacturing process can be
represented in geometric terms as sequences of
operations (add, modify, remove geometry
features) from an initial stock part (may be
null in the material deposition process) - Process may have additional effects (surface
finish, material hardness, stress state, ). - For machining process, mapping between design and
manufacturing features is fairly close (ex. holes
pockets produced by drill end-mill) - For shape-deposition process, rarely any direct
relation material layer of compacts to the
design.
142.2 Process Capability Model
- Represents mfg. services and the processes, using
Hierarchical taxonomy of manufacturing objects
(Fig. 3), similar to OO Process. - Each mfg object lt attributes lt other mfg objects,
- Top mfg service lt mfg process lt materials.
- Process materials lt capability models
(declarative design rules constraints, process
simulation procedures, document, )
15Design rules and constraints
- Declarative representation of process-derived
constraints provide a way of assuring
manufacturability on separating representation of
the design and process - The neutral descriptions of these constraints
also allow to them be used by constraint
propagation systems or other reasoning systems - Multi-level designers process capabilities
- Conservative set of rules ensure easy
manufacturability. - Increasingly sophisticated analysis and
simulation used for designs can not confirm to
the easy rule. - Few exception flagging to save time.
16Design rules and constraints (cont.)
- Constraints associated with manufacturing
features are often easier to express. - Machining layered shape deposition design rules
can be express in terms of the specializations of
generalized cylinders - Machining, feature constraints for easy
machining - maximum length/diameter ratios for holes or
depth/corner-radius ratios for efficient
machining with standard drilled and end-mills. - Maximum envelope of a part and general
specifications on tolerances and surface finish,
refined in terms of part size and overall
geometry. - -gt Appendix A table 1.
17Design rules and constraints (cont.)
- Layered shape deposition constraints for easy
shape deposition -gt Appendix A table 2. - Whether the geometry of the design can
efficiently be decomposed into layers.
Decomposition function of surface profiles,
desired surface finish - If both undercut non-undercut features are
contained within the same horizontal band, the
band must be split into a set of compacts. - This complication can be avoided by building the
design from primives that taper monotonically in
the direction of layering.
18Simulation functions
- Declarative representations of process-related
constraints or characteristics are impractical,
Provide functions - to simulate the effects of processing on the
design - to analyze elements of the design from the
standpoint of manufacturability - Ex. When machining a part with thin wall section,
simulate the actions of milling the part using a
dynamic milling model. - can help the designer to understand of the
process and encourage DFM. - Portability problem with procedural code against
declarative expressions -gt in neutral format (ex.
STEP) - what if questions in batch mode -gt use machine
independent Java language
193. Information Architecture
- Agent architecture
- A mechanism for encapsulating and exchanging
distributed knowledge and functionality. - Scalable, modular system with well-defined
interfaces. engineering agents interface
agents - Autonomous
- Encapsulate functionality
- Use an agent communication language
- Templates
- Communicates asynchronously with other agents
distributed over internet using KQML as comm.
Language - Java Agent Template http//cdr.stanford.edu/ABR
203. Information Architecture (cont.)
- functional Community level 3 classes
- Service agent
- engineering service on the internet.
- Standalone app. Integrated with legacy s/w
local database - Broker agent
- Standalone process, A consortium of service
agents and function - a central directory for agent names, addresses
and descriptions. - Simple type ANS (Agent Name Server)
- Client agent
- Potentially transient processes, Java Applet
loaded via WWW - Use brokers to discover specific service
functionality directly communicate to access.
213. Information Architecture (cont.)
- Because of the diversity of Mfg process design
env., needs specialized graphical interfaces
communication infrastructures. - functional Individual level 4 classes
- Agent-context
- separate the both agent and communication code
from the execution environment user interface. - Same agent to be implemented as a stand-alone
app., applet, daemon process, not directly depend
on the presence of GUI. - communication interface
- message output
- Interface between an agent its contexts
- the agent it self
- Synchronously Accepts outputs messages (in
KQML) via communication interface - Resources knowledge and functionality
(addresses, classes, languages, ontologies)
223.1 Agents, distributed objects, CORBA and Java
- design paradigm (Agents and distributed object)
an agent-based system built on a distributed
object substrate. - Agent
- use formal message structure protocol (KQML)
- maintain state infomation.
- A level of abstraction above distributed objects
- implementation (Java and CORBA)
- Java provide a robust mechanism, minimal
overhead, object-oriented, platform-independent,
can dynamically import new code. - There are no barrier to integrating Java Template
with CORBA objects
233.1 Agents, distributed objects, CORBA and Java
(cont.)
- Example scenario
- Pro/Engineer CAD platform
- Shape deposition, CNC machining mfg process
- -gt http//cdr.standford.edu/RVPP/
- Cax tools ? design agents,Mfg service ? service
agent - Comm. Is facilitated by service broker.
24Sequence of designers actions
- 1. Locate potential service/process combination.
- 2. Evaluate a specific manufacturing service.
- 3. Evaluate a process.
- Acquire process capability model
- 4. Use the process capability model to constrain
the design process. - Feature constraint -gtprocess simulation
- 5. Submit the design for fabrication.
254. Implementation status and future work
- An approach enabling s/w agent to
- Locate each other
- exchange messages
- automatically load resources
- declarative(constaints) procedural(process
simulations) - Implemented with Java Agent Template
- Next step
- Experiment with agent dialogues among design and
manufacturing services to evaluate the
effectiveness and limitations of this approach. - An object class hierarchy for process
descriptions and capabilities has been
established. - The generalized cylinder has been adopted as
initial generic feature type. - Initial experiments will be conducted in
collaboration with prototyping services.
26Appendix A Generalized cylinder representation
and constraints
- Generalized cylinder feature
- Nominal geometry is defined by the following sets
of constraints - Axis Constraints parameterized axis function
x(s), y(s), z(s) and their derivatives (the
curvature and torsion of the axis) - Cross-sectional surface constraints closed curve
defining the edge of the surface. - Sweeping transformation constraints properties
of the transformation (dependency on axis arc
length) - The CGS operation to combine into more complex
solids - Operator constraints subset of union,
difference - Operand constraints coordinate transformation
matrix
27Appendix A. Table 1, 2
28Appendix B details on the Java Agent Template
- Agent Life Cycle
- Execute of the Agent Context create itself,
associated communication interface, message
output and GUI components. - Initialization file is retrieved and
processed(contains a set of KQML messages, one
of which has been the address of ANS) - Connect to the internet and registration with the
ANS - Transformation address invalidation message is
sent to the ANS - Addressing every agent possesses a unique name
and address. Address consist of a host name and a
port. An ANS maintain an archive of all agent
names and address (and enforces unique naming)
29Appendix B details on the Java Agent Template
(cont.)
- Message Interpretation
- The message is parsed, at the top level,
according the KQML syntax. - The ontology field for the message is checked
against the agents local ontologies resource. If
the specified ontology subclass is not present,
the agent retrieves it before continuing with
the message processing. - If the specified Ontology is successfully
obtained, the interpretMessage() method of this
ontology object is called to process the present
message. This method first checks the Language
field, fi the language is not locally known, it
is retrieved before further processing if the
language is supported and can be obtained, the
content field of the message is parsed according
to that language. - The action to be taken on the message content is
encoded with the ontology class.
303.1 Agents, distributed objects, CORBA and Java
(cont.)
- Service broker represent a group of service agent
and can provide high level filtering for
designers. - Information concerning process capabilities and
design characteristics will be exchange between
agents
31Sequence of actions taken by the designer
- 3.2 Locate potential service/process
combinations. - The designer execute design agent (via WWW applet
from service broker site / by execute a
stand-alone agent - The agent is initialized with location of one or
more service broker agents (representing groups
of manufacturing services) - The designer will submit to the selected service
broker (via design agent) information about the
design requirements which can be used for
high-level filtering of potential service/process
combinations. - This filter has not implemented but important in
overall process and should be based on the
following general categories of design
constraints - Purchasing/scheduling constraints ( maximum
/hour for machining time, minimum lot size,
maximum lead time) - Physical constraints material properties,
geometry (required stock size / general volume,
symmetries, solid features, surface types,
tolerances)
32Sequence of actions taken by the designer (cont.)
- 3.3 Evaluate a specific manufacturing service.
- Once a list of potential mfg services has been
obtained, the designer will undertake a detailed
evaluation of the characteristics and
capabilities of each. - Each services is modeled by a hierarchy of
manufacturing objects. Communication between the
design agent and service agent will enable the
designer to search this processes/material
combinations. As the designer browses through the
human-readable documentation provided by the
service, the design agent builds an object model
of the manufacturing service and its process.
33Sequence of actions taken by the designer (cont.)
- 3.4 Evaluate a process.
- The next step is to acquire process capability
models. - Declarative components of the capability model
will be exchanged using KQML messages,Procedural
elements will be loaded as Java classes. - In the present implementation, the capability
model provides information for evaluating the
manufacturability of a designs nominal geometry.
Design rules consist of constraints on the
geometry of generalized cylinder features and on
the CGS operations used to combine those features
into more complex solid. - Constrains (Appendix A) are represented
declaratively using the Express languages. - Each capabiliry model will also include process
simulation procedures which take design meeting
the constraints and return, if the simulation is
successful, trees of processing feature used to
realize the design.
34Sequence of actions taken by the designer (cont.)
- 3.5 Use the process capability model to constrain
the design process. - Acquired capability models will be mapped into a
format suitable for integration with the
designers preferred CAD system(STEP AP 203). - Feature constraints will be applied against all
feature instantiations and CGS operations
attempted by the designer. - Process simulations will be configured to accept
input from the CAD system and return output which
can be mapped from the CAD system can use. - These simulation procedures may be entirely
represented by local java code or can be
implemented as a Java interface (locally
executed) which communicates to analysis code
running on a remote machine.
35Sequence of actions taken by the designer (cont.)
- 3.6 Submit the design for fablication.
- Completed designs will be submitted to the
service agent which provided the process
capability model. The manufacturing service
represented by this agent can be then conduct
process planning and quote generation in light of
the applied costraints.