%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % At run time, this below predicate will be build % and used to pass information about the current % solution. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Message content that are passed from I-X/WFS % to other agents/brokers/I-X/WFS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% post_issue(Issue, (Sender/Sender_role, Receiver/Receiver_role)). /* Sender = Sender ID Sender_Role = the role type of sender given a context Receiver = receiver ID Receiver_role = the role type of receiver given a context Issue = issue(Instance, Issue, State, Priority, Time, Content). Instance = issue instance ID, Issue = issue type name, State = current status of the issue instance, i.e. high, medium and low. Default is medium. Time = Begin_time/End_time, Content = issue content, in this case, our solution space. example template: issue(issue0, solve_technical_constraint, created, high, 3/End_time, [solution(.....) ] ). */ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % solution(Customer, Requirements, % Old_sol, New_sol, Difference). %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % running example %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % note that the capability description may be a subset % of a particular type of board. solution(john-1, [total_cost(M), less_than(M, 1000), special_req(B, capability, [fast_graphics]) ], Old, New ). %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % solution predicate template. % % init_solution indicates a minimum set of solution spec. % for any requirement, i.e. an io, a disk_controller % and processor board must be allocated. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% init_solution( Customer, Requirements, [ instance_of(X, processor), instance_of(Y, disk_controller), instance_of(Z, io), allocate(X, Slot1), allocate(Y, Slot2), allocate(Z, Slot3), total_cost(Cost) ], Solution ). %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % end of file %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%