结对项目开发-电梯调度

结对项目开发-电梯调度
n设计和实现一个电梯调度瞄准两个正确性和性能,在托管代码。
n技能训练:
na)需求分析
nb)高层次设计(界面,信息隐藏,松耦合)
nc)设计文档
nd)算法设计
n1 、背景
n该大楼有21层,从地面0 , 1 ​​, ... 20 。地板0是地下停车场水平, 1楼是大堂的水平。大多数人都在/走出大楼通过这些2层。

电梯名称

停靠层数

乘客限制

重量限制

1

所有楼层

10

800 kg

2

所有楼层

10

800 kg

3

所有楼层

20

1600 kg

4

所有楼层

20

2000 kg

n2 、结对开发要求
n2.1 、每一对学生将设计一套接口和类定义这样一种算法提供者可以提供他/她实现“电梯调度程序”类。
n2.2 避免出现 “公共汽车”最坏情况的算法。该算法把电梯作为总线,它从底部到顶部,停在每一层楼,打开门,让人们进出,然后把门关上,继续前进。之后到达顶层,它会下去。该算法能够满足所有的要求,但它显然不是最快的算法。
n2.3 代码要求:它具有生成0 (零)的代码分析警告和错误。它必须是正确的。它要快
n3 评分指南:助教将评估所有乘客的“平均总旅行时间”在同一个测试用例,越低越好。如果你的表现低于“总线”的解决方案,你得到0分;如果您的程序不能提供任何乘客到正确的目的地,你得到0分。
n一个关于电梯调度提示:当总重量在45公斤的最大限制,或乘客的数量已经在最大,电梯不需要更多的外部请求停止。
n电梯调度程序不知道有多少乘客等待每层,它不知道有多少乘客将出现。这与现实世界的情况是一样的。
一、需求分析:
(1)
1、电梯调度的基本原则是如果在电梯运行方向上有人要使用电梯,则继续向那个方向运动,如果电梯中的人还未到达目的则继续向原方向运动。
2.通过分析电梯运行的整个过程,我们可以得到评价电梯服务效率的评价指标有:时间评价指标,能耗评价指标,乘客状态评价指标和乘客容忍度评价指标。在上下班高峰期,衡量系统优劣的主要指标是:时间评价指标和能耗评价指标。
3.电梯现在存在的问题是,在繁忙的上下班时间,在每层楼电梯都要停。由于这个电梯楼层并不高,所以电梯只在一个楼层停,这样做电梯的每个人都在这个楼层走到自己想去的楼层。在一楼的时候每个乘客选择自己的目的层,电梯可以快速的自动计算出应停的楼层。这个应停的楼层应该保证这次乘坐电梯的所有乘客的爬楼梯层数之和最少(包括上下楼)。从问题中可以看出,有两个因素会影响到最后的结果:乘客的数量及需要停的楼层。
4. 需设计一套接口和类定义这样一种算法提供者可以提供他/她实现“电梯调度程序”类。
5.当总重量在45公斤的最大限制,或乘客的数量已经在最大,电梯不需要更多的外部请求停止
6.  电梯调度程序不知道有多少乘客等待每层,它不知道有多少乘客将出现。这与现实世界的情况是一样的。
(2)实地考察
考察地点:石家庄铁道大学干休所53号楼B座
共有两部电梯
电梯最大载客量为13人
电梯最大载重为1000公斤
电梯为1到25楼层
在乘客为一人,载量为60公斤时,电梯从1楼到25平均约需50秒,电梯从25楼返回一楼平均约需47秒。
备注:小组成员:刘丛欢_ 信1205_20122941
安帅_信1205_20122939

转载于:https://www.cnblogs.com/wait-for-love/p/3595425.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/421122.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

1030. 完美数列(25)

1030. 完美数列(25) 时间限制300 ms内存限制65536 kB代码长度限制8000 B判题程序Standard作者CAO, Peng给定一个正整数数列&#xff0c;和正整数p&#xff0c;设这个数列中的最大值是M&#xff0c;最小值是m&#xff0c;如果M < m * p&#xff0c;则称这个数列是完美数列。 …

Java模拟事务Demo

Java操作Oracle事务&#xff0c;以转账为例。 转账之前 package translate.commit;import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException;public class CommitRollback…

关于 block的一些浅识

block的定义&#xff1a;“带自动变量的匿名函数” &#xff08;一&#xff09;写法&#xff1a; ^ void (int iAge){ NSLog("%d", iAge);}; 和C函数写法区别在于: 1) :以插入符号 ^ 开始. 2):没有函数名字 当block声明变量时候的写法 void (^blk)(int iAge) block …

1025. 反转链表 (25)

1025. 反转链表 (25) 时间限制300 ms内存限制65536 kB代码长度限制8000 B判题程序Standard作者CHEN, Yue给定一个常数K以及一个单链表L&#xff0c;请编写程序将L中每K个结点反转。例如&#xff1a;给定L为1→2→3→4→5→6&#xff0c;K为3&#xff0c;则输出应该为3→2→1→6…

手机连接电脑win10热点,手机显示无IP分配

hhhh&#xff0c;下面是我从csdn以及百度上查到的&#xff0c;对于我解决这个问题没什么luan用。 在C:\Windows\System32\drivers\etc GitHub不能上&#xff0c;可能我改了host文件的。 //创建一个热点对象 账号为lovely 密码为key netsh wlan set hostednetwork modeallow ss…

