JP7141615B2 - Robot, robot control method and program - Google Patents

Robot, robot control method and program Download PDF

Info

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
Application number
JP2018093128A
Other languages
Japanese (ja)
Other versions
JP2019198903A (en
Inventor
誠也 葛西
健太 斉藤
真士 青野
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Amoeba Energy Co Ltd
Original Assignee
Amoeba Energy Co Ltd
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 Amoeba Energy Co Ltd filed Critical Amoeba Energy Co Ltd
Priority to JP2018093128A priority Critical patent/JP7141615B2/en
Publication of JP2019198903A publication Critical patent/JP2019198903A/en
Application granted granted Critical
Publication of JP7141615B2 publication Critical patent/JP7141615B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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.

特開2014-85733号公報JP 2014-85733 A

本願の発明者らは、その脚部の動きを制御するデバイスに、アメーバ型コンピュータの原理を用いたロボット(以下、アメーバ型ロボットと記す)を発案した。 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.

実施の形態におけるロボットのブロック図Block diagram of the robot in the embodiment 同デバイスのブロック図Block diagram of the same device 同負ルールのデータ構造図Data structure diagram of dominance rules 同デバイスの動作について説明するフローチャートFlowchart explaining the operation of the device 同ロボットの概観図Overview of the robot 同電子アメーバの回路構成を、単細胞アメーバと共に示す図A diagram showing the circuit configuration of the same electronic amoeba together with a single-celled amoeba. 同仮足ユニットの回路構成と、仮足ユニットに与えられる異なる特性のエラー信号波形とを示す図A diagram showing the circuit configuration of the pseudopodia unit and error signal waveforms with different characteristics given to the pseudopodia unit. 同4変数の時間発展(a)と、エラー確率ごとの、エラー期間λの変化に応じた探索時間の変動(b)とを示す図A diagram showing the time evolution of the four variables (a) and the search time fluctuation (b) according to the change in the error period λ for each error probability 同コンピュータシステムの内部構成の一例を示す図Diagram showing an example of the internal configuration of the same computer system

以下、ロボットの実施形態について図面を参照して説明する。なお、実施の形態において同じ符号を付した構成要素は同様の動作を行うので、再度の説明を省略する場合がある。 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 device 1 , a body 2 , two or more (eg, four, eight, etc.) legs 3 and a drive mechanism 4 .

デバイス1については後述する。胴体2は、例えば、柔軟性を有する素材で構成され、図示しない中空部を有し、その中空部内が与圧されていてもよい。ただし、胴体2の素材や構造は問わない。 Device 1 will be described later. The body 2 may be made of, for example, a flexible material, have a hollow portion (not shown), and pressurize the inside of the hollow portion. However, the material and structure of the body 2 do not matter.

脚部3は、上下および前後に移動可能である。脚部3もまた、例えば、ゴムやエストラマ等の柔軟性を有する素材で構成され、図示しない中空部を有し、その中空部内が与圧されていてもよい。この場合、脚部3の上下および前後の移動は、その伸縮および屈曲によって実現される。または、脚部3は、金属や炭素繊維等の固い素材で構成され、関節を有していてもよい。この場合における上下および前後の移動は、関節の折り曲げによって実現される。 The legs 3 are movable up and down and back and forth. The leg portion 3 may also be made of, for example, a flexible material such as rubber or elastomer, have a hollow portion (not shown), and pressurize the interior of the hollow portion. In this case, the movement of the leg 3 up and down and back and forth is realized by its expansion and contraction and bending. Alternatively, the legs 3 may be made of a hard material such as metal or carbon fiber and have joints. Up-down and back-and-forth movements in this case are achieved by bending the joints.

また、脚部3は、センサ31を備える。センサ31は、脚部3が着地している状態か否かを検知し、検知結果を出力する。検知結果とは、例えば、脚部3が着地している状態か否かを示す情報(例えば、着地している状態を示す“on”,着地していない状態を示す“off”等)である。または、検出結果は、接地を検知していない状態では出力されず、接地を検知したことに応じて出力される信号でもよいし、接地を検知していない状態で継続的に出力され、接地を検知したことに応じて停止される信号でも構わない。ただし、脚部3の素材や構成は問わない。 The leg 3 also has a sensor 31 . The sensor 31 detects whether or not the leg 3 is on the ground, and outputs the detection result. The detection result is, for example, information indicating whether or not the leg 3 is on the ground (for example, "on" indicating the state of being on the ground, "off" indicating the state of not being on the ground, etc.). . Alternatively, the detection result may be a signal that is not output when the ground is not detected and is output when the ground is detected, or it is continuously output when the ground is not detected and the ground is detected. A signal to be stopped according to the detection may be used. However, the material and configuration of the leg portion 3 are not limited.

また、センサ31は、例えば、タッチセンサであるが、距離センサや押しボタン等でもよく、着地している状態か否かを検知し得る素子であれば、その種類は問わない。また、センサ31が出力する検知結果の態様も問わない。 Further, the sensor 31 is, for example, a touch sensor, but may be a distance sensor, a push button, or the like, and any type of element can be used as long as it can detect whether or not the sensor is on the ground. Also, the form of the detection result output by the sensor 31 is not limited.

駆動機構4は、2以上の各脚部3の上下および前後の移動を実現するための機構(例えば、アクチュエータ)である。駆動機構4は、例えば、2以上の脚部3ごとに、その中空部内に対して空気の注入および排出を行うブロワと、その中空部内に取り付けられた1以上のワイヤと、1以上のワイヤの巻取りを行う電動リールとを有している。または、駆動機構4は、2以上の脚部3ごとに、その関節を折り曲げるための1以上のモータを有していてもよい。ただし、駆動機構4の構成は問わない。 The drive mechanism 4 is a mechanism (for example, an actuator) for realizing vertical and longitudinal movement of each of the two or more legs 3 . The drive mechanism 4 includes, for example, a blower for injecting and discharging air into and from the hollow portion of each of the two or more legs 3, one or more wires attached to the hollow portion, and one or more wires. It has an electric reel for winding. Alternatively, the drive mechanism 4 may have one or more motors for bending the joints for each of the two or more legs 3 . However, the configuration of the driving mechanism 4 is not limited.

デバイス1は、駆動機構4を介して、2以上の各脚部3を駆動する。具体的には、デバイス1は、駆動機構4を構成する電動リールやモータ等の2以上の電動素子の電流を制御することにより、2以上の各脚部3を駆動し、それによって、ロボットの移動を実現する。 The device 1 drives two or more legs 3 via a drive mechanism 4 . Specifically, the device 1 drives the two or more legs 3 by controlling the current of two or more electric elements such as electric reels and motors that constitute the drive mechanism 4, thereby controlling the movement of the robot. Realize movement.

なお、ロボットは、例えば、市販の多脚ロボットでもよく、そのハードウェア構成は問わない。また、デバイス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 device 1 may be provided in a device other than a robot. Devices other than robots are, for example, chemical reaction simulators. Chemical reaction simulators, for example, simulate chemical reaction processes of covalently bonded organic molecular compounds and predict reaction products. Here, a binding state that violates one or more physical principles or general chemical reaction rules is defined as a negative rule.

図2は、デバイス1のブロック図である。デバイス1は、格納部11、コア回路12、および制御部13を備える。 FIG. 2 is a block diagram of the device 1. As shown in FIG. The device 1 comprises a storage section 11 , a core circuit 12 and a control section 13 .

コア回路12は、2以上の部分回路121を備える。2以上の部分回路121は、例えば、ハブを介して接続され、このハブの中心から2以上の各部分回路121に、電流が供給される。かかる構成により、ハブ内の総電流は、キルヒホッフの法則に従って保存される結果、例えば、体積が保存されるアメーバに相当するアメーバ型ロボットの動きが実現できる。 The core circuit 12 comprises two or more partial circuits 121 . The two or more partial circuits 121 are connected via, for example, a hub, and current is supplied to each of the two or more partial circuits 121 from the center of this hub. With such a configuration, the total current in the hub is conserved according to Kirchhoff's law, and as a result, for example, the movement of an amoeba-type robot corresponding to an amoeba whose volume is conserved can be realized.

制御部13は、状態情報群取得手段131、負ルール取得手段132、正例取得手段133、および制御手段134を備える。 The control unit 13 includes state information group acquisition means 131 , negative rule acquisition means 132 , positive example acquisition means 133 , and control means 134 .

デバイス1を構成する格納部11は、各種の情報を格納し得る。各種の情報とは、例えば、1または2以上の負ルールである。負ルールとは、禁止事項に関するルールである。禁止事項とは、行っていけない事柄である。負ルールは、例えば、1または2以上の状態情報の集合である部分状態情報群に対応付けられたルールであり、禁止事項を示すルールである。部分状態情報群とは、状態情報群の一部分である。状態情報群とは、1または2以上の状態情報の集合である。状態情報とは、状態を示す情報である。なお、状態情報、状態情報群、および部分状態情報群の詳細については後述する。 The storage unit 11 configuring the device 1 can store various types of information. Various types of information are, for example, one or more negative rules. Negative rules are rules regarding prohibited items. Prohibitions are things that cannot be done. A negative rule is, for example, a rule associated with a partial state information group, which is a set of one or more pieces of state information, and is a rule indicating a prohibited matter. A partial state information group is a part of the state information group. A status information group is a set of one or more status information. State information is information indicating a state. Details of the state information, the state information group, and the partial state information group will be described later.

禁止事項は、例えば、ロボットの転倒を回避するために、2以上の脚部3の動作に関して禁止された事項であるといってもよい。負ルールは、具体的には、例えば、「一度に3本以上の足を上げることは禁止」といったルールである。 Prohibited items may be, for example, prohibited items related to the movement of two or more legs 3 in order to avoid overturning of the robot. Specifically, the negative rule is, for example, a rule such as "it is prohibited to raise three or more legs at once".

なお、格納部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 legs 3 indicating a state of landing among the two or more legs 3 possessed by the robot is equal to or less than a predetermined number, the leg is lifted. This rule prohibits it. The predetermined number is for example 2, but could also be 1 if the robot has only two legs 3 .

第一の負ルールは、例えば、“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 more legs 3 out of the two or more legs 3, corresponding to the forward and backward positional relationship between the two or more legs 3. .

第二の負ルールは、例えば、“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 leg 3 in a lowered state, corresponding to the state in which the leg 3 is on the ground. . The fourth negative rule is a rule that similarly relates to two or more legs 3 and prohibits the leg 3 from moving backward in a raised state in response to the state in which the leg 3 does not land. be.

第三の負ルールは、例えば、“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 more legs 3, if the position of the leg 3 is forward or backward, the movement of the other leg 3 that has a predetermined positional relationship with the leg 3 is a rule that prohibits

第五の負ルールは、例えば、“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 more legs 3, depending on the combination of the state of raising and lowering the leg 3 and whether or not it is in contact with the ground. be. Combinations are, for example, regarding whether or not the leg is raised and lowered, and whether or not the leg is on the ground. There are four states: a state in which the legs are lowered and grounded (sensor on), and a state in which the legs are raised and grounded (sensors on).

第六の負ルールは、例えば、禁止された動き“脚を下ろしたまま方向を変えること”を許可するルール“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 leg 3 of the amoeba-type robot can be accurately controlled. You can control it. The state in which the solution search becomes impossible is a state in which all the variables try to take the same value at the same time, causing a conflict. As a result of the system being locked in this state, the robot 1 stops moving or falls over in an unstable place.

コア回路12を構成する2以上の部分回路121の各々は、ダイオードとコンデンサとスイッチとを有する。ダイオードは、一の方向(順方向)にのみ電流を流し、逆の方向には電流を流さない。コンデンサは、ダイオードを介して流れ込む電気を蓄え、蓄えた電気を、スイッチを介して放出する。 Each of the two or more partial circuits 121 forming the core circuit 12 has a diode, a capacitor and a switch. A diode allows current to flow only in one direction (forward) and not in the opposite direction. The capacitor stores electricity flowing through the diode and releases the stored electricity through the switch.

2以上の部分回路121の間で、コンデンサの充電または放電の時定数(以下、充放電時時定数、または単に時定数と記す場合がある)が異なることは好適である。充放電時時定数は、基本的には、当該コンデンサの静電容量で決まるが、当該コンデンサと接続されている他の回路要素(例えば、ダイオード、抵抗、スイッチ等)によっても変化する。従って、2以上の部分回路121の間で、たとえコンデンサの静電容量が同一であっても、例えば、抵抗の値やダイオードの特性が異なっていたり、スイッチを実現するNOTゲート等の閾値が異なっていたりしていれば、充放電時時定数が異なる結果となる。 It is preferable that the two or more partial circuits 121 have different capacitor charging or discharging time constants (hereinafter sometimes referred to as charging/discharging time constants or simply time constants). The charge/discharge time constant is basically determined by the capacitance of the capacitor, but also varies depending on other circuit elements (eg, diodes, resistors, switches, etc.) connected to the capacitor. Therefore, even if the capacitance of the capacitors is the same between the two or more partial circuits 121, for example, the values of the resistors and the characteristics of the diodes are different, and the thresholds of the NOT gates that realize the switches are different. If so, the charging/discharging time constant will be different.

スイッチは、コンデンサへの充電が可能な状態と、コンデンサからの放電が可能な状態とを切り替える。つまり、コンデンサは、スイッチが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されたタイミングに対し、充電されたコンデンサからの放電が完了するタイミングもまた、時定数に応じた時間だけ遅延する。 Subcircuit 121 typically also has a resistor. A resistor, for example, increases the time constant for charging and discharging a capacitor. A time constant is the time required to charge and discharge a capacitor. The timing at which the charging of the capacitor is completed is delayed by a time corresponding to the time constant with respect to the timing at which the switch is turned on. Similarly, with respect to the timing when the switch is turned off, the timing when discharging from the charged capacitor is also delayed by a time corresponding to the time constant.

なお、スイッチは、例えば、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 partial circuit 121 may also have other elements. The other element is, for example, a field effect transistor (FET), which will be described in a specific example, but the type of element does not matter.

制御部13は、コア回路12を構成する2以上の部分回路121介して、2以上の脚部3の動きを制御する。詳しくは、制御部13は、コア回路12を構成する2以上の各部分回路121の状態を少なくとも示す状態情報の集合である状態情報群を取得し、当該状態情報群が有する1以上の各部分状態情報群に対応する負ルールに合致しない状態情報群を取得し、当該状態情報群に基づいて2以上の各部分回路121に電流を流すまたは電流を止める、のいずれかの動作ための制御を行う。 The control unit 13 controls movements of the two or more legs 3 via the two or more partial circuits 121 forming the core circuit 12 . Specifically, the control unit 13 acquires a state information group that is a set of state information indicating at least the state of each of the two or more partial circuits 121 that constitute the core circuit 12, A state information group that does not match the negative rule corresponding to the state information group is obtained, and based on the state information group, current is supplied to each of the two or more partial circuits 121, or current is stopped. conduct.

状態情報とは、状態を示す情報である。状態とは、例えば、部分回路121の状態である。部分回路121の状態を示す情報とは、例えば、コンデンサに蓄えられている電気量、充電中か放電中かを示す情報等であるが、抵抗を流れる電流の値や電圧等でもよい。 State information is information indicating a state. The state is, for example, the state of the partial circuit 121 . The information indicating the state of the partial circuit 121 is, for example, the amount of electricity stored in the capacitor, or information indicating whether the capacitor is being charged or discharged.

または、状態とは、センサ31の状態でもよい。センサ31の状態を示す状態情報は、例えば、前述した“on”や“off”等であるが、その表現形式は問わない。 Alternatively, the state may be the state of the sensor 31 . The state information indicating the state of the sensor 31 is, for example, "on" or "off" as described above, but the form of expression is not limited.

または、状態とは、脚部3の状態であってもよい。脚部3の状態を示す状態情報とは、例えば、“脚を上げた状態”、“脚を下ろした状態”、“後方に移動した状態”、前方に移動した状態、“接地した状態”、“接地していない状態”等である。 Alternatively, the state may be the state of the leg 3 . The state information indicating the state of the leg portion 3 includes, for example, "leg raised state", "leg lowered state", "backward moving state", forward moving state, "grounded state", It is "ungrounded state" and the like.

なお、“接地した状態”および“接地していない状態”は、センサ31の“on”および“off”と同等である。それ以外の“脚を上げた状態”等の情報は、例えば、部分回路121の状態を示す状態情報を用いて取得されてもよい。ただし、状態情報は、例えば、駆動機構4の状態を示す情報(例えば、電動リールの電流値、関節の角度等)など、ロボットの構成要素の状態を示す情報であれば何でもよい。また、ロボット以外の装置の構成要素の状態を示す情報でも構わない。 The “grounded state” and “non-grounded state” are equivalent to “on” and “off” of the sensor 31 . Other information such as “leg raised state” may be acquired using state information indicating the state of the partial circuit 121, for example. However, the state information may be any information that indicates the state of the components of the robot, such as information that indicates the state of the drive mechanism 4 (for example, the current value of the electric reel, the angle of the joint, etc.). Also, information indicating the state of a component of a device other than a robot may be used.

状態情報群とは、上記のような各種の状態情報の集合である。状態情報群は、コア回路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 partial circuits 121 forming the core circuit 12 . In the case of the robot shown in FIG. 1, the state information group also normally includes state information of the sensor 31.

なお、状態情報群は、例えば、具体例で説明する状態変数群{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 leg 3 is raised, and is "1" corresponding to the true "leg raised state" or false "leg lowered state". It takes any value of "0". Note that the correspondence between true/false and "0" and "1" may be reversed (same below).

また、状態変数X2は、例えば、脚部3を前に移動した状態か否かを示す変数であり、真“前に移動した状態”に対応する“1”、または偽“前に移動していない状態”に対応する“0”のいずれかの値をとる。同様に、状態変数X3は、例えば、脚部3を後ろに移動した状態か否かを示す変数であり、真“後ろに移動した状態”に対応する“1”、または偽“後ろに移動していない状態”に対応する“0”のいずれかの値をとる。 The state variable X2 is, for example, a variable indicating whether or not the leg 3 is moved forward, and is "1" corresponding to true "state of forward movement" or false "state of forward movement". It takes any value of "0" corresponding to the "non-existent state". Similarly, the state variable X3 is, for example, a variable indicating whether or not the leg 3 has moved backward, and is "1" corresponding to true "backward movement state" or false "backward movement state". It takes any value of "0" corresponding to the state "not

さらに、状態変数X4は、例えば、脚部3が接地している状態か否かを示す変数であり、真“接地した状態”に対応する“1”、または偽“接地していない状態”に対応する“0”のいずれかの値をとる。 Further, the state variable X4 is, for example, a variable indicating whether or not the leg 3 is in contact with the ground. Takes one of the corresponding "0" values.

格納されている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 negative rule 3 includes the state information group "Null, 0, 0, 1..." and the prohibition "prohibit forward movement + lowered state, and allow backward movement + lowered state". Negative rule 4 has a state information group "Null, 0, 0, 0 ..." and a prohibition "prohibit backward movement + raised state, and forward movement + raised state" Permission”. Note that "Null" indicates that the value of the state variable may be either "0" or "1".

ただし、負ルールのデータ構造は問わない。負ルールは、後述する具体例におけるバウンスバックルールでもよい。 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 group acquisition unit 131 acquires, for example, for each of two or more partial circuits 121, a state information group including one or more pieces of state information of the partial circuits 121 concerned.

または、状態情報群取得手段131は、2以上の脚部3ごとに、当該脚部3に対応する部分回路121の1以上の状態情報と、当該脚部3に対応するセンサ31の状態情報とを含む状態情報群を取得してもよい。 Alternatively, the state information group acquisition means 131 obtains, for each of two or more legs 3, one or more state information of the partial circuit 121 corresponding to the leg 3 and state information of the sensor 31 corresponding to the leg 3. You may acquire the state information group containing.

負ルール取得手段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 rule acquisition unit 132 searches the storage unit 11 using the state information group as a key for each of one or more partial state variable groups as described above, and acquires a negative rule corresponding to the state variable group. Therefore, one or more partial state information groups can be obtained for one state information group, and one or more negative rules can be obtained for each of them.

正例取得手段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 case acquisition unit 133 acquires a state information group of positive cases, for example, by trial and error. Trial and error refers to the process of repeatedly trying and failing to finally solve an unknown problem when there is no known solution. Trial and error may be, for example, a solution search for a group of state variables as explained in a specific example.

すなわち、正例取得手段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 example acquisition unit 133 acquires a state variable group in which the previous calculation result and the current calculation result match as a positive example state information group. Note that the positive case acquisition unit 133 may store the state information group of positive cases thus acquired in the storage unit 11 .

制御手段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 partial circuits 121 based on the positive case state information group acquired by the positive case acquiring means 133 . Also good. Specifically, for example, of the conditions (if...) and permission items (then...) that constitute the sixth negative rule, the former (for example, "the state in which the leg is raised and the sensor is off") etc.) corresponds to the positive example of the state information group, and the latter (for example, "permit to change direction while putting the foot down") corresponds to the control based on the positive example of the state information group.

以上のように構成されたデバイス1において、コア回路12を構成する2以上の各部分回路121が有する1以上のコンデンサの少なくとも一部のコンデンサの静電容量が異なることは好適である。静電容量が異なることは、例えば、2以上の部分回路121が、各々一のコンデンサのみを有する場合に、当該2以上のコンデンサの間で静電容量がばらついていることである。または、静電容量が異なることは、2以上の部分回路121が、各々2以上のコンデンサを有する場合には、例えば、一の部分回路121が有する2以上のコンデンサの間で静電容量がばらついていることでもよいし、2以上の部分回路121の間で静電容量のばらつきの程度が異なることでもよい。静電容量が異なることにより、コア回路12が有する2以上の部分回路121のうち少なくとも一部の部分回路121は、少なくとも一時的に、部分状態情報群に基づいた動作を行わない。 In the device 1 configured as described above, it is preferable that at least some of the one or more capacitors included in each of the two or more partial circuits 121 constituting the core circuit 12 have different capacitances. For example, when each of two or more partial circuits 121 has only one capacitor, the difference in capacitance means that the capacitance varies between the two or more capacitors. Alternatively, if two or more partial circuits 121 each have two or more capacitors, the difference in capacitance is that, for example, the two or more capacitors included in one partial circuit 121 have different capacitances. It may be that the two or more partial circuits 121 have different degrees of variation in capacitance. Due to the difference in capacitance, at least some partial circuits 121 out of the two or more partial circuits 121 of the core circuit 12 do not operate based on the partial state information group, at least temporarily.

なお、動作を行わないことは、例えば、制御手段134の制御に対する当該一部の部分回路121の状態変化が遅く、結果として、当該一部の部分回路121の動作が行われない場合も含む。 It should be noted that not operating includes, for example, a case where the partial circuit 121 changes slowly in response to the control of the control unit 134 and, as a result, the partial circuit 121 does not operate.

または、コア回路12を構成する2以上の部分回路121の間で、コンデンサの充放電時定数が異なっていてもよい。なお、充放電時定数は、例えば、コンデンサの静電容量によって、または、コンデンサの静電容量と抵抗の値との組み合わせによって、変化する。 Alternatively, the charge/discharge time constants of the capacitors may be different between the two or more partial circuits 121 forming the core circuit 12 . Note that the charge/discharge time constant varies, for example, depending on the capacitance of the capacitor or a combination of the capacitance of the capacitor and the value of the resistance.

コンデンサの充放電時定数が異なることにより、少なくとも一部の部分回路121では、コンデンサの容量の充電時間または放電時間が、制御部13が正例の状態情報群を取得した結果に応じた制御を行うまでの時間より長くなり、結果として、当該一部の部分回路121の動作が行われない場合がある。 Due to the difference in the charging and discharging time constants of the capacitors, in at least some of the partial circuits 121, the charging time or discharging time of the capacitance of the capacitors is controlled according to the result of the acquisition of the positive state information group by the control unit 13. As a result, there are cases where the part of the partial circuit 121 does not operate.

なお、後述する具体例では、コンデンサの充放電時定数が、コントローラからコア回路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 core circuit 12, at least part of the partial circuit 121 may not operate. .

こうして、少なくとも一部の部分回路121の動作が行われないことにより、ロボットの2以上の各脚部3の動きを制御するための状態変数群に関して、定常解を繰り返し取得する状態や解探索が不可能になる状態に陥り難くなる結果、効率的な解探索が行える。 In this way, at least a portion of the partial circuits 121 are not operated, so that a state of repeatedly obtaining a steady state solution and a solution search for the state variable group for controlling the motion of each of the two or more legs 3 of the robot are not performed. As a result of being less likely to fall into an impossible state, efficient solution search can be performed.

格納部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 control unit 13, the state information group acquisition means 131, the negative rule acquisition means 132, the positive example acquisition means 133, and the control means 134 can usually be implemented by an MPU, memory, or the like. The processing procedure of the control unit 13 and the like is normally realized by software, and the software is recorded in a recording medium such as a ROM. However, the processing procedure may be realized by hardware (dedicated circuit).

次に、デバイス1の動作について図4のフローチャートを用いて説明する。なお、このフローチャートの処理は、例えば、マイコン等のコンピュータによってソフト的に実行されるが、論理ゲートによるデジタル回路または論理演算を行うアナログ回路でハード的に実行されてもよい。 Next, the operation of the device 1 will be explained using the flowchart of FIG. The processing of this flow chart is executed in software by a computer such as a microcomputer, but may be executed in hardware by a digital circuit using logic gates or an analog circuit that performs logical operations.

(ステップS401)制御部13は、変数iに初期値1をセットする。変数iとは、コア回路12を構成する2以上の部分回路121のうち、未選択の部分回路121を順番に選択していくための変数である。なお、アナログ回路の場合、連続時間で動作するため、変数iは理解のための便宜的なものになる。 (Step S401) The control unit 13 sets the initial value 1 to the variable i. The variable i is a variable for sequentially selecting unselected partial circuits 121 out of the two or more partial circuits 121 forming the core circuit 12 . In the case of an analog circuit, since it operates in continuous time, the variable i is convenient for understanding.

(ステップS402)制御部13は、i番目の部分回路121があるか否かを判別する。i番目の部分回路121がある場合はステップS403に進み、i番目の部分回路121がない場合はステップS401に戻る。 (Step S402) The control unit 13 determines whether or not the i-th partial circuit 121 exists. If the i-th partial circuit 121 exists, the process proceeds to step S403, and if the i-th partial circuit 121 does not exist, the process returns to step S401.

(ステップS403)状態情報群取得手段131は、i番目の部分回路121に対応する状態情報群を取得する。 (Step S403) The state information group acquisition unit 131 acquires a state information group corresponding to the i-th partial circuit 121. FIG.

(ステップS404)負ルール取得手段132は、ステップS403で取得された状態情報群に対応する1以上の負ルールを格納部11から取得する。 (Step S404) The negative rule acquisition unit 132 acquires from the storage unit 11 one or more negative rules corresponding to the state information group acquired in step S403.

(ステップS405)正例取得手段133は、ステップS404で取得された1以上の負ルールのいずれにも合致しない正例の状態情報群を取得する。 (Step S405) The positive example obtaining unit 133 obtains a group of positive state information that does not match any of the one or more negative rules obtained in step S404.

(ステップ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 partial circuit 121. .

(ステップS407)制御部13は、変数iをインクリメントする。その後、ステップS402に戻る。 (Step S407) The control unit 13 increments the variable i. After that, the process returns to step S402.

なお、図4のフローチャートにおいて、デバイス1の電源オフや処理終了の割り込みにより処理は終了する。 In the flowchart of FIG. 4, the process ends when the power of the device 1 is turned off or a process end interrupt occurs.

以下、本実施の形態におけるロボットの具体的な動作例について説明する。本例のロボットは、図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 leg 3 of the robot shown in FIG. Each leg has joints and is movable in up and down and forward and backward directions. A touch sensor corresponding to the sensor 31 is provided at the tip of each leg.

そして、このロボットは、デバイス1に相当する電子アメーバ(Electronic amoeba)を有する。電子アメーバは、単細胞のアメーバ生物(amoeboid organism:以下、単細胞アメーバ)の餌食行動からインスピレーションを得て、組合せ最適化問題の解を探索するように設計されている。単細胞アメーバは、与えられた制約を満たしながら、食物摂取量を最大限にしようとする。 This robot then has an Electronic amoeba that corresponds to device 1 . Electronic amoebas are inspired by the prey behavior of single-celled amoeboid organisms (hereafter single-celled amoeba) and are designed to search for solutions to combinatorial optimization problems. Single-celled amoebas seek to maximize food intake while meeting given constraints.

詳しくは、第一に、単細胞アメーバは、仮足を、ある程度のゆらぎを以て、一方向に拡張する。電子アメーバは、状態変数に対応して、仮足ユニット内のダイオードを流れる一方向の電流によって、かかる仮足の動きを表す。単細胞アメーバの変形のゆらぎおよび誤差は、電子アメーバにおいては、ランダムビット発生器を用いて電子的に実現される。または、電源などに雑音をいれることでも、同様なゆらぎおよび誤差が得られる。 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 core circuit 12 , a controller corresponding to the control section 13 , and a memory (not shown) corresponding to the storage section 11 .

メモリには、負ルールに対応するバウンスバックルールが格納されている。なお、バウンスバックルールは、単細胞アメーバの「与えられた制約」に相当するルールであるといってもよい。また、バウンスバックルールは、プログラムに組み込まれていても構わない。さらに、プログラムで記載されている論理関数を、論理ゲートによる回路で直接実装しても構わない。 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 partial circuits 121 . These two or more pseudopodia units are connected via a star-topology network, which represents a hub. Current is supplied to the center (hub) of the star network, and the supplied current is distributed to each of the two or more pseudopodia units. A current Ii is input to each pseudopodia unit, and the output Xi of each pseudopodia unit is provided to the controller. The controller generates a feedback signal yi based on the bounceback rule for the output Xi from each pseudopodia unit and provides it to each pseudopodia unit. A feedback signal is a signal for updating a state variable and is also called a bounceback signal.

各仮足ユニットにはまた、図示しないランダムビット発生器が発生するエラー信号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 device 1 may not operate.

ハブに注入される電流は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 sensor 31 signal and the previous state. If the electronic amoeba is constrained to avoid falling or getting lost, it doesn't need to be programmed how to walk.

以上、本実施の形態によれば、ロボットは、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 core circuit 12 having two or more partial circuits 121 each having a diode, a capacitor, and a switch; Then, a state information group that does not match the negative rule corresponding to each of the one or more partial state information groups included in the state information group is acquired, and based on the state information group, current is caused to flow through each of the two or more partial circuits 121. and a control unit 13 that performs control for either operation of stopping. At least some of the one or more capacitors included in each of the two or more partial circuits 121 have different charging or discharging time constants. Partial circuit 121 does not operate based on the partial state information group, at least temporarily. According to such a robot, it is difficult for the robot to fall into a state in which a steady state solution is repeatedly obtained with respect to the group of state variables for controlling the movement of the leg 3 or a state in which the solution search becomes impossible, and efficient solution search can be performed. , the operation becomes unstable and difficult.

また、上記ロボットにおいて、2以上の部分回路121は、ハブを介して接続され、ハブの中心から2以上の各部分回路121に電流が供給されることにより、ハブ内の総電流は、キルヒホッフの法則に従って保存される結果、例えば、体積が保存されるアメーバに相当するロボットの動きが実現できる。 In the above robot, the two or more partial circuits 121 are connected via a hub, and current is supplied to each of the two or more partial circuits 121 from the center of the hub. As a result of being conserved according to the law, for example, a motion of a robot corresponding to amoeba whose volume is conserved can be realized.

また、上記ロボットにおいて、制御部13は、2以上の各部分回路121の状態を少なくとも示す状態情報の集合である状態情報群を取得する状態情報群取得手段131と、状態情報群が有する1以上の各部分状態情報群に対応する1以上の負ルールを格納部11から取得する負ルール取得手段132と、負ルール取得手段132が取得した1以上の負ルールのいずれにも合致しない正例の状態情報群を取得する正例取得手段133と、正例の状態情報群に基づいて2以上の各部分回路121に電流を流すまたは電流を止める、のいずれかの動作ための制御を行う制御手段134とを具備することにより、その動きを制御するための状態変数群に関して、効率的な解探索が行える。 In the above robot, the control unit 13 includes a state information group acquisition unit 131 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 121, and one or more Negative rule acquisition means 132 for acquiring from the storage unit 11 one or more negative rules corresponding to each partial state information group of , and positive examples that do not match any of the one or more negative rules acquired by the negative rule acquisition means 132 A positive case obtaining means 133 for obtaining a state information group, and a control means for performing control for either supplying or stopping the current to each of the two or more partial circuits 121 based on the positive case state information group. 134, efficient solution search can be performed with respect to the state variable group for controlling the motion.

また、上記ロボットにおいて、コンデンサの容量の充電時間または放電時間が、制御部13が状態情報群を取得した結果に応じた制御を行うまでの時間より長いことにより、状態変化が制御に追い付かず、結果として動作が行われない場合が生じ、正解を発見できる可能性が高まる。 In the above robot, the charge time or discharge time of the capacity of the capacitor is longer than the time until the control unit 13 performs control according to the result of acquiring the state information group. As a result, there are cases where no action is performed, and the possibility of discovering the correct answer increases.

また、上記ロボットにおいて、正例取得手段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 more legs 3, the two or more partial circuits 121 are circuits for controlling the movements of the two or more legs 3, and each of the two or more legs 3 is a leg It has a sensor 31 for detecting whether or not the leg 3 is in a landed state, and the state information group also includes state information indicating the detection result of the sensor 31 of each leg 3 of two or more. Efficient solution search can be performed with respect to the state variable group for controlling the movement of the leg 3 of .

また、上記ロボットにおいて、格納部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 legs 3 indicating the state of landing is equal to or less than a predetermined number. Therefore, the movement of the leg 3 can be accurately controlled.

また、上記ロボットにおいて、2以上の各脚部3は、前後に移動可能であり、格納部11は、2以上の脚部3間の前後の位置関係に対応して、2以上の脚部3のうち1以上の脚部3の前後の動きを禁止する第二の負ルールを格納していることにより、脚部3の動きを的確に制御できる。 Further, in the above robot, each of the two or more legs 3 is movable back and forth, and the storage unit 11 accommodates the two or more legs 3 in correspondence with the front and back positional relationship between the two or more legs 3 . By storing the second negative rule that prohibits the forward and backward movement of one or more legs 3, the movement of the legs 3 can be accurately controlled.

また、上記ロボットにおいて、2以上の各脚部3は、上げ下げ可能であり、格納部11は、2以上の各脚部3に関し、脚部3が着地している状態に対応して、脚部3を下げた状態で前方に移動させることを禁止する第三の負ルール、および脚部3が着地していない状態に対応して、脚部3を上げた状態で後方に移動させることを禁止する第四の負ルールを格納していることにより、脚部3の動きを的確に制御できる。 Further, in the above robot, each of the two or more legs 3 can be raised and lowered, and the storage unit 11 is arranged to correspond to the state in which each of the two or more legs 3 is on the ground. A third negative rule that prohibits forward movement with leg 3 down, and a backward movement with leg 3 up corresponding to the state in which leg 3 is not on the ground. By storing the fourth negative rule, the movement of the leg 3 can be accurately controlled.

また、上記ロボットにおいて、格納部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 more legs 3, and when the position of the leg 3 is in the front or the rear, another leg having a predetermined positional relationship with the leg 3 is stored. By storing the fifth negative rule that prohibits the movement of leg 3, the movement of leg 3 can be accurately controlled.

また、上記ロボットにおいて、格納部11は、2以上の各脚部3に関し、脚部3の上げ下げの状態と接地している状態か否かとの組み合わせに応じて、禁止されている移動を許可する第六の負ルールを格納していることにより、脚部3の動きを的確に制御できる。 In the above robot, the storage unit 11 permits the prohibited movement of each of the two or more legs 3 according to the combination of whether the legs 3 are raised or lowered and whether they are in contact with the ground. By storing the sixth negative rule, the movement of the leg 3 can be accurately controlled.

また、上記ロボットにおいて、第六の負ルールは、同じ状態情報群に対して、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 leg 3 can be accurately controlled.

なお、本実施の形態では、コア回路12を構成する2以上の各部分回路121はアナログ回路であり、かかる部分回路121間でコンデンサの充電または放電の時定数が異なることにより、少なくとも一部の部分回路121は、少なくとも一時的に、部分状態情報群に基づいた動作を行わない結果となったが、コア回路12を構成する2以上の各部分回路121がデジタル回路であっても、かかる部分回路121間で、例えば、その出力に異なる遅延を付加したり、その出力を確率論的に遅れさせたりすることにより、少なくとも一部の部分回路121は、少なくとも一時的に、部分状態情報群に基づいた動作を行わない結果となるようにすることができる。 In the present embodiment, the two or more partial circuits 121 that constitute the core circuit 12 are analog circuits. As a result, the partial circuit 121 did not operate based on the partial state information group at least temporarily. By, for example, adding different delays to their outputs or stochastically delaying their outputs between the circuits 121, at least some of the partial circuits 121 are at least temporarily dependent on the set of partial state information. It can result in no action taken based on it.

従って、本実施の形態、および上記のような変形例(変形例1)によれば、2以上の各部分回路121がアナログ回路かデジタル回路かによらず、少なくとも一部の部分回路121は、少なくとも一時的に、部分状態情報群に基づいた動作を行わない結果を得ることが可能であり、状態情報群に対し効率的な解探索が行える。 Therefore, according to the present embodiment and the above modification (modification 1), regardless of whether the two or more partial circuits 121 are analog circuits or digital circuits, at least some of the partial circuits 121 are: At least temporarily, it is possible to obtain a result in which no operation is performed based on the partial state information group, and efficient solution search can be performed for the state information group.

また、デバイス1が上記のような2以上の部分回路121で構成されたコア回路12を有さないような変形例(変形例2)においても、例えば、制御部13が、2以上の各脚部3の動きを制御する際に、脚部間で異なる遅延が生じるような処理をソフト的に行うことによって、2以上の脚部3のうち少なくとも一部の脚部3は、少なくとも一時的に、部分状態情報群に基づいた動作を行わない結果となるようにすることができる。 Further, even in a modification (modification 2) in which the device 1 does not have the core circuit 12 configured by two or more partial circuits 121 as described above, for example, the control unit 13 may At least some of the two or more legs 3 are at least temporarily , may result in no action based on the partial state information group.

脚部間で異なる遅延が生じるような処理とは、例えば、各脚部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 leg 3 between 0 and 1 is based on the operation clock of the MPU (hereinafter referred to as unit time). However, as long as the processing results in different delays between the legs, the procedure does not matter. Here, the unit time is, for example, several microseconds. However, the unit time may be on the order of less than microseconds, or may be 10 microseconds or more, and its value does not matter.

これに対して、実施の形態で説明したアナログのコア回路12を構成する2以上の各部分回路121で生じる遅延は、例えば、数ミリ秒~数百ミリ秒の範囲で揺らいでいる。ただし、各部分回路121で生じる遅延は、例えば、ミリ秒より短いオーダーの時間でもよいし、1秒以上の時間でもよく、その値や揺らぎの範囲は問わない。 On the other hand, the delay generated in each of the two or more partial circuits 121 constituting the analog core circuit 12 described in the embodiment fluctuates, for example, within the range of several milliseconds to several hundreds of milliseconds. However, the delay occurring in each partial circuit 121 may be, for example, a time on the order of less than milliseconds or a time of one second or more, and its value and fluctuation range are not limited.

従って、コア回路12で生じる上記のような遅延と同等の遅延をソフト的に実現するには、各脚部3への制御信号を、例えば、単位時間の1千~10万倍程度の範囲で、ランダムに又は所定のアルゴリズムで遅延させればよい。 Therefore, in order to realize a delay equivalent to the above-described delay generated in the core circuit 12 by software, the control signal to each leg 3 should be set within a range of, for example, 1,000 to 100,000 times the unit time. , may be delayed randomly or according to a predetermined algorithm.

すなわち、ロボットにおける動作のタイムスケールは、デバイス1の内部における動作のタイムスケールと異なるため、ロボットの動作が不安定になることを回避するには、制御部13は、ロボットにおける動作のタイムスケールに応じた長さの遅延であり、かつ揺らいだ遅延を生じさせればよい。 That is, since the timescale of the motion of the robot is different from the timescale of the motion inside the device 1, in order to avoid the unstable motion of the robot, the control unit 13 should be adjusted to the timescale of the motion of the robot. It is only necessary to produce a delay that is of a length that is appropriate and that fluctuates.

脚部間で異なる遅延が生じることは、例えば、2以上の脚部3のうち、1以上の脚部3においてのみ、予め決められた長さ(例えば、10万単位時間)の遅延が生じ、他の1以上の脚部3においては、何ら遅延が生じないことでもよい。 A delay of a predetermined length (eg, 100,000 units of time) occurs only in one or more legs 3 out of two or more legs 3, No delay may occur in the other one or more legs 3 .

そのための処理として、制御部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 control unit 13 generates a random number for each of two or more legs 3, for example, and sets the random number (for example, 5390, 1253, 5326, etc.) to a predetermined number (for example, 10). If the remainder (e.g. 0, 3, 6, etc.) is a predetermined value (e.g. 0), then the control signal to the leg 3 is a predetermined time (e.g. 10 10,000 unit time), and if the value is different from a predetermined value (eg, 3, 6, etc.), the control signal to the leg 3 is not delayed. As a result, each of the two or more legs 3 will have its movement delayed by a predetermined time (eg, 100,000 units of time) with a certain probability (eg, 1/10 probability).

なお、制御部13は、除算を行う際の上記予め決められた数を変更することによって、確率を変化させてもよい(例えば、予め決められた数が100の場合、各脚部3の動きが遅延する確率は100分の1となる)。 Note that the control unit 13 may change the probability by changing the predetermined number when performing the division (for example, if the predetermined number is 100, the movement of each leg 3 delay is 1 in 100).

または、脚部間で異なる遅延が生じることは、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 more legs 3. , which may result in a delay of random length.

そのための処理として、制御部13は、例えば、2以上の脚部3ごとに、乱数を発生させ、当該乱数(例えば、5390、1253、5326等)を予め決められた数(例えば、10)で除算し、その剰余(例えば、0、3、6等)に応じた長さ(例えば、0、3万単位時間、6万単位時間)だけ、当該脚部3への制御信号を遅延させる、といった処理を行う。これにより、2以上の各脚部3は、その動きが、例えば、0~9万単位時間の範囲内で、ランダムな長さだけ遅延する結果となる。 As a process therefor, the control unit 13 generates a random number for each of two or more legs 3, for example, and sets the random number (for example, 5390, 1253, 5326, etc.) to a predetermined number (for example, 10). division, and delaying the control signal to the leg 3 by a length (e.g., 0, 30,000 unit time, 60,000 unit time) according to the remainder (e.g., 0, 3, 6, etc.) process. This results in each of the two or more legs 3 delaying its movement by a random length, for example in the range of 0 to 90,000 units of time.

従って、変形例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 Modification 2, even when the device 1 is used in a device other than a robot, the control unit 1 causes a delay of a length corresponding to the time scale of the operation of the device, and a fluctuating delay. The operation of the device can be stabilized. Further, inside the device 1, a delay of a length corresponding to the time scale of the operation of the device (for example, about several times the unit time) and a fluctuating delay is generated, so that the operation of the device 1 itself can also be stabilized.

ただし、デバイス1がコア回路12を有していれば、当該デバイス1における又はそれを有するロボット等の装置における動作のタイムスケールに応じた充放電時定数であり、かつ揺らいだ充放電時定数を有するコンデンサ群を用いることで、制御部13が上記のような処理を行う必要がなくなり、制御部13を実現するMPU等への負荷が軽減される。 However, if the device 1 has a core circuit 12, the charge/discharge time constant is a charge/discharge time constant corresponding to the time scale of the operation of the device 1 or a device such as a robot having it, and the fluctuating charge/discharge time constant is By using a group of capacitors having such a structure, the control unit 13 does not need to perform the processing described above, and the load on the MPU or the like that implements the control unit 13 is reduced.

または、予め決められた条件を満たした場合に、制御部13は、2以上の脚部3のうち少なくとも一部の脚部3を、少なくとも一時的に、部分状態情報群に基づいた動作を行わないように制御してもよい。予め決められた条件は、通常、部分状態情報群以外の情報に関する条件である。部分状態情報群以外の情報は、例えば、カメラからの画像、湿度センサや温度センサからの情報といった、ロボットの外部の情報(環境情報といってもよい)である。 Alternatively, when a predetermined condition is satisfied, the control unit 13 causes at least some of the two or more legs 3 to perform an operation based on the partial state information group, at least temporarily. You can control it so that it does not. 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 humidity sensor or a temperature sensor.

詳しくは、例えば、ロボットが移動する範囲を撮影するカメラが、ロボット自体又はその外部に設けられている。カメラからの画像に関する条件は、「高周波成分が閾値より多い又は閾値以上である」という条件である。それによって、例えば、地面が荒れている場合は、部分状態情報群に基づく動作が行われず、ロボットの転倒を回避できる可能性が高まる。 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 more legs 3 is a rule associated with a partial state information group, which is a set of one or more state information, and one or more negative rules indicating prohibited items. The storage unit 11 can be accessed, and the program causes the computer to acquire a state information group, which is a set of state information indicating at least the state of each of the two or more legs 3, and obtain the state information group. Functions as a control unit 13 that acquires a state information group that does not match the negative rule corresponding to each of the one or more partial state information groups possessed by the group, and controls the two or more legs 3 based on the state information group. , and different delays occur in the control of the two or more legs 3 performed by the control unit 13, so that at least some of the two or more legs 3 are at least temporarily The program is characterized by not performing an operation based on the partial state information group.

図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 computer system 900 that implements a robot by executing the program according to the embodiment. In FIG. 9, a computer system 900 includes an MPU 911 that is a computer that executes programs, a ROM 912 that stores programs such as a boot-up program, and a ROM 912 that is connected to the MPU 911 to temporarily store instructions of application programs. A RAM 913 that provides a temporary storage space, a storage 914 that stores application programs, system programs, and data, a bus 915 that interconnects the MPU 911, ROM 912, etc., and provides connections to networks such as external networks and internal networks. , a memory card slot 917 and a core circuit 12 . The storage 914 is, for example, flash memory or SSD. Note that the entire computer system 900 may be called a computer.

コンピュータシステム900に、ロボットの機能を実行させるプログラムは、例えば、メモリカード920に記憶されて、メモリカードスロット917に挿入され、ストレージ914に転送されてもよい。これに代えて、そのプログラムは、ネットワークを介してコンピュータシステム900に送信され、ストレージ914に記憶されてもよい。プログラムは、実行の際にRAM913にロードされる。なお、プログラムは、メモリカード920、またはネットワークから直接、ロードされてもよい。 A program that causes computer system 900 to perform robot functions may be stored, for example, in memory card 920 , inserted into memory card slot 917 , and transferred to storage 914 . Alternatively, the program may be transmitted over a network to computer system 900 and stored in storage 914 . Programs are loaded into RAM 913 during execution. Note that the program may be loaded directly from the memory card 920 or from the network.

プログラムは、コンピュータシステム900に、ロボットの機能を実行させるオペレーティングシステム(OS)、またはサードパーティプログラム等を必ずしも含んでいなくてもよい。プログラムは、制御された態様で適切な機能やモジュールを呼び出し、所望の結果が得られるようにする命令の部分のみを含んでいてもよい。コンピュータシステム900がどのように動作するのかについては周知であり、詳細な説明は省略する。ただし、以上は例示であり、ロボットを実現するコンピュータのハードウェア構成は問わない。 The programs do not necessarily include an operating system (OS), third party programs, etc. that cause the computer system 900 to perform the functions of the robot. A program may contain only those portions of instructions that call the appropriate functions or modules in a controlled manner to produce the desired result. How the computer system 900 operates is well known and will not be described in detail. However, the above is just an example, and the hardware configuration of the computer that implements the robot does not matter.

なお、上記プログラムを実行するコンピュータは、単数であってもよく、複数であってもよい。すなわち、集中処理を行ってもよく、あるいは分散処理を行ってもよい。(ただし、複数のコンピュータで分散処理を行うことは、例えば、コンピュータ間で異なる遅延を容易に付加できる又は確率論的に異なる遅延の発生が予期できることから、好適である。また、一のコンピュータで集中処理(例えば、時分割処理)を行う場合にも、異なる遅延を付加したり、確率論的に異なる遅延の発生が予期されるような制御を行ったりすることは可能である。 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 LIST 1 device 2 body 3 leg 4 drive mechanism 11 storage unit 12 core circuit 13 control unit 31 sensor 121 partial circuit 131 status information group acquisition means 132 negative rule acquisition means 133 positive example acquisition means 134 control means

Claims (12)

1または2以上の状態情報の集合である部分状態情報群に対応付けられたルールであり、禁止事項を示す1以上の負ルールを格納している格納部と、
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以上の各脚部は、当該脚部が着地している状態か否かを検知するセンサを有し、
前記状態情報群は、前記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以上の部分回路は、ハブを介して接続され、
前記ハブの中心から前記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 .
前記コンデンサの容量の充電時間または放電時間が、前記制御部が状態情報群を取得した結果に応じた前記制御を行うまでの時間より長い請求項から請求項いずれか一項に記載のロボット。 5. The robot according to any one of claims 1 to 4 , wherein the charging time or discharging time of the capacity of the capacitor is longer than the time until the control unit performs the control according to the result of acquiring the state information group. . 前記正例取得手段は、
試行錯誤により、正例の状態情報群を取得する請求項記載のロボット。
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.
1または2以上の状態情報の集合である部分状態情報群に対応付けられたルールであり、禁止事項を示す1以上の負ルールを格納している格納部と、
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 .
前記第六の負ルールは、同じ状態情報群に対して、2種類以上の動きを許可し得る請求項記載のロボット。 8. The robot according to claim 7 , wherein said sixth negative rule can permit two or more types of motion for the same state information group. 2以上の脚部を具備するロボットを制御するロボット制御方法であって、
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 .
2以上の脚部を具備するロボットを制御するロボット制御方法であって、A robot control method for controlling a robot having two or more legs,
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以上の状態情報の集合である部分状態情報群に対応付けられたルールであり、禁止事項を示す1以上の負ルールを格納している格納部にアクセス可能であり、
前記コンピュータを、
前記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 .
2以上の脚部を具備するロボットのコンピュータは、1または2以上の状態情報の集合である部分状態情報群に対応付けられたルールであり、禁止事項を示す1以上の負ルールを格納している格納部にアクセス可能であり、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,
前記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.
JP2018093128A 2018-05-14 2018-05-14 Robot, robot control method and program Active JP7141615B2 (en)

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)

* Cited by examiner, † Cited by third party
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

Patent Citations (3)

* Cited by examiner, † Cited by third party
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