240 likes | 377 Views
Flexible Methods for Multi-agent Distributed Resource Allocation by Exploiting Phase Transitions Modeling and Analyzing Resource Allocation Problems Using Soft Constraint Satisfaction and Optimization.
E N D
Flexible Methods for Multi-agent Distributed Resource Allocation by Exploiting Phase Transitions Modeling and Analyzing Resource Allocation Problems Using Soft Constraint Satisfaction and Optimization Weixiong Zhang (PI) Kenneth Swanson, Xiaotao Zhang, Peng Wang, Michael P. Moran,Guandong Wang, Zhao Xing,Zhongshen GuoComputational Intelligence Center andComputer Science DepartmentWashington University in St. Louis Washington University / DCMP
Objectives and Approaches • Understanding and characterizing resource allocation problems in ANTs applications. • Modeling methods: soft constraint satisfaction/optimization • Phase transitions and backbones (sources of complexity) • Scalability (e.g. impact of problem structures) • Developing general and efficient algorithms for resource allocations • Systematic search methods • Approximation methods • Distributed algorithms • Phase-aware problem solving for good enough/sooner enough solutions Washington University / DCMP
Work in this period • EW challenge problem • Design and develop a moving target tracking system in RadSim • Preliminary working system • Testbed for studying many technical difficulties • (more to come at next PI meeting) • Marbles pilot scheduling problems • (main focus of this presentation) Washington University / DCMP
Current Work on EW Challenge Problem • Technical issues under consideration • Scalability • how problem structures and agent organization affect complexity • Uncertainty in resource conflict resolution: uncertainty in measurement, communication error, etc. • Scan scheduling for detecting new targets quickly with small amount of energy • Irregular sensor layout • We have shown that triangle topology provides the best area coverage • What if sensor layout is out of your control – how to quickly form teams Washington University / DCMP
Marbles Scheduling Problem • Main focus of this period • Some results Washington University / DCMP
R1 R2 R3 T1 Q1,1 0 1 1 Q1,2 1 0 0 T2 Q2,1 1 1 0 Q2,2 1 1 0 The Marbles Problem • Resource allocation in a task scheduling problem • Schedule as many tasks as possible (to reduce the overall penalty of unscheduled tasks) • Block resource requirement • Each task requires a set of resources • It cannot be schedule unless all resource requirements are fulfilled • Exclusive resource contention • A shared resource may be applicable to multiple requirements • But it can be used to fulfill only one requirement Resources Tasks Resource requirements Washington University / DCMP
The Problem is Difficult • The problem is NP-hard • The decision version is NP-complete • Reduced from set packing (NP-complete) • Set packing: • Given a collection S of finite sets of elements, a positive integer K • Decide: if S contains at least K mutually disjoint subsets • Reduction: • Map an elements to a resource • Map a subset to a task Washington University / DCMP
Technical Content • Hard and soft constraints • Modeling consideration and choices • Constraint models • Models in optimization • Models in satisfaction • Experimental analysis (phase transitions) • Current and future work Washington University / DCMP
Hard and Soft Constraints • Task constraints (soft constraints) • Ctask: turning on tasks (typically, not all of them can be satisfied at once) • Constraint (Ti = 1) to represent turning on task Ti • Weight equal to 1 or its penalty • Block resource requirements(hard constraints) • Creq: Fulfilling resource requirement of a task if it is on • Weight is more than the total weight of soft constraints • Exclusive resource contention(hard constraints) • Cres: A resource can only be used by one requirement • Weight is more than the total weight of soft constraints Washington University / DCMP
Main Modeling Considerations • Optimization vs. decision • Optimization: try to turn on all tasks, and then find the maximal number of tasks that can be indeed turned on • Decision: Guess the possible number of tasks that can be turned on, and then verify it. Do a binary search on the number of tasks. (caution: it may not work if tasks are weighted and it is to minimize the overall weight of unscheduled tasks.) • General variables versus Boolean variables • CSP/COP (Constraint Optimization Problem) versus SAT/MAX-SAT • K-encoding issue • Which choice to take and under what conditions? Washington University / DCMP
R1 R2 R3 T1 Q1,1 0 1 1 Q1,2 1 0 0 T2 Q2,1 1 1 0 Q2,2 1 1 0 Main Modeling Choices • Variable versus values • Resources as variables and requirements as values • Or vice versa • Which one to use? Resources Tasks Resource requirements Washington University / DCMP
Main Modeling Choices • Expressiveness of a model • E.g. Two resources may be assigned to one requirement (but one is used) • Should hidden constraints be made explicit? • Interaction between modeling considerations and choices and search algorithms Washington University / DCMP
COP/CSP Models Original ISI Marbles model Washington University / DCMP
R1 R2 R3 T1 Q1,1 0 1 1 Q1,2 1 0 0 T2 Q2,1 1 1 0 Q2,2 1 1 0 COP2 Model: Resources as Variables t: # of tasks qi: # of resource requirements of task i r: # of resources Ti: Boolean variable for task i Rk = { Qij | task i, requirement j } Ctask = ^k=1..t (Ti = 1) Cblock = ^k=1..t Cblock(Ti) Cblock(Ti)= ^j=1..qi((Ti=0) Vk=1..r(Rk=Qij)) Ctask = (T1 = 1)^(T2 = 1) (T1=0) V(R2=Q11) V(R3=Q11) Cblock = (T1=0) V(R1=Q12) (T2=0) V(R1=Q21) V(R2=Q11) (T2=0) V(R1=Q22) V(R2=Q22) Washington University / DCMP
R1 R2 R3 T1 Q1,1 0 1 1 Q1,2 1 0 0 T2 Q2,1 1 1 0 Q2,2 1 1 0 COP3 Model: More Explicit than COP2 t: # of tasks qi: # of resource requirements of task i r: # of resources Ti: Boolean variable for task i Rk = { Qij | task i, requirement j} Ctask = ^k=1..t (Ti = 1) Cblock = ^k=1..t Cblock(Ti) ^k=1..t C'block(Ti) Cblock(Ti)= ^j=1..qi((Ti=0) Vk=1..r(Rk=Qij)) C'block(Ti) = ^((Ru ≠ Qij) V (Rv ≠ Qij)) Ctask = (T1 = 1)^(T2 = 1) (T1=0) V(R2=Q11) V(R3=Q11) Cblock = (T1=0) V(R1=Q12) (T2=0) V(R1=Q21) V(R2=Q11) (T2=0) V(R1=Q22) V(R2=Q22) (R2 ≠Q11) V(R3 ≠ Q11) C'block = (R1 ≠Q21) V(R2 ≠ Q21) (R1 ≠Q22) V(R3 ≠ Q22) Washington University / DCMP
Phase Transitions • Marbles problems (8 tasks with 2 requirements each) Washington University / DCMP
Phase Transitions (2) • Marbles problems (8 tasks with 2 requirements each) Washington University / DCMP
Experimental Results:Systematic search and local search Washington University / DCMP
Experimental Results: Complete Algorithm • MAX SAT Models Washington University / DCMP
Experimental Results: Complete Algorithm • SAT Models Washington University / DCMP
Experimental Analysis: Complete Algorithm • Summary Washington University / DCMP
Experimental Analysis: Local Search • Experiment setup • A WalkSAT-like algorithm for all models • Given all models the same total amount of CPU time (adjusted by the numbers of moves and restarts • Measure the final solution quality • CPU time the best solution found the first time • Results • Optimization models are better than decision models • COP1 is the best • COP2 is better than COP3 Washington University / DCMP
Summary • Marbles problems are indeed difficult • There are phase transition phenomena in Marbles problems • Modeling and search algorithms affect each other • Good modeling methods can greatly reduce problem-solving time Washington University / DCMP
Next Steps • Marbles scheduling problem • More accurate results on phase transitions • More efficient search algorithms • Large problems • Timed Marbles problems • for a long period, e.g., days,weeks and months • EW challenge problem • Scalability • Uncertainty • Scan scheduling (larger coverage, less energy) • Irregular layout Washington University / DCMP