设计模式4-创建型模式-Prototype模式

意图&#xff1a;用原型实例指定创建对象的种类&#xff0c;并且通过拷贝这些原型对象创建新的对象。 原型模式的结构比较简单&#xff0c;在使用C实现该模式时重点要注意deep copy和shallow copy的问题。prototype模式在实际使用的过程中&#xff0c;可以通过增加一个原型管理…

JavaIO流加解密,AES对字符串加解密

加解密文件&#xff1f; 哈哈哈哈&#xff0c;当然是为了安全&#xff0c;自己的东西不像让别人看见。 1&#xff0c;学了JavaIO流的字节流的读取写入&#xff0c;便可实现。 加密原理: 把文件读取&#xff0c;然后&#xff0c;按某个特定的规则改变其字节写入一个新文件。 解…

Android--通知之Notification

前言 之前一篇博客讲了Android下使用Toast的方式提示消息。这篇博客讲解一下在Android中使用Notification提示消息给用户&#xff0c;Notification是一种具有全局效果的通知&#xff0c;程序一般通过NotificationManager服务来发送Notification。在本篇博客中&#xff0c;将介绍…

1049. 数列的片段和(20)

1049. 数列的片段和(20) 时间限制200 ms内存限制65536 kB代码长度限制8000 B判题程序Standard作者CAO, Peng给定一个正数数列&#xff0c;我们可以从中截取任意的连续的几个数&#xff0c;称为片段。例如&#xff0c;给定数列{0.1, 0.2, 0.3, 0.4}&#xff0c;我们有(0.1) (0.1…

UDP协议下的DatagramSocket和DatagramPacket

1&#xff0c;UDP协议? 面向无连接&#xff0c;数据不安全&#xff0c;但速度快。不区分客户端与服务端。 2&#xff0c;实现通信&#xff1f; (三个达到) IP 简单说就是你电脑地址。端口 你电脑里面软件的地址。协议 如何进行通讯。 DatagramSocket 用来发送和接收数据报包的…

使用Log4J监控系统日志邮件警报

使用Log4J监控系统日志邮件警报 前言 在系统上线后&#xff0c;有时候遇到系统故障&#xff0c;这时候就可以登录服务器查看系统日志来排查问题。但是需要登录服务器&#xff0c;下载查找相关异常日志比较麻烦。而且没有监控的话&#xff0c;也无法实时了解到系统是否正常运行。…

1044. 火星数字(20)

1044. 火星数字(20) 时间限制400 ms内存限制65536 kB代码长度限制8000 B判题程序Standard作者CHEN, Yue火星人是以13进制计数的&#xff1a; 地球人的0被火星人称为tret。 地球人数字1到12的火星文分别为&#xff1a;jan, feb, mar, apr, may, jun, jly, aug, sep, oct, nov, d…

TCP协议下 Socket 与 ServerSocket

不多bb. package c_20_1_5;import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import java.net.InetAddress; import java.net.ServerSocket; import java.net.Socke…

Autodesk的照片建模云服务—Autodesk ReCap 360 photo

现实捕捉技术方兴未艾&#xff0c;简单的讲现实捕捉技术就是把现实中的现状信息数字化到计算机中以便做进一步的处理。对于不同的应用目的会有不同的捕捉设备&#xff0c;工程或传媒娱乐行业中经常用到的肯定就是三维模型了。那如何得到三维模型呢&#xff1f;我们有多种途径和…

1055. 集体照 (25)

1055. 集体照 (25) 时间限制400 ms内存限制65536 kB代码长度限制8000 B判题程序Standard作者CHEN, Yue拍集体照时队形很重要&#xff0c;这里对给定的N个人K排的队形设计排队规则如下&#xff1a; 每排人数为N/K&#xff08;向下取整&#xff09;&#xff0c;多出来的人全部站在…

线程下的udp和tcp局域网聊天

多线程&#xff0c;继承Thread类&#xff0c;重写run方法。 udp下的聊天。 两方&#xff0c;每一方都可发&#xff0c;可收。 import java.io.IOException; import java.net.DatagramPacket; import java.net.DatagramSocket; import java.net.InetAddress; import java.util.…

委托事件实现更新窗体

委托 和 事件在 .Net Framework中的应用非常广泛。 委托( Delegate )&#xff1a;是一种定义方法签名(只有方法的名字&#xff0c;没有方法体)&#xff0c;可以与具有兼容的签名的任何方法关联。所谓兼容的方法&#xff0c;是指 这个方法和委托的方法签名具有相同的返回类型和参…

1050. 螺旋矩阵(25)

1050. 螺旋矩阵(25) 时间限制150 ms内存限制65536 kB代码长度限制8000 B判题程序Standard作者CHEN, Yue本题要求将给定的N个正整数按非递增的顺序&#xff0c;填入“螺旋矩阵”。所谓“螺旋矩阵”&#xff0c;是指从左上角第1个格子开始&#xff0c;按顺时针螺旋方向填充。要求…

Java多线程,锁(synchronize),饿汉式单例线程,等待处理机制

一&#xff0c;礼让和守护线程 package com.much.hard;public class TestYieldProtect {public static void main(String[] args) {Yield1 y1 new Yield1();y1.setName("A");Yield2 y2 new Yield2();y2.setName("B");//y1.start();//y2.start();Daemon1…