A surgical robotic system comprising: a surgical instrument having a proximal end, a distal end effector suitable for insertion into a patient, and an intermediate portion between the proximal end and the end effector; a manipulator configured to support the proximal end of the instrument so as to move the instrument from outside the patient; the manipulator and instrument having a plurality of driven joints, the driven joints being configured to provide sufficient degrees of freedom to allow a range of joint states for an end effector position while the intermediate portion passes through a minimally invasive access site; an input configured to receive a movement command to effect a desired movement of the end effector within a surgical workspace; and a processor coupling the input to the manipulator, the processor being configured to determine movements of the driven joints in response to the commanded movement so that the intermediate portion of the instrument is within the access site during the desired movement of the end effector; wherein the processor includes a first controller module configured to generate the movements of the driven joints in response to the movement command, and a second controller module configured to drive the manipulator toward a preferred configuration during the movements of the driven joints, the first controller module being separate from the second controller module, wherein each of the first and second controller module (544, 546) is controllably coupled to the plurality of driven joints, wherein the second controller module comprises a subspace filter configured to select a desired manipulator state and specific set of joint commands from a range of alternate joint states generated by the first controller module. a surgical instrument having a proximal end, a distal end effector suitable for insertion into a patient, and an intermediate portion between the proximal end and the end effector; a manipulator configured to support the proximal end of the instrument so as to move the instrument from outside the patient; the manipulator and instrument having a plurality of driven joints, the driven joints being configured to provide sufficient degrees of freedom to allow a range of joint states for an end effector position while the intermediate portion passes through a minimally invasive access site; an input configured to receive a movement command to effect a desired movement of the end effector within a surgical workspace; and a processor coupling the input to the manipulator, the processor being configured to determine movements of the driven joints in response to the commanded movement so that the intermediate portion of the instrument is within the access site during the desired movement of the end effector; wherein the processor includes a first controller module configured to generate the movements of the driven joints in response to the movement command, and a second controller module configured to drive the manipulator toward a preferred configuration during the movements of the driven joints, the first controller module being separate from the second controller module, wherein each of the first and second controller module (544, 546) is controllably coupled to the plurality of driven joints, wherein the second controller module comprises a subspace filter configured to select a desired manipulator state and specific set of joint commands from a range of alternate joint states generated by the first controller module.