Detailed Description
Preferred embodiments of the present disclosure will be described in more detail below with reference to the accompanying drawings. While the preferred embodiments of the present disclosure are shown in the drawings, it should be understood that the present disclosure may be embodied in various forms and should not be limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the disclosure to those skilled in the art.
As mentioned above, the current online examination mode has single function, the mode of generating the test paper has simple pen point, and can not satisfy a plurality of constraints of teachers. In addition, how to detect cheating during remote online examination is also a problem.
the method comprises the steps of obtaining constraint conditions for test paper from a teacher terminal at a server, generating an initial chromosome population comprising A chromosomes based on the number of individuals, distribution of knowledge points, total number of questions, total score and proportion of various types of questions, calculating fitness f1- (1-M/N) f1- | EP-P | f2 based on the number of the individuals, the distribution of the knowledge points and the number of the types of questions, calculating fitness f1- (1-M/N) f1- | EP-P | f2 based on the difficulty coefficient and the distribution of the knowledge points, wherein M/N is the coverage rate of the knowledge points, EP is the expected difficulty coefficient, P is the individual difficulty coefficient of the chromosomes, P ∑ Di × Si is the total number of the questions contained in the test paper, Di, Si is the difficulty coefficient and the score of the I, f1 is the weight of the first question, the number of the knowledge points is equal to the number of the first question, and the number of the first question is equal to the number of the index of the chromosome, and the index of the index.
In the scheme, by means of sectional single-point crossing and test question variation in the principle that the test question has the same type and the same score as the original gene question and at least comprises one effective knowledge point of the original question, the test paper with the constraint requirements of the expected difficulty coefficient, the knowledge point distribution, the total question number, the total score and the ratio of various question types can be quickly generated.
Fig. 1 shows a schematic diagram of a smart test control system 100 assisted by wisdom campus instruction according to an embodiment of the present disclosure. The intelligent test control system 100 includes a server 110, a teacher terminal 120, and one or more test taker terminals 130.
In some embodiments, the teacher terminal 120 and the test taker terminal 130 are, for example and without limitation, smart devices with communication capabilities, such as tablet computers, desktop computers, laptop computers, and the like. Teacher terminal 120 and test taker terminal 130 may include at least a communication module, a display, a microphone, a camera, a memory, and a processor. The communication module is used for communicating with the server 110.
The server 110 includes, but is not limited to, a personal computer, server computer, multiprocessor system, mainframe computer, distributed computing environment including any of the above systems or devices, and the like. In some embodiments, the server 110 may have one or more processing units, including special purpose processing units such as GPUs, FPGAs, ASICs, and the like, as well as general purpose processing units such as CPUs. In addition, one or more virtual machines may also be running on the server 110.
Fig. 2 shows a schematic flow chart of a smart test control method 200 assisted by wisdom campus instruction according to an embodiment of the present disclosure. Method 200 may be performed by, for example, server 110 in fig. 1. The method may include performing, at the server 110, the steps of:
At block 202, constraints for the test paper from the teacher terminal are obtained, the constraints including an expected difficulty factor, a distribution of knowledge points, a total number of questions, a total score, and a ratio of each question type.
At block 204, an initial chromosome population is generated, which includes a chromosomes, based on the number of individuals, the distribution of knowledge points, and the number of questions of each type.
at block 206, based on the difficulty coefficients and the distribution of knowledge points, fitness f ═ 1- (1-M/N) × f1- | EP-P | × f2 is calculated, where M/N is the coverage of knowledge points, EP is the expected difficulty coefficient, P is the individual difficulty coefficient of chromosomes, P ∑ Di × Si/∑ Si, where i ═ 1, 2,. N, N is the total topic contained in the test paper, Di, Si are the difficulty coefficient and score of the ith topic, f1 is the weight of the distribution of knowledge points, and f2 is the weight occupied by the difficulty coefficient.
At block 208, it is determined whether the fitness reaches a desired value. Desired values are, for example, but not limited to, 0.92, 0.94, 0.98, etc.
If the fitness does not reach the desired value, as determined at block 208, then at block 210, B chromosomes are selected using the following algorithm: sequentially accumulating the fitness of each individual in the group to obtain a corresponding accumulated value Si, wherein the last accumulated value is Sn, uniformly distributed random numbers R are generated in a [0, Sn ] interval, Si and R are sequentially used for comparison, the individual i with the Si being larger than or equal to R at the first occurrence is selected as a replication object, and the process is repeated until the required number N of individuals is met; the selected chromosomes were subjected to the following segmentation single point crossover according to the question type: randomly pairing chromosomes in a population pairwise, and generating a random number r of [0, N-2] for each pair of chromosomes, wherein r is a segmentation point; and (3) interchanging the two questions after r (ensuring that the scores are the same in addition) to obtain the next generation, randomly generating a variation position P within the range of [1, n ], and selecting a variation gene from the question bank according to the following principle: the gene is the same as the original gene type, has the same score and at least comprises an effective knowledge point of the original topic. After step 210, the fitness may be calculated again by returning to step 206.
If it is determined at block 208 that the fitness reaches a desired value, at block 212, the optimal solution is sent to the teacher terminal.
Therefore, by means of the sectional single-point crossing and the test question variation in the principle that the test question has the same type and the same score as the original gene question and at least comprises one effective knowledge point of the original question, the test paper with the constraint requirements of the expected difficulty coefficient, the distribution of the knowledge points, the total number of questions, the total score and the ratio of various question types can be quickly generated.
Alternatively or additionally, in some embodiments, the method 200 may further comprise:
And calculating the distance between every two chromosomes of the parent A and the current B, if the distance is less than the minimum Hamming distance, comparing the fitness between the two chromosomes, and applying punishment to the chromosome with lower fitness to reduce the fitness.
And (3) sequencing the parent A chromosomes and the current B chromosomes from small to large according to the fitness, and if the fitness of the intermediate chromosome is determined to be smaller than the fitness of the first chromosome by a preset proportion, such as one thousandth, five thousandth and the like, carrying out mutation on the chromosomes behind the intermediate chromosome.
Thus, the parent population is temporarily stored (including the best individuals so far), and all individuals of the parent population are subjected to crossover and mutation operations to obtain the current population. By doing so, the optimal individuals of all generations are obtained finally by the algorithm, and simultaneously, the algorithm can be prevented from being premature and slow in search.
Alternatively or additionally, in some embodiments, the method 200 may further comprise:
And obtaining the question bank of the question section and the number of the test questions in the question bank, and establishing a test question index for each test question to indicate the position of the test question in the question bank.
And establishing a mark array of the number of the test questions for recording the number of times of drawing each test question in the question bank.
And scanning the test questions of the question type section in the optimal solution test paper, and acquiring the index of each test question, so that the counter is added with 1 at the index position in the mark array.
And according to the position pointed by the counter which is more than 1 in the mark array, the corresponding test question in the question section question library is a repeated test question, and the size of the counter is the repeated occurrence frequency.
And scanning the mark array, positioning the mark array to the first repeated test question, and acquiring the question type, the difficulty level and the knowledge point of the repeated test question.
Scanning the test questions of the question section in the optimal solution test paper, and sequentially finding the positions where the repeated test questions appear.
And sequentially determining whether the question type, the difficulty level and the knowledge point of the test question at the position where the repeated test question appears are completely consistent with the acquired question type, difficulty level and knowledge point.
And if the test questions are completely consistent, replacing the test questions corresponding to the positions.
Therefore, repeated test questions in the test paper can be quickly determined and replaced, the paper assembling time is effectively shortened, and meanwhile the satisfaction degree of the test paper is guaranteed.
Alternatively or additionally, in some embodiments, the method 200 may further include capturing a bust image of the examinee's hand-held identity card via the camera of the examinee's terminal, extracting an identity card image and a face image from the bust image, determining whether the extracted identity card image and face image match with the pre-stored identity card image and face image of the examinee, if it is determined that the extracted identity card image and face image match with the pre-stored identity card image and face image of the examinee, sending an optimal solution paper to the examinee's terminal and starting the examination, capturing the face image of the examinee via the camera of the examinee's terminal a random number of times during the examination, determining whether any captured face image matches with the pre-stored face image, if it is determined that any captured face image does not match with the pre-stored face image, the examinee's score is judged to be 0.
Therefore, whether the examination can be started or not can be judged based on the half-length photo of the identity card held by the examinee, the face image of the examinee is captured for many times randomly in the examination process, the examination result is judged to be 0 when the face image is determined not to be matched, and the accuracy of cheating detection of the remote online examination is improved.
Alternatively or additionally, in some embodiments, the method 200 may further comprise recording the environment in which the test taker is located via a microphone of the test taker terminal during the examination, determining whether a voiceprint of another person than the voiceprint of the test taker is present in the recording, and deciding the achievement of the test taker as 0 if it is determined that a voiceprint of another person than the voiceprint of the test taker is present in the recording.
Therefore, whether cheating exists can be judged by analyzing whether voiceprints of other people exist or not based on recording of the examinee environment, and the cheating detection accuracy of the remote online examination is further improved.
Alternatively or additionally, in some embodiments, the method 200 may further include recording the environment in which the examination is located via a camera of the examinee terminal during the examination, determining whether a face of another person different from the face of the examinee exists in the recording, and determining the achievement of the examinee as 0 if it is determined that a face of another person different from the face of the examinee exists in the recording.
Therefore, whether cheating exists can be judged by analyzing whether the human faces of other people exist or not based on the video recording of the examinee environment, and the cheating detection accuracy of the remote online examination is further improved.
FIG. 3 schematically illustrates a block diagram of an electronic device 300 suitable for use in implementing embodiments of the present disclosure. For example, the server 110 in fig. 1 may be implemented by the electronic device 330. As shown, device 300 includes a Central Processing Unit (CPU)301 that may perform various appropriate actions and processes in accordance with computer program instructions stored in a Read Only Memory (ROM)302 or loaded from a storage unit 308 into a Random Access Memory (RAM) 303. In the RAM303, various programs and data required for the operation of the device 300 can also be stored. The CPU 301, ROM 302, and RAM303 are connected to each other via a bus 304. An input/output (I/O) interface 305 is also connected to bus 304.
Various components in device 300 are connected to I/O interface 305, including: an input unit 306 such as a keyboard, a mouse, or the like; an output unit 307 such as various types of displays, speakers, and the like; a storage unit 308 such as a magnetic disk, optical disk, or the like; and a communication unit 309 such as a network card, modem, wireless communication transceiver, etc. The communication unit 309 allows the device 300 to exchange information/data with other devices via a computer network such as the internet and/or various telecommunication networks.
The processing unit 301 performs the various methods and processes described above, such as performing the method 200. For example, in some embodiments, the method 200 may be implemented as a computer software program stored on a machine-readable medium, such as the storage unit 308. In some embodiments, part or all of the computer program may be loaded and/or installed onto device 300 via ROM302 and/or communication unit 309. When the computer program is loaded into RAM 303 and executed by CPU 301, one or more of the operations of method 200 described above may be performed. Alternatively, in other embodiments, the CPU 301 may be configured to perform one or more of the acts of the method 200 by any other suitable means (e.g., by way of firmware).
The present disclosure may be methods, apparatus, systems, and/or computer program products. The computer program product may include a computer-readable storage medium having computer-readable program instructions embodied thereon for carrying out various aspects of the present disclosure.
The computer readable storage medium may be a tangible device that can hold and store the instructions for use by the instruction execution device. The computer readable storage medium may be, for example, but not limited to, an electronic memory device, a magnetic memory device, an optical memory device, an electromagnetic memory device, a semiconductor memory device, or any suitable combination of the foregoing. More specific examples (a non-exhaustive list) of the computer readable storage medium would include the following: a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), a Static Random Access Memory (SRAM), a portable compact disc read-only memory (CD-ROM), a Digital Versatile Disc (DVD), a memory stick, a floppy disk, a mechanical coding device, such as punch cards or in-groove projection structures having instructions stored thereon, and any suitable combination of the foregoing. Computer-readable storage media as used herein is not to be construed as transitory signals per se, such as radio waves or other freely propagating electromagnetic waves, electromagnetic waves propagating through a waveguide or other transmission medium (e.g., optical pulses through a fiber optic cable), or electrical signals transmitted through electrical wires.
The computer-readable program instructions described herein may be downloaded from a computer-readable storage medium to a respective computing/processing device, or to an external computer or external storage device via a network, such as the internet, a local area network, a wide area network, and/or a wireless network. The network may include copper transmission cables, fiber optic transmission, wireless transmission, routers, firewalls, switches, gateway computers and/or edge servers. The network adapter card or network interface in each computing/processing device receives computer-readable program instructions from the network and forwards the computer-readable program instructions for storage in a computer-readable storage medium in the respective computing/processing device.
computer program instructions for carrying out operations of the present disclosure may be assembler instructions, Instruction Set Architecture (ISA) instructions, machine-related instructions, microcode, firmware instructions, state setting data, or source or object code written in any combination of one or more programming languages, including AN object oriented programming language such as Smalltalk, C + +, or the like, as well as conventional procedural programming languages, such as the "C" language or similar programming languages.
Various aspects of the present disclosure are described herein with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems) and computer program products according to embodiments of the disclosure. It will be understood that each block of the flowchart illustrations and/or block diagrams, and combinations of blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer-readable program instructions.
These computer-readable program instructions may be provided to a processing unit of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processing unit of the computer or other programmable data processing apparatus, create means for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks. These computer-readable program instructions may also be stored in a computer-readable storage medium that can direct a computer, programmable data processing apparatus, and/or other devices to function in a particular manner, such that the computer-readable medium storing the instructions comprises an article of manufacture including instructions which implement the function/act specified in the flowchart and/or block diagram block or blocks.
The computer readable program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other devices to cause a series of operational steps to be performed on the computer, other programmable apparatus or other devices to produce a computer implemented process such that the instructions which execute on the computer, other programmable apparatus or other devices implement the functions/acts specified in the flowchart and/or block diagram block or blocks.
The flowchart and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present disclosure. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of instructions, which comprises one or more executable instructions for implementing the specified logical function(s). In some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems which perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
Having described embodiments of the present disclosure, the foregoing description is intended to be exemplary, not exhaustive, and not limited to the disclosed embodiments. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the described embodiments. The terms used herein were chosen in order to best explain the principles of the embodiments, the practical application, or technical improvements to the techniques in the marketplace, or to enable others of ordinary skill in the art to understand the embodiments disclosed herein.