Build the smallest number
05AB1E, 12 11 bytes
œε.œJ€.«m}ß

Try it online or verify all test cases or try it online with added debug-lines.
Explanation:

œ            # Get all permutations of the (implicit) input-list
 ε           # Map each permutation to:
  .œ         #  Get all its partitions
    J        #  Join each inner-most list together
     €       #  For each inner list:
      .«     #   Right-reduce it by:
        m    #    Taking the power
         }ß  # After the map: pop and push the flattened minimum
             # (after which it is output implicitly as result)