An object collaboration apparatus is driven by a message action relation, and
can dynamically build a collaboration between objects using a bidding system. A
task initiator object circulates a requesting message, indicating the service content
that the task initiator object wants to request, on a shared communication channel
504, and this requesting message is received by each service object. If an action
that is a reaction to the message is listed in a reaction table 703 stored by the
service objects, the service objects create and return a bidding message, which
includes a bidding value, for example the CPU load ratio, with the bidding portion
707. An arbitrating portion of the initiator object receives all bidding messages
in a certain period of time, and, in consideration of parameters such as the bidding
value and the communication time between objects, determines and awards the bid
to the bid-winning object. Then, it sends out the requested processing information
together with the bid awarding message. The bid-winning object processes the requested
task with an action execution portion 704.