3.6 多处最优服务次序问题

3.6 多处最优服务次序问题

ID:16693784

大小:27.50 KB

页数:5页

时间:2018-08-24

3.6 多处最优服务次序问题_第1页
3.6 多处最优服务次序问题_第2页
3.6 多处最优服务次序问题_第3页
3.6 多处最优服务次序问题_第4页
3.6 多处最优服务次序问题_第5页
资源描述:

《3.6 多处最优服务次序问题》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、3.6多处最优服务次序问题算法设计思想:该问题比3.5(只有一个服务站)更具普遍性,需要考虑多个服务站的整体最优服务次序。问题要使顾客的平均等待时间最短,容易想到要对顾客和服务站分别采用不同的贪心策略:一方面,对于顾客,需要服务时间短的优先进行服务;另一方面,对于服务站,处理当前服务任务的结束时间早的优先分配新的顾客。通过这两种贪心策略,即可保证顾客的等待时间尽量短,得到最优服务次序,即整体的最优解。对于第一个贪心策略,我们对顾客的服务次序进行预处理,按照服务时间升序排列;对于第二个贪心策略,我们定义函数,得到当前结束时间最早的服务站。对顾客的服务时间采用快速排序。虽然程序代码比冒

2、泡排序和选择排序复杂,但对于处理大规模的问题,在时间复杂度上有明显的改善。为顾客、服务处分别定义了一个结构体,在处理过程中,只需要对结构体变量的属性进行判断和修改。为服务次序定义了一个类,并且类的公有函数只有一个求解函数,其他处理函数和参数被定为保护和私有,增强了类对象的封装性。通过类和对象来解决规划问题,使程序思路清晰,简单易懂。采用动态数组,节省了内存,使程序变得灵活,可以处理大规模数据。求解函数Solve()很简洁,首先是一个对服务时间的快排函数,然后在一个for循环内,用一个指派函数完成对顾客的服务分配,最后一个输出函数记录结果。除此之外,程序对鲁棒性做了增强,对非法输入和

3、文件错误进行了检测。程序设计代码:/*头文件最优服务次序问题.h*/#ifndefKNAP_H#defineKNAP_H#include#include#include#includeusingnamespacestd;structclient//顾客{unsignedintnumber;//顾客编号floatservice_time;//所需服务时间floatwait_time;//等待时间};locatedintheTomb,DongShenJiabang,deferthenextdayfocusedont

4、heassassination.Linping,Zhejiang,1ofwhichliquorwinemasters(WuzhensaidinformationisCarpenter),whogotAfewbayonets,duetomissedfatal,whennightcamestructservice//服务处{unsignedintnumber;//服务处编号unsignedintclient_num;//接待顾客数量unsignedint*clients_num;//接待的顾客编号数组floatcurrent_time;//服务处计时器};classService//最

5、优服务次序{public:Service(char*in,char*out);//构造函数~Service();//析构函数voidSolve();//输出结果到文件protected:voidQuickSort(intlow,inthigh);//按服务时间从小到大快速排序intPartition(intlow,inthigh);//快速排序的一次划分voidGetService(inti,intj);//贪心策略:顾客i到服务处jintEarliestPlace();//最早可以服务的服务处下标voidOutput();//输出最优服务次序private:unsignedint

6、client_num;//顾客数unsignedintservice_num;//服务处数client*clients;//顾客数组service*services;//服务处数组floatave_ser_time;//平均服务时间ofstreamfout;//输出结果文件指针};#endif/*函数实现文件最优服务次序问题.cpp*/#include"最优服务次序问题.h"Service::Service(char*in,char*out):fout(out){ifstreamfin(in);if(!fin){cerr<<"文件"<

7、1);}fin>>client_num;//初始化顾客数fin>>service_num;//初始化服务处数locatedintheTomb,DongShenJiabang,deferthenextdayfocusedontheassassination.Linping,Zhejiang,1ofwhichliquorwinemasters(WuzhensaidinformationisCarpenter),whogotAfewbayonets,duetomissedf

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。