3 APPROACH
Our approach has to enable the analysis and optimal
organization of the ASIC design process and has to
provide an efficient planning of ASIC project courses
considering a lot of prerequisites. First, a simulation
of finished projects for evaluation purposes and com-
parison to other projects needs to be enabled. Second,
new and ongoing projects need to be planned in con-
sideration of budget, resources, deadlines, alternative
design styles and the task organization.
As we have to deal with a highly complex prob-
lem and a dynamic environment, MAS are an ade-
quate way of simulating a group of humans executing
design tasks. So a MAS simulation is chosen as the
core of the system model. The ASIC-MAS architec-
ture is shown in fig. 1. For task execution we need
two types of ressources agents, a designer agent and
the design tool agent. These agents belong, according
to their expertise and functions, to different design ar-
eas. A high-level plan for task execution and design
organization is provided by a planning agent, also re-
sponsible for the resource allocation of the tasks. Dy-
namics are introduced to our system by an interfer-
ence module modelling recursive processes and un-
foreseen events, perturbing the smooth schedule exe-
cution and modelling dynamics inherent in processes
lead by humans. A monitoring agent is tracking the
simulation, calculating the deviation of the high-level
schedule and the actual simulation. The schedule and
the MAS organization are adapted during the simu-
lation if their deviation exceeds a given limit. Local
scheduling methods can re-organize small parts of the
simulation in a sensible way. The tracked agent activ-
ity gives a realistic estimate of the duration of design
process and a suggestion how to organize it.
4 MULTI-LEVEL
ORGANIZATION OF THE
ASIC-MAS
We developed a two-stage planning strategy to obtain
an efficiently organized MA simulation.
4.1 Long-term Planning
We implemented a long term scheduling that takes
place at the beginning of the simulation to gain a
high level plan for an efficient simulation organiza-
tion. This algorithm assigns resources to tasks and
produces a (near) optimal task execution order. The
objective of the optimization is the minimization of
D
D
D
T
T
T
D D
T
T
T
T
T
T
D
D
D
D
D
D
D
D
T
T
T
T
GA
Planner
Monitor
Agent
Digital Circuit Design
Analogue Circuit Design
Analogue Layout
Digital Layout
replanning
Interference
Modul
Figure 1: ASIC-MAS architecture.
the overall execution time of an ASIC design project:
min T
design
, while tasks need to be assigned to design-
ers with different experience modes out of different
design regions and tools considering task dependen-
cies and resource constraints. We use a scheduling op-
timization heuristic based on genetic algorithms (GA)
(Blaschke et al., 2009). Designers planned holidays
are incorporated in the optimized schedule.
The high level scheduling is managed by one ded-
icated planning agent. He passes the necessary task
and resource information to the GA scheduling algo-
rithm and receives the optimization result of the GA.
He assigns the tasks to requesting designers.
4.2 Short-term Planning
The high level plan is an optimized schedule under
optimal designing conditions: every designer acts ex-
actly as planned. But reality is different: designers
become ill, take one or two days off, task execution
takes longer or shorter than assumed and many recur-
sions occur between tasks, resulting in new recursive
tasks. The design process is dominated by these dy-
namic events, which cannot be modelled and consid-
ered by the static high level plan produced by the GA.
To model these events we developed an interfer-
ence module. It introduces the dynamics inherent in
the ASIC design process. Therefore, during process-
ing the agent simulation deviates more and more from
the optimized GA schedule. The reaction to this di-
vergence is the local planning of the designer agents.
Different mechanisms are used for different events,
which are shown in fig. 2. We will describe the mech-
anisms in detail in the following subsections.
The monitoring agent tracks the simulation. He
compares it to the high level plan at frequent intervals.
The deviation at simulation time s
j
is:
dev =
n
∑
i=1
f (δ(t
i
, s
j
)) · (1 +a(t
i
) − p(t
j
))
+δ(ra(s
j
)),
where n is the number of tasks, f (δ(t
i
, s
j
)) calculates
the delay of the task t
i
in the simulation compared to
the schedule, a(t
i
) weights the number of dependent
ICAART 2010 - 2nd International Conference on Agents and Artificial Intelligence
460