1.    求球外两点(两点连线不通过球)通过球面上一点连线的最短距离。
2.  求球外两点(两点连线通过球)之间的最短路线。
3.    求椭球外两点(两点连线不通过椭球)通过球面上一点连线的最短距离。
4.    求椭球外两点(两点连线通过椭球)之间的最短路线。
5.    随机生成10个以内的圆,求两点通过各个球面上一点的连线的最短距离。
6.    随机生成10个以内的圆,求两点之间连线的最短距离(可以不通过圆上的点,两点连线可能通过圆)
如果球的难度有点大的话可以弱化成圆,各题如果有什么实现不了的话也可以将其条件弱化一下。
我对各题的理解:
1.    先确定两点到圆心连线,可以在圆上确定一段弧,然后将此弧分成很多小段,各段可以看成是点,然后找出最小的距离。
2.    求两点分别到圆的切线,然后最短距离就是切线长度加上两切点之间的弧的长度。
3.    对于椭圆我想出来的就是分别连接两点和与其最近焦点,然后将两连线与椭圆焦点之间等分成若干小段,然后各段看成点,求最短距离。
4.    求两点分别到椭圆的切线,然后最短距离就是切线长度加上两切点之间的弧的长度。
5.    先随机在各个圆上取一点,然后再根据1的分别对各个距离进行优化。
6.    这个目前还真没想出什么法子来,感觉情况有好多种。

这是选修最优化老师留的作业,让必须用MAtlab写,我Matlab一点都不会,老师还让下周交,各位朋友帮帮忙吧,先在这里谢谢各位了!