How to create an environment of Q- learning for a job shop scheduling using Matlab?

6 次查看(过去 30 天)
The problem background: There are 10 services and 5 tasks. Each service takes different time to complete each job.
The input data is as following:
Service TaskType_1 TaskType_2 TaskType_3 TaskType_4 TaskType_5
0 4 6 10 6 10
1 6 10 4 10 8
2 10 8 6 8 4
3 8 10 4 6 6
4 6 4 6 4 8
5 4 6 10 6 10
6 6 10 4 10 8
7 10 8 6 8 4
8 8 10 4 6 6
9 6 4 6 4 8
The objective: develop a schedule to achieve the minimal lead time.
When I define the observation and action spec, I have used the following code. Can someone help me confirm the code is correct?
obsInfor = rlNumericSpec([10,5]) # the state can be any of one of these 50 states
obsInfor.Name = 'Planning Observation'
obsInfor.LowerLimit = 0
actInfor = rlFiniteSetSpec(10) # action can be "choosing one of 10 services"
actInfor.Name = 'Planning Action'

采纳的回答

Sandeep
Sandeep 2023-3-29
Hi Robert,
Based on the information provided, the observation and action specs seem to be defined correctly.
The observation spec, obsInfor, is defined as a 10x5 numeric array, where each row represents a service and each column represents a task type. The values in the array represent the time it takes for each service to complete each task type. The lower limit is set to 0, which is appropriate since completion times cannot be negative.
The action spec, actInfor, is defined as a finite set of 10 possible actions, where each action corresponds to choosing one of the 10 services. This is appropriate since the agent needs to choose which service to assign to each task in order to minimize lead time.
Overall, the observation and action specs seem to be consistent with the problem statement and objectives.

更多回答(0 个)

产品


版本

R2022b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by