KR102404695B1 - Oht 시스템의 동적 라우팅 방법 및 장치 - Google Patents

Oht 시스템의 동적 라우팅 방법 및 장치 Download PDF

Info

Publication number
KR102404695B1
KR102404695B1 KR1020210017019A KR20210017019A KR102404695B1 KR 102404695 B1 KR102404695 B1 KR 102404695B1 KR 1020210017019 A KR1020210017019 A KR 1020210017019A KR 20210017019 A KR20210017019 A KR 20210017019A KR 102404695 B1 KR102404695 B1 KR 102404695B1
Authority
KR
South Korea
Prior art keywords
vehicle
node
edge
edges
time
Prior art date
Application number
KR1020210017019A
Other languages
English (en)
Other versions
KR20210133126A (ko
Inventor
장영재
황일회
홍상표
Original Assignee
한국과학기술원
다임리서치 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한국과학기술원, 다임리서치 주식회사 filed Critical 한국과학기술원
Priority to US17/241,878 priority Critical patent/US11705353B2/en
Publication of KR20210133126A publication Critical patent/KR20210133126A/ko
Application granted granted Critical
Publication of KR102404695B1 publication Critical patent/KR102404695B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L21/00Processes or apparatus adapted for the manufacture or treatment of semiconductor or solid state devices or of parts thereof
    • H01L21/67Apparatus specially adapted for handling semiconductor or electric solid state devices during manufacture or treatment thereof; Apparatus specially adapted for handling wafers during manufacture or treatment of semiconductor or electric solid state devices or components ; Apparatus not specifically provided for elsewhere
    • H01L21/677Apparatus specially adapted for handling semiconductor or electric solid state devices during manufacture or treatment thereof; Apparatus specially adapted for handling wafers during manufacture or treatment of semiconductor or electric solid state devices or components ; Apparatus not specifically provided for elsewhere for conveying, e.g. between different workstations
    • H01L21/67703Apparatus specially adapted for handling semiconductor or electric solid state devices during manufacture or treatment thereof; Apparatus specially adapted for handling wafers during manufacture or treatment of semiconductor or electric solid state devices or components ; Apparatus not specifically provided for elsewhere for conveying, e.g. between different workstations between different workstations
    • H01L21/67733Overhead conveying
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J11/00Manipulators not otherwise provided for
    • B25J11/0095Manipulators transporting wafers
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture
    • B25J9/161Hardware, e.g. neural networks, fuzzy logic, interfaces, processor
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/163Programme controls characterised by the control loop learning, adaptive, model based, rule based expert control
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
    • G05B19/4189Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by the transport system
    • G05B19/41895Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by the transport system using automatic guided vehicles [AGV]
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L21/00Processes or apparatus adapted for the manufacture or treatment of semiconductor or solid state devices or of parts thereof
    • H01L21/67Apparatus specially adapted for handling semiconductor or electric solid state devices during manufacture or treatment thereof; Apparatus specially adapted for handling wafers during manufacture or treatment of semiconductor or electric solid state devices or components ; Apparatus not specifically provided for elsewhere
    • H01L21/67005Apparatus not specifically provided for elsewhere
    • H01L21/67242Apparatus for monitoring, sorting or marking
    • H01L21/67276Production flow monitoring, e.g. for increasing throughput
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L21/00Processes or apparatus adapted for the manufacture or treatment of semiconductor or solid state devices or of parts thereof
    • H01L21/67Apparatus specially adapted for handling semiconductor or electric solid state devices during manufacture or treatment thereof; Apparatus specially adapted for handling wafers during manufacture or treatment of semiconductor or electric solid state devices or components ; Apparatus not specifically provided for elsewhere
    • H01L21/677Apparatus specially adapted for handling semiconductor or electric solid state devices during manufacture or treatment thereof; Apparatus specially adapted for handling wafers during manufacture or treatment of semiconductor or electric solid state devices or components ; Apparatus not specifically provided for elsewhere for conveying, e.g. between different workstations
    • H01L21/67703Apparatus specially adapted for handling semiconductor or electric solid state devices during manufacture or treatment thereof; Apparatus specially adapted for handling wafers during manufacture or treatment of semiconductor or electric solid state devices or components ; Apparatus not specifically provided for elsewhere for conveying, e.g. between different workstations between different workstations
    • H01L21/67706Mechanical details, e.g. roller, belt
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L21/00Processes or apparatus adapted for the manufacture or treatment of semiconductor or solid state devices or of parts thereof
    • H01L21/67Apparatus specially adapted for handling semiconductor or electric solid state devices during manufacture or treatment thereof; Apparatus specially adapted for handling wafers during manufacture or treatment of semiconductor or electric solid state devices or components ; Apparatus not specifically provided for elsewhere
    • H01L21/677Apparatus specially adapted for handling semiconductor or electric solid state devices during manufacture or treatment thereof; Apparatus specially adapted for handling wafers during manufacture or treatment of semiconductor or electric solid state devices or components ; Apparatus not specifically provided for elsewhere for conveying, e.g. between different workstations
    • H01L21/67703Apparatus specially adapted for handling semiconductor or electric solid state devices during manufacture or treatment thereof; Apparatus specially adapted for handling wafers during manufacture or treatment of semiconductor or electric solid state devices or components ; Apparatus not specifically provided for elsewhere for conveying, e.g. between different workstations between different workstations
    • H01L21/67724Apparatus specially adapted for handling semiconductor or electric solid state devices during manufacture or treatment thereof; Apparatus specially adapted for handling wafers during manufacture or treatment of semiconductor or electric solid state devices or components ; Apparatus not specifically provided for elsewhere for conveying, e.g. between different workstations between different workstations by means of a cart or a vehicule
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/45Nc applications
    • G05B2219/45031Manufacturing semiconductor wafers
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Manufacturing & Machinery (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Condensed Matter Physics & Semiconductors (AREA)
  • Automation & Control Theory (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Power Engineering (AREA)
  • Mechanical Engineering (AREA)
  • Robotics (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Fuzzy Systems (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Traffic Control Systems (AREA)

Abstract

OHT 시스템의 동적 라우팅 방법 및 장치를 개시한다.
본 발명의 일 측면에 의하면, OHT 시스템의 동적 라우팅 방법에 있어서, 차량이 서로 인접한 두 노드 사이의 엣지를 통하여 다른 하나의 노드까지 이동하는 데 걸리는 시간인 Q 값을 기록한 Q 테이블을 생성하는 과정; 목적지 노드를 배정받은 차량이 현재 노드와 다음 노드 사이의 통과 엣지를 통과할 때, 차량의 통과 시간을 측정하는 과정; 복수의 엣지들 중 통과 시간에 의해 갱신될 타겟 엣지들을 추출하는 과정; 및 차량이 목적지 노드까지 이동하는 데 걸리는 시간으로서, 통과 시간에 부분적으로 기초하여 통과 엣지와의 거리에 따라 타겟 엣지들에 대한 Q 값을 차등적으로 갱신하는 과정을 포함하는 동적 라우팅 방법을 제공한다.

Description

OHT 시스템의 동적 라우팅 방법 및 장치{Dynamic Routing Method and Apparatus for Overhead Hoist Transport System}
본 발명의 실시예들은 오버헤드 호이스트 트랜스포트(Overhead Hoist Transport; OHT) 시스템의 동적 라우팅을 위한 운영 방법 및 장치, 특히 OHT 차량이 노드와 노드 사이의 엣지를 통과할 때마다 의사결정지표인 Q 테이블을 갱신하고, Q 테이블에 기초하여 OHT 차량 할당 및 라우팅 경로를 제공하는 OHT 시스템 운영 방법 및 장치에 관한 것이다.
이 부분에 기술된 내용은 단순히 본 발명에 대한 배경 정보를 제공할 뿐 종래기술을 구성하는 것은 아니다.
최근 반도체 웨이퍼 제조 시설인 팹(fab)의 내부는 매우 복잡하게 설계되며, 팹은 자동 자재 취급 시스템(Automated Material Handling System; AMHS)을 구축하고 있다. 팹은 AMHS로서 오버헤드 호이스트 운송(Overhead Hoist Transportation; OHT)시스템을 구현한다. 여기서, OHT 시스템은 천장에 매달려 있는 트랙이라고하는 가이드 레일과 수백 대의 차량(vehicle)을 이용하여 웨이퍼를 운송하는 시스템이다.
특히, DRAM 칩을 생산하는 팹에서 웨이퍼 처리 공정은 툴(tool)이라고 불리는 수천 개의 서로 다른 장치를 이용하여 500번 이상 반복 수행된다. 즉, 단일 웨이퍼는 동일한 툴에 의해 여러 번 처리된다. 최근 대규모 팹은 300 mm 웨이퍼를 처리할 수 있다. 웨이퍼가 툴 사이를 이동할 때, 일반적으로 20 개 내지 25 개의 웨이퍼를 저장하는 FOUP(Front Opening Unified Pod)이라고 불리는 로트(lot)에 웨이퍼가 적재된다. 로트는 OHT 시스템에 의해 운송된다.
한편, 지난 몇 년 동안 거의 모든 산업의 디지털 전환(digital transformation)으로 인해 반도체 칩 시장의 규모는 폭발적으로 증가했다. 이러한 시장 수요에 따라 팹의 크기가 더 커지고, 팹 설계에는 단일 트랙 네트워크가 전체 툴을 연결하는 통합 레이아웃(layout)이 적용된다. 이로 인해, 웨이퍼를 툴들 사이의 트랙을 이용하여 운송할 수 있고, 단위 시간당 많은 웨이퍼를 운송할 수 있다.
하지만, 통합 레이아웃과 툴 간 웨이퍼 직접 전송이 연구될수록 OHT 차량을 툴에서 툴로 운송하기 위한 라우팅(routing)문제가 대두되고 있다. 팹 내에 단위 면적당 툴 개수를 의미하는 툴 밀도(tool density)가 증가함에 따라 트랙에서 OHT 차량의 극심한 정체가 발생할 수 있다. 이러한 교통 체증 상황은 단위 시간 동안 전달된 로트 개수 및 로트별 평균 전송 시간에 기초하여 측정되는 OHT 시스템 성능을 저하시킨다.
일반적으로 라우팅 방법은 정적 라우팅(static routing)과 동적 라우팅(dynamic routing)으로 분류된다. 정적 라우팅은 지정된 출발지 노드 및 목적지 노드에 대해 경로가 결정되면, 추후 변경되지 않는 라우팅 방법이다. 일반적인 정적 라우팅에는 결정론적 최단 경로 계획(deterministic shortest path planning)이 포함된다. 반대로, 동적 라우팅 방법은 교통 상황 및 혼잡 수준에 기초하여 최적의 경로를 동적으로 선택하는 루트 안내 방법이다. 즉, 동적 라우팅은 교통 상황에 따라 경로를 변화시킨다. 최단 경로 설정 후 경로에 교통 정체가 발생할 때, 동적 라우팅 방법은 지연을 피하기 위해 경로를 재설정 할 수 있다.
현재 상용 OHT 시스템은 혼잡을 피하기 위해 정해진 규칙이 있는 정적 접근 방식을 사용하는 경우가 많다. 구체적으로, AMHS 엔지니어는 가장 짧은 경로 알고리즘을 사용하여 하나의 포트에서 다른 포트로 사전 계획된 이동 경로를 결정한다. 그런 다음 OHT 시스템 운용 하면서 실시간 정체 상황을 관찰하여 혼잡 발생 영역을 식별한다. 일부 특정 지역이나 경로 구간에서 지속적인 정체가 발생하면 직간접적으로 경로를 수정한다. 예를 들어, i 노드에서 j 노드로 이동하는 것이 목적지 노드까지의 최단 경로인 경우 OHT 차량을 j 노드로 이동시킨다. 하지만, i 노드와 j 노드 사이에 소정의 OHT 차량이 존재하는 경우, 미리 설정된 규칙에 따라 OHT 차량을 j' 노드로 이동시킨다.
하지만, 일시적 룰에 기반한 라우팅 방법은 시간이 많이 걸리며 엔지니어의 많은 현장 경험과 시뮬레이션 실행 및 분석이 필요하다. 결과적으로, 정적 라우팅 방법은 동적으로 변하는 트래픽 및 이벤트에 빠르게 대응할 수 없다. 또한, 룰을 설계할 때 트래픽 또는 정체를 미리 반영하는 것이 불가능하다. 또한, 정체 여부를 판단하는 임계값을 결정하는 것은 간단하지 않다. 특히, 팹에서는 예기치 않은 기계 가동 중단 또는 OHT 고장이 발생한다. 예기치 않은 이벤트가 발생하여 OHT 차량이 트랙의 특정 세그먼트를 통과하지 못하는 경우, OHT 시스템은 대체 경로를 결정하기 위해 최단 경로를 다시 계산해야 한다. 예기치 않은 이벤트가 발생할 때마다 대체 경로를 알아내는 것은 매우 번거롭고 비효율적이다.
본 발명의 실시예들은, OHT 차량의 수와 작업 요청 빈도가 증가함에 따라 발생하는 교통 정체를 줄이고, 수많은 OHT 차량에 대한 라우팅에 필요한 연산 속도를 높이기 위한 OHT 시스템의 동적 라우팅 방법 및 장치를 제공하는 데 주된 목적이 있다.
본 발명의 다른 실시예들은, 정적 라우팅 방법과 달리 OHT 차량의 고장이나 예측하기 어려운 OHT 차량 할당 요청에 실시간으로 대응하기 위한 동적 라우팅 방법 및 장치를 제공하는 데 일 목적이 있다.
본 발명의 일 측면에 의하면, OHT 시스템의 동적 라우팅 방법에 있어서, 차량이 서로 인접한 두 노드 사이의 엣지를 통하여 다른 하나의 노드까지 이동하는 데 걸리는 시간인 Q 값을 기록한 Q 테이블을 생성하는 과정; 목적지 노드를 배정받은 차량이 현재 노드와 다음 노드 사이의 통과 엣지를 통과할 때, 차량의 통과 시간을 측정하는 과정; 복수의 엣지들 중 통과 시간에 의해 갱신될 타겟 엣지들을 추출하는 과정; 및 차량이 목적지 노드까지 이동하는 데 걸리는 시간으로서, 통과 시간에 부분적으로 기초하여 통과 엣지와의 거리에 따라 타겟 엣지들에 대한 Q 값을 차등적으로 갱신하는 과정을 포함하는 동적 라우팅 방법을 제공한다.
본 실시예의 다른 측면에 의하면, OHT 시스템의 동적 라우팅 장치에 있어서, 차량이 서로 인접한 두 노드 사이의 엣지를 통하여 다른 하나의 노드까지 이동하는 데 걸리는 시간인 Q 값을 기록한 Q 테이블을 생성하는 Q 테이블 생성부; 목적지 노드를 배정받은 차량이 현재 노드와 다음 노드 사이의 통과 엣지를 통과할 때, 차량의 통과 시간을 측정하는 측정부; 복수의 엣지들 중 통과 시간에 의해 갱신될 타겟 엣지들을 추출하는 타겟 엣지 추출부; 및 차량이 목적지 노드까지 이동하는 데 걸리는 시간으로서, 통과 시간에 부분적으로 기초하여 통과 엣지와의 거리에 따라 타겟 엣지들에 대한 Q 값을 차등적으로 갱신하는 Q 테이블 관리부을 포함하는 동적 라우팅 장치를 제공한다.
이상에서 설명한 바와 같이 본 발명의 일 실시예에 의하면, 실시간 데이터에 기초하여 OHT 차량이 하나의 엣지를 이동할 때마다 Q 테이블을 갱신하되, 지엽적 적응(local adaptation)과 차등적 갱신(decaying update)을 통해 Q 테이블 갱신에 필요한 연산 속도를 높일 수 있다.
본 발명의 다른 실시예에 의하면, 실시간 데이터에 기초하여 Q 테이블을 갱신함으로써, OHT 차량의 고장, 혼잡한 경로, 또는 예측하기 어려운 OHT 차량 할당 요청에 실시간(real-time)으로 대응할 수 있다.
본 발명의 다른 실시예에 의하면, OHT 시스템이 OHT 차량 할당 요청을 받으면 Q 테이블에 기초하여 해당 노드 근처에 위치한 유휴(idle) 상태의 OHT 차량을 할당(assigning)함으로써, OHT 차량이 해당 노드에 빨리 도착하도록 할 수 있다.
본 발명의 다른 실시예에 의하면, OHT 차량 할당 요청을 수신할 때마다 OHT 차량의 전체 경로를 설정할 필요 없이, 지속적으로 갱신되는 Q 테이블에 기초하여 매 노드에서의 방향만 즉각적으로 결정함으로써, 라우팅(routing)에 필요한 연산량을 줄일 수 있다.
도 1은 본 발명의 일 실시예에 따른 오버헤드 호이스트 운송(Overhead Hoist Transport; OHT) 시스템을 설명하기 위해 예시한 도면이다.
도 2는 본 발명의 일 실시예에 따른 동적 라우팅 장치의 구성요소를 예시한 구성도이다.
도 3a 및 도 3b는 본 발명의 일 실시예에 따라 타겟 엣지들을 추출하는 과정을 설명하기 위해 예시한 도면이다.
도 4는 본 발명의 일 실시예에 따라 통과 엣지와의 거리에 기초하여 Q 값을 차등적으로 갱신하는 구성요소를 설명하기 위해 예시한 도면이다.
도 5a 및 도 5b는 본 발명의 일 실시예에 따른 시간차 에러와 보상을 설명하기 위해 예시한 도면이다.
도 6a 및 도 6b는 본 발명의 일 실시예에 따라 라우팅에 이용되는 볼츠만 소프트맥스 정책을 설명하기 위해 예시한 도면이다.
도 7은 본 발명의 일 실시예에 따라 Q 테이블에 기초하여 차량을 할당하는 과정을 설명하기 위해 예시한 도면이다.
도 8 및 도 9는 본 발명의 일 실시예에 따른 동적 라우팅 장치의 동작 방법을 설명하기 위해 예시한 순서도다.
이하, 본 발명의 일부 실시예들을 예시적인 도면을 통해 상세하게 설명한다. 각 도면의 구성요소들에 참조부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록 다른 도면 상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 또한, 본 발명을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다.
또한, 본 발명의 구성 요소를 설명하는 데 있어서, 제 1, 제 2, A, B, (a), (b) 등의 용어를 사용할 수 있다. 이러한 용어는 그 구성 요소를 다른 구성 요소와 구별하기 위한 것일 뿐, 그 용어에 의해 해당 구성 요소의 본질이나 차례 또는 순서 등이 한정되지 않는다. 명세서 전체에서, 어떤 부분이 어떤 구성요소를 '포함', '구비'한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다. 또한, 명세서에 기재된 '~부', '모듈' 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어나 소프트웨어 또는 하드웨어 및 소프트웨어의 결합으로 구현될 수 있다.
이하에서, 차량(vehicle)은 반도체 제조시설에서 웨이퍼를 운송하는 구동부와 물건을 싣는 이재부로 구성된 기계 장치인 것으로 설명하나, 이에 한정되지 않고 물체를 운반하는 화물 차량, 컨테이너, OHT 차량(OHT vehicle) 등을 의미할 수도 있고, 서로 혼용되어 지칭될 수 있다. 또한, 노드(node)는 툴(tool)의 위치와 교차로(intersection) 지점을 포함한다. 인접한 두 노드 사이의 경로를 엣지(edge)라 지칭하고, 엣지는 차량이 이동하는 경로이다. 또한, 엣지는 양방향(bi-direction) 엣지일 수 있으나 반도체 제조 시설에서는 단방향(uni-direction) 엣지인 것이 바람직하다.
도 1은 본 발명의 일 실시예에 따른 오버헤드 호이스트 운송(Overhead Hoist Transport; OHT) 시스템을 설명하기 위해 예시한 도면이다.
도 1을 참조하면, OHT 시스템(미도시)은 차량(100), 복수의 툴(111, 112, 113, 114) 및 복수의 교차로(121, 122, 123, 124, 125, 126)를 포함한다. 여기서, 복수의 툴(111, 112, 113, 114)은 웨이퍼 공정을 수행하는 장소를 의미한다. 복수의 교차로(121, 122, 123, 124, 125, 126)는 차량(100)의 경로가 적어도 두 개로 갈라지거나 합쳐지는 지점을 의미한다.
OHT 시스템은 차량 할당을 요청하는 툴이 있는 경우, 툴과 가까운 차량들 중 유휴(idle) 차량을 툴에 할당한다. 웨이퍼 로트를 실은 차량(100)은 트랙을 따라 할당된 툴로 이동한다. 이후, 차량(100)은 웨이퍼 로트의 공정이 완료될 때까지 유휴 상태로 대기한다. 웨이퍼 로트의 공정이 완료되면, OHT 시스템은 웨이퍼를 실은 차량(100)을 다음 공정에 해당하는 툴로 이동시킨다.
도 2는 본 발명의 일 실시예에 따른 동적 라우팅 장치의 구성요소를 예시한 구성도이다.
도 2를 참조하면, 동적 라우팅 장치(20)는 Q 테이블 생성부(200), 측정부(210), 타겟 엣지 추출부(220), Q 테이블 관리부(230), 수신부(240), 차량 선택부(250) 및 차량 제어부(260)를 포함한다.
Q 테이블 생성부(200)는 차량이 서로 인접한 두 노드 사이의 엣지를 통하여 다른 하나의 노드까지 이동하는 데 걸리는 시간인 Q 값을 기록한 Q 테이블을 생성하는 구성요소다. 여기서, Q 테이블은 (출발지 노드, 중간 노드, 목적지 노드)로 구성된 3차원 테이블일 수 있다. 중간 노드는 출발지 노드와 인접한 노드를 의미한다. 차량은 출발지 노드와 중간 노드 사이의 엣지를 통해 목적지 노드까지 이동한다. 즉, Q 테이블에 기록된 하나의 Q 값은 차량이 하나의 엣지를 통해 하나의 목적지 노드로 이동하는 데 걸리는 시간을 의미한다.
Q 테이블 생성부(200)는 Q 테이블을 초기화(initialization)할 수 있다. Q 테이블 생성부(200)는 모든 Q 값을 0으로 설정한다. OHT 시스템 내 정체가 없는 상황에서 목적지 노드를 배정받은 차량이 하나의 노드와 인접한 노드 사이의 엣지를 통과하고, 측정부(210)가 통과 시간을 측정한다. 여기서, 정체가 없는 상황이란 OHT 시스템 내 차량이 한 대만 있는 경우를 의미한다. Q 테이블 생성부(200)는 Q 테이블에 기초하여 차량이 인접한 노드에서 목적지 노드까지 이동하는 데 걸리는 최단 시간을 계산한다. Q 테이블 생성부(200)는 통과 시간 및 최단 시간에 기초하여 Q 값을 갱신할 수 있다. Q 테이블 생성부(200)는 모든 Q 값에 대해 갱신 전 Q 값과 갱신 후 Q 값의 차이가 기 설정된 값보다 작아질 때까지 초기화를 수행할 수 있다. 이러한 과정을 통해, Q 테이블 생성부(200)는 모든 엣지와 모든 목적지 노드에 대해 초기화 작업을 수행함으로써, 모든 Q 값에 대해 초기화 작업을 수행할 수 있다.
측정부(210)는 OHT 시스템 운용 중에 목적지 노드를 배정받은 차량이 현재 노드와 다음 노드 사이의 통과 엣지를 통과할 때, 차량의 통과 시간을 측정하는 구성요소다. 여기서, 현재 노드는 차량이 위치한 노드이고, 다음 노드는 현재 노드와 인접한 노드들 중 하나다.
타겟 엣지 추출부(220)는 복수의 엣지들 중 통과 시간에 의해 갱신될 타겟 엣지(target edge)들을 추출하는 구성요소다. 다시 말하면, 타겟 엣지는 하나의 차량이 하나의 엣지를 통과하는 것에 대응하여 갱신되는 엣지를 의미한다. 여기서, 본 발명의 다른 실시예에 따르면, 타겟 엣지들은 추가적인 필터링 알고리즘을 통해 나머지 엣지들로부터 필터링된 엣지들을 의미할 수 있다.
구체적으로, 타겟 엣지 추출부(220)는 복수의 엣지들 중 차량이 다음 노드에서 목적지 노드로 이동하는 데 이용될 수 있는 엣지들 및 통과 엣지 모두를 제외한 나머지 엣지들을 타겟 엣지들로 추출한다. 즉, 타겟 엣지들은 모든 엣지들 중에서 통과 엣지를 제외하고, 차량이 다음 노드에서 목적지 노드로 이동하는 데 이용될 수 있는 엣지들을 더 제외하고 남은 엣지들을 의미한다.
Q 테이블 관리부(230)는 통과 시간에 부분적으로 기초하여 통과 엣지와의 거리에 따라 타겟 엣지들에 대한 Q 값을 차등적으로 갱신하는 구성요소다. 여기서, 타겟 엣지에 대한 Q 값은 차량이 타겟 엣지를 통하여 목적지 노드까지 이동하는 데 걸리는 시간을 의미한다. 이때, Q 값을 Q[(d,i),j]로 나타낼 수 있다. 여기서, i는 출발지 노드, j는 인접 노드, d는 목적지 노드를 의미한다.
구체적으로, Q 테이블 관리부(230)는 통과 시간에 부분적으로 기초하여, 통과 엣지에 가까운 타겟 엣지에 대한 Q 값의 변화량을 통과 엣지와 먼 타겟 엣지에 대한 Q 값의 변화량보다 크게 조정한다. 즉, 통과 엣지로부터 거리가 멀수록 Q 값의 변화량이 작다. 예를 들어, 정체로 인해 통과 시간이 오래 걸린 경우, 통과 엣지에 가까운 타겟 엣지에 대한 Q 값이 증가하되, 통과 엣지로부터 먼 타겟 엣지에 대한 Q 값보다 더 많이 증가하게 된다.
이는, 통과 엣지에 가까운 타겟 엣지일수록 통과 시간과 연관될 확률이 높기 때문이다. 예를 들어, 정체로 인해 통과 시간이 많이 걸린 경우, 통과 엣지에 가까운 타겟 엣지를 이동한 차량이 정체된 통과 엣지를 이용할 확률이 통과 엣지에 먼 타겟 엣지를 이동한 차량이 정체된 통과 엣지를 이용할 확률보다 높다. Q 테이블 관리부는 이를 고려하여 Q 값을 차등적으로 갱신한다.
본 발명의 일 실시예에 따른 Q 테이블 관리부(230)는 차량의 이동에 따른 보상(reward) 및 통과 엣지와의 거리에 부분적으로 기초하여 타겟 엣지들에 대한 Q 값을 갱신할 수 있다. 보상이 클수록 타겟 엣지들에 대한 Q 값이 커지며, 통과 엣지와의 거리가 먼 타겟 엣지일수록 보상이 Q 값에 반영되는 정도가 작아진다.
여기서, 보상은 Q 테이블 관리부(230)가 제1 포텐셜과 제2 포텐셜 간 차이를 계산할 때, 통과 시간을 포텐셜 차이만큼 조정한 값을 의미한다. 포텐셜이란 트랙에 아무 차량도 없을 때, 하나의 차량이 출발 노드에서 목적 노드까지 이동하는 데 걸리는 시간을 의미한다. 포텐셜은 시간에 따라 변화하지 않는 시불변(time-invariant) 값으로서 미리 설정될 수 있다.
구체적으로, Q 테이블 관리부(230)는 목적지 노드와 현재 노드 사이의 제1 포텐셜(potential), 및 목적지 노드와 다음 노드 사이의 제2 포텐셜을 계산한다. Q 테이블 관리부(230)는 제1 포텐셜과 제2 포텐셜의 차이에 기초하여 통과 시간을 조정함으로써, 보상을 계산한다. Q 테이블 관리부(230)는 보상에 부분적으로 기초하여 타겟 엣지들에 대한 Q 값을 갱신한다. 본 발명의 일 실시예에 따른 Q 테이블 관리부(230)는 타겟 엣지와 통과 엣지와의 거리가 멀수록 타겟 엣지에 대한 Q 값에 보상을 적게 반영할 수 있다.
본 발명의 일 실시예에 따른 Q 테이블 관리부(230)는 시간차 에러를 이용하여 타겟 엣지들에 대한 Q 값을 갱신할 수도 있다. 시간차 에러를 이용하는 시간차 학습(Temporal Difference learning; TD learning)은 에이전트(agent)가 각 행동(action) 후에 부여된 보상(reward) 시스템을 통해 지속적으로 환경(environment)을 학습하는 강화학습(Reinforcement learning) 방법이다.
시간차 에러(Temporal Difference error; TD error)는 이동 시간, 보상 및 통과 엣지에 대한 Q 값에 기초하여 계산되는 값으로서, Q 값 갱신에 이용되는 파라미터다. 이동 시간은 차량이 다음 노드에서 목적지 노드로 이동하는 데 걸리는 최단 시간을 Q 테이블에 기초하여 계산한 값을 의미한다. 구체적으로, 시간차 에러는 이동 시간과 통과 엣지에 대한 Q 값의 차이만큼 보상을 조정한 값이다. 본 발명의 일 실시예에 따른 Q 테이블 관리부(230)는 타겟 엣지와 통과 엣지와의 거리가 멀수록 타겟 엣지에 대한 Q 값에 시간차 에러를 적게 반영할 수 있다.
수신부(240)는 차량 요청 노드로부터 차량 할당을 요청 받는 구성요소다.
차량 선택부(250)는 갱신된 Q 테이블에 기초하여 복수의 차량 중 최적 차량을 선택하는 구성요소다. 본 발명의 일 실시예에 따른 차량 선택부(250)는 갱신된 Q 테이블에 기초하여 복수의 차량이 차량 요청 노드로 이동하는 데 걸리는 예상 시간들을 각각 계산하고, 복수의 차량 중 예상 시간이 가장 짧은 차량을 최적 차량으로 선택할 수 있다.
차량 제어부(260)는 볼츠만 소프트맥스 정책(boltzmann softmax policy)에 따라 최적 차량을 차량 요청 노드까지 이동시키는 구성요소다. 여기서, 볼츠만 소프트맥스 정책은 차량이 위치한 노드에 연결된 복수의 라우팅 엣지들이 존재하는 경우, 복수의 라우팅 엣지들에 대한 Q 값의 비율에 따른 확률에 기초하여 최적 차량을 복수의 라우팅 엣지들 중 하나의 라우팅 엣지를 통해 이동시키는 정책을 의미한다.
도 3a 및 도 3b는 본 발명의 일 실시예에 따라 타겟 엣지들을 추출하는 과정을 설명하기 위해 예시한 도면이다.
도 3a 및 도 3b를 참조하면, 복수의 엣지(300, 311, 312, 313, 314, 315, 316, 320, 321, 322)와 각 노드들이 도시되어 있다. 차량이 1번 노드에서 5번 노드로 이동한 것으로 설명한다. 즉, 1번 노드가 차량이 위치한 현재 노드이고, 5번 노드가 현재 노드에 인접한 다음 노드다.
도 3a를 참조하면, 복수의 엣지(300, 311, 312, 313, 314, 315, 316, 320, 321, 322)는 통과 엣지(300), 타겟 엣지들(320, 321, 322) 및 나머지 엣지들(311, 312, 313, 314, 315, 316)을 포함한다. 도 3a에서는 3번 노드가 목적지 노드다.
통과 엣지(300)는 차량이 통과한 엣지를 의미하고, 나머지 엣지들(311, 312, 313, 314, 315, 316)은 차량이 다음 노드에서 목적지 노드로 이동하는 데 이용될 수 있는 엣지들을 의미한다. 타겟 엣지들(320, 321, 322)은 복수의 엣지(300, 311, 312, 313, 314, 315, 316, 320, 321, 322) 중 통과 엣지(300)와 나머지 엣지들(311, 312, 313, 314, 315, 316)을 제외한 엣지들로서, 차량의 통과 시간에 기초하여 갱신될 엣지들이다.
도 3a의 (a)를 참조하여, 차량의 이동 후 갱신될 타겟 엣지들(320, 321, 322)를 추출하기 위해, 동적 라우팅 장치는 복수의 엣지(300, 311, 312, 313, 314, 315, 316, 320, 321, 322) 중에서 차량이 통과한 통과 엣지(300)를 제외한다. 이후, 동적 라우팅 장치는 차량이 5번 노드에서 3번 노드로 이동하는 데 이용될 수 있는 나머지 엣지들(311, 312, 313, 314, 315, 316)을 제외한다.
도 3a의 (b)를 참조하면, 차량이 통과 엣지(300)를 통과함에 따라 갱신 대상이 되는 타겟 엣지들(320, 321, 322)이 도시되어 있다.
전술한 과정을 통해 동적 라우팅 장치는 타겟 엣지들(320, 321, 322)을 추출할 수 있다.
도 3b를 참조하면, 복수의 엣지(300, 311, 312, 313, 314, 315, 316, 320, 321, 322)는 통과 엣지(300), 타겟 엣지들(312, 313, 314, 315, 316, 320, 321, 322) 및 나머지 엣지(311)를 포함한다. 도 3b에서는 6번 노드가 목적지 노드다.
도 3b의 (a)를 참조하여, 차량의 이동 후 갱신될 타겟 엣지들(312, 313, 314, 315, 316, 320, 321, 322)을 추출하기 위해, 동적 라우팅 장치는 복수의 엣지(300, 311, 312, 313, 314, 315, 316, 320, 321, 322) 중에서 차량이 통과한 통과 엣지(300)를 제외한다. 이후, 동적 라우팅 장치는 차량이 5번 노드에서 6번 노드로 이동하는 데 이용될 수 있는 나머지 엣지(311)를 제외한다.
도 3b의 (b)를 참조하면, 차량이 통과 엣지(300)를 통과함에 따라 갱신 대상이 되는 타겟 엣지들(312, 313, 314, 315, 316, 320, 321, 322)이 도시되어 있다.
전술한 과정을 통해 동적 라우팅 장치는 타겟 엣지들(312, 313, 314, 315, 316, 320, 321, 322)을 추출할 수 있다.
동적 라우팅 장치는 차량이 이동할 때마다 모든 Q 값을 갱신하지 않고, 타겟 엣지들에 대한 Q 값만 갱신함으로써, Q 테이블을 관리하는 데 필요한 연산 처리량을 줄이고, 연산 과부하를 방지할 수 있다. 이를 지역적 적응(local adaptation)이라 한다.
도 4는 본 발명의 일 실시예에 따라 통과 엣지와의 거리에 기초하여 Q 값을 차등적으로 갱신하는 구성요소를 설명하기 위해 예시한 도면이다.
도 4 및 도 3a를 참조하면, OHT 차량, 복수의 노드, 통과 엣지(300) 및 타겟 엣지들(320, 321, 322)에 대한 Q 값의 변화량이 도시되어 있다. 타겟 엣지들(320, 321, 322)은 제1 타겟 엣지(321), 제2 타겟 엣지(322) 및 제3 타겟 엣지(320)를 포함한다.
제1 타겟 엣지(321)에 대한 Q 값은 차량이 제1 타겟 엣지(321)를 통하여 3번 노드까지 이동하는 데 걸리는 최단 시간을 의미한다. 제1 타겟 엣지에 포함된 노드는 1번 노드와 2번 노드다. 즉, 목적지 노드가 3번 노드일 때 제1 타겟 엣지(321)에 대한 Q 값은 Q[(3,2), 1]로 표현될 수 있다. 목적지 노드가 3번 노드일 때 제1 타겟 엣지(321)에 대한 Q 값의 변화량은 dQ[(3,2), 1]로 표현될 수 있다. 마찬가지로, 목적지 노드가 3번 노드일 때 제2 타겟 엣지(321)에 대한 Q 값과 제3 타겟 엣지에 대한 Q 값은 각각 dQ[(3,3), 1]와 dQ[(3,4), 2]로 표현된다. Q 값의 변화량은 보상 또는 시간차 에러에 부분적으로 기초하여 계산될 수 있다. 다시 말하면, 동적 라우팅 장치는 통과 엣지(300)와의 거리가 멀수록 보상 또는 시간차 에러를 타겟 엣지에 대한 Q 값에 적게 반영한다.
제3 타겟 엣지(320)가 제1 타겟 엣지(321)보다 통과 엣지(300)와의 거리가 멀기 때문에, 동적 라우팅 장치는 dQ[(3,4), 2]를 dQ[(3,2), 1]보다 작게 설정한다. 또한, 제3 타겟 엣지(320)가 제2 타겟 엣지(322)보다 통과 엣지(300)와의 거리가 멀기 때문에, 동적 라우팅 장치는 dQ[(3,4), 2]를 dQ[(3,1), 2]보다 작게 설정한다.
전술한 과정을 통해, 동적 라우팅 장치는 통과 엣지와의 거리가 먼 타겟 엣지들에 대한 Q 값을 적게 변화시키고, 통과 엣지와의 거리가 가까운 타겟 엣지들에 대한 Q 값을 크게 변화시킴으로써, Q 값을 정밀하고 효율적으로 관리할 수 있다. 이를 차등적 갱신(decaying update)라 한다.
도 5a 및 도 5b는 본 발명의 일 실시예에 따른 시간차 에러와 보상을 설명하기 위해 예시한 도면이다.
도 5a를 참조하면, 차량(500), 현재 노드(510), 다음 노드(520) 및 목적지 노드(530)가 도시되어 있다. 여기서, 현재 노드(510)는 출발지 노드를 의미한다. 현재 노드(510)와 다음 노드(520) 사이의 엣지가 통과 엣지다.
동적 라우팅 장치는 차량(500)이 현재 노드(510)에서 다음 노드(520)로 이동한 행동(action)에 대한 보상(reward)을 계산한다. 여기서, 보상은 차량(500)의 이동 시간에 부분적으로 기초하여 계산된다.
동적 라우팅 장치는 차량(500)이 다음 노드(520)에서 목적지 노드(530)까지 이동하는 데 걸리는 최단 이동 시간인 min Q를 Q 테이블에 기초하여 계산한다. 만약 다음 노드(520)와 목적지 노드(530) 사이에 복수의 경로가 있는 경우, 각 경로에 대한 최단 시간의 합을 min Q로 산출할 수 있다.
동적 라우팅 장치는 Q 테이블을 참조하여, 차량(500)이 현재 노드(510)와 다음 노드(520) 사이의 엣지를 통하여 목적지 노드(530)까지 이동하는 데 걸리는 시간으로서, Q[(d, 1), 2]를 계산한다.
동적 라우팅 장치는 보상(reward)과 이동 시간(min Q)를 합한 후 통과 엣지에 대한 Q 값(Q[(d,1), 2])를 뺄셈함으로써, 시간차 에러를 계산할 수 있다.
시간차 에러는 수학식 1을 통해 계산될 수 있다.
Figure 112021015361711-pat00001
수학식 1에서
Figure 112021015361711-pat00002
는 시간차 에러,
Figure 112021015361711-pat00003
는 보상,
Figure 112021015361711-pat00004
는 다음 노드 j에서 목적지 노드 d까지 이동하는 데 걸리는 최단 시간,
Figure 112021015361711-pat00005
는 통과 엣지에 대한 Q 값이다.
이하에서는, 타겟 엣지들에 대한 Q 값의 변화량을 수학식으로 설명한다.
본 발명의 일 실시예에 따른 Q 값의 변화량은 수학식 2와 같이 표현될 수 있다.
Figure 112021015361711-pat00006
수학식 2에서,
Figure 112021015361711-pat00007
는 Q 값의 변화량, R은 보상,
Figure 112021015361711-pat00008
는 다음 노드 j에서 목적지 노드 d까지 이동하는 데 걸리는 최단 시간, Q는 Q 값,
Figure 112021015361711-pat00009
는 표준 이동 시간,
Figure 112021015361711-pat00010
Figure 112021015361711-pat00011
는 감쇄 요인(decaying factor)이다. l과 m은 타겟 엣지들에 포함된 노드들 중 인접한 두 노드를 의미한다. i는 현재 노드, j는 다음 노드, d는 목적지 노드를 의미한다.
Figure 112021015361711-pat00012
는 트랙에 하나의 차량만 존재하여 다른 차량과의 간섭이 없을 때, 하나의 차량이 (l, m) 노드를 통하여 j 노드까지 이동하는 데 걸리는 표준 이동 시간을 의미한다.
Figure 112021015361711-pat00013
는 차량이 l 노드와 m 노드가 포함된 타겟 엣지를 통하여 d 노드로 이동하는 데 걸리는 시간인 Q 값이다.
Figure 112021015361711-pat00014
는 d 노드를 목적지로 배정 받는 차량을 i 노드에서 j 노드로 이동시킨 행동에 대한 보상을 의미한다.
Figure 112021015361711-pat00015
은 타겟 엣지들에 대한 시간차 에러이다.
Figure 112021015361711-pat00016
Figure 112021015361711-pat00017
는 타겟 엣지들과 통과 엣지 간 거리에 따라 타겟 엣지들에 대한 Q 값을 차등적으로 갱신하는 데 이용되는 파라미터다. 바람직하게는,
Figure 112021015361711-pat00018
은 0과 1 사이의 실수이고,
Figure 112021015361711-pat00019
는 0보다 큰 실수이다.
최종적으로, Q 값의 갱신은 수학식 3과 같이 표현될 수 있다.
Figure 112021015361711-pat00020
도 5b를 참조하면, D 노드(550), 제1 노드(551), 제2 노드(552), 및 제3 노드(553)가 도시되어 있다. 이하에서, 차량을 제1 노드(551)에서 D 노드(550)로 이동시키기 위해, 차량이 제1 노드(551) 노드에서 D 노드(550)로 이동시키는 행동에 대한 제1 보상과 차량이 제1 노드(551) 노드에서 제2 노드(552)로 이동시키는 행동에 대한 제2 보상을 설명한다. 여기서 보상은 Q 테이블을 갱신하는 데 이용되며, 보상이 클수록 Q값의 변화량이 크다. 또한, 본 발명의 일 실시예에 따라 결정된 보상(reward shaping)을 이용하는 경우와 이용하지 않는 경우를 비교한다.
도 5b에서, A(d, i)는 차량이 d 노드로 이동하기 위해 i 노드에서 이동할 수 있는 인접 노드들의 집합을 의미한다. t(i, j)는 차량이 i 노드에서 j 노드로 이동하는 데 걸린 시간을 측정한 값이다.
Figure 112021015361711-pat00021
는 트랙에 하나의 차량만 존재할 때, 하나의 차량이 i 노드에서 j 노드로 이동하는 데 걸리는 시간으로서, 포텐셜을 의미한다. 포텐셜은 시간에 따라 변화하지 않는 값이다.
차량은 제1 노드(551)에서 취할 수 있는 행동으로서, D 노드(550)로 이동 또는 제2 노드(552)로 이동이 있다. 차량이 제2 노드(552)를 통해 D 노드(550)로 도착하는 시간은 차량이 곧바로 D 노드(550)로 이동하는 시간보다 오래 걸린다.
동적 라우팅 장치가 차량을 제1 노드(551)에서 D 노드(550)로 이동시키는 경우, 제1 보상은 t(1,D)-4 이다. t(1,D)는 차량의 이동을 측정한 시간, 즉 통과 시간이고, -4는 제1 노드(551)과 D 노드(550)의 포텐셜 차이값이다. 구체적으로,
Figure 112021015361711-pat00022
이다.
반면, 동적 라우팅 장치가 차량을 제1 노드(551)에서 제2 노드(552)로 이동시키는 경우, 제2 보상은 t(1,2)+1 이다. t(1,2)는 차량의 이동을 측정한 시간, 즉 통과 시간이고, +1은 제1 노드(551)과 제2 노드(552)의 포텐셜 차이값을 의미한다. 구체적으로,
Figure 112021015361711-pat00023
이다.
제1 보상과 제2 보상을 비교하면, 제1 보상은 실제 통과 시간보다 4만큼 작은 값으로 결정되며, 제2 보상은 실제 통과 시간보다 1만큼 큰 값으로 결정된다. 두 보상의 크기에 따라 Q 값의 변화량도 달라진다. 제1 보상의 경우, 차량이 목적지와 가까운 곳으로 이동하였기 때문에 실제 통과 시간보다 작도록 결정되고, 이는 Q 값의 변화량도 제2 보상에 비해 작은 것을 의미한다, 반면, 제 2보상의 경우, 차량이 목적지와 먼 곳으로 이동하였기 때문에 실제 통과 시간보다 크도록 결정되고, 이는 Q 값의 변화량도 제1 보상에 비해 큰 것을 의미한다, 즉, 제2 보상이 제1 보상보다 크므로, 제2 보상에 따른 Q 값의 변화량도 제1 보상에 비해 크다는 것을 의미한다.
결과적으로, 동적 라우팅 장치는 실제 통과 시간에 기초하여 Q 값을 갱신하는데, 실제 통과 시간을 인센티브와 패널티로 조정함으로써, Q 값을 효율적으로 최적화할 수 있다.
따라서, 차량이 목적지 노드까지 이동하는 데 걸리는 시간이 긴 노드로 차량을 이동시키면 보상 값이 크다. 반면, 차량이 목적지 노드까지 이동하는 데 걸리는 시간이 짧은 노드로 차량을 이동시키면 보상 값이 작다.
또한, 본 발명의 일 실시예에 따른 보상은 포텐셜에 의해 조정(shaping)된다. 동적 라우팅 장치는 포텐셜에 기초하여 보상을 조정함으로써, Q 값을 최적화할 수 있다. 이는, 포텐셜을 이용하지 않는 경우보다 효율적이다.
reward shaping은 수학식 4와 같이 표현될 수 있다.
Figure 112021015361711-pat00024
수학식 4에서
Figure 112021015361711-pat00025
는 디스카운트 팩터(discount factor)이고,
Figure 112021015361711-pat00026
는 실험적으로 결정되는 임의의 값이다.
도 6a 및 도 6b는 본 발명의 일 실시예에 따라 라우팅에 이용되는 볼츠만 소프트맥스 정책을 설명하기 위해 예시한 도면이다.
도 6a와 도 6b를 참조하면, 동적 라우팅 장치는 복수의 차량을 3번 노드에서 5번 노드 또는 6번 노드 중 하나로 이동시킨다. 이때, 동적 라우팅 장치는 볼츠만 소프트맥스 정책에 따라 5번 노드와 6번 노드 중 어느 하나를 확률적으로 선택한다.
도 6a에서 3번 노드와 5번 노드 사이의 엣지에 대한 Q 값이 20이고, 3번 노드와 6번 노드 사이의 엣지에 대한 Q 값이 3일 때, 동적 라우팅 장치는 차량을 5번 노드로 이동시킬 확률이 더 작다. 반면, 동적 라우팅 장치는 차량을 6번 노드로 이동시킬 확률이 더 높다.
도 6b에서 3번 노드와 5번 노드 사이의 엣지에 대한 Q 값이 14고, 3번 노드와 6번 노드 사이의 엣지에 대한 Q 값이 13일 때, 동적 라우팅 장치가 차량을 5번 노드로 이동시킬 확률 6번 노드로 이동시킬 확률이 비슷하다.
볼츠만 소프트맥스 정책에 따른 다음 노드 결정은 수학식 5 및 수학식 6과 같이 표현될 수 있다.
Figure 112021015361711-pat00027
Figure 112021015361711-pat00028
수학식 5에서
Figure 112021015361711-pat00029
는 동적 라우팅 장치가 i 노드에서 d 노드로 이동하려는 차량을 j 노드로 이동시킬 확률을 의미한다. 또한, 수학식 5 및 수학식 6에서
Figure 112021015361711-pat00030
는 온도 파라미터(temperature parameter)로서, 탐색-탐사(exploration-exploitation) 균형을 조절하는데 이용된다. 온도 파라미터 값이 큰 경우, 차량이 각 노드로 이동할 확률 갭이 작아지며, 이를 탐색이라 한다. 반대로, 온도 파라미터 값이 작은 경우, 차량이 각 노드로 이동할 확률 갭이 커지며, 이를 탐사라 한다
전술한 볼츠만 소프트맥스 정책에 따라 동적 라우팅 장치는 탐욕 정책(greedy policy)을 이용하는 경우보다 교통 정체를 방지할 수 있다.
전술한 과정은 차량이 위치한 현재 노드에서 다음 노드가 복수 개로 존재할 때, 차량이 이동할 노드를 선택하는 과정에 관한 것이다. 이를, 라우팅(routing) 이라 한다.
도 7은 본 발명의 일 실시예에 따라 Q 테이블에 기초하여 차량을 할당하는 과정을 설명하기 위해 예시한 도면이다.
도 7을 참조하면, 제1 차량(700), 제2 차량(705), 제1 노드(710), 제2 노드(720), 제3 노드(730), 제4 노드(740) 및 제5 노드(750)가 도시되어 있다. 제1 노드(710)에서 차량 할당을 요청한 경우, 동적 라우팅 장치는 제1 노드(710)에 도달하는 데 걸리는 시간이 가장 적은 차량을 할당한다.
동적 라우팅 장치는 Q 테이블에 기초하여 제1 차량(700)이 제1 노드(710)에 도달하는 데 걸리는 예상 시간 S(1,3)과 제2 차량(705)이 제1 노드(710)에 도달하는 데 걸리는 예상 시간 S(1,4)을 계산한다. 제1 노드(710)와 제4 노드(740) 사이의 교통 혼잡으로 인해, S(1,3)이 S(1,4)보다 작기 때문에, 동적 라우팅 장치는 제1 차량(700)을 제1 노드(710)로 이동시킨다.
전술한 과정을 디스패칭(dispatching)이라 한다.
도 8 및 도 9는 본 발명의 일 실시예에 따른 동적 라우팅 장치의 동작 방법을 설명하기 위해 예시한 순서도다.
도 8을 참조하면, 동적 라우팅 장치는 하나의 엣지를 통하여 목적지 노드에 도찰하는 데 걸리는 시간을 기록한 Q 테이블을 생성한다(S800).
Q 테이블 생성부(200)는 Q 테이블을 초기화(initialization)할 수 있다. Q 테이블 생성부(200)는 모든 Q 값을 0으로 설정한다. OHT 시스템 내 정체가 없는 상황에서 목적지 노드를 배정받은 차량이 하나의 노드와 인접한 노드 사이의 엣지를 통과하고, 측정부(210)가 통과 시간을 측정한다. 여기서, 정체가 없는 상황이란 OHT 시스템 내 차량이 한 대만 있는 경우를 의미한다. Q 테이블 생성부(200)는 Q 테이블에 기초하여 차량이 인접한 노드에서 목적지 노드까지 이동하는 데 걸리는 최단 시간을 계산한다. 이후, Q 테이블 생성부(200)는 통과 시간 및 최단 시간에 기초하여 Q 값을 갱신한다. Q 테이블 생성부(200)는 모든 Q 값에 대해 갱신 전 Q 값과 갱신 후 Q 값의 차이가 기 설정된 값보다 작아질 때까지 초기화를 수행할 수 있다. 이러한 과정을 통해, Q 테이블 생성부(200)는 모든 엣지와 모든 목적지 노드에 대해 초기화 작업을 수행함으로써, 모든 Q 값에 대해 초기화 작업을 수행할 수 있다.
동적 라우팅 장치는 차량이 현재 노드와 다음 노드 사이의 통과 엣지를 통과할 때 차량의 통과 시간을 측정한다(S802).
동적 라우팅 장치는 복수의 엣지들 중 통과 시간에 의해 갱신될 타겟 엣지들을 추출한다(S804).
동적 라우팅 장치는 복수의 엣지들 중 다음 노드에서 목적지 노드로 이동하는 데 이용될 수 있는 엣지들과 통과 엣지 모두를 제외한 엣지들을 타겟 엣지들로 추출한다.
동적 라우팅 장치는 통과 엣지와의 거리에 따라 타겟 엣지들에 대한 Q 값을 차등적으로 갱신한다(S806).
동적 라우팅 장치는 통과 시간에 부분적으로 기초하되, 통과 엣지와 가까운 타겟 엣지에 대한 Q 값의 변화량을 통과 엣지와 먼 타겟 엣지에 대한 Q 값의 변화량보다 크도록 Q 값을 조정할 수 있다.
또한, 동적 라우팅 장치는 통과 엣지와의 거리가 멀수록 보상 또는 시간차 에러를 Q 값에 적게 반영함으로써, Q 값을 차등적으로 갱신할 수 있다.
도 9을 참조하면, 동적 라우팅 장치는 차량 요청 노드로부터 차량 할당을 요청 수신한다(S900).
동적 라우팅 장치는 갱신된 Q 테이블에 기초하여 복수의 차량 중 최적 차량을 선택한다(S902).
동적 라우팅 장치는 갱신된 Q 테이블에 기초하여 복수의 차량이 차량 요청 노드로 이동하는 데 걸리는 예상 시간들 중 예상 시간이 가장 짧은 차량을 최적 차량으로 선택한다.
동적 라우팅 장치는 볼츠만 소프트맥스 정책에 따라 최적 차량을 차량 요청 노드까지 운송한다(S904).
여기서, 볼츠만 소프트맥스 정책은 차량이 위치한 노드에 연결된 복수의 라우팅 엣지들이 존재하는 경우, 복수의 라우팅 엣지들에 대한 Q 값의 비율에 따른 확률에 기초하여 최적 차량을 복수의 라우팅 엣지들 중 하나의 라우팅 엣지를 통해 이동시키는 라우팅 정책이다.
도 8 및 도 9에서는 과정 S800 내지 과정 S904를 순차적으로 실행하는 것으로 기재하고 있으나, 이는 본 발명의 일 실시예의 기술 사상을 예시적으로 설명한 것에 불과한 것이다. 다시 말해, 본 발명의 일 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 일 실시예의 본질적인 특성에서 벗어나지 않는 범위에서 도 6에 기재된 순서를 변경하여 실행하거나 과정 S800 내지 과정 S904 중 하나 이상의 과정을 병렬적으로 실행하는 것으로 다양하게 수정 및 변형하여 적용 가능할 것이므로, 도 8 및 도 9는 시계열적인 순서로 한정되는 것은 아니다.
한편, 도 8 및 도 9에 도시된 과정들은 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 즉, 이러한 컴퓨터가 읽을 수 있는 기록매체는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등의 비일시적인(non-transitory) 매체일 수 있으며, 또한 캐리어 웨이브(예를 들어, 인터넷을 통한 전송) 및 데이터 전송 매체(data transmission medium)와 같은 일시적인(transitory) 매체를 더 포함할 수도 있다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.
이상의 설명은 본 실시예의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 실시예의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 실시예들은 본 실시예의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 실시예의 기술 사상의 범위가 한정되는 것은 아니다. 본 실시예의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 실시예의 권리범위에 포함되는 것으로 해석되어야 할 것이다.
200: Q 테이블 생성부 210: 측정부
220: 타겟 엣지 추출부 230: Q 테이블 관리부
240: 수신부 250: 차량 선택부
260: 차량 제어부

Claims (20)

  1. OHT 시스템의 동적 라우팅 방법에 있어서,
    차량이 서로 인접한 두 노드 사이의 엣지를 통하여 다른 하나의 노드까지 이동하는 데 걸리는 시간인 Q 값을 기록한 Q 테이블을 생성하는 과정;
    목적지 노드를 배정받은 차량이 현재 노드와 다음 노드 사이의 통과 엣지를 통과할 때, 상기 차량의 통과 시간을 측정하는 과정;
    복수의 엣지들 중 상기 통과 시간에 의해 갱신될 타겟 엣지들을 추출하는 과정; 및
    상기 차량이 상기 목적지 노드까지 이동하는 데 걸리는 시간값으로서, 상기 통과 시간에 부분적으로 기초하여 상기 통과 엣지와의 거리에 따라 상기 타겟 엣지들에 대한 Q 값을 차등적으로 갱신하는 과정
    을 포함하는 동적 라우팅 방법.
  2. 제1항에 있어서,
    상기 타겟 엣지들을 추출하는 과정은,
    상기 복수의 엣지들 중에서 상기 다음 노드에서 상기 목적지 노드로 이동하는 데 이용될 수 있는 엣지들과 상기 통과 엣지 모두를 제외한 엣지들을 상기 타겟 엣지들로 추출하는 과정
    을 포함하는 동적 라우팅 방법.
  3. 제1항에 있어서,
    상기 타겟 엣지들에 대한 Q 값을 차등적으로 갱신하는 과정은,
    상기 통과 시간에 부분적으로 기초하되, 상기 통과 엣지와 가까운 타겟 엣지에 대한 Q 값의 변화량을 상기 통과 엣지와 먼 타겟 엣지에 대한 Q 값의 변화량보다 크도록 Q 값을 조정하는 과정
    을 포함하는 동적 라우팅 방법.
  4. 제1항에 있어서,
    상기 타겟 엣지들에 대한 Q 값을 차등적으로 갱신하는 과정은,
    상기 목적지 노드와 상기 현재 노드 사이의 제1 포텐셜, 및 상기 목적지 노드와 상기 다음 노드 사이의 제2 포텐셜을 계산하는 과정;
    상기 제1 포텐셜과 상기 제2 포텐셜 간 차이를 계산하는 과정;
    상기 통과 시간을 상기 차이만큼 조정함으로써 보상을 결정하는 과정;
    상기 타겟 엣지들과 상기 통과 엣지 간 거리를 계산하는 과정; 및
    상기 보상 및 상기 거리에 부분적으로 기초하여 상기 타겟 엣지들에 대한 Q 값을 갱신하는 과정
    을 포함하는 동적 라우팅 방법.
  5. 제4항에 있어서,
    상기 타겟 엣지들에 대한 Q 값을 차등적으로 갱신하는 과정은,
    상기 통과 엣지와의 거리가 멀수록 상기 보상을 상기 Q 값에 적게 반영하는 과정
    을 더 포함하는 동적 라우팅 방법.
  6. 제4항에 있어서,
    상기 타겟 엣지들에 대한 Q 값을 차등적으로 갱신하는 과정은,
    상기 Q 테이블에 기초하여 상기 다음 노드와 상기 목적지 노드 간 이동 시간을 계산하는 과정;
    상기 보상, 상기 이동 시간 및 상기 통과 엣지에 대한 Q 값에 기초하여 시간차 에러를 계산하는 과정; 및
    상기 통과 엣지와의 거리가 멀수록 상기 시간차 에러를 상기 Q 값에 적게 반영하는 과정
    을 더 포함하는 동적 라우팅 방법.
  7. 제1항에 있어서,
    상기 Q 테이블을 생성하는 과정은,
    상기 Q 테이블에 포함된 상기 Q 값을 모두 0으로 설정하는 과정;
    제1 목적지 노드를 배정받은 제1 차량이 현재 노드와 다음 노드 사이의 제1 엣지를 통과할 때, 상기 제1 차량의 제1 통과 시간을 측정하는 과정;
    상기 Q 테이블에 기초하여 상기 제1 차량이 상기 다음 노드에서 상기 제1 목적지 노드까지 이동하는 데 걸리는 최단 시간을 계산하는 과정; 및
    상기 제1 통과 시간과 상기 최단 시간에 기초하여, 상기 제1 엣지를 통하여 상기 제1 목적지 노드까지 이동하는 데 걸리는 시간인 제1 Q 값을 설정하는 과정
    을 포함하는 동적 라우팅 방법.
  8. 제1항에 있어서,
    차량 요청 노드로부터 차량 할당을 요청 받는 과정;
    갱신된 Q 테이블에 기초하여 복수의 차량 중 최적 차량을 선택하는 과정; 및
    볼츠만 소프트맥스 정책(boltzmann softmax policy)에 따라 상기 최적 차량을 상기 차량 요청 노드까지 이동시키는 과정;
    을 포함하는 동적 라우팅 방법.
  9. 제8항에 있어서,
    상기 볼츠만 소프트맥스 정책은,
    상기 차량이 위치한 노드에 연결된 복수의 라우팅 엣지들이 존재하는 경우, 상기 복수의 라우팅 엣지들에 대한 Q 값의 비율에 따른 확률에 기초하여 상기 최적 차량을 상기 복수의 라우팅 엣지들 중 하나의 라우팅 엣지를 통해 이동시키는 것을 특징으로 하는 동적 라우팅 방법.
  10. 제8항에 있어서,
    상기 최적 차량을 선택하는 과정은,
    상기 갱신된 Q 테이블에 기초하여 상기 복수의 차량이 상기 차량 요청 노드로 이동하는 데 걸리는 예상 시간들을 각각 계산하는 과정; 및
    상기 복수의 차량 중 예상 시간이 가장 짧은 차량을 상기 최적 차량으로 선택하는 과정
    을 포함하는 동적 라우팅 방법.
  11. OHT 시스템의 동적 라우팅 장치에 있어서,
    차량이 서로 인접한 두 노드 사이의 엣지를 통하여 다른 하나의 노드까지 이동하는 데 걸리는 시간인 Q 값을 기록한 Q 테이블을 생성하는 Q 테이블 생성부;
    목적지 노드를 배정받은 차량이 현재 노드와 다음 노드 사이의 통과 엣지를 통과할 때, 상기 차량의 통과 시간을 측정하는 측정부;
    복수의 엣지들 중 상기 통과 시간에 의해 갱신될 타겟 엣지들을 추출하는 타겟 엣지 추출부; 및
    상기 차량이 상기 목적지 노드까지 이동하는 데 걸리는 시간값으로서, 상기 통과 시간에 부분적으로 기초하여 상기 통과 엣지와의 거리에 따라 상기 타겟 엣지들에 대한 Q 값을 차등적으로 갱신하는 Q 테이블 관리부
    을 포함하는 동적 라우팅 장치.
  12. 제11항에 있어서,
    상기 타겟 엣지 추출부는,
    상기 복수의 엣지들 중에서 상기 다음 노드에서 상기 목적지 노드로 이동하는 데 이용될 수 있는 엣지들과 상기 통과 엣지 모두를 제외한 엣지들을 상기 타겟 엣지들로 추출하는 것을 특징으로 하는 동적 라우팅 장치.
  13. 제11항에 있어서,
    상기 Q 테이블 관리부는,
    상기 통과 시간에 부분적으로 기초하되, 상기 통과 엣지와 가까운 타겟 엣지에 대한 Q 값의 변화량을 상기 통과 엣지와 먼 타겟 엣지에 대한 Q 값의 변화량보다 크도록 Q 값을 조정하는 것을 특징으로 하는 동적 라우팅 장치.
  14. 제11항에 있어서,
    상기 Q 테이블 관리부는,
    상기 목적지 노드와 상기 현재 노드 사이의 제1 포텐셜, 및 상기 목적지 노드와 상기 다음 노드 사이의 제2 포텐셜을 계산하고, 상기 제1 포텐셜과 상기 제2 포텐셜 간 차이를 계산하고, 상기 통과 시간을 상기 차이만큼 조정함으로써 보상을 결정하고, 상기 타겟 엣지들과 상기 통과 엣지 간 거리를 계산하고, 상기 보상 및 상기 거리에 부분적으로 기초하여 상기 타겟 엣지들에 대한 Q 값을 갱신하는 것을 특징으로 하는 동적 라우팅 장치.
  15. 제14항에 있어서,
    상기 Q 테이블 관리부는,
    상기 통과 엣지와의 거리가 멀수록 상기 보상을 상기 Q 값에 적게 반영하는 것을 특징으로 하는 동적 라우팅 장치.
  16. 제14항에 있어서,
    상기 Q 테이블 관리부는,
    상기 Q 테이블에 기초하여 상기 다음 노드와 상기 목적지 노드 간 이동 시간을 계산하고, 상기 보상, 상기 이동 시간 및 상기 통과 엣지에 대한 Q 값에 기초하여 시간차 에러를 계산하고, 상기 통과 엣지와의 거리가 멀수록 상기 시간차 에러를 상기 Q 값에 적게 반영하는 것을 특징으로 하는 동적 라우팅 장치.
  17. 제11항에 있어서,
    상기 측정부는,
    제1 목적지 노드를 배정받은 제1 차량이 현재 노드와 다음 노드 사이의 제1 엣지를 통과할 때, 상기 제1 차량의 제1 통과 시간을 측정하고,
    상기 Q 테이블 생성부는,
    상기 Q 테이블에 포함된 상기 Q 값을 모두 0으로 설정하고, 상기 Q 테이블에 기초하여 상기 제1 차량이 상기 다음 노드에서 상기 제1 목적지 노드까지 이동하는 데 걸리는 최단 시간을 계산하고, 상기 제1 통과 시간과 상기 최단 시간에 기초하여, 상기 제1 엣지를 통하여 상기 제1 목적지 노드까지 이동하는 데 걸리는 시간인 제1 Q 값을 설정하는 것을 특징으로 하는 동적 라우팅 장치.
  18. 제11항에 있어서,
    차량 요청 노드로부터 차량 할당을 요청받는 수신부;
    갱신된 Q 테이블에 기초하여 복수의 차량 중 최적 차량을 선택하는 차량 선택부; 및
    볼츠만 소프트맥스 정책(boltzmann softmax policy)에 따라 상기 최적 차량을 상기 차량 요청 노드까지 이동시키는 차량 제어부를 더 포함하는 동적 라우팅 장치.
  19. 제18항에 있어서,
    상기 볼츠만 소프트맥스 정책은,
    상기 차량이 위치한 노드에 연결된 복수의 라우팅 엣지들이 존재하는 경우, 상기 복수의 라우팅 엣지들에 대한 Q 값의 비율에 따른 확률에 기초하여 상기 최적 차량을 상기 복수의 라우팅 엣지들 중 하나의 라우팅 엣지를 통해 이동시키는 것을 특징으로 하는 동적 라우팅 장치.
  20. 제18항에 있어서,
    상기 차량 선택부는,
    상기 갱신된 Q 테이블에 기초하여 상기 복수의 차량이 상기 차량 요청 노드로 이동하는 데 걸리는 예상 시간들을 각각 계산하고, 상기 복수의 차량 중 예상 시간이 가장 짧은 차량을 상기 최적 차량으로 선택하는 것을 특징으로 하는 동적 라우팅 장치.
KR1020210017019A 2020-04-28 2021-02-05 Oht 시스템의 동적 라우팅 방법 및 장치 KR102404695B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US17/241,878 US11705353B2 (en) 2020-04-28 2021-04-27 Dynamic routing method and apparatus for overhead hoist transport system

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20200051448 2020-04-28
KR1020200051448 2020-04-28

Publications (2)

Publication Number Publication Date
KR20210133126A KR20210133126A (ko) 2021-11-05
KR102404695B1 true KR102404695B1 (ko) 2022-06-02

Family

ID=78508031

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210017019A KR102404695B1 (ko) 2020-04-28 2021-02-05 Oht 시스템의 동적 라우팅 방법 및 장치

Country Status (1)

Country Link
KR (1) KR102404695B1 (ko)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003345439A (ja) 2002-05-30 2003-12-05 Asyst Shinko Inc 自動搬送システムおよび搬送車の経路探索方法
JP2009003772A (ja) 2007-06-22 2009-01-08 Asyst Technologies Japan Inc 経路探索システム及び方法、搬送システム並びにコンピュータプログラム
JP2009020773A (ja) 2007-07-13 2009-01-29 Asyst Technologies Japan Inc 経路探索システム及び方法、搬送システム、並びにコンピュータプログラム

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100506600B1 (ko) * 2003-02-10 2005-08-08 삼성전자주식회사 물류반송시스템

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003345439A (ja) 2002-05-30 2003-12-05 Asyst Shinko Inc 自動搬送システムおよび搬送車の経路探索方法
JP2009003772A (ja) 2007-06-22 2009-01-08 Asyst Technologies Japan Inc 経路探索システム及び方法、搬送システム並びにコンピュータプログラム
JP2009020773A (ja) 2007-07-13 2009-01-29 Asyst Technologies Japan Inc 経路探索システム及び方法、搬送システム、並びにコンピュータプログラム

Also Published As

Publication number Publication date
KR20210133126A (ko) 2021-11-05

Similar Documents

Publication Publication Date Title
Hwang et al. Q (λ) learning-based dynamic route guidance algorithm for overhead hoist transport systems in semiconductor fabs
US7356378B1 (en) Method and system for smart vehicle route selection
EP1145090B1 (en) Dynamic traffic based routing algorithm
US11705353B2 (en) Dynamic routing method and apparatus for overhead hoist transport system
WO2024001021A1 (zh) 基于冲突消解的天车运输路径规划方法
US20150327135A1 (en) Apparatus and method for dynamic hybrid routing in sdn networks to avoid congestion and balance loads under changing traffic load
US10360801B2 (en) Systems and methods for departure routing
WO2020039699A1 (ja) 走行車制御装置、走行車システム、及び走行車制御方法
Koo et al. Vehicle travel time models for AGV systems under various dispatching rules
Lim et al. Congestion-aware multi-agent path planning: distributed algorithm and applications
JP2020194345A (ja) 搬送制御装置
Fakhrmoosavi et al. An iterative learning approach for network contraction: Path finding problem in stochastic time‐varying networks
KR20220121751A (ko) 수요기반 모빌리티 서비스를 위한 라우팅 방법 및 장치
KR102404695B1 (ko) Oht 시스템의 동적 라우팅 방법 및 장치
Bruno et al. Dynamic positioning of idle automated guided vehicles
Kiba et al. Simulation of a full 300mm semiconductor manufacturing plant with material handling constraints
WO2020039700A1 (ja) 走行車制御装置、走行車システム、及び走行車制御方法
US12019455B2 (en) Transport operation control device, transport system, transport operation control method, and recording medium
CN113739798B (zh) 路径规划方法和装置
Nadoli et al. Simulation in automated material handling systems design for semiconductor manufacturing
Sadovsky et al. Risk-hedged approach for re-routing air traffic under weather uncertainty
Zhang et al. A new path optimization method in dynamic adverse weathers
US20220283585A1 (en) Transport management system, transport management method, and program
Kim et al. Storage prioritization by redistributing wafer lot transfers to enhance real-world fab throughput
US20220348410A1 (en) Article Transport Facility, Route Setting Method, and Route Setting Program

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right