Outline Deep Space One and Remote Agent Model-based Execution OpSat and the ITMS Model-based Reactive Planning Space Robotics
Modes Controlled Through Interactions driver computer bus control remote terminal driver remote terminal How do we open a valve?
Modes Controlled Through Interactions driver computer bus control remote terminal driver remote terminal MRMI Command Configuration goals Model goal statecurrent state Reactive Planner
computer bus control remote terminal remote terminal driver Modes Controlled Through Interactions Irreversible actions should be avoided by reactive planners. Component schematics tend not to have loops goals are serializable Solution: Work goals from outputs to inputs. Achieve goals serially.
computer bus control remote terminal remote terminal driver Modes Controlled Through Interactions Irreversible actions should be avoided by reactive planners. Component schematics tend not to have loops goals are serializable Solution: Work goals from outputs to inputs. Achieve goals serially.
computer bus control remote terminal remote terminal driver Modes Controlled Through Interactions Irreversible actions should be avoided by reactive planners. Component schematics tend not to have loops goals are serializable Solution: Work goals from outputs to inputs. Achieve goals serially.
Irreversible actions should be avoided by reactive planners. Component schematics tend not to have loops. Solution: Work goals from outputs to inputs. Achieve goals serially. Compile devices into distributed policies –prime implicate generation –strongly connected components computer bus control remote terminal remote terminal driver Modes Controlled Through Interactions vlv = closed & vcmdin = open next (vlv = open) vlv = open & flowin = pos flowout = pos Closed Open Stuck open Stuck closed vcmdin = openvcmdin = close
Indirect controllability inflow = outflow Closed Open cmd = opencmd = close cmd =off On Off cmd= oncmd = off cmd = reset vcmd in = vcmd out vcmd out (Driver) = cmd(Valve) Device states are not directly controllable
Compilation rt = on driver = on vcmd in (cu) = open rt = on driver = on vcmd in (cu) = close inflow = outflow Closed Open cu = on dcmd =off On Off rt = on dcmd= on rt = on dcmd = off rt = on dcmd(cu) = reset vcmd in = vcmd out vcmd out (Driver) = cmd(Valve) Remove intermediate variables using implicate generation –becomes a STRIPS-like problem –implicate generation done using conflict directed best first search
Compilation driver = on cmd= open driver = on cmd = close inflow = outflow Closed Open cmd =off On Off cmd= oncmd = off cmd= reset vcmd in = vcmd out vcmd out (Driver) = cmd(Valve) Remove intermediate variables using implicate generation –becomes a STRIPS-like problem –implicate generation done using conflict directed best first search
Concurrent policies rt = on driver = on vcmd in (cu) = open rt = on driver = on vcmd in (cu) = close Closed Open fail Goal fail rt = on driver = on cmd = open idle rt = on driver = on cmd = close Current Open Closed Stuck Open Closed Convert resulting transition system into a local policy Encoding is extremely compact Ensure only reversible transitions are taken
Concurrent policies driver = on cmd = open driver = on cmd = close Closed Open fail Goal fail driver = on cmd = open idle driver = on cmd = close Current Open Closed Stuck Open Closed Convert resulting transition system into a local policy Encoding is extremely compact Ensure only reversible transitions are taken
Irreversible actions should be avoided by reactive planners. Component schematics tend not to have loops. Solution: Work goals from outputs to inputs. Achieve goals serially. Compile devices into distributed policies –prime implicate generation –strongly connected components computer bus control remote terminal remote terminal driver Modes Controlled Through Interactions Closed Open Stuck open Stuck closed dr = on, dcmdin = open dr=on vcmdin = close
Irreversible actions should be avoided by reactive planners. Component schematics tend not to have loops. Solution: Work goals from outputs to inputs. Achieve goals serially. Compile devices into distributed policies –prime implicate generation –strongly connected components computer bus control remote terminal remote terminal driver Modes Controlled Through Interactions Goal Current open closed open closed stuckfail idle dr = on cmd=open dr = on cmd=close
Goal Current open closed open closed stuckfail idle dr = on cmd=open dr = on cmd=close Goal Current onoff on off reset failure cmd=reset idle cmd = on cmd = off cmd=reset off Cmd closed Goal:
Goal Current open closed open closed stuckfail idle dr = on cmd=open dr = on cmd=close Goal Current onoff on off reset failure cmd=reset idle cmd = on cmd = off cmd=reset off Cmd closed Goal:
Goal Current open closed open closed stuckfail idle dr = on cmd=open dr = on cmd=close Goal Current onoff on off reset failure cmd=reset idle cmd = on cmd = off cmd=reset off Cmd closed Goal: cmd = on
Goal Current open closed open closed stuckfail idle dr = on cmd=open dr = on cmd=close Goal Current onoff on off reset failure cmd=reset idle cmd = on cmd = off cmd=reset off Cmd closed Goal: cmd = on
Goal Current open closed open closed stuckfail idle dr = on cmd=open dr = on cmd=close Goal Current onoff on off reset failure cmd=reset idle cmd = on cmd = off cmd=reset off Cmd closed Goal: cmd = close
Goal Current open closed open closed stuckfail idle dr = on cmd=open dr = on cmd=close Goal Current onoff on off reset failure cmd=reset idle cmd = on cmd = off cmd=reset off Cmd closed Goal: Driver Fails! cmd = close
Goal Current open closed open closed stuckfail idle dr = on cmd=open dr = on cmd=close Goal Current onoff on off reset failure cmd=reset idle cmd = on cmd = off cmd=reset off Cmd closed Goal: cmd = reset
Goal Current open closed open closed stuckfail idle dr = on cmd=open dr = on cmd=close Goal Current onoff on off reset failure cmd=reset idle cmd = on cmd = off cmd=reset off Cmd closed Goal: cmd = close
Goal Current open closed open closed stuckfail idle dr = on cmd=open dr = on cmd=close Goal Current onoff on off reset failure cmd=reset idle cmd = on cmd = off cmd=reset off Cmd closed Goal: cmd = off
Goal Current open closed open closed stuckfail idle dr = on cmd=open dr = on cmd=close Goal Current onoff on off reset failure cmd=reset idle cmd = on cmd = off cmd=reset off Cmd closed Goal: Success! cmd = off
Complexity of Reactive Planning Worst Case per action: Depth * Sub-goal branch factor Average Cost per action:Sub-goal branch factor Valve 1 = openValve 2 = openDrv 1 = offDrv 2 = off Drv 1 = on CU = on Drv 2 = on CU = on
Complexity Analysis Details Average Cost per action:Subgoal branch factor –Avg cost = compute time / plan length –Each edge of the goal/subgoal tree is traversed twice. Compute time = 2 * E * B. –Each node of the goal / subgoal tree generates one action. plan length = N –Avg cost = O(E/N) –In the worst case E < = 2 * N. –Average Cost per action = O(B* N/N) = O(B) Subgoals
Outline Deep Space One and Remote Agent Model-based Execution OpSat and the ITMS Model-based Reactive Planning Space Robotics
Current Livingstone Testbeds
TechSat21 & Gflops Testbed MIT SSL Spheres MIT SSL Portable Satellite Assistant Ames
Capabilities Demonstration Space Station Module Oxygen: % Nitrogen: % Carbon Dioxide:....05% Other: % Temperature: F Pressure: lbs Humidity: % courtesy Yuri Gawdiak, NASA Ames
Conclusions Space is opening its doorway to a new generation of agile, highly independent explorers. To survive decades of operation they must orchestrate complex regulatory and immune systems. Model-based autonomy supports rapid prototyping through model-based programming and executives. A model-based executive is a kind of stochastic optimal controller that makes extensive use of deduction to observe and control on the fly. The core is OPSAT, a real-time, combinatorial optimization algorithm with logical feasibility constraints. Fast, model-based reactive planning is achieved through knowledge compilation and by exploiting structural and safety constraints.