Lecture 4 - Smart Manufacturing and JSSP Flashcards
What is Smart Manufacturing?
Smart Manufacturing is the use of advanced information and manufacturing technologies to optimize the development, production, and logistics processes in a flexible and adaptive manner.
What are the Technologies in Smart Manufacturing?
- Cyber-Physical Systems (CPS) – tight integration between physical and software systems.
- Internet of Things (IoT) – enables devices to exchange data and interact with the physical world.
- Cloud Computing – provides scalable computing power and storage.
- Big Data – supports collection, processing, and analysis of large data volumes.
- Computational Intelligence & Optimization – includes AI-driven tools for smart decision-making, scheduling, design, etc.
What are the Smart Technology Goal (Smart Manufacturing)?
- Flexibility – adapting quickly to changes (e.g., custom orders, machine failures).
- Efficiency (Optimisation) – reducing waste, time, cost, or energy.
- Real-time decision-making (Computer control + real-time adaptability) – making fast and data-driven decisions during production.
What are the Methods used in Smart Manufacturing?
Technologies & Methods used
* optimization
* operations research
* computational intelligence
* machine learning
* data mining
What are the Functional Categories of a Business (Smart Manufacturing)?
Functional categories of a business:
1. Delivery
○ Logistics
○ Maintenance & supply planning
2. Production
○ Job scheduling
○ Stock and production process optimization
3. Management
○ Layout, logistics, employee-task scheduling
4. Products / Services
○ Product design, feature config, service tailoring
5. Sales
○ Offer personalization, pricing, customer data mining
What is the Smart Manufacturing Process?
- Data acquisition (from IoT, sensors, machines)
- Data processing (big data, cloud computing)
- Decision-making (optimization, machine learning)
- Execution (cyber-physical systems, automation)
- Feedback and adaptation (continuous improvement via AI/metaheuristics)
Define Optimisation
Definition: Optimization is the process of selecting the best solution from a set of possible alternatives to achieve a desired goal with minimal cost or maximal efficiency.
What are the three views of Optimisation and their definitons?
- Economic View: Select the best decision to maximize benefit at minimal cost.
- Mathematical View: Find the input y from a set Y such that f(y) is minimized, where f is the objective function.
- Programming View: Input data specifies the problem instance, the data type Y is the candidate solution and objective function f : Y -> R rates how good the candidate solution is.
What is the Job Shop Scheduling Problem?
Definition: The Job Shop Scheduling Problem is a classic combinatorial optimization problem in operations research. It involves assigning a set of jobs to a set of machines, where each job consists of a sequence of operations that must be processed in a specific order on specific machines.
* We have a factory with m machines.
* We need to fulfill n production requests, the jobs.
* Each job will need to be processed by some or all of the machines in a job-specific order.
* Also, each job will require a job-specific time at a given machine.
* The goal is to fulfill all tasks as quickly as possible.
What is a Makespan?
The makespan is a general concept used in any scenario where multiple tasks/jobs need to be scheduled, and the goal is to minimize the total time taken to finish them all.
* Basically it’s the finish time of the last job in a schedule.
What is the Problem Instance - JSSP?
- A concrete scenario, with a specific number of machines and with specific jobs, is called an instance
- In regards to JSSP how the job schedule is layed out (REFER TO SLIDES FOR VISUAL EXAMPLE)
What is the Solution Space Y?
- A Gantt Chart: A Gantt chart is a diagram which assigns each sub-job on each machine a start and end time.
- The solution space Y is the set of all possible feasible Gantt charts for one problem.
What is the Objective Function of the Solution Space Y
f: Y → ℝ, where f(y) is the makespan (end time of the last operation).
What is the Evaluation Criteria of the Solution Space Y
- A solution is better if it has a smaller makespan.
- Feasibility must be maintained (e.g., no two jobs on the same machine at the same time).
REFER TO SLIDES FOR VISUAL EXAMPLE
Problem Instance VS Candidate Solution
REFER TO SLIDES FOR BREAKDOWN EXAMPLE
What is the Solution Quality?
The quality of a schedule is judged by how soon it completes all jobs (minimizing makespan).
- Understanding:
○ How do we rate the quality of a solution?
* A Gantt chart y1 element of Y is a better solution to our problem than another chart y2 element of Y if it allows us to complete our work faster.
* The objective function f : Y → R is the makespan, the time when the last sub-job is completed, the right-most edge of any bar in the Gantt chart.
○ Hence, this objective function is subject to minimization: smaller values are better.
What is the Global Optimum y*?
- The best possible Gantt chart with the smallest makespan.
There must be a least one globally optimum solution for y*
○ There is at least one best possible solution — the one with the smallest makespan. You might not be able to find it easily (because the problem is hard), but it exists.”
REFER TO SLIDES FOR FORMULA AND MEANING OF IT
Given JSSP is an NP- Hard Problem, how do you find a solution?
- We know the problem is N P-hard, so any algorithm that guarantees to find this solution may take time exponential in m or n in the worst case.
- So we cannot guarantee to find the best possible solution for a normal-sized JSSP in reasonable
- All what we can do is search somehow in Y and hope to get as close to y! within reasonable time as possible.
- If we can find a solution with a slightly larger makespan than the best possible solution, but we can get it within a few minutes, that would also be nice. (can be non-linear)
What is having a Global Optimum y* important for optimisation?
- It guarantees that an optimal solution exists (even if we can’t always find it).
- It helps define the goal of optimization: find y∗y^*y∗, or get as close to it as possible.
In JSSP (which is NP-hard), this means we may only approximate y∗ with heuristics, but we know what we’re aiming for
What is NP-Hard?
A problem is NP-hard if all problems in NP can be transformed (or reduced) to it in polynomial time. This means that if you could find a polynomial-time solution for an NP-hard problem, you could also find polynomial-time solutions for all problems in NP.