JP7141615B2 - Robot, robot control method and program - Google Patents
Robot, robot control method and program Download PDFInfo
- Publication number
- JP7141615B2 JP7141615B2 JP2018093128A JP2018093128A JP7141615B2 JP 7141615 B2 JP7141615 B2 JP 7141615B2 JP 2018093128 A JP2018093128 A JP 2018093128A JP 2018093128 A JP2018093128 A JP 2018093128A JP 7141615 B2 JP7141615 B2 JP 7141615B2
- Authority
- JP
- Japan
- Prior art keywords
- state information
- legs
- partial
- information group
- state
- Prior art date
- Legal status (The legal status 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 status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims description 22
- 230000033001 locomotion Effects 0.000 claims description 96
- 239000003990 capacitor Substances 0.000 claims description 46
- 238000007599 discharging Methods 0.000 claims description 16
- 230000009471 action Effects 0.000 claims description 10
- 238000001514 detection method Methods 0.000 claims description 8
- 230000006870 function Effects 0.000 claims description 8
- 230000004044 response Effects 0.000 claims description 6
- 241000224489 Amoeba Species 0.000 description 30
- 210000001243 pseudopodia Anatomy 0.000 description 18
- 230000001934 delay Effects 0.000 description 14
- 230000008569 process Effects 0.000 description 12
- 230000008859 change Effects 0.000 description 11
- 238000010586 diagram Methods 0.000 description 11
- 230000007246 mechanism Effects 0.000 description 10
- 230000004048 modification Effects 0.000 description 6
- 238000012986 modification Methods 0.000 description 6
- 238000004364 calculation method Methods 0.000 description 5
- 230000003111 delayed effect Effects 0.000 description 5
- 239000000463 material Substances 0.000 description 5
- 238000006243 chemical reaction Methods 0.000 description 4
- 238000005452 bending Methods 0.000 description 3
- 230000005611 electricity Effects 0.000 description 3
- 241000224421 Heterolobosea Species 0.000 description 2
- 210000003001 amoeba Anatomy 0.000 description 2
- 230000006399 behavior Effects 0.000 description 2
- 229920001971 elastomer Polymers 0.000 description 2
- 230000007613 environmental effect Effects 0.000 description 2
- 230000005669 field effect Effects 0.000 description 2
- 230000003534 oscillatory effect Effects 0.000 description 2
- 229920000049 Carbon (fiber) Polymers 0.000 description 1
- 229910052799 carbon Inorganic materials 0.000 description 1
- 239000004917 carbon fiber Substances 0.000 description 1
- 239000007795 chemical reaction product Substances 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 150000001875 compounds Chemical class 0.000 description 1
- 230000008602 contraction Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000000806 elastomer Substances 0.000 description 1
- 230000037406 food intake Effects 0.000 description 1
- 235000012631 food intake Nutrition 0.000 description 1
- 239000002184 metal Substances 0.000 description 1
- VNWKTOKETHGBQD-UHFFFAOYSA-N methane Chemical compound C VNWKTOKETHGBQD-UHFFFAOYSA-N 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 210000001364 upper extremity Anatomy 0.000 description 1
- 238000004804 winding Methods 0.000 description 1
Images
Landscapes
- Manipulator (AREA)
Description
本発明は、状態変数群に対する解探索を行うロボット等に関し、特に、例えば、その脚部の動きを制御するための状態変数群に対する解探索を行うロボット等に関するものである。 TECHNICAL FIELD The present invention relates to a robot or the like that performs solution search for a group of state variables, and more particularly to a robot or the like that performs solution search for a group of state variables for controlling the movement of its legs, for example.
一般的なコンピュータによるSAT(satisfiability problem:充足可能性問題)等の解探索では、状態変数の数が増えると、計算量が爆発的に増え、正解の取得に長い時間を要するようになる。そこで、従来、アメーバ型コンピュータが提案された(例えば、特許文献1参照)。アメーバ型コンピュータでは、状態変数の数が増えても、計算量は、例えば、線形に増えるに過ぎず、効率的な解探索が期待できる。 In a search for a solution such as a satisfiability problem (SAT) by a general computer, as the number of state variables increases, the amount of calculation increases explosively, and it takes a long time to obtain a correct answer. Therefore, conventionally, an amoeba-type computer has been proposed (see, for example, Patent Document 1). In amoeba-type computers, even if the number of state variables increases, the amount of computation increases, for example, only linearly, and efficient solution search can be expected.
本願の発明者らは、その脚部の動きを制御するデバイスに、アメーバ型コンピュータの原理を用いたロボット(以下、アメーバ型ロボットと記す)を発案した。 The inventors of the present application have devised a robot (hereinafter referred to as an amoeba-type robot) that uses the principle of an amoeba-type computer as a device for controlling the movement of its legs.
しかし、従来のアメーバ型コンピュータでは、ロボットの脚部の動きを制御するための状態変数群に関し、コントローラからのフィードバックに対して解が更新されず、定常解を繰り返し取得する状態や解探索が不可能になる状態に陥る結果、効率的な解探索が困難となり、ロボットの動作が不安定になる場合があった。 However, in conventional amoeboid computers, regarding the state variable group for controlling the movement of the robot's legs, the solutions are not updated in response to feedback from the controller, resulting in a state in which steady state solutions are obtained repeatedly and solution search is inadequate. As a result of falling into a state where it is possible, efficient solution search becomes difficult, and the motion of the robot may become unstable.
また、アメーバ型以外のロボットでも、その状態情報群に対して効率的な解探索が行えず、動作が不安定となる場合があった。 Also, robots other than the amoeba type may not be able to perform efficient solution search for the state information group, resulting in unstable motion.
本第一の発明のロボットは、1または2以上の状態情報の集合である部分状態情報群に対応付けられたルールであり、禁止事項を示す1以上の負ルールを格納している格納部と、2以上の脚部と、2以上の各脚部の状態を少なくとも示す状態情報の集合である状態情報群を取得し、当該状態情報群が有する1以上の各部分状態情報群に対応する負ルールに合致しない状態情報群を取得し、当該状態情報群に基づいて2以上の各脚部の制御を行う制御部とを具備し、2以上の脚部のうち少なくとも一部の脚部は、少なくとも一時的に、部分状態情報群に基づいた動作を行わないロボットである。 A robot according to a first aspect of the present invention includes a storage unit that stores one or more negative rules that are rules associated with a partial state information group that is a set of one or more state information and that indicate prohibited items. , two or more legs and a state information group that is a set of state information indicating at least the state of each of the two or more legs; a control unit that acquires a state information group that does not match the rules and controls each of the two or more legs based on the state information group, and at least some of the two or more legs are: A robot that does not, at least temporarily, perform an action based on a group of partial state information.
かかる構成により、定常解を繰り返し取得する状態や解探索が不可能になる状態に陥り難くなり、効率的な解探索が行える結果、動作が不安定になり難いロボットが実現される。 With such a configuration, it is difficult for the robot to fall into a state of repeatedly obtaining a steady-state solution or a state in which the solution search becomes impossible.
なお、上記構成において、「2以上の脚部のうち少なくとも一部の脚部は、少なくとも一時的に、部分状態情報群に基づいた動作を行わない」ことは、例えば、制御部が行う2以上の各脚部の制御に異なる遅延が生じた結果である。2以上の各脚部に生じる遅延は、例えば、数ミリ秒~数百ミリ秒程度であってもよい。かかる範囲で揺らいだ遅延は、例えば、後述する第三の発明に記載しているような、アナログのコア回路で実現されることは好適であるが、制御部がソフト的に実現してもよい。その場合、制御部の動作における単位時間が、例えば、数ミリ秒程度であるとすると、制御部は、各脚部への制御信号を、例えば、単位時間の1千倍~10万倍程度、遅延させることによって、各脚部における数ミリ秒~数百ミリ秒程度の範囲で揺らいだ遅延を実現できる。 In the above configuration, "at least some of the two or more legs do not perform an operation based on the partial state information group at least temporarily" means, for example, two or more legs performed by the control unit. This is the result of different delays in the control of each leg of the . The delay occurring in each of the two or more legs may be, for example, on the order of several milliseconds to several hundred milliseconds. A delay fluctuating within such a range is preferably realized by an analog core circuit, for example, as described in the third invention to be described later, but may be realized by the control unit in terms of software. . In that case, if the unit time in the operation of the control unit is, for example, several milliseconds, the control unit sends a control signal to each leg, for example, about 1,000 to 100,000 times the unit time. By delaying, a fluctuating delay in the range of several milliseconds to several hundred milliseconds in each leg can be realized.
すなわち、実施の形態で説明するような、制御部を含むデバイスを有するロボットにおける動作のタイムスケールは、デバイスの内部における動作のタイムスケールと異なるため、ロボットの動作が不安定になることを回避するには、制御部は、ロボットにおける動作のタイムスケールに応じた長さの遅延であり、かつ脚部間で異なる遅延を生じさせればよい。 That is, the operation timescale of a robot having a device including a control unit as described in the embodiment differs from the operation timescale inside the device, so that the operation of the robot is prevented from becoming unstable. In order to do so, the controller should generate a delay whose length corresponds to the timescale of the motion of the robot and which is different between the legs.
または、上記構成において、「2以上の脚部のうち少なくとも一部の脚部は、少なくとも一時的に、部分状態情報群に基づいた動作を行わない」ことは、予め決められた条件を満たした場合に、制御部が、2以上の脚部のうち少なくとも一部の脚部を、少なくとも一時的に、部分状態情報群に基づいた動作を行わないように制御した結果であってもよい。予め決められた条件は、通常、部分状態情報群以外の情報に関する条件である。部分状態情報群以外の情報は、例えば、カメラからの画像、温度センサや湿度センサからの情報といった、ロボットの外部の情報(環境情報といってもよい)である。 Alternatively, in the above configuration, "at least some of the two or more legs do not, at least temporarily, perform an action based on the partial state information group" satisfies a predetermined condition. In this case, the control unit may be the result of controlling at least some of the two or more legs so as not to perform an operation based on the partial state information group, at least temporarily. The predetermined condition is usually a condition regarding information other than the partial state information group. Information other than the partial state information group is, for example, information outside the robot (environmental information) such as an image from a camera, information from a temperature sensor or a humidity sensor.
画像に関する条件は、例えば、高周波成分が閾値より多い又は閾値以上であることであってもよく、それによって、地面が荒れている場合には、部分状態情報群に基づく動作が行われず、ロボットの転倒を回避できる可能性が高まる。温度情報に関する条件は、例えば、温度が閾値より低い又は閾値以下であることであってもよく、それによって、地面が凍結している場合には、部分状態情報群に基づく動作が行われず、ロボットのスリップによる衝突や転倒を回避できる可能性が高まる。湿度情報に関する条件は、例えば、湿度が閾値より高い又は閾値以上であることであってもよく、それによって、地面が濡れている場合には、部分状態情報群に基づく動作が行われず、ロボットのスリップによる衝突や転倒を回避できる可能性が高まる。 The condition regarding the image may be, for example, that the high-frequency component is greater than or equal to the threshold. Increased chances of avoiding falls. The condition regarding the temperature information may be, for example, that the temperature is lower than or equal to or less than a threshold, so that when the ground is frozen, no action based on the partial state information group is performed, and the robot This increases the possibility of avoiding collisions and falls due to slipping. The condition regarding the humidity information may be, for example, that the humidity is higher than or equal to or greater than the threshold, whereby when the ground is wet, the operation based on the partial state information group is not performed, and the robot is The possibility of avoiding a collision or falling due to a slip increases.
また、本第二の発明のロボットは、第一の発明に対して、2以上の各脚部は、当該脚部が着地している状態か否かを検知するセンサを有し、状態情報群は、2以上の各脚部のセンサによる検知結果を示す状態情報を含むロボットである。 In addition, in the robot of the second invention, in contrast to the first invention, each of the two or more legs has a sensor for detecting whether or not the leg is on the ground, and the state information group is a robot that includes state information indicating detection results by sensors in each of two or more legs.
かかる構成により、その脚部の動きを制御するための状態変数群に関して、効率的な解探索が行えるアメーバ型ロボットが実現される。 With such a configuration, an amoeba robot capable of efficient solution search for a group of state variables for controlling the movement of its legs is realized.
本第三の発明のロボットは、第一または第二の発明に対して、ダイオードとコンデンサとスイッチとを有する2以上の部分回路を有するコア回路をさらに具備し、2以上の部分回路は、2以上の脚部の動きを制御する回路であり、制御部は、2以上の各部分回路の状態を少なくとも示す状態情報の集合である状態情報群を取得し、状態情報群が有する1以上の各部分状態情報群に対応する負ルールに合致しない状態情報群を取得し、状態情報群に基づいて2以上の各部分回路に電流を流すまたは電流を止める、のいずれかの動作ための制御を行い、2以上の各部分回路が有する1以上のコンデンサの少なくとも一部のコンデンサの充電または放電の時定数が異なり、時定数が異なることにより、コア回路が有する2以上の部分回路のうち少なくとも一部の部分回路は、少なくとも一時的に、部分状態情報群に基づいた動作を行わないロボットである。 The robot of the third invention, in contrast to the first or second invention, further comprises a core circuit having two or more partial circuits each having a diode, a capacitor, and a switch, and the two or more partial circuits comprise two The above circuit for controlling the movement of the leg, the control unit acquires a state information group, which is a set of state information indicating at least the state of each of the two or more partial circuits, and obtains one or more of each of the state information groups. A state information group that does not match the negative rule corresponding to the partial state information group is acquired, and based on the state information group, control is performed to either flow or stop the current in each of the two or more partial circuits. , at least some of the one or more capacitors included in each of the two or more partial circuits have different time constants for charging or discharging, and the different time constants result in at least some of the two or more partial circuits included in the core circuit. is a robot that does not, at least temporarily, operate based on the partial state information group.
かかる構成により、定常解を繰り返し取得する状態や解探索が不可能になる状態に陥り難くなり、効率的な解探索が行える結果、動作が不安定になり難いロボットが実現される。 With such a configuration, it is difficult for the robot to fall into a state of repeatedly obtaining a steady-state solution or a state in which the solution search becomes impossible.
また、本第四の発明のロボットは、第三の発明に対して、2以上の部分回路は、ハブを介して接続され、ハブの中心から2以上の各部分回路に電流が供給されるロボットである。 In addition, in the robot of the fourth invention, in contrast to the third invention, two or more partial circuits are connected via a hub, and a current is supplied to each of the two or more partial circuits from the center of the hub. is.
かかる構成により、ハブ内の総電流は、キルヒホッフの法則に従って保存される。 With such a configuration, the total current in the hub is conserved according to Kirchhoff's law.
また、本第五の発明のロボットは、第三または第四の発明に対して、制御部は、2以上の各部分回路の状態を少なくとも示す状態情報の集合である状態情報群を取得する状態情報群取得手段と、状態情報群が有する1以上の各部分状態情報群に対応する1以上の負ルールを格納部から取得する負ルール取得手段と、負ルール取得手段が取得した1以上の負ルールのいずれにも合致しない正例の状態情報群を取得する正例取得手段と、正例の状態情報群に基づいて2以上の各部分回路に電流を流すまたは電流を止める、のいずれかの動作ための制御を行う制御手段とを具備するロボットである。 Further, in the robot of the fifth invention, in contrast to the third or fourth invention, the control unit acquires a state information group, which is a set of state information indicating at least the state of each of the two or more partial circuits. information group acquisition means; negative rule acquisition means for acquiring, from a storage unit, one or more negative rules corresponding to one or more partial status information groups of the status information group; and one or more negative rules acquired by the negative rule acquisition means. A positive example acquiring means for acquiring a positive case state information group that does not match any of the rules; A robot comprising control means for performing control for movement.
かかる構成により、例えば、アメーバ型ロボットの脚部の動きを制御するための状態変数群に関して、効率的な解探索が行える。 With such a configuration, for example, efficient solution search can be performed with respect to the state variable group for controlling the movement of the legs of the amoeba robot.
また、本第六の発明のロボットは、第三から第五いずれか1つの発明に対して、コンデンサの容量の充電時間または放電時間が、制御部が状態情報群を取得した結果に応じた制御を行うまでの時間より長いロボットである。 Further, in the robot of the sixth invention, in contrast to any one of the third to fifth inventions, the charging time or discharging time of the capacity of the capacitor is controlled according to the result of the state information group acquired by the control unit. It is a robot that takes longer than the time to perform
かかる構成により、状態変化が制御に追い付かず、結果として動作が行われない場合が生じ、正解を発見できる可能性が高まる。 With such a configuration, the state change may not catch up with the control, and as a result, the operation may not be performed, increasing the possibility of finding the correct answer.
また、本第七の発明のロボットは、第五の発明に対して、正例取得手段は、試行錯誤により、正例の状態情報群を取得するロボットである。 In addition, in the robot of the seventh invention, in contrast to the fifth invention, the positive example acquisition means is a robot that acquires a state information group of positive cases by trial and error.
かかる構成により、効率よく正例の状態情報群を取得できる。 With such a configuration, it is possible to efficiently acquire a group of status information of positive cases.
また、本第八の発明のロボットは、第一から第七いずれか一つの発明に対して、格納部は、着地している状態を示す脚部の数が予め決められた数以下である場合に、脚を上げることを禁止する第一の負ルールを格納しているロボットである。 In addition, in the robot of the eighth invention, in contrast to any one of the first to seventh inventions, the storage unit has a number of legs indicating a state of landing that is equal to or less than a predetermined number. In addition, it is a robot that stores the first negative rule that prohibits raising the leg.
かかる構成により、その脚部の動きを的確に制御できるアメーバ型ロボットが実現される。 Such a configuration realizes an amoeba-type robot that can accurately control the movement of its legs.
また、本第九の発明のロボットは、第一から第八いずれか一つの発明に対して、2以上の各脚部は、前後に移動可能であり、格納部は、2以上の脚部間の前後の位置関係に対応して、2以上の脚部のうち1以上の脚部の前後の動きを禁止する第二の負ルールを格納しているロボットである。 Further, in the robot of the ninth invention, in contrast to any one of the first to eighth inventions, each of the two or more legs is movable back and forth, and the storage part is provided between the two or more legs. This robot stores a second negative rule that prohibits forward and backward movement of one or more legs out of two or more legs, corresponding to the forward and backward positional relationship of .
かかる構成により、その脚部の動きを的確に制御できるアメーバ型ロボットが実現される。 Such a configuration realizes an amoeba-type robot that can accurately control the movement of its legs.
また、本第十の発明のロボットは、第一から第十いずれか1つの発明に対して、2以上の各脚部は、上げ下げ可能であり、格納部は、2以上の各脚部に関し、脚部が着地している状態に対応して、脚部を下げた状態で前方に移動させることを禁止する第三の負ルール、および脚部が着地していない状態に対応して、脚部を上げた状態で後方に移動させることを禁止する第四の負ルールを格納しているロボットである。 In addition, in the robot of the tenth invention, in contrast to any one of the first to tenth inventions, each of the two or more legs can be raised and lowered, and the storage section relates to each of the two or more legs, A third negative rule that prohibits forward movement with the leg down, corresponding to the state of the leg being on the ground, and a leg It is a robot that stores the fourth negative rule that prohibits it from moving backwards with its tail raised.
かかる構成により、その脚部の動きを的確に制御できるアメーバ型ロボットが実現される。 Such a configuration realizes an amoeba-type robot that can accurately control the movement of its legs.
また、本第十一の発明のロボットは、第一から第十いずれか1つの発明に対して、格納部は、2以上の各脚部に関し、脚部の位置が前方または後方にある場合に、脚部と予め決められた位置関係にある他の脚部の動きを禁止する第五の負ルールを格納しているロボットである。 In addition, in the robot of the eleventh invention, in contrast to any one of the first to tenth inventions, the storage unit has two or more legs, and when the legs are positioned forward or backward, , a robot that stores a fifth negative rule that prohibits the movement of other legs that have a predetermined positional relationship with the leg.
かかる構成により、その脚部の動きを的確に制御できるアメーバ型ロボットが実現される。 Such a configuration realizes an amoeba-type robot that can accurately control the movement of its legs.
また、本第十二の発明のロボットは、第一から第十一いずれか1つの発明に対して、格納部は、2以上の各脚部に関し、脚部の上げ下げの状態と接地している状態か否かとの組み合わせに応じて、禁止されている移動を許可する第六の負ルールを格納しているロボットである。 In addition, in the robot of the twelfth invention, in contrast to any one of the first to eleventh inventions, the storage unit has two or more legs, and the legs are raised and lowered and grounded. It is a robot that stores a sixth negative rule that permits prohibited movement according to a combination of state and non-state.
かかる構成により、その脚部の動きを的確に制御できるアメーバ型ロボットが実現される。 Such a configuration realizes an amoeba-type robot that can accurately control the movement of its legs.
また、本第十三の発明のロボットは、第十二の発明に対して、第六の負ルールは、同じ状態情報群に対して、2種類以上の動きを許可し得るロボットである。 In addition, the robot of the thirteenth invention is a robot that can permit two or more types of motions for the same group of state information according to the sixth negative rule in contrast to the twelfth invention.
かかる構成により、定常解を繰り返し取得する状態や解探索が不可能になる状態から脱出できる可能性が高まり、その結果、その脚部の動きを的確に制御できるアメーバ型ロボットが実現される。 With such a configuration, the possibility of escaping from a state in which steady-state solutions are repeatedly obtained or a state in which solution search becomes impossible increases, and as a result, an amoeba-type robot that can accurately control the movement of its legs is realized.
本発明によれば、例えば、その状態変数群に対して効率的な解探索が行える結果、動きが不安定になり難いロボットが実現される。 According to the present invention, for example, as a result of efficient solution search for the state variable group, a robot whose motion is less likely to become unstable is realized.
以下、ロボットの実施形態について図面を参照して説明する。なお、実施の形態において同じ符号を付した構成要素は同様の動作を行うので、再度の説明を省略する場合がある。 Hereinafter, embodiments of the robot will be described with reference to the drawings. It should be noted that, since components denoted by the same reference numerals in the embodiments perform similar operations, repetitive description may be omitted.
図1は、本実施の形態におけるロボットのブロック図である。ロボットは、デバイス1、胴体2、2以上(例えば、4つ、8つ等)の脚部3、および駆動機構4を備える。
FIG. 1 is a block diagram of the robot according to this embodiment. The robot comprises a
デバイス1については後述する。胴体2は、例えば、柔軟性を有する素材で構成され、図示しない中空部を有し、その中空部内が与圧されていてもよい。ただし、胴体2の素材や構造は問わない。
脚部3は、上下および前後に移動可能である。脚部3もまた、例えば、ゴムやエストラマ等の柔軟性を有する素材で構成され、図示しない中空部を有し、その中空部内が与圧されていてもよい。この場合、脚部3の上下および前後の移動は、その伸縮および屈曲によって実現される。または、脚部3は、金属や炭素繊維等の固い素材で構成され、関節を有していてもよい。この場合における上下および前後の移動は、関節の折り曲げによって実現される。
The
また、脚部3は、センサ31を備える。センサ31は、脚部3が着地している状態か否かを検知し、検知結果を出力する。検知結果とは、例えば、脚部3が着地している状態か否かを示す情報(例えば、着地している状態を示す“on”,着地していない状態を示す“off”等)である。または、検出結果は、接地を検知していない状態では出力されず、接地を検知したことに応じて出力される信号でもよいし、接地を検知していない状態で継続的に出力され、接地を検知したことに応じて停止される信号でも構わない。ただし、脚部3の素材や構成は問わない。
The
また、センサ31は、例えば、タッチセンサであるが、距離センサや押しボタン等でもよく、着地している状態か否かを検知し得る素子であれば、その種類は問わない。また、センサ31が出力する検知結果の態様も問わない。
Further, the
駆動機構4は、2以上の各脚部3の上下および前後の移動を実現するための機構(例えば、アクチュエータ)である。駆動機構4は、例えば、2以上の脚部3ごとに、その中空部内に対して空気の注入および排出を行うブロワと、その中空部内に取り付けられた1以上のワイヤと、1以上のワイヤの巻取りを行う電動リールとを有している。または、駆動機構4は、2以上の脚部3ごとに、その関節を折り曲げるための1以上のモータを有していてもよい。ただし、駆動機構4の構成は問わない。
The
デバイス1は、駆動機構4を介して、2以上の各脚部3を駆動する。具体的には、デバイス1は、駆動機構4を構成する電動リールやモータ等の2以上の電動素子の電流を制御することにより、2以上の各脚部3を駆動し、それによって、ロボットの移動を実現する。
The
なお、ロボットは、例えば、市販の多脚ロボットでもよく、そのハードウェア構成は問わない。また、デバイス1は、ロボット以外の装置に設けられても構わない。ロボット以外の装置とは、例えば、化学反応シミュレータである。化学反応シミュレータは、例えば、共有結合する有機分子化合物の化学反応プロセスのシミュレート、および反応生成物の予測を行う。ここでは、物理原理または一般化学反応則のうち1以上に反する結合状態が、負ルールとされる。
Note that the robot may be, for example, a commercially available multi-legged robot, and its hardware configuration does not matter. Also, the
図2は、デバイス1のブロック図である。デバイス1は、格納部11、コア回路12、および制御部13を備える。
FIG. 2 is a block diagram of the
コア回路12は、2以上の部分回路121を備える。2以上の部分回路121は、例えば、ハブを介して接続され、このハブの中心から2以上の各部分回路121に、電流が供給される。かかる構成により、ハブ内の総電流は、キルヒホッフの法則に従って保存される結果、例えば、体積が保存されるアメーバに相当するアメーバ型ロボットの動きが実現できる。
The
制御部13は、状態情報群取得手段131、負ルール取得手段132、正例取得手段133、および制御手段134を備える。
The
デバイス1を構成する格納部11は、各種の情報を格納し得る。各種の情報とは、例えば、1または2以上の負ルールである。負ルールとは、禁止事項に関するルールである。禁止事項とは、行っていけない事柄である。負ルールは、例えば、1または2以上の状態情報の集合である部分状態情報群に対応付けられたルールであり、禁止事項を示すルールである。部分状態情報群とは、状態情報群の一部分である。状態情報群とは、1または2以上の状態情報の集合である。状態情報とは、状態を示す情報である。なお、状態情報、状態情報群、および部分状態情報群の詳細については後述する。
The storage unit 11 configuring the
禁止事項は、例えば、ロボットの転倒を回避するために、2以上の脚部3の動作に関して禁止された事項であるといってもよい。負ルールは、具体的には、例えば、「一度に3本以上の足を上げることは禁止」といったルールである。
Prohibited items may be, for example, prohibited items related to the movement of two or
なお、格納部11は、例えば、正ルールも格納し得る。正ルールとは、守るべきルールである。ただし、格納部11は、正ルールを格納しないことは好適である。または、正ルールがなくても、ロボットは、負ルールに基づいて的確な動きを行うことができる、といってもよい。 Note that the storage unit 11 can also store, for example, regular rules. A positive rule is a rule that must be followed. However, it is preferable that the storage unit 11 does not store the correct rule. Alternatively, even if there is no positive rule, it can be said that the robot can perform accurate movements based on the negative rule.
格納部11は、例えば、第一の負ルールを格納している。第一の負ルールとは、ロボットが有する2以上の脚部3のうち、着地している状態を示す脚部3の数が、予め決められた数以下である場合に、脚を上げることを禁止するルールである。予め決められた数とは、例えば、2であるが、ロボットが2つの脚部3しか有さない場合は、1でもよい。
The storage unit 11 stores, for example, a first negative rule. The first negative rule is that when the number of
第一の負ルールは、例えば、“if(センサonの脚が2本以下),then(脚を上げることを禁止)”等であるが、その表現形式は問わない。 The first negative rule is, for example, "if (the number of legs with the sensor on is two or less), then (the leg is prohibited from being lifted)", but the form of expression does not matter.
また、格納部11は、例えば、第二の負ルールを格納している。第二の負ルールとは、2以上の脚部3の間の前後の位置関係に対応して、2以上の脚部3のうち1以上の脚部3の前後の動きを禁止するルールである。
The storage unit 11 also stores, for example, a second negative rule. The second negative rule is a rule that prohibits forward and backward movement of one or
第二の負ルールは、例えば、“if(右、左前脚のどちらかが後方にある),then(片方の脚が後方に動くことを禁止)”、“if(右、左後脚のどちらかが前方にある),then(片方の脚が前方に動くことを禁止)”等であるが、許可の取消でもよく、その表現形式は問わない。 The second negative rule is, for example, "if (either right or left front leg is behind), then (one leg is prohibited from moving backward)", "if (either right or left rear leg is One leg is in front), then (one leg is prohibited from moving forward)”, etc., but it may be a revocation of permission, and the form of expression does not matter.
また、格納部11は、第三および第四の2つの負ルールを格納している。第三の負ルールとは、2以上の各脚部3に関し、脚部3が着地している状態に対応して、脚部3を下げた状態で前方に移動させることを禁止するルールである。第四の負ルールとは、同じく2以上の各脚部3に関し、脚部3が着地していない状態に対応して、脚部3を上げた状態で後方に移動させることを禁止するルールである。
The storage unit 11 also stores two negative rules, the third and the fourth. The third negative rule is a rule that prohibits moving forward with the
第三の負ルールは、例えば、“if(センサon),then(前方に動くこと+下げた状態を禁止、and後方に動くこと+下げた状態を許可)”であり、第四の負ルールは、例えば、“if(センサoff),then(後方に動くこと+上げた状態を禁止、and前方に動くこと+上げた状態を許可)であるが、その表現形式は問わない。 The third negative rule is, for example, "if (sensor on), then (moving forward + prohibiting lowered state, and allowing backward movement + lowered state)", and the fourth negative rule is, for example, "if (sensor off), then (prohibit backward movement + raised state, and allow forward movement + raised state), but the expression format is not limited.
また、格納部11は、例えば、第五の負ルールを格納している。第五の負ルールとは、2以上の各脚部3に関し、脚部3の位置が前方または後方にある場合に、脚部3と予め決められた位置関係にある他の脚部3の動きを禁止するルールである。
The storage unit 11 also stores, for example, a fifth negative rule. The fifth negative rule is that for each of two or
第五の負ルールは、例えば、“if(脚が前方にある),then(点対称な位置にある脚が前方以外に動くことを禁止)”、“if(脚が後方にある),then(点対称な位置にある脚が後方以外に動くことを禁止)”等であるが、その表現形式は問わない。 The fifth negative rule is, for example, "if (the leg is in front), then (the leg in the point-symmetrical position is prohibited from moving other than forward)", "if (the leg is in the back), then (It is prohibited for the leg in a point-symmetrical position to move in any direction other than backward)”, but the form of expression does not matter.
また、格納部11は、例えば、第六の負ルールを格納している。第六の負ルールとは、2以上の各脚部3に関し、脚部3の上げ下げの状態と、接地している状態か否かとの組み合わせに応じて、禁止されている移動を許可するルールである。組み合わせとは、例えば、脚の上げ下げと接地の有無に関し、“脚を下げた状態かつ接地した状態(センサon)”、“脚を上げた状態かつ接地していない状態(センサoff)”、“脚を下げた状態かつ接地した状態(センサon)”、および“脚を上げた状態かつ接地した状態(センサon)”の4通りである。
The storage unit 11 also stores, for example, a sixth negative rule. The sixth negative rule is a rule that permits prohibited movements for each of two or
第六の負ルールは、例えば、禁止された動き“脚を下ろしたまま方向を変えること”を許可するルール“if(脚を下げた状態かつセンサoff),then(脚を下ろしたまま方向を変えることを許可)”である。 The sixth negative rule is, for example, the rule "if (with leg down and sensor off), then (change direction with leg down") that permits the prohibited movement "change direction with leg down". permission to change)”.
または、第六の負ルールは、禁止された動き“その方向のまま脚を下ろすこと”を許可するルール“if(脚を上げた状態かつセンサoff),then(その方向のまま脚を下ろすことを許可)”でもよい。 Alternatively, the sixth negative rule is a rule that permits the prohibited movement "lowering the leg in that direction", "if (with the leg raised and the sensor off), then (lowering the leg in that direction"). allowed)”.
または、第六の負ルールは、禁止された動き“方向を変えて脚を下ろすこと”を許可するルール“if(脚を上げた状態かつセンサoff),then(方向を変えて脚を下ろすことを許可)”でもよい。 Or, the sixth negative rule is the rule "if (leg up and sensor off), then (change direction and drop leg") that permits the prohibited movement "change direction and drop leg". allowed)”.
または、第六の負ルールは、禁止された動き“その方向のまま脚を上げること”を許可するルール“if(脚を下げた状態かつセンサon)”,then(その方向のまま脚を上げることを許可)でもよい。 Alternatively, the sixth negative rule is the rule "if (with the leg lowered and the sensor on)" that permits the prohibited movement "raising the leg in that direction", then (raising the leg in that direction allowed).
または、第六の負ルールは、禁止された動き“方向を変えて脚を上げること”を許可するルール“if(脚を下げた状態かつセンサon),then(方向を変えて脚を上げることを許可)”でもよい。 Or, the sixth negative rule is the rule "if (leg down and sensor on), then (change direction and lift leg") that allows the prohibited movement "turn leg up". allowed)”.
または、第六の負ルールは、禁止された動き“その方向のまま脚を下ろすこと”を許可するルール“if(脚を上げた状態かつセンサon),then(その方向のまま脚を下ろすことは禁止)”でもよい。 Alternatively, the sixth negative rule is a rule that permits the prohibited movement “lowering the leg in that direction”, “if (with the leg raised and the sensor on), then (lowering the leg in that direction”). is prohibited)” is acceptable.
ただし、第六の負ルールの表現形式は問わない。また、第六の負ルールは、例えば、上記6例のうち2例以上に対応するルール群を含んでいてもよい。 However, the expression form of the sixth negative rule does not matter. Also, the sixth negative rule may include, for example, rule groups corresponding to two or more of the above six examples.
なお、第六の負ルールは、例えば、上記6例のうち、2つ目と3つ目、4つ目と5つ目がそうであるように、同じ状態情報群に対して、2種類以上の動きを許可し得る。これによって、例えば、後述する具体例において、定常解を繰り返し取得する状態や解探索が不可能になる状態から脱出できる可能性が高まり、その結果、アメーバ型ロボットの脚部3の動きを的確に制御できる。なお、解探索が不可能になる状態とは、同時刻に全ての変数が同値をとろうとして、コンフリクトを起こした状態である。この状態でシステムがロックされる結果、ロボット1は、動作を停止したり、不安定な場所で転倒したりする。
It should be noted that the sixth negative rule, for example, the second and third, fourth and fifth of the above six examples, for the same state information group, two or more movement. As a result, for example, in a specific example to be described later, the possibility of escaping from a state in which steady-state solutions are repeatedly obtained or a state in which solution search is impossible increases, and as a result, the movement of the
コア回路12を構成する2以上の部分回路121の各々は、ダイオードとコンデンサとスイッチとを有する。ダイオードは、一の方向(順方向)にのみ電流を流し、逆の方向には電流を流さない。コンデンサは、ダイオードを介して流れ込む電気を蓄え、蓄えた電気を、スイッチを介して放出する。
Each of the two or more
2以上の部分回路121の間で、コンデンサの充電または放電の時定数(以下、充放電時時定数、または単に時定数と記す場合がある)が異なることは好適である。充放電時時定数は、基本的には、当該コンデンサの静電容量で決まるが、当該コンデンサと接続されている他の回路要素(例えば、ダイオード、抵抗、スイッチ等)によっても変化する。従って、2以上の部分回路121の間で、たとえコンデンサの静電容量が同一であっても、例えば、抵抗の値やダイオードの特性が異なっていたり、スイッチを実現するNOTゲート等の閾値が異なっていたりしていれば、充放電時時定数が異なる結果となる。
It is preferable that the two or more
スイッチは、コンデンサへの充電が可能な状態と、コンデンサからの放電が可能な状態とを切り替える。つまり、コンデンサは、スイッチがOFFの状態で充電可能であり、スイッチがONの状態で放電可能である。 The switch switches between a state in which the capacitor can be charged and a state in which the capacitor can be discharged. That is, the capacitor can be charged when the switch is OFF and discharged when the switch is ON.
部分回路121は、通常、抵抗も有する。抵抗は、例えば、コンデンサの充放電の時定数を大きくする。時定数とは、コンデンサの充放電に要する時間である。スイッチがONされたタイミングに対し、コンデンサへの充電が完了するタイミングは、時定数に応じた時間だけ遅延する。同様に、スイッチがOFFされたタイミングに対し、充電されたコンデンサからの放電が完了するタイミングもまた、時定数に応じた時間だけ遅延する。
なお、スイッチは、例えば、NOTゲートで構成されるが、インバータを用いてもよく、その実現手段は問わない。また、部分回路121は、その他の素子も有してよいことは言うまでもない。その他の素子とは、例えば、具体例で説明する電界効果トランジスタ(FET)であるが、その種類は問わない。
Note that the switch is composed of, for example, a NOT gate, but an inverter may be used, and any means for realizing it may be used. It goes without saying that the
制御部13は、コア回路12を構成する2以上の部分回路121介して、2以上の脚部3の動きを制御する。詳しくは、制御部13は、コア回路12を構成する2以上の各部分回路121の状態を少なくとも示す状態情報の集合である状態情報群を取得し、当該状態情報群が有する1以上の各部分状態情報群に対応する負ルールに合致しない状態情報群を取得し、当該状態情報群に基づいて2以上の各部分回路121に電流を流すまたは電流を止める、のいずれかの動作ための制御を行う。
The
状態情報とは、状態を示す情報である。状態とは、例えば、部分回路121の状態である。部分回路121の状態を示す情報とは、例えば、コンデンサに蓄えられている電気量、充電中か放電中かを示す情報等であるが、抵抗を流れる電流の値や電圧等でもよい。
State information is information indicating a state. The state is, for example, the state of the
または、状態とは、センサ31の状態でもよい。センサ31の状態を示す状態情報は、例えば、前述した“on”や“off”等であるが、その表現形式は問わない。
Alternatively, the state may be the state of the
または、状態とは、脚部3の状態であってもよい。脚部3の状態を示す状態情報とは、例えば、“脚を上げた状態”、“脚を下ろした状態”、“後方に移動した状態”、前方に移動した状態、“接地した状態”、“接地していない状態”等である。
Alternatively, the state may be the state of the
なお、“接地した状態”および“接地していない状態”は、センサ31の“on”および“off”と同等である。それ以外の“脚を上げた状態”等の情報は、例えば、部分回路121の状態を示す状態情報を用いて取得されてもよい。ただし、状態情報は、例えば、駆動機構4の状態を示す情報(例えば、電動リールの電流値、関節の角度等)など、ロボットの構成要素の状態を示す情報であれば何でもよい。また、ロボット以外の装置の構成要素の状態を示す情報でも構わない。
The “grounded state” and “non-grounded state” are equivalent to “on” and “off” of the
状態情報群とは、上記のような各種の状態情報の集合である。状態情報群は、コア回路12を構成する2以上の各部分回路121の状態情報を少なくとも含む。また、図1に示したロボットの場合、状態情報群は、通常、センサ31の状態情報も含む。
A state information group is a set of various types of state information as described above. The state information group includes at least state information of each of the two or more
なお、状態情報群は、例えば、具体例で説明する状態変数群{X1,X2,X3,X4・・・}でもよい。状態変数群を構成する各状態変数“X1”,“X2”等は、真(例えば“1”)または偽(例えば“0”)のいずれかの値をとる。 The state information group may be, for example, a state variable group {X1, X2, X3, X4, . . . } described in a specific example. Each of the state variables "X1", "X2", etc. forming the state variable group takes a value of either true (eg "1") or false (eg "0").
この場合、格納部11には、例えば、図3に示すような2以上の負ルールが格納されていてもよい。図3は、負ルールのデータ構造図である。負ルールは、状態情報群と、禁止事項とを有する。状態情報群は、1または2以上の状態変数X1~X4等で構成される。 In this case, the storage unit 11 may store, for example, two or more negative rules as shown in FIG. FIG. 3 is a data structure diagram of a negative rule. A negative rule has a state information group and prohibited matters. The state information group is composed of one or more state variables X1 to X4.
状態変数X1は、例えば、脚部3を上げている状態か否かを示す変数であり、真“脚を上げた状態”に対応する“1”、または偽“脚を下げた状態”に対応する“0”のいずれかの値をとる。なお、真偽と“0”,“1”の対応は逆でもよい(以下同様)。
The state variable X1 is, for example, a variable indicating whether or not the
また、状態変数X2は、例えば、脚部3を前に移動した状態か否かを示す変数であり、真“前に移動した状態”に対応する“1”、または偽“前に移動していない状態”に対応する“0”のいずれかの値をとる。同様に、状態変数X3は、例えば、脚部3を後ろに移動した状態か否かを示す変数であり、真“後ろに移動した状態”に対応する“1”、または偽“後ろに移動していない状態”に対応する“0”のいずれかの値をとる。
The state variable X2 is, for example, a variable indicating whether or not the
さらに、状態変数X4は、例えば、脚部3が接地している状態か否かを示す変数であり、真“接地した状態”に対応する“1”、または偽“接地していない状態”に対応する“0”のいずれかの値をとる。
Further, the state variable X4 is, for example, a variable indicating whether or not the
格納されている2以上の負ルールには、ID(例えば、“1”,“2”等)が対応付いている。例えば、ID“1”に対応する負ルール(以下、負ルール1と記す場合がある)は、状態情報群“0,1,0,1・・・”と禁止事項“点対称な位置にある脚が前方以外に動くことを禁止”とを有する。また、ID“2”に対応する負ルール(負ルール2)は、状態情報群“0,0,1,1・・・”と禁止事項“点対称な位置にある脚が前方以外に動くことを禁止”とを有する。 Two or more stored negative rules are associated with IDs (for example, "1", "2", etc.). For example, the negative rule corresponding to ID "1" (hereinafter sometimes referred to as negative rule 1) is positioned symmetrically with the state information group "0, 1, 0, 1..." It is forbidden to move the legs other than forward.” In addition, the negative rule (negative rule 2) corresponding to the ID "2" is the state information group "0, 0, 1, 1..." "Prohibit" and have.
同様に、負ルール3は、状態情報群“Null,0,0,1・・・”と禁止事項“前方に動くこと+下げた状態を禁止、and後方に動くこと+下げた状態を許可”とを有し、負ルール4は、状態情報群“Null,0,0,0・・・”と禁止事項“後方に動くこと+上げた状態を禁止、and前方に動くこと+上げた状態を許可”とを有する。なお、“Null”は、当該状態変数の値が“0”または“1”のどちらでもよいことを示す。
Similarly, the
ただし、負ルールのデータ構造は問わない。負ルールは、後述する具体例におけるバウンスバックルールでもよい。 However, the data structure of the negative rule does not matter. A negative rule may be a bounceback rule in a specific example described later.
状態情報群取得手段131は、例えば、2以上の部分回路121ごとに、当該部分回路121の1以上の状態情報を含む状態情報群を取得する。
The state information
または、状態情報群取得手段131は、2以上の脚部3ごとに、当該脚部3に対応する部分回路121の1以上の状態情報と、当該脚部3に対応するセンサ31の状態情報とを含む状態情報群を取得してもよい。
Alternatively, the state information group acquisition means 131 obtains, for each of two or
負ルール取得手段132は、状態情報群取得手段131が取得した2以上の状態情報群ごとに、当該状態情報群が有する1または2以上の各部分状態情報群に対応する1または2以上の負ルールを格納部11から取得する。 Negative rule obtaining means 132 obtains, for each of two or more status information groups obtained by status information group obtaining means 131, one or two or more negative rules corresponding to one or two or more partial status information groups possessed by the status information group. A rule is acquired from the storage unit 11 .
部分状態情報群とは、各種の状態情報の集合である状態情群の部分集合である、といってもよい。例えば、状態変数群{X1,X2,X3,X4}の場合、その1以上の部分状態情報群は、{X1},{X2}・・・,{X1,X2},{X2,X3}・・・,{X1,X2,X3},{X1,X2,X4}・・・,{X1,X2,X3,X4}等である。 It can be said that the partial state information group is a subset of the state information group, which is a set of various types of state information. For example, in the case of the state variable group {X1, X2, X3, X4}, the one or more partial state information groups are {X1}, {X2}, {X1, X2}, {X2, X3}. . . , {X1, X2, X3}, {X1, X2, X4} . . . , {X1, X2, X3, X4}.
負ルール取得手段132は、例えば、上記のような1以上の部分状態変数群ごとに、当該状態情報群をキーとして格納部11を検索し、当該状態変数群に対応する負ルールを取得する。従って、一の状態情報群に対して、1以上の部分状態情報群が取得され、その各々に対して、1以上の負ルールが取得され得る。
For example, the negative
正例取得手段133は、正例の状態情報群を取得する。正例の状態情報群とは、負ルール取得手段132が取得した1以上の負ルールのいずれにも合致しない状態情報群である。 The positive case obtaining means 133 obtains a state information group of positive cases. A positive example state information group is a state information group that does not match any of the one or more negative rules acquired by the negative rule acquisition means 132 .
正例取得手段133は、例えば、試行錯誤により、正例の状態情報群を取得する。試行錯誤とは、試行錯誤とは、未知の課題に対して、既知の解決法がない場合に、試みと失敗を繰り返しながら、最後には課題を解決するに至るプロセスをいう。試行錯誤は、例えば、具体例で説明するような、状態変数群に対する解探索でもよい。
The positive
すなわち、正例取得手段133は、例えば、取得された1以上の負ルールのいずれにも合致しない状態変数群(これを{X1=1,X2=0,X3=0,X4=1}とする)を構成する1以上の各状態変数を反転し、その反転した状態変数群(すなわち{X1=0,X2=1,X3=1,X4=0})を用いて、単位時間Δt後の状態変数群を計算する処理を、前回の計算結果と今回の計算結果とが一致するまで繰り返す。 That is, the positive example acquiring means 133, for example, obtains a state variable group that does not match any of the one or more negative rules (this is {X1=1, X2=0, X3=0, X4=1} ), and using the inverted state variable group (that is, {X1 = 0, X2 = 1, X3 = 1, X4 = 0}), the state after a unit time Δt The process of calculating the variable group is repeated until the previous calculation result and the current calculation result match.
そして、正例取得手段133は、前回の計算結果と今回の計算結果とが一致した状態変数群を、正例の状態情報群として取得する。なお、正例取得手段133は、こうして取得した正例の状態情報群を格納部11に蓄積してもよい。
Then, the positive
制御手段134は、正例取得手段133が取得した正例の状態情報群に基づいて、2以上の各部分回路121に電流を流すまたは電流を止める、のいずれかの動作ための制御を行っても良い。詳しくは、例えば、上述した第六の負ルールを構成する条件(if・・・)および許可事項(then・・・)のうち、前者(例えば、“足を上げた下げた状態かつセンサoff”等)が正例の状態情報群に該当し、後者(例えば、“足を下ろしたまま方向を変えることを許可”等)が正例の状態情報群に基づく制御に対応する。
The control means 134 controls the operation of either supplying or stopping the current to each of the two or more
以上のように構成されたデバイス1において、コア回路12を構成する2以上の各部分回路121が有する1以上のコンデンサの少なくとも一部のコンデンサの静電容量が異なることは好適である。静電容量が異なることは、例えば、2以上の部分回路121が、各々一のコンデンサのみを有する場合に、当該2以上のコンデンサの間で静電容量がばらついていることである。または、静電容量が異なることは、2以上の部分回路121が、各々2以上のコンデンサを有する場合には、例えば、一の部分回路121が有する2以上のコンデンサの間で静電容量がばらついていることでもよいし、2以上の部分回路121の間で静電容量のばらつきの程度が異なることでもよい。静電容量が異なることにより、コア回路12が有する2以上の部分回路121のうち少なくとも一部の部分回路121は、少なくとも一時的に、部分状態情報群に基づいた動作を行わない。
In the
なお、動作を行わないことは、例えば、制御手段134の制御に対する当該一部の部分回路121の状態変化が遅く、結果として、当該一部の部分回路121の動作が行われない場合も含む。
It should be noted that not operating includes, for example, a case where the
または、コア回路12を構成する2以上の部分回路121の間で、コンデンサの充放電時定数が異なっていてもよい。なお、充放電時定数は、例えば、コンデンサの静電容量によって、または、コンデンサの静電容量と抵抗の値との組み合わせによって、変化する。
Alternatively, the charge/discharge time constants of the capacitors may be different between the two or more
コンデンサの充放電時定数が異なることにより、少なくとも一部の部分回路121では、コンデンサの容量の充電時間または放電時間が、制御部13が正例の状態情報群を取得した結果に応じた制御を行うまでの時間より長くなり、結果として、当該一部の部分回路121の動作が行われない場合がある。
Due to the difference in the charging and discharging time constants of the capacitors, in at least some of the
なお、後述する具体例では、コンデンサの充放電時定数が、コントローラからコア回路12へのフィードバック時間より長いことによっても、少なくとも一部の部分回路121の動作が行われない結果をもたらす場合がある。
In a specific example described later, even if the charge/discharge time constant of the capacitor is longer than the feedback time from the controller to the
こうして、少なくとも一部の部分回路121の動作が行われないことにより、ロボットの2以上の各脚部3の動きを制御するための状態変数群に関して、定常解を繰り返し取得する状態や解探索が不可能になる状態に陥り難くなる結果、効率的な解探索が行える。
In this way, at least a portion of the
格納部11は、例えば、フラッシュメモリ等の不揮発性の記録媒体が好適であるが、RAMなど揮発性の記録媒体でも実現可能である。 The storage unit 11 is preferably a non-volatile recording medium such as a flash memory, but can also be realized by a volatile recording medium such as a RAM.
格納部11等に情報が記憶される過程は問わない。例えば、メモリカード等の記録媒体を介して情報が格納部11等で記憶されるようになってもよく、ネットワークや通信回線等を介して送信された情報が格納部11等で記憶されるようになってもよく、あるいは、入力デバイスを介して入力された情報が格納部11等で記憶されるようになってもよい。入力デバイスは、例えば、タッチパネル、キーボード等、何でもよい。 It does not matter how the information is stored in the storage unit 11 or the like. For example, information may be stored in the storage unit 11 or the like via a recording medium such as a memory card, or information transmitted via a network, a communication line, or the like may be stored in the storage unit 11 or the like. Alternatively, information input via an input device may be stored in the storage unit 11 or the like. Any input device such as a touch panel, a keyboard, or the like may be used.
制御部13、状態情報群取得手段131、負ルール取得手段132、正例取得手段133、および制御手段134は、通常、MPUやメモリ等から実現され得る。制御部13等の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。ただし、処理手順は、ハードウェア(専用回路)で実現してもよい。
The
次に、デバイス1の動作について図4のフローチャートを用いて説明する。なお、このフローチャートの処理は、例えば、マイコン等のコンピュータによってソフト的に実行されるが、論理ゲートによるデジタル回路または論理演算を行うアナログ回路でハード的に実行されてもよい。
Next, the operation of the
(ステップS401)制御部13は、変数iに初期値1をセットする。変数iとは、コア回路12を構成する2以上の部分回路121のうち、未選択の部分回路121を順番に選択していくための変数である。なお、アナログ回路の場合、連続時間で動作するため、変数iは理解のための便宜的なものになる。
(Step S401) The
(ステップS402)制御部13は、i番目の部分回路121があるか否かを判別する。i番目の部分回路121がある場合はステップS403に進み、i番目の部分回路121がない場合はステップS401に戻る。
(Step S402) The
(ステップS403)状態情報群取得手段131は、i番目の部分回路121に対応する状態情報群を取得する。
(Step S403) The state information
(ステップS404)負ルール取得手段132は、ステップS403で取得された状態情報群に対応する1以上の負ルールを格納部11から取得する。
(Step S404) The negative
(ステップS405)正例取得手段133は、ステップS404で取得された1以上の負ルールのいずれにも合致しない正例の状態情報群を取得する。
(Step S405) The positive
(ステップS406)制御手段134は、ステップS405で取得された正例の状態情報群を用いて、i番目の部分回路121に電流を流す又は電流を止める、のいずれかの動作ための制御を行う。
(Step S406) The control means 134 uses the state information group of the positive example acquired in step S405 to control the operation of either supplying or stopping the current to the i-th
(ステップS407)制御部13は、変数iをインクリメントする。その後、ステップS402に戻る。
(Step S407) The
なお、図4のフローチャートにおいて、デバイス1の電源オフや処理終了の割り込みにより処理は終了する。
In the flowchart of FIG. 4, the process ends when the power of the
以下、本実施の形態におけるロボットの具体的な動作例について説明する。本例のロボットは、図4に示すようなアメーバ型ロボットである。なお、このロボットの脚数は4であるが、8や6等、2以上であれば何脚でもよい。このロボットの各脚(仮足ユニット:pseudopod unit)は、図1に示したロボットの各脚部3に相当する。各脚は、関節を有し、上下および前後の各方向に移動可能である。各脚の先端には、センサ31に相当するタッチセンサが設けられている。
A specific operation example of the robot according to the present embodiment will be described below. The robot of this example is an amoeba type robot as shown in FIG. Although this robot has four legs, it may have any number of legs, such as eight or six, as long as it has two or more legs. Each leg (pseudopod unit) of this robot corresponds to each
そして、このロボットは、デバイス1に相当する電子アメーバ(Electronic amoeba)を有する。電子アメーバは、単細胞のアメーバ生物(amoeboid organism:以下、単細胞アメーバ)の餌食行動からインスピレーションを得て、組合せ最適化問題の解を探索するように設計されている。単細胞アメーバは、与えられた制約を満たしながら、食物摂取量を最大限にしようとする。
This robot then has an Electronic amoeba that corresponds to
詳しくは、第一に、単細胞アメーバは、仮足を、ある程度のゆらぎを以て、一方向に拡張する。電子アメーバは、状態変数に対応して、仮足ユニット内のダイオードを流れる一方向の電流によって、かかる仮足の動きを表す。単細胞アメーバの変形のゆらぎおよび誤差は、電子アメーバにおいては、ランダムビット発生器を用いて電子的に実現される。または、電源などに雑音をいれることでも、同様なゆらぎおよび誤差が得られる。 Specifically, first, single-celled amoeba extend pseudopodia in one direction with some degree of fluctuation. Electronic amoeba exhibit such pseudopodic movements by means of unidirectional currents flowing through diodes within the pseudopodia unit, corresponding to state variables. Deformation fluctuations and errors in single-celled amoeba are realized electronically in electronic amoeba using a random bit generator. Alternatively, similar fluctuations and errors can be obtained by introducing noise into the power supply or the like.
第二に、単細胞アメーバは、体積保存によって、その変形が制約される。体積保存による変形の制約は、仮足間の時空間相関を生じさせる。電子アメーバにおいて、体積保存は、仮足ユニットの星形ネットワークの中心におけるキルヒホッフの法則によって表現される。 Second, unicellular amoebae are constrained in their deformation by volume conservation. Constraints on deformation by volume conservation give rise to spatiotemporal correlations between pseudopodia. In the electronic amoeba, volume conservation is expressed by Kirchhoff's law at the center of the star-shaped network of pseudopodia units.
第三に、単細胞アメーバは、光の照射を受けると、その仮足が収縮する。この光回避は、アメーバ形状を意図的に変形させるために用いられる。光回避の特性は、各仮足ユニット内におけるコンデンサを有する電界効果トランジスタによる電流制御によって表現される。 Third, unicellular amoebae contract their pseudopodia when exposed to light. This light avoidance is used to intentionally deform the amoeba shape. The property of light avoidance is represented by current control by field effect transistors with capacitors in each pseudopod.
図6には、上記のような電子アメーバの回路構成が、単細胞アメーバと共に示されている。電子アメーバは、コア回路12に相当するアメーバコア(amoeba core)と、制御部13に相当するコントローラと、格納部11に相当する図示しないメモリとを有する。
FIG. 6 shows the circuitry of an electronic amoeba as described above, together with a unicellular amoeba. The electronic amoeba has an amoeba core corresponding to the
メモリには、負ルールに対応するバウンスバックルールが格納されている。なお、バウンスバックルールは、単細胞アメーバの「与えられた制約」に相当するルールであるといってもよい。また、バウンスバックルールは、プログラムに組み込まれていても構わない。さらに、プログラムで記載されている論理関数を、論理ゲートによる回路で直接実装しても構わない。 Stored in memory is a bounceback rule that corresponds to the negative rule. The bounceback rule can be said to be a rule corresponding to the "given constraints" of the single-celled amoeba. Bounceback rules may also be built into the program. Furthermore, a logic function written in a program may be directly implemented by a circuit of logic gates.
アメーバコアは、部分回路121に相当する2以上(図6では8つ)の仮足ユニット(pseudopod unit)を有する。これら2以上の仮足ユニットは、ハブに相当する星形ネットワーク(star-topology network)を介して接続されている。星形ネットワークの中心(ハブ)に電流が供給され、供給された電流は、2以上の各仮足ユニットに分配される。各仮足ユニットには、電流Iiが入力され、各仮足ユニットの出力Xiが、コントローラに与えられる。コントローラは、各仮足ユニットからの出力Xiに対し、バウンスバックルール基づくフィードバック信号yiを生成して、各仮足ユニットに与える。フィードバック信号とは、状態変数を更新するための信号であり、バウンスバック信号とも呼ばれる。
The amoeba core has two or more (eight in FIG. 6) pseudopod units corresponding to
各仮足ユニットにはまた、図示しないランダムビット発生器が発生するエラー信号eiも与えられる。エラー信号とは、単細胞アメーバの変形の誤差ないしはゆらぎを実現する信号である、といってもよい。 Each pseudopod is also provided with an error signal ei generated by a random bit generator (not shown). It can be said that the error signal is a signal that realizes the deformation error or fluctuation of the single-celled amoeba.
図7には、各仮足ユニットの回路構成と、各仮足ユニットに与えられる、異なる特性の3つのエラー信号の波形とが示される。まず、回路構成に関し、仮足ユニットの入力端は、抵抗Rを介して、ダイオードのアノード側に接続され、ダイオードのカソード側は、NOTゲートを介して出力端に接続される。ダイオードのカソード側はまた、コンデンサCを介して接地されており、ダイオードのカソード側とコンデンサCとの間に第一のFFTが、コンデンサCと接地との間に、第一のFETと直列の第二のFETが、それぞれ接続されている。そして、第一のFETにフィードバック信号yiが、第二のFETにはエラー信号eiが、それぞれ与えられる。 FIG. 7 shows the circuit configuration of each pseudopodia unit and the waveforms of three error signals with different characteristics given to each pseudopodia unit. First, regarding the circuit configuration, the input terminal of the pseudopod unit is connected to the anode side of the diode via the resistor R, and the cathode side of the diode is connected to the output terminal via the NOT gate. The cathode side of the diode is also grounded through a capacitor C, and a first FFT is connected between the cathode side of the diode and capacitor C, and in series with the first FET between capacitor C and ground. A second FET is connected respectively. A feedback signal yi is applied to the first FET, and an error signal ei is applied to the second FET.
例えば、各仮足ユニットのコンデンサCの静電容量は10nFであり、抵抗Rは100Ωである。ただし、静電容量また抵抗値のうち1種類以上は、仮足ユニット間でばらついていることは好適である。例えば、仮足ユニット間での静電容量等の相対ばらつきは、100%未満であることが望ましい。相対ばらつきとは、例えば、単位や平均等が異なる2以上の集団におけるばらつきの程度を相対的に示す値であるといってもよい。相対ばらつきは、例えば、標準偏差を算術平均で割った相対標準偏差(変動係数ともいう)であるが、ばらつきの程度を相対的に表現し得る値であれば、その種類は問わない。ばらつきが大きすぎると、デバイス1が動作しなくなる場合があるからである。
For example, the capacitance of the capacitor C of each pseudopod unit is 10 nF and the resistance R is 100Ω. However, it is preferable that one or more of the capacitance and resistance values vary among the pseudopod units. For example, it is desirable that the relative variation in capacitance, etc. between pseudopodia units be less than 100%. The relative variability can be said to be a value that relatively indicates the degree of variability in two or more groups with different units, averages, or the like, for example. The relative variation is, for example, the relative standard deviation (also referred to as coefficient of variation) obtained by dividing the standard deviation by the arithmetic mean, but any value can be used as long as it can relatively express the degree of variation. This is because if the variation is too large, the
ハブに注入される電流は10μAである。変数の数Nは12であり、冗長変数の数は2N=24である。コントローラのクロック周波数は84MHzであり、コンデンサCの充放電速度よりも十分に速い。 The current injected into the hub is 10 μA. The number of variables N is 12 and the number of redundant variables is 2N=24. The clock frequency of the controller is 84 MHz, which is sufficiently faster than the charging/discharging speed of the capacitor C.
ゆらぎの原因となるエラー信号としては、Xorshift法で生成したランダムビット列を用いる。エラー信号は、バウンスバック信号とは無関係に“0”を生成する。 A random bit string generated by the Xorshift method is used as the error signal that causes the fluctuation. The error signal produces a "0" regardless of the bounceback signal.
図7下段に示されたe1~e3のような異なる特性のエラー信号は、解探索に影響を及ぼす。エラー確率pは、一度にどれくらいの仮足ユニットがエラー信号を受信したかを意味する。エラー周期λは、エラービット幅と隣接ビット間の平均時間間隔との和である。λを増加させると、誤差のビット幅と時間間隔の両方が増加する。電子アメーバの状態変数Xiは、仮足ユニットの出力端(つまり、NOTゲートの出力電圧)から取得される。 Error signals with different characteristics such as e1 to e3 shown in the lower part of FIG. 7 affect the solution search. The error probability p means how many pseudopodia units received an error signal at one time. The error period λ is the sum of the error bit width and the average time interval between adjacent bits. Increasing λ increases both the bit width and the time interval of the error. The state variable Xi of the electronic amoeba is obtained from the output of the pseudopod unit (ie the output voltage of the NOT gate).
図8には、4変数の時間発展(a)と、エラー確率ごとの、エラー期間λの変化に応じた探索時間の変動(b)とが示される。 FIG. 8 shows the time evolution of the four variables (a) and the search time variation (b) according to the change in the error period λ for each error probability.
図8(a)において、エラー確率pは0.65、状態変数の数は24である。すべてのiとjについて、初期状態Xi_j=1から探索プロセスを開始すると、状態変数はそれぞれ変化し、時々振動的挙動を示す。エラー信号が仮足ユニットにランダムに課されると、電子アメーバは別の状態になる。エラー信号を数回与えた後、系は定常状態に達し安定する。これにより、安定状態の状態変数が常に制約式を満たしていること、すなわちアメーバコアが解を見つけ得ることが確認できる。 In FIG. 8(a), the error probability p is 0.65 and the number of state variables is 24. Starting the search process from the initial state Xi_j=1 for all i and j, each of the state variables changes and sometimes shows an oscillatory behavior. When an error signal is randomly imposed on the pseudopodia unit, the electronic amoeba goes into another state. After applying the error signal several times, the system reaches a steady state and stabilizes. This confirms that the steady-state state variables always satisfy the constraints, that is, the amoeba core can find a solution.
一方、振動状態は、アメーバコアが変数間の不一致を解決できないことを示唆している。系はローカライズされた状態になり、ローカライズされた状態から逃れるために、系にエラー信号を与えることが必要となる。言い換えれば、アメーバコアは、最終的な解が見出されるまで、ダイナミクスを維持する。これは、すべての状態変数が制約式を満たすまで、バウンスバックルールが状態変数の少なくとも1つを反転し続けるためである。 On the other hand, the oscillatory state suggests that the amoeba core cannot resolve discrepancies between variables. The system becomes localized and it becomes necessary to provide an error signal to the system in order to escape from the localized state. In other words, the amoeba core maintains its dynamics until a final solution is found. This is because the bounceback rule continues to flip at least one of the state variables until all state variables satisfy the constraint.
また、図8(b)からは、エラー確率が解の検索効率に関連することがわかる。各曲線は最小値を有し、それによって、解探索時間を最小にする最適誤差周期の存在が示される。このデータは、最適誤差周期は誤差確率に依存すること、および、静電容量の充電時定数程度の時間であることを示しており、それによって、解探索時間も最小化する最適なエラー確率pの値が存在することがわかる。 Also, from FIG. 8(b), it can be seen that the error probability is related to the solution retrieval efficiency. Each curve has a minimum value, which indicates the existence of an optimal error period that minimizes the solution search time. This data shows that the optimal error period depends on the error probability and is of the order of the charging time constant of the capacitance, thereby minimizing the optimal error probability p It can be seen that there exists a value of
このように、本例の電子アメーバは、センサ31信号と以前の状態に応じて、まっすぐ歩く適切な状態を見出す。電子アメーバに転倒や迷いを避けるための制約を与えておけば、歩く方法をプログラムしておく必要はない。
Thus, the electronic amoeba of the present example finds the proper state of walking straight, depending on the
以上、本実施の形態によれば、ロボットは、1または2以上の状態情報の集合である部分状態情報群に対応付けられたルールであり、禁止事項を示す1以上の負ルールを格納している格納部11と、ダイオードとコンデンサとスイッチとを有する2以上の部分回路121を有するコア回路12と、2以上の各部分回路121の状態を少なくとも示す状態情報の集合である状態情報群を取得し、状態情報群が有する1以上の各部分状態情報群に対応する負ルールに合致しない状態情報群を取得し、状態情報群に基づいて2以上の各部分回路121に電流を流すまたは電流を止める、のいずれかの動作ための制御を行う制御部13とを具備する。そして、2以上の各部分回路121が有する1以上のコンデンサの少なくとも一部のコンデンサの充電または放電の時定数が異なることにより、コア回路12が有する2以上の部分回路121のうち少なくとも一部の部分回路121は、少なくとも一時的に、部分状態情報群に基づいた動作を行わない。かかるロボットによれば、その脚部3の動きを制御するための状態変数群に関して定常解を繰り返し取得する状態や解探索が不可能になる状態に陥り難くなり、効率的な解探索が行える結果、動作が不安定になり難くなる。
As described above, according to the present embodiment, the robot stores one or more negative rules that are rules associated with a group of partial state information, which is a set of one or more state information, and that indicate prohibited items. a
また、上記ロボットにおいて、2以上の部分回路121は、ハブを介して接続され、ハブの中心から2以上の各部分回路121に電流が供給されることにより、ハブ内の総電流は、キルヒホッフの法則に従って保存される結果、例えば、体積が保存されるアメーバに相当するロボットの動きが実現できる。
In the above robot, the two or more
また、上記ロボットにおいて、制御部13は、2以上の各部分回路121の状態を少なくとも示す状態情報の集合である状態情報群を取得する状態情報群取得手段131と、状態情報群が有する1以上の各部分状態情報群に対応する1以上の負ルールを格納部11から取得する負ルール取得手段132と、負ルール取得手段132が取得した1以上の負ルールのいずれにも合致しない正例の状態情報群を取得する正例取得手段133と、正例の状態情報群に基づいて2以上の各部分回路121に電流を流すまたは電流を止める、のいずれかの動作ための制御を行う制御手段134とを具備することにより、その動きを制御するための状態変数群に関して、効率的な解探索が行える。
In the above robot, the
また、上記ロボットにおいて、コンデンサの容量の充電時間または放電時間が、制御部13が状態情報群を取得した結果に応じた制御を行うまでの時間より長いことにより、状態変化が制御に追い付かず、結果として動作が行われない場合が生じ、正解を発見できる可能性が高まる。
In the above robot, the charge time or discharge time of the capacity of the capacitor is longer than the time until the
また、上記ロボットにおいて、正例取得手段133は、試行錯誤により、正例の状態情報群を取得することにより、効率よく正例の状態情報群を取得できる。 In the above robot, the positive example obtaining means 133 can obtain the state information group of positive cases efficiently by obtaining the state information group of positive cases through trial and error.
また、上記ロボットは、2以上の脚部3をさらに具備し、2以上の部分回路121は、2以上の脚部3の動きを制御する回路であり、2以上の各脚部3は、脚部3が着地している状態か否かを検知するセンサ31を有し、状態情報群は、2以上の各脚部3のセンサ31による検知結果を示す状態情報も含むことにより、アメーバ型ロボットの脚部3の動きを制御するための状態変数群に関して、効率的な解探索が行える。
In addition, the robot further comprises two or
また、上記ロボットにおいて、格納部11は、着地している状態を示す脚部3の数が予め決められた数以下である場合に、脚を上げることを禁止する第一の負ルールを格納していることにより、脚部3の動きを的確に制御できる。
Further, in the above robot, the storage unit 11 stores a first negative rule that prohibits raising the legs when the number of the
また、上記ロボットにおいて、2以上の各脚部3は、前後に移動可能であり、格納部11は、2以上の脚部3間の前後の位置関係に対応して、2以上の脚部3のうち1以上の脚部3の前後の動きを禁止する第二の負ルールを格納していることにより、脚部3の動きを的確に制御できる。
Further, in the above robot, each of the two or
また、上記ロボットにおいて、2以上の各脚部3は、上げ下げ可能であり、格納部11は、2以上の各脚部3に関し、脚部3が着地している状態に対応して、脚部3を下げた状態で前方に移動させることを禁止する第三の負ルール、および脚部3が着地していない状態に対応して、脚部3を上げた状態で後方に移動させることを禁止する第四の負ルールを格納していることにより、脚部3の動きを的確に制御できる。
Further, in the above robot, each of the two or
また、上記ロボットにおいて、格納部11は、2以上の各脚部3に関し、脚部3の位置が前方または後方にある場合に、脚部3と予め決められた位置関係にある他の脚部3の動きを禁止する第五の負ルールを格納していることにより、脚部3の動きを的確に制御できる。
Further, in the above robot, the storage unit 11 is provided with respect to each of the two or
また、上記ロボットにおいて、格納部11は、2以上の各脚部3に関し、脚部3の上げ下げの状態と接地している状態か否かとの組み合わせに応じて、禁止されている移動を許可する第六の負ルールを格納していることにより、脚部3の動きを的確に制御できる。
In the above robot, the storage unit 11 permits the prohibited movement of each of the two or
また、上記ロボットにおいて、第六の負ルールは、同じ状態情報群に対して、2種類以上の動きを許可し得ることにより、定常解を繰り返し取得する状態や解探索が不可能になる状態から脱出できる可能性が高まり、その結果、脚部3の動きを的確に制御できる。
In the above robot, the sixth negative rule is that two or more types of motions can be permitted for the same group of state information. The possibility of escaping is increased, and as a result, the movement of the
なお、本実施の形態では、コア回路12を構成する2以上の各部分回路121はアナログ回路であり、かかる部分回路121間でコンデンサの充電または放電の時定数が異なることにより、少なくとも一部の部分回路121は、少なくとも一時的に、部分状態情報群に基づいた動作を行わない結果となったが、コア回路12を構成する2以上の各部分回路121がデジタル回路であっても、かかる部分回路121間で、例えば、その出力に異なる遅延を付加したり、その出力を確率論的に遅れさせたりすることにより、少なくとも一部の部分回路121は、少なくとも一時的に、部分状態情報群に基づいた動作を行わない結果となるようにすることができる。
In the present embodiment, the two or more
従って、本実施の形態、および上記のような変形例(変形例1)によれば、2以上の各部分回路121がアナログ回路かデジタル回路かによらず、少なくとも一部の部分回路121は、少なくとも一時的に、部分状態情報群に基づいた動作を行わない結果を得ることが可能であり、状態情報群に対し効率的な解探索が行える。
Therefore, according to the present embodiment and the above modification (modification 1), regardless of whether the two or more
また、デバイス1が上記のような2以上の部分回路121で構成されたコア回路12を有さないような変形例(変形例2)においても、例えば、制御部13が、2以上の各脚部3の動きを制御する際に、脚部間で異なる遅延が生じるような処理をソフト的に行うことによって、2以上の脚部3のうち少なくとも一部の脚部3は、少なくとも一時的に、部分状態情報群に基づいた動作を行わない結果となるようにすることができる。
Further, even in a modification (modification 2) in which the
脚部間で異なる遅延が生じるような処理とは、例えば、各脚部3への制御信号を0と1の間で変化させるタイミングを、MPUの動作クロックに基づく周期(以下、単位時間と記す場合がある)の整数倍だけ遅延させる処理であるが、結果的に脚部間で異なる遅延が生じるような処理であれば、その手順は問わない。ここで、単位時間は、例えば、数マイクロ秒程度である。ただし、単位時間は、マイクロ秒より短いオーダーの時間でもよいし、10マイクロ秒以上の時間でもよく、その値は問わない。
The processing that causes different delays between the legs means, for example, that the timing of changing the control signal to each
これに対して、実施の形態で説明したアナログのコア回路12を構成する2以上の各部分回路121で生じる遅延は、例えば、数ミリ秒~数百ミリ秒の範囲で揺らいでいる。ただし、各部分回路121で生じる遅延は、例えば、ミリ秒より短いオーダーの時間でもよいし、1秒以上の時間でもよく、その値や揺らぎの範囲は問わない。
On the other hand, the delay generated in each of the two or more
従って、コア回路12で生じる上記のような遅延と同等の遅延をソフト的に実現するには、各脚部3への制御信号を、例えば、単位時間の1千~10万倍程度の範囲で、ランダムに又は所定のアルゴリズムで遅延させればよい。
Therefore, in order to realize a delay equivalent to the above-described delay generated in the
すなわち、ロボットにおける動作のタイムスケールは、デバイス1の内部における動作のタイムスケールと異なるため、ロボットの動作が不安定になることを回避するには、制御部13は、ロボットにおける動作のタイムスケールに応じた長さの遅延であり、かつ揺らいだ遅延を生じさせればよい。
That is, since the timescale of the motion of the robot is different from the timescale of the motion inside the
脚部間で異なる遅延が生じることは、例えば、2以上の脚部3のうち、1以上の脚部3においてのみ、予め決められた長さ(例えば、10万単位時間)の遅延が生じ、他の1以上の脚部3においては、何ら遅延が生じないことでもよい。
A delay of a predetermined length (eg, 100,000 units of time) occurs only in one or
そのための処理として、制御部13は、例えば、2以上の脚部3ごとに、乱数を発生させ、当該乱数(例えば、5390、1253、5326等)を予め決められた数(例えば、10)で除算し、その剰余(例えば、0、3、6等)が、予め決められた値(例えば、0)である場合は、当該脚部3への制御信号を予め決められた時間(例えば、10万単位時間)だけ遅延させ、予め決められた値とは異なる値(例えば、3、6等)である場合は、当該脚部3への制御信号を遅延させない、といった処理を行う。これにより、2以上の各脚部3は、一定の確率(例えば、10分の1の確率)で、その動きが予め決められた時間(例えば、10万単位時間)だけ遅延する結果となる。
As a process therefor, the
なお、制御部13は、除算を行う際の上記予め決められた数を変更することによって、確率を変化させてもよい(例えば、予め決められた数が100の場合、各脚部3の動きが遅延する確率は100分の1となる)。
Note that the
または、脚部間で異なる遅延が生じることは、2以上の脚部3のうち、少なくとも一部の脚部3において、予め決められた範囲(例えば、1万単位時間~9万単位時間)内で、ランダムな長さの遅延が生じることでもよい。
Alternatively, the occurrence of different delays between the legs is within a predetermined range (for example, 10,000 unit time to 90,000 unit time) in at least some of the two or
そのための処理として、制御部13は、例えば、2以上の脚部3ごとに、乱数を発生させ、当該乱数(例えば、5390、1253、5326等)を予め決められた数(例えば、10)で除算し、その剰余(例えば、0、3、6等)に応じた長さ(例えば、0、3万単位時間、6万単位時間)だけ、当該脚部3への制御信号を遅延させる、といった処理を行う。これにより、2以上の各脚部3は、その動きが、例えば、0~9万単位時間の範囲内で、ランダムな長さだけ遅延する結果となる。
As a process therefor, the
従って、変形例2によっても、状態情報群に対し効率的な解探索が行える結果、動作が不安定になり難いロボットが実現される。 Therefore, according to the modified example 2 as well, as a result of efficient solution search for the state information group, a robot whose motion is less likely to become unstable is realized.
そして、変形例2によれば、デバイス1をロボット以外の装置に用いる場合にも、制御部1は、その装置における動作のタイムスケールに応じた長さの遅延であり、かつ揺らいだ遅延を生じさせることによって、装置の動作の安定化を図ることができる。また、デバイス1の内部において、そのデバイスの動作のタイムスケールに応じた長さ(例えば、単位時間の数倍程度)の遅延であり、かつ揺らいだ遅延を生じさせることによって、デバイス1自体の動作の安定化を図ることもできる。
According to
ただし、デバイス1がコア回路12を有していれば、当該デバイス1における又はそれを有するロボット等の装置における動作のタイムスケールに応じた充放電時定数であり、かつ揺らいだ充放電時定数を有するコンデンサ群を用いることで、制御部13が上記のような処理を行う必要がなくなり、制御部13を実現するMPU等への負荷が軽減される。
However, if the
または、予め決められた条件を満たした場合に、制御部13は、2以上の脚部3のうち少なくとも一部の脚部3を、少なくとも一時的に、部分状態情報群に基づいた動作を行わないように制御してもよい。予め決められた条件は、通常、部分状態情報群以外の情報に関する条件である。部分状態情報群以外の情報は、例えば、カメラからの画像、湿度センサや温度センサからの情報といった、ロボットの外部の情報(環境情報といってもよい)である。
Alternatively, when a predetermined condition is satisfied, the
詳しくは、例えば、ロボットが移動する範囲を撮影するカメラが、ロボット自体又はその外部に設けられている。カメラからの画像に関する条件は、「高周波成分が閾値より多い又は閾値以上である」という条件である。それによって、例えば、地面が荒れている場合は、部分状態情報群に基づく動作が行われず、ロボットの転倒を回避できる可能性が高まる。 Specifically, for example, a camera that captures the range in which the robot moves is provided on the robot itself or on the outside thereof. The condition for the image from the camera is that "high frequency components are greater than or equal to the threshold". As a result, for example, when the ground is rough, the motion based on the partial state information group is not performed, increasing the possibility of avoiding the overturning of the robot.
また、例えば、ロボット自体又はロボットが移動する範囲に、温度センサが設けられている。温度センサからの温度情報に関する条件は、「温度が閾値より低い又は閾値以下である」という条件である。それによって、例えば、地面が凍結している場合は、部分状態情報群に基づく動作が行われず、ロボットのスリップによる衝突や転倒を回避できる可能性が高まる。 Also, for example, a temperature sensor is provided on the robot itself or in the range in which the robot moves. The condition regarding the temperature information from the temperature sensor is that "the temperature is lower than or equal to the threshold". As a result, for example, when the ground is frozen, the motion based on the partial state information group is not performed, increasing the possibility of avoiding a collision or overturn due to the robot slipping.
さらに、例えば、ロボット自体又はロボットが移動する範囲に、湿度センサが設けられている。湿度センサからの湿度情報に関する条件は、「湿度が閾値より高い又は閾値以上であること」である。それによって、例えば、雨で地面が濡れている場合に、部分状態情報群に基づく動作が行われないことで、ロボットのスリップによる衝突や転倒を回避できる可能性が高まる。 Furthermore, humidity sensors are provided, for example, on the robot itself or in the area in which it moves. The condition for humidity information from the humidity sensor is "the humidity is higher than or equal to the threshold". As a result, for example, when the ground is wet due to rain, the motion based on the partial state information group is not performed, thereby increasing the possibility of avoiding a collision or falling due to a slip of the robot.
さらに、本実施の形態における処理は、ソフトウェアで実現しても良い。そして、このソフトウェアをソフトウェアダウンロード等により配布しても良い。また、このソフトウェアをCD-ROMなどの記録媒体に記録して流布しても良い。 Furthermore, the processing in this embodiment may be realized by software. Then, this software may be distributed by software download or the like. Also, this software may be recorded on a recording medium such as a CD-ROM and distributed.
なお、本実施の形態におけるロボットを実現するソフトウェアは、例えば、以下のようなプログラムである。つまり、2以上の脚部3を具備するロボットのコンピュータは、1または2以上の状態情報の集合である部分状態情報群に対応付けられたルールであり、禁止事項を示す1以上の負ルールを格納している格納部11にアクセス可能であり、このプログラムは、前記コンピュータを、前記2以上の各脚部3の状態を少なくとも示す状態情報の集合である状態情報群を取得し、当該状態情報群が有する1以上の各部分状態情報群に対応する負ルールに合致しない状態情報群を取得し、当該状態情報群に基づいて前記2以上の各脚部3の制御を行う制御部13として機能させ、前記制御部13が行う前記2以上の各脚部3への制御に異なる遅延が生じることにより、前記2以上の脚部3のうち少なくとも一部の脚部3は、少なくとも一時的に、前記部分状態情報群に基づいた動作を行わないことを特徴とするプログラムである。
The software that implements the robot in this embodiment is, for example, the following program. In other words, the computer of the robot having two or
図9は、実施の形態におけるプログラムを実行して、ロボットを実現するコンピュータシステム900の内部構成の一例を示す図である。図9において、コンピュータシステム900は、プログラムを実行するコンピュータであるMPU911と、ブートアッププログラム等のプログラムを記憶するためのROM912と、MPU911に接続され、アプリケーションプログラムの命令を一時的に記憶すると共に、一時記憶空間を提供するRAM913と、アプリケーションプログラム、システムプログラム、およびデータを記憶するストレージ914と、MPU911、ROM912等を相互に接続するバス915と、外部ネットワークや内部ネットワーク等のネットワークへの接続を提供するネットワークカード916と、メモリカードスロット917と、コア回路12とを備える。ストレージ914は、例えば、フラッシュメモリやSSDなどである。なお、コンピュータシステム900全体をコンピュータと呼んでもよい。
FIG. 9 is a diagram showing an example of the internal configuration of a
コンピュータシステム900に、ロボットの機能を実行させるプログラムは、例えば、メモリカード920に記憶されて、メモリカードスロット917に挿入され、ストレージ914に転送されてもよい。これに代えて、そのプログラムは、ネットワークを介してコンピュータシステム900に送信され、ストレージ914に記憶されてもよい。プログラムは、実行の際にRAM913にロードされる。なお、プログラムは、メモリカード920、またはネットワークから直接、ロードされてもよい。
A program that causes
プログラムは、コンピュータシステム900に、ロボットの機能を実行させるオペレーティングシステム(OS)、またはサードパーティプログラム等を必ずしも含んでいなくてもよい。プログラムは、制御された態様で適切な機能やモジュールを呼び出し、所望の結果が得られるようにする命令の部分のみを含んでいてもよい。コンピュータシステム900がどのように動作するのかについては周知であり、詳細な説明は省略する。ただし、以上は例示であり、ロボットを実現するコンピュータのハードウェア構成は問わない。
The programs do not necessarily include an operating system (OS), third party programs, etc. that cause the
なお、上記プログラムを実行するコンピュータは、単数であってもよく、複数であってもよい。すなわち、集中処理を行ってもよく、あるいは分散処理を行ってもよい。(ただし、複数のコンピュータで分散処理を行うことは、例えば、コンピュータ間で異なる遅延を容易に付加できる又は確率論的に異なる遅延の発生が予期できることから、好適である。また、一のコンピュータで集中処理(例えば、時分割処理)を行う場合にも、異なる遅延を付加したり、確率論的に異なる遅延の発生が予期されるような制御を行ったりすることは可能である。 The number of computers that execute the above programs may be singular or plural. That is, centralized processing may be performed, or distributed processing may be performed. (However, performing distributed processing on multiple computers is preferable because, for example, different delays can be easily added between computers, or the occurrence of different delays can be expected stochastically. Even when performing centralized processing (for example, time-division processing), it is possible to add different delays or perform control in which different delays are expected stochastically.
また、上記実施の形態において、各処理(各機能)は、単一の装置(システム)によって集中処理されることによって実現されてもよく、あるいは、複数の装置によって分散処理されることによって実現されてもよい。ただし、複数の装置によって分散処理を行うことは、例えば、装置間で異なる遅延を容易に付加できる又は確率論的に異なる遅延の発生が予期できる点で、好適である。また、一の装置で集中処理を行う場合にも、異なる遅延を付加したり、確率論的に異なる遅延の発生が予期されるような制御を行ったりすることは可能である。 In the above embodiments, each process (each function) may be implemented by centralized processing by a single device (system), or may be implemented by distributed processing by a plurality of devices. may However, distributed processing by a plurality of devices is preferable in that, for example, it is possible to easily add different delays between the devices or to predict the occurrence of different delays stochastically. Also, even when centralized processing is performed by one device, it is possible to add different delays or perform control in which the occurrence of different delays can be expected stochastically.
本発明は、以上の実施の形態に限定されることなく、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。 It goes without saying that the present invention is not limited to the above-described embodiments, and that various modifications are possible and are also included within the scope of the present invention.
以上のように、本発明にかかるロボットは、その状態情報群に対して効率的な解探索が行える結果、動きが不安定になり難いという効果を有し、ロボット等として有用である。 INDUSTRIAL APPLICABILITY As described above, the robot according to the present invention is useful as a robot or the like because it can efficiently search for a solution for the state information group, and as a result, it has the effect that the movement is less likely to become unstable.
1 デバイス
2 胴体
3 脚部
4 駆動機構
11 格納部
12 コア回路
13 制御部
31 センサ
121 部分回路
131 状態情報群取得手段
132 負ルール取得手段
133 正例取得手段
134 制御手段
REFERENCE SIGNS
Claims (12)
2以上の脚部と、
ダイオードとコンデンサとスイッチとを有する2以上の部分回路であり、前記2以上の脚部の動きを制御する部分回路を有するコア回路と、
前記2以上の各脚部の状態を少なくとも示す状態情報の集合である状態情報群を取得し、当該状態情報群が有する1以上の各部分状態情報群に対応する負ルールに合致しない状態情報群を取得し、当該状態情報群に基づいて前記2以上の各脚部の制御を行う制御部とを具備し、
前記2以上の脚部のうち少なくとも一部の脚部は、少なくとも一時的に、前記部分状態情報群に基づいた動作を行わないロボットであり、
前記制御部は、
前記2以上の各部分回路の状態をも示す状態情報群を取得し、当該状態情報群が有する1以上の各部分状態情報群に対応する負ルールに合致しない状態情報群を取得し、当該状態情報群に基づいて前記2以上の各部分回路に電流を流すまたは電流を止める、のいずれかの動作ための制御を行い、
前記2以上の各部分回路が有する1以上のコンデンサの少なくとも一部のコンデンサの充電または放電の時定数が異なり、
当該時定数が異なることにより、前記コア回路が有する2以上の部分回路のうち少なくとも一部の部分回路は、少なくとも一時的に、前記部分状態情報群に基づいた動作を行わない、ロボット。 a storage unit that stores one or more negative rules that are rules associated with a partial state information group that is a set of one or two or more pieces of state information and that indicate prohibited items;
two or more legs;
a core circuit comprising two or more sub-circuits comprising diodes, capacitors and switches, the sub-circuits controlling movement of the two or more legs;
Obtaining a state information group that is a set of state information indicating at least the state of each of the two or more legs, and obtaining a state information group that does not match a negative rule corresponding to each of one or more partial state information groups included in the state information group and a control unit that controls each of the two or more legs based on the state information group,
a robot in which at least some of the two or more legs do not perform movements based on the partial state information group, at least temporarily ;
The control unit
Acquiring a group of status information that also indicates the status of each of the two or more partial circuits, acquiring a group of status information that does not match a negative rule corresponding to each of the one or more groups of partial status information included in the group of status information, and obtaining a group of status information that does not match the negative rule controlling the operation of either passing current through or stopping the current in each of the two or more partial circuits based on the information group;
At least some of the one or more capacitors included in each of the two or more partial circuits have different time constants for charging or discharging,
The robot, wherein at least some partial circuits among the two or more partial circuits included in the core circuit do not operate based on the partial state information group at least temporarily due to the different time constants .
前記状態情報群は、前記2以上の各脚部のセンサによる検知結果を示す状態情報を含む請求項1記載のロボット。 each of the two or more legs has a sensor for detecting whether or not the leg is on the ground;
2. The robot according to claim 1, wherein the state information group includes state information indicating detection results by the sensors of the two or more legs.
前記ハブの中心から前記2以上の各部分回路に電流が供給される請求項1または請求項2記載のロボット。 the two or more partial circuits are connected via a hub;
3. The robot according to claim 1 , wherein current is supplied from the center of said hub to each of said two or more partial circuits.
前記2以上の各部分回路の状態を少なくとも示す状態情報の集合である状態情報群を取得する状態情報群取得手段と、
当該状態情報群が有する1以上の各部分状態情報群に対応する1以上の負ルールを前記格納部から取得する負ルール取得手段と、
前記負ルール取得手段が取得した1以上の負ルールのいずれにも合致しない正例の状態情報群を取得する正例取得手段と、
前記正例の状態情報群に基づいて前記2以上の各部分回路に電流を流すまたは電流を止める、のいずれかの動作ための制御を行う制御手段とを具備する請求項1から請求項3いずれか一項に記載のロボット。 The control unit
state information group acquisition means for acquiring a state information group, which is a set of state information indicating at least the state of each of the two or more partial circuits;
negative rule acquisition means for acquiring from the storage unit one or more negative rules corresponding to one or more partial state information groups included in the state information group;
positive example acquisition means for acquiring a positive example state information group that does not match any of the one or more negative rules acquired by the negative rule acquisition means;
4. Control means for controlling an operation to either pass or stop the current to each of the two or more partial circuits based on the state information group of the positive example. or the robot according to item 1 .
試行錯誤により、正例の状態情報群を取得する請求項4記載のロボット。 The positive example acquisition means is
5. The robot according to claim 4 , wherein the state information group of positive examples is obtained by trial and error.
2以上の脚部と、
前記2以上の各脚部の状態を少なくとも示す状態情報の集合である状態情報群を取得し、当該状態情報群が有する1以上の各部分状態情報群に対応する負ルールに合致しない状態情報群を取得し、当該状態情報群に基づいて前記2以上の各脚部の制御を行う制御部とを具備し、
前記2以上の脚部のうち少なくとも一部の脚部は、少なくとも一時的に、前記部分状態情報群に基づいた動作を行わないロボットであり、
前記1以上の負ルールは、
着地している状態を示す脚部の数が予め決められた数以下である場合に、脚を上げることを禁止する第一の負ルールを含む、または
前後に移動可能である2以上の脚部において、当該2以上の脚部間の前後の位置関係に対応して、当該2以上の脚部のうち1以上の脚部の前後の動きを禁止する第二の負ルールを含む、または
上げ下げ可能である2以上の脚部において、当該2以上の各脚部に関し、当該脚部が着地している状態に対応して、当該脚部を下げた状態で前方に移動させることを禁止する第三の負ルール、および当該脚部が着地していない状態に対応して、当該脚部を上げた状態で後方に移動させることを禁止する第四の負ルールを含む、または
前記2以上の各脚部に関し、当該脚部の位置が前方または後方にある場合に、当該脚部と予め決められた位置関係にある他の脚部の動きを禁止する第五の負ルールを含む、または
前記2以上の各脚部に関し、当該脚部の上げ下げの状態と接地している状態か否かとの組み合わせに応じて、禁止されている移動を許可する第六の負ルールを含む、ロボット。 a storage unit that stores one or more negative rules that are rules associated with a partial state information group that is a set of one or two or more pieces of state information and that indicate prohibited items;
two or more legs;
Obtaining a state information group that is a set of state information indicating at least the state of each of the two or more legs, and obtaining a state information group that does not match a negative rule corresponding to each of one or more partial state information groups included in the state information group and a control unit that controls each of the two or more legs based on the state information group,
a robot in which at least some of the two or more legs do not perform movements based on the partial state information group, at least temporarily;
The one or more negative rules are
includes a first negative rule that prohibits lifting a leg if the number of legs showing a landing condition is less than or equal to a predetermined number, or
In two or more legs that can move back and forth, one or more legs out of the two or more legs are prohibited from moving back and forth in accordance with the front and back positional relationship between the two or more legs. contains a second negative rule, or
In two or more legs that can be raised and lowered, it is prohibited to move each of the two or more legs forward in a lowered state corresponding to the state in which the leg is on the ground. Include a third negative rule and a fourth negative rule that prohibits moving the leg up and backwards in response to the leg not landing on the ground, or
Regarding each of the two or more legs, a fifth negative rule that prohibits the movement of other legs that have a predetermined positional relationship with the leg when the position of the leg is forward or backward. contains or
The robot includes a sixth negative rule that permits prohibited movements for each of the two or more legs according to a combination of a state of raising and lowering the leg and whether or not the leg is on the ground .
1または2以上の状態情報の集合である部分状態情報群に対応付けられたルールであり、禁止事項を示す1以上の負ルールを格納している格納部、および制御部によって実現され、
前記制御部が、前記2以上の各脚部の状態を少なくとも示す状態情報の集合である状態情報群を取得し、当該状態情報群が有する1以上の各部分状態情報群に対応する負ルールに合致しない状態情報群を取得し、当該状態情報群に基づいて前記2以上の各脚部の制御を行う制御ステップを具備し、
前記2以上の脚部のうち少なくとも一部の脚部は、少なくとも一時的に、前記部分状態情報群に基づいた動作を行わないことを特徴とするロボット制御方法であって、
前記制御ステップにおいて、
ダイオードとコンデンサとスイッチとを有する2以上の部分回路であり、前記2以上の脚部の動きを制御する部分回路を有するコア回路における前記2以上の各部分回路の状態をも示す状態情報群を取得し、当該状態情報群が有する1以上の各部分状態情報群に対応する負ルールに合致しない状態情報群を取得し、当該状態情報群に基づいて前記2以上の各部分回路に電流を流すまたは電流を止める、のいずれかの動作ための制御を行い、
前記2以上の各部分回路が有する1以上のコンデンサの少なくとも一部のコンデンサの充電または放電の時定数が異なり、
当該時定数が異なることにより、前記コア回路が有する2以上の部分回路のうち少なくとも一部の部分回路は、少なくとも一時的に、前記部分状態情報群に基づいた動作を行わない、ロボット制御方法。 A robot control method for controlling a robot having two or more legs,
It is a rule associated with a partial state information group that is a set of one or more state information, and is realized by a storage unit that stores one or more negative rules indicating prohibited items, and a control unit,
The control unit acquires a state information group that is a set of state information indicating at least the state of each of the two or more legs, and determines a negative rule corresponding to each of one or more partial state information groups included in the state information group. A control step of acquiring a group of state information that does not match and controlling each of the two or more legs based on the group of state information,
A robot control method, wherein at least some of the two or more legs do not, at least temporarily, perform an action based on the partial state information group ,
In the control step,
A state information group indicating the state of each of the two or more partial circuits in the core circuit, which is two or more partial circuits having a diode, a capacitor, and a switch, and has a partial circuit that controls the movement of the two or more legs. obtaining a group of state information that does not match the negative rule corresponding to each of the one or more partial state information groups possessed by the group of state information, and applying current to each of the two or more partial circuits based on the group of state information or stop the current,
At least some of the one or more capacitors included in each of the two or more partial circuits have different time constants for charging or discharging,
A robot control method according to claim 1, wherein at least some of the two or more partial circuits included in the core circuit do not operate based on the partial state information group at least temporarily due to the different time constants .
1または2以上の状態情報の集合である部分状態情報群に対応付けられたルールであり、禁止事項を示す1以上の負ルールを格納している格納部、および制御部によって実現され、It is a rule associated with a partial state information group that is a set of one or more state information, and is realized by a storage unit that stores one or more negative rules indicating prohibited items, and a control unit,
前記制御部が、前記2以上の各脚部の状態を少なくとも示す状態情報の集合である状態情報群を取得し、当該状態情報群が有する1以上の各部分状態情報群に対応する負ルールに合致しない状態情報群を取得し、当該状態情報群に基づいて前記2以上の各脚部の制御を行う制御ステップを具備し、The control unit acquires a state information group that is a set of state information indicating at least the state of each of the two or more legs, and determines a negative rule corresponding to each of one or more partial state information groups included in the state information group. A control step of acquiring a group of state information that does not match and controlling each of the two or more legs based on the group of state information,
前記2以上の脚部のうち少なくとも一部の脚部は、少なくとも一時的に、前記部分状態情報群に基づいた動作を行わず、At least some of the two or more legs do not perform an action based on the partial state information group, at least temporarily,
前記1以上の負ルールは、The one or more negative rules are
着地している状態を示す脚部の数が予め決められた数以下である場合に、脚を上げることを禁止する第一の負ルールを含む、またはincludes a first negative rule that prohibits lifting a leg if the number of legs showing a landing condition is less than or equal to a predetermined number, or
前後に移動可能である2以上の脚部において、当該2以上の脚部間の前後の位置関係に対応して、当該2以上の脚部のうち1以上の脚部の前後の動きを禁止する第二の負ルールを含む、またはIn two or more legs that can move back and forth, one or more legs out of the two or more legs are prohibited from moving back and forth in accordance with the front and back positional relationship between the two or more legs. contains a second negative rule, or
上げ下げ可能である2以上の脚部において、当該2以上の各脚部に関し、当該脚部が着地している状態に対応して、当該脚部を下げた状態で前方に移動させることを禁止する第三の負ルール、および当該脚部が着地していない状態に対応して、当該脚部を上げた状態で後方に移動させることを禁止する第四の負ルールを含む、またはIn two or more legs that can be raised and lowered, it is prohibited to move each of the two or more legs forward in a lowered state corresponding to the state in which the leg is on the ground. Include a third negative rule and a fourth negative rule that prohibits moving the leg up and backwards in response to the leg not landing on the ground, or
前記2以上の各脚部に関し、当該脚部の位置が前方または後方にある場合に、当該脚部と予め決められた位置関係にある他の脚部の動きを禁止する第五の負ルールを含む、またはRegarding each of the two or more legs, a fifth negative rule that prohibits the movement of other legs that have a predetermined positional relationship with the leg when the position of the leg is forward or backward. contains or
前記2以上の各脚部に関し、当該脚部の上げ下げの状態と接地している状態か否かとの組み合わせに応じて、禁止されている移動を許可する第六の負ルールを含む、ロボット制御方法。A robot control method including a sixth negative rule that permits prohibited movement of each of the two or more legs according to a combination of a state of raising and lowering the leg and whether or not the leg is on the ground. .
前記コンピュータを、
前記2以上の各脚部の状態を少なくとも示す状態情報の集合である状態情報群を取得し、当該状態情報群が有する1以上の各部分状態情報群に対応する負ルールに合致しない状態情報群を取得し、当該状態情報群に基づいて前記2以上の各脚部の制御を行う制御部として機能させ、
前記2以上の脚部のうち少なくとも一部の脚部は、少なくとも一時的に、前記部分状態情報群に基づいた動作を行わないことを特徴とするプログラムであって、
前記制御部は、
ダイオードとコンデンサとスイッチとを有する2以上の部分回路であり、前記2以上の脚部の動きを制御する部分回路を有するコア回路における前記2以上の各部分回路の状態をも示す状態情報群を取得し、当該状態情報群が有する1以上の各部分状態情報群に対応する負ルールに合致しない状態情報群を取得し、当該状態情報群に基づいて前記2以上の各部分回路に電流を流すまたは電流を止める、のいずれかの動作ための制御を行い、
前記2以上の各部分回路が有する1以上のコンデンサの少なくとも一部のコンデンサの充電または放電の時定数が異なり、
当該時定数が異なることにより、前記コア回路が有する2以上の部分回路のうち少なくとも一部の部分回路は、少なくとも一時的に、前記部分状態情報群に基づいた動作を行わない、ものとして、前記コンピュータを機能させるためのプログラム。 A computer of a robot having two or more legs stores one or more negative rules that are rules associated with a partial state information group that is a set of one or two or more pieces of state information and that indicate prohibited matters. is accessible to the containment
said computer,
Obtaining a state information group that is a set of state information indicating at least the state of each of the two or more legs, and obtaining a state information group that does not match a negative rule corresponding to each of one or more partial state information groups included in the state information group and functions as a control unit that controls each of the two or more legs based on the state information group,
A program characterized in that at least some of the two or more legs do not, at least temporarily, perform an action based on the partial state information group ,
The control unit
A state information group indicating the state of each of the two or more partial circuits in the core circuit, which is two or more partial circuits having a diode, a capacitor, and a switch, and has a partial circuit that controls the movement of the two or more legs. obtaining a group of state information that does not match the negative rule corresponding to each of the one or more partial state information groups possessed by the group of state information, and applying current to each of the two or more partial circuits based on the group of state information or stop the current,
At least some of the one or more capacitors included in each of the two or more partial circuits have different time constants for charging or discharging,
Since the time constants are different, at least some of the two or more partial circuits included in the core circuit do not operate based on the partial state information group at least temporarily. A program that makes a computer work .
前記コンピュータを、said computer,
前記2以上の各脚部の状態を少なくとも示す状態情報の集合である状態情報群を取得し、当該状態情報群が有する1以上の各部分状態情報群に対応する負ルールに合致しない状態情報群を取得し、当該状態情報群に基づいて前記2以上の各脚部の制御を行う制御部として機能させ、Obtaining a state information group that is a set of state information indicating at least the state of each of the two or more legs, and obtaining a state information group that does not match a negative rule corresponding to each of one or more partial state information groups included in the state information group and functions as a control unit that controls each of the two or more legs based on the state information group,
前記2以上の脚部のうち少なくとも一部の脚部は、少なくとも一時的に、前記部分状態情報群に基づいた動作を行わないことを特徴とするプログラムであって、A program characterized in that at least some of the two or more legs do not, at least temporarily, perform an action based on the partial state information group,
前記1以上の負ルールは、The one or more negative rules are
着地している状態を示す脚部の数が予め決められた数以下である場合に、脚を上げることを禁止する第一の負ルールを含む、またはincludes a first negative rule that prohibits lifting a leg if the number of legs showing a landing condition is less than or equal to a predetermined number, or
前後に移動可能である2以上の脚部において、当該2以上の脚部間の前後の位置関係に対応して、当該2以上の脚部のうち1以上の脚部の前後の動きを禁止する第二の負ルールを含む、またはIn two or more legs that can move back and forth, one or more legs out of the two or more legs are prohibited from moving back and forth in accordance with the front and back positional relationship between the two or more legs. contains a second negative rule, or
上げ下げ可能である2以上の脚部において、当該2以上の各脚部に関し、当該脚部が着地している状態に対応して、当該脚部を下げた状態で前方に移動させることを禁止する第三の負ルール、および当該脚部が着地していない状態に対応して、当該脚部を上げた状態で後方に移動させることを禁止する第四の負ルールを含む、またはIn two or more legs that can be raised and lowered, it is prohibited to move each of the two or more legs forward in a lowered state corresponding to the state in which the leg is on the ground. Include a third negative rule and a fourth negative rule that prohibits moving the leg up and backwards in response to the leg not landing on the ground, or
前記2以上の各脚部に関し、当該脚部の位置が前方または後方にある場合に、当該脚部と予め決められた位置関係にある他の脚部の動きを禁止する第五の負ルールを含む、またはRegarding each of the two or more legs, a fifth negative rule that prohibits the movement of other legs that have a predetermined positional relationship with the leg when the position of the leg is forward or backward. contains or
前記2以上の各脚部に関し、当該脚部の上げ下げの状態と接地している状態か否かとの組み合わせに応じて、禁止されている移動を許可する第六の負ルールを含む、プログラム。A program comprising a sixth negative rule that permits prohibited movements for each of the two or more legs according to a combination of a state of raising and lowering the leg and whether or not the leg is on the ground.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018093128A JP7141615B2 (en) | 2018-05-14 | 2018-05-14 | Robot, robot control method and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018093128A JP7141615B2 (en) | 2018-05-14 | 2018-05-14 | Robot, robot control method and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2019198903A JP2019198903A (en) | 2019-11-21 |
JP7141615B2 true JP7141615B2 (en) | 2022-09-26 |
Family
ID=68612886
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018093128A Active JP7141615B2 (en) | 2018-05-14 | 2018-05-14 | Robot, robot control method and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP7141615B2 (en) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002304205A (en) | 2001-01-30 | 2002-10-18 | Nec Corp | Program execution method for robot, robot system and program processor |
JP2005153056A (en) | 2003-11-25 | 2005-06-16 | Port & Airport Research Institute | Walking control method for multi-leg robot |
JP2014085733A (en) | 2012-10-19 | 2014-05-12 | Institute Of Physical & Chemical Research | Solution search system and method and solution search program |
-
2018
- 2018-05-14 JP JP2018093128A patent/JP7141615B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002304205A (en) | 2001-01-30 | 2002-10-18 | Nec Corp | Program execution method for robot, robot system and program processor |
JP2005153056A (en) | 2003-11-25 | 2005-06-16 | Port & Airport Research Institute | Walking control method for multi-leg robot |
JP2014085733A (en) | 2012-10-19 | 2014-05-12 | Institute Of Physical & Chemical Research | Solution search system and method and solution search program |
Also Published As
Publication number | Publication date |
---|---|
JP2019198903A (en) | 2019-11-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110796241B (en) | Training method and training device of neural network based on memristor | |
CN108734271B (en) | Neuromorphic weighting unit, method for forming same and artificial neural network | |
US20210125048A1 (en) | Neuromorphic package devices and neuromorphic computing systems | |
US20190044542A1 (en) | Apparatus and method including neural network learning to detect and correct quantum errors | |
Kim et al. | Integrated floating-gate programming environment for system-level ICs | |
KR102542532B1 (en) | Mixed-Signal Computing Systems and Methods | |
US20190042949A1 (en) | Methodology for porting an ideal software implementation of a neural network to a compute-in-memory circuit | |
KR102111494B1 (en) | Temparature sensor having calibration function accoding to temparature, method thereof, and devices having the same | |
CN112152619A (en) | Analog-to-digital converter and neuromorphic computing device including the same | |
US20220040852A1 (en) | Method for controlling a robot device and robot device controller | |
EP3891668A1 (en) | Artificial intelligence-driven quantum computing | |
CN102723112B (en) | Q learning system based on memristor intersection array | |
KR102313796B1 (en) | Neuromorphic arithmetic device | |
US10380386B1 (en) | Accelerator for k-means clustering with memristor crossbars | |
CN113841165A (en) | System and method for training artificial neural networks | |
Braylan et al. | Reuse of neural modules for general video game playing | |
CN113825978A (en) | Method for defining a path | |
WO2019040672A1 (en) | Systems and methods for determining circuit-level effects on classifier accuracy | |
JP7141615B2 (en) | Robot, robot control method and program | |
JP7141614B2 (en) | device | |
Pedretti et al. | Differentiable content addressable memory with memristors | |
CN112699594A (en) | Method, device, equipment and storage medium for determining dichotomous consensus control law of multi-agent system | |
US20160034423A1 (en) | Algorithm for Optimization and Sampling | |
KR20240112967A (en) | Precision digital to analog conversion in the presence of variable and uncertain fractional bit contributions | |
US9590636B1 (en) | Method and apparatus for validating a system-on-chip based on a silicon fingerprint and a unique response code |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20210510 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20220224 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20220315 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20220512 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20220816 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20220830 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7141615 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